diff options
Diffstat (limited to 'py')
| -rw-r--r-- | py/chat.py | 12 | ||||
| -rw-r--r-- | py/complete.py | 4 | ||||
| -rw-r--r-- | py/utils.py | 15 |
3 files changed, 21 insertions, 10 deletions
@@ -4,10 +4,18 @@ import openai plugin_root = vim.eval("s:plugin_root") vim.command(f"py3file {plugin_root}/py/utils.py") -options = make_options() +options = vim.eval("options") +request_options = make_request_options() openai.api_key = load_api_key() +file_content = vim.eval('trim(join(getline(1, "$"), "\n"))') +initial_prompt = '\n'.join(options['initial_prompt']) +prompt = f"{initial_prompt}\n{file_content}" + +lines = prompt.splitlines() +messages = [] + def parse_messages(): file_content = vim.eval('trim(join(getline(1, "$"), "\n"))') lines = file_content.splitlines() @@ -49,7 +57,7 @@ try: print('Answering...') vim.command("redraw") - response = openai.ChatCompletion.create(messages=messages, stream=True, **options) + response = openai.ChatCompletion.create(messages=messages, stream=True, **request_options) generating_text = False for resp in response: diff --git a/py/complete.py b/py/complete.py index 14667b0..bddd8e6 100644 --- a/py/complete.py +++ b/py/complete.py @@ -5,7 +5,7 @@ plugin_root = vim.eval("s:plugin_root") vim.command(f"py3file {plugin_root}/py/utils.py") prompt = vim.eval("prompt").strip() -options = make_options() +request_options = make_request_options() openai.api_key = load_api_key() @@ -15,7 +15,7 @@ try: print('Completing...') vim.command("redraw") - response = openai.Completion.create(stream=True, prompt=prompt, **options) + response = openai.Completion.create(stream=True, prompt=prompt, **request_options) generating_text = False for resp in response: diff --git a/py/utils.py b/py/utils.py index 814a4f0..02ecfef 100644 --- a/py/utils.py +++ b/py/utils.py @@ -11,9 +11,12 @@ def load_api_key(): pass return api_key.strip() -def make_options(): - options = {**vim.eval("options")} - options['request_timeout'] = float(options['request_timeout']) - options['temperature'] = float(options['temperature']) - options['max_tokens'] = int(options['max_tokens']) - return options +def make_request_options(): + options = vim.eval("options") + request_options = {} + request_options['model'] = options['model'] + request_options['max_tokens'] = int(options['max_tokens']) + request_options['temperature'] = float(options['temperature']) + request_options['request_timeout'] = float(options['request_timeout']) + return request_options + |