robustness of gpt calls
continuous-integration/drone/push Build is passing

This commit is contained in:
2023-03-19 13:57:51 +01:00
parent 58ce3a8565
commit 2e91781fad
+8 -3
View File
@@ -292,7 +292,9 @@ class Chatbot(commands.Cog):
if random.random() > 0.9:
try:
# GPT request moet echt even in een non-blocking executortje, anders loopt de hele boel vast
return await self.bot.loop.run_in_executor(None,self.getResponseForMessageOnline, wordsToRespondTo)
response = await self.bot.loop.run_in_executor(None,self.getResponseForMessageOnline, wordsToRespondTo)
if response:
return response # Anders door naar local
except:
pass # Door naar local call
return self.getResponseForMessageLocal(wordsToRespondTo)
@@ -303,8 +305,11 @@ class Chatbot(commands.Cog):
return req.json()["translations"][0]["text"]
def getResponseForMessageOnline(self, wordsToRespondTo):
text = self.translateTo("en", " ".join(wordsToRespondTo))
req = requests.post('http://gpt.hoekveen.net/complete', json={"prompt": text, "max_tokens": 60})
prompt = " ".join(wordsToRespondTo)
if not prompt:
prompt = self.getResponseForMessageLocal([])
text = self.translateTo("en", prompt)
req = requests.post('http://gpt.hoekveen.net/complete', json={"prompt": text, "max_tokens": 80})
print(req.json())
respons = req.json()["text"]
respons = respons[0:respons.rfind(".")+1] # Alles weg na de laatste punt