mirror of
https://github.com/father-bot/chatgpt_telegram_bot.git
synced 2026-06-13 03:54:57 +03:00
Make bot truly async
This commit is contained in:
+2
-1
@@ -110,7 +110,7 @@ async def message_handle(update: Update, context: CallbackContext, message=None,
|
||||
message = message or update.message.text
|
||||
|
||||
chatgpt_instance = chatgpt.ChatGPT(use_chatgpt_api=config.use_chatgpt_api)
|
||||
answer, n_used_tokens, n_first_dialog_messages_removed = chatgpt_instance.send_message(
|
||||
answer, n_used_tokens, n_first_dialog_messages_removed = await chatgpt_instance.send_message(
|
||||
message,
|
||||
dialog_messages=db.get_dialog_messages(user_id, dialog_id=None),
|
||||
chat_mode=db.get_user_attribute(user_id, "current_chat_mode"),
|
||||
@@ -241,6 +241,7 @@ def run_bot() -> None:
|
||||
application = (
|
||||
ApplicationBuilder()
|
||||
.token(config.telegram_token)
|
||||
.concurrent_updates(True)
|
||||
.build()
|
||||
)
|
||||
|
||||
|
||||
+3
-3
@@ -43,7 +43,7 @@ class ChatGPT:
|
||||
def __init__(self, use_chatgpt_api=True):
|
||||
self.use_chatgpt_api = use_chatgpt_api
|
||||
|
||||
def send_message(self, message, dialog_messages=[], chat_mode="assistant"):
|
||||
async def send_message(self, message, dialog_messages=[], chat_mode="assistant"):
|
||||
if chat_mode not in CHAT_MODES.keys():
|
||||
raise ValueError(f"Chat mode {chat_mode} is not supported")
|
||||
|
||||
@@ -53,7 +53,7 @@ class ChatGPT:
|
||||
try:
|
||||
if self.use_chatgpt_api:
|
||||
messages = self._generate_prompt_messages_for_chatgpt_api(message, dialog_messages, chat_mode)
|
||||
r = openai.ChatCompletion.create(
|
||||
r = await openai.ChatCompletion.acreate(
|
||||
model="gpt-3.5-turbo",
|
||||
messages=messages,
|
||||
**OPENAI_COMPLETION_OPTIONS
|
||||
@@ -61,7 +61,7 @@ class ChatGPT:
|
||||
answer = r.choices[0].message["content"]
|
||||
else:
|
||||
prompt = self._generate_prompt(message, dialog_messages, chat_mode)
|
||||
r = openai.Completion.create(
|
||||
r = await openai.Completion.acreate(
|
||||
engine="text-davinci-003",
|
||||
prompt=prompt,
|
||||
**OPENAI_COMPLETION_OPTIONS
|
||||
|
||||
Reference in New Issue
Block a user