From f2e1b2ffe34224d05132b5a55d845dfde6583822 Mon Sep 17 00:00:00 2001 From: Paillat Date: Tue, 15 Aug 2023 18:53:22 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20chore(makeprompt.py):=20refactor?= =?UTF-8?q?=20prepare=5Fmessages=20and=20chatgpt=5Fprocess=20functions=20t?= =?UTF-8?q?o=20accept=20an=20error=5Fcall=20function=20for=20error=20handl?= =?UTF-8?q?ing=20=F0=9F=94=A7=20chore(makeprompt.py):=20refactor=20chat=5F?= =?UTF-8?q?process=20function=20to=20use=20the=20error=5Fcall=20function?= =?UTF-8?q?=20for=20error=20handling?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/makeprompt.py | 41 +++++++++++++++++------------------------ 1 file changed, 17 insertions(+), 24 deletions(-) diff --git a/src/makeprompt.py b/src/makeprompt.py index d74178b..fb39257 100644 --- a/src/makeprompt.py +++ b/src/makeprompt.py @@ -49,17 +49,9 @@ async def fetch_messages_history(channel: discord.TextChannel, limit, original_m return messages -async def prepare_messages(self, messages, message: discord.Message, api_key, prompt): - async def error_call(error=""): - try: - if error != "": - await message.channel.send( - f"An error occured: {error}", delete_after=10 - ) - await message.channel.trigger_typing() - except: - pass - +async def prepare_messages( + self, messages, message: discord.Message, api_key, prompt, error_call +): msgs = [] # create the msgs list msgs.append( {"role": "system", "content": prompt} @@ -123,18 +115,8 @@ async def prepare_messages(self, messages, message: discord.Message, api_key, pr async def chatgpt_process( - self, msgs, message: discord.Message, api_key, prompt, model, depth=0 + self, msgs, message: discord.Message, api_key, prompt, model, error_call, depth=0 ): - async def error_call(error=""): - try: - if error != "": - await message.channel.send( - f"An error occured: {error}", delete_after=10 - ) - await message.channel.trigger_typing() - except: - pass - response = str() caller = openai_caller() called_functions = ( @@ -317,5 +299,16 @@ async def chat_process(self, message): ) .replace("[pretend-to-be]", pretend_to_be) ) - emesgs = await prepare_messages(self, messages, message, api_key, prompt) - await chatgpt_process(self, emesgs, message, api_key, prompt, model) + + async def error_call(error=""): + try: + if error != "": + await message.channel.send(f"An error occured: {error}", delete_after=4) + await message.channel.trigger_typing() + except: + pass + + emesgs = await prepare_messages( + self, messages, message, api_key, prompt, error_call + ) + await chatgpt_process(self, emesgs, message, api_key, prompt, model, error_call)