From 60f123341288df77a466528f2f1875f81c0cc450 Mon Sep 17 00:00:00 2001 From: Martin Bielik Date: Mon, 13 Mar 2023 20:52:45 +0100 Subject: stream complete/edit commands --- py/complete.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'py/complete.py') diff --git a/py/complete.py b/py/complete.py index c37cbd0..705dd90 100644 --- a/py/complete.py +++ b/py/complete.py @@ -8,11 +8,22 @@ prompt = vim.eval("prompt") openai.api_key = load_api_key() -response = openai.Completion.create( - model="text-davinci-003", - prompt=prompt, - max_tokens=1000, - temperature=0.1 -) +if prompt.strip(): -output = response['choices'][0]['text'] + response = openai.Completion.create( + model="text-davinci-003", + prompt=prompt, + max_tokens=1000, + temperature=0.1, + stream=True, + ) + + generating_text = False + for resp in response: + text = resp['choices'][0].get('text', '') + if not text.strip() and not generating_text: + continue # trim newlines from the beginning + + generating_text = True + vim.command("normal! a" + text) + vim.command("redraw") -- cgit v1.2.3