add more errors parsing and fix some errors da
This commit is contained in:
1 parent
540aea2ec6
commit
b958bddcfb
3 files changed
+63
-51
No files matched your search
+24
-10
@@ -76,7 +76,6 @@ def is_replied_bot(message, is_channel, user_text, config=None):
|
|||||||
return True
|
return True
|
||||||
|
|
||||||
async def g_answer(
|
async def g_answer(
|
||||||
data,
|
|
||||||
message,
|
message,
|
||||||
text,
|
text,
|
||||||
title="da",
|
title="da",
|
||||||
@@ -95,15 +94,12 @@ async def g_answer(
|
|||||||
input_message_content=InputRichMessageContent(
|
input_message_content=InputRichMessageContent(
|
||||||
rich_message=InputRichMessage(markdown=text)
|
rich_message=InputRichMessage(markdown=text)
|
||||||
)
|
)
|
||||||
return await data["bot"](
|
return await message.answer_guest_query(
|
||||||
AnswerGuestQuery(
|
result=InlineQueryResultArticle(
|
||||||
guest_query_id=message.guest_query_id,
|
id=id,
|
||||||
result=InlineQueryResultArticle(
|
reply_markup=reply_markup,
|
||||||
id=id,
|
title=title,
|
||||||
reply_markup=reply_markup,
|
input_message_content=input_message_content
|
||||||
title=title,
|
|
||||||
input_message_content=input_message_content
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -148,3 +144,21 @@ def send_to_vosk(audio):
|
|||||||
)
|
)
|
||||||
|
|
||||||
return r.json()
|
return r.json()
|
||||||
|
|
||||||
|
|
||||||
|
async def mans(message, text):
|
||||||
|
if message.guest_query_id:
|
||||||
|
return await message.answer_guest_query(
|
||||||
|
result=InlineQueryResultArticle(
|
||||||
|
id=1,
|
||||||
|
reply_markup=None,
|
||||||
|
title="da",
|
||||||
|
input_message_content=InputTextMessageContent(
|
||||||
|
message_text=text,
|
||||||
|
parse_mode="Markdown"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
return await message.reply_text(text)
|
||||||
|
|
||||||
@@ -105,7 +105,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
return
|
return
|
||||||
if blocked:
|
if blocked:
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, text, title="ошибка врат")
|
await g_answer(text, title="ошибка врат")
|
||||||
elif event.message:
|
elif event.message:
|
||||||
error_message = await message.reply(text)
|
error_message = await message.reply(text)
|
||||||
await asyncio.sleep(7)
|
await asyncio.sleep(7)
|
||||||
@@ -158,27 +158,32 @@ async def guest_middleware(handler, event, data):
|
|||||||
da = "не врат не пойдёт такой длинный голосовой сообщение" \
|
da = "не врат не пойдёт такой длинный голосовой сообщение" \
|
||||||
". \nнадо меньше 60 секунд da✅"
|
". \nнадо меньше 60 секунд da✅"
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, da)
|
await g_answer(message, da)
|
||||||
else:
|
else:
|
||||||
await message.reply(da)
|
await message.reply(da)
|
||||||
buf = BytesIO()
|
buf = BytesIO()
|
||||||
await bot.download(voice, destination=buf)
|
try:
|
||||||
|
brat = await bot.download(voice, destination=buf)
|
||||||
|
except Exception as e:
|
||||||
|
print(f"{YELLOW} -- voice err - {e}{RESET}")
|
||||||
buf.seek(0)
|
buf.seek(0)
|
||||||
|
|
||||||
result = await asyncio.to_thread(
|
try:
|
||||||
send_to_vosk,
|
if brat:
|
||||||
buf.read()
|
result = await asyncio.to_thread(
|
||||||
)
|
send_to_vosk,
|
||||||
|
buf.read()
|
||||||
prompt = f"<голосовое сообщение>{result.get('text', 'не распознано')}</голосовое сообщение>{prompt}"
|
)
|
||||||
|
except Exception as e:
|
||||||
|
prompt = f"<голосовое сообщение>ошибка подключения к api stt</голосовое сообщение>{prompt}"
|
||||||
|
print(f"{RED} -- voice err - {e}{RESET}")
|
||||||
|
else:
|
||||||
|
prompt = f"<голосовое сообщение>{result.get('text', 'не распознано')}</голосовое сообщение>{prompt}"
|
||||||
|
|
||||||
|
|
||||||
if message.document:
|
if message.document:
|
||||||
if message.document.file_size > 4096:
|
if message.document.file_size > 4096:
|
||||||
if event.guest_message:
|
await mans(message, "слишком много данных не хочу отвечать☝️☝️")
|
||||||
await g_answer(data, message, "слишком много данных не хочу отвечать☝️☝️")
|
|
||||||
elif event.message:
|
|
||||||
await message.reply("слишком много данных не хочу отвечать☝️☝️")
|
|
||||||
return
|
return
|
||||||
|
|
||||||
file_bytes = io.BytesIO()
|
file_bytes = io.BytesIO()
|
||||||
@@ -193,25 +198,16 @@ async def guest_middleware(handler, event, data):
|
|||||||
prompt = f"<файл>{file_content}</файл>{prompt}"
|
prompt = f"<файл>{file_content}</файл>{prompt}"
|
||||||
|
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
if event.guest_message:
|
await mans(message, "файл не вошёл брат❌❌")
|
||||||
await g_answer(data, message, "файл не вошёл брат❌❌")
|
|
||||||
elif event.message:
|
|
||||||
await message.reply("файл не вошёл брат❌❌")
|
|
||||||
return
|
return
|
||||||
|
|
||||||
except Exception:
|
except Exception:
|
||||||
if event.guest_message:
|
await mans(message, "файл не вошёл ало ошибка❌❌")
|
||||||
await g_answer(data, message, "файл не вошёл ало ошибка❌❌")
|
|
||||||
elif event.message:
|
|
||||||
await message.reply("файл не вошёл ало ошибка❌❌")
|
|
||||||
return
|
return
|
||||||
|
|
||||||
if replied and replied.document:
|
if replied and replied.document:
|
||||||
if replied.document.file_size > 4096:
|
if replied.document.file_size > 4096:
|
||||||
if event.guest_message:
|
await mans(message, "слишком много данных не хочу отвечать☝️☝️")
|
||||||
await g_answer(data, message, "слишком много данных не хочу отвечать☝️☝️")
|
|
||||||
elif event.message:
|
|
||||||
await message.reply("слишком много данных не хочу отвечать☝️☝️")
|
|
||||||
return
|
return
|
||||||
|
|
||||||
file_bytes = io.BytesIO()
|
file_bytes = io.BytesIO()
|
||||||
@@ -222,10 +218,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
file_content = file_bytes.read().decode("utf-8", errors="ignore")
|
file_content = file_bytes.read().decode("utf-8", errors="ignore")
|
||||||
prompt = f"<файл>{file_content}</файл>{prompt}"
|
prompt = f"<файл>{file_content}</файл>{prompt}"
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
if event.guest_message:
|
await mans(message, "файл не вошёл❌")
|
||||||
await g_answer(data, message, "файл не вошёл❌")
|
|
||||||
elif event.message:
|
|
||||||
await message.reply("файл не вошёл❌")
|
|
||||||
return
|
return
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"{RED} -- {e}{RESET}")
|
print(f"{RED} -- {e}{RESET}")
|
||||||
@@ -317,7 +310,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
]
|
]
|
||||||
)
|
)
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, alloh_one_text, reply_markup=reply_markup_url)
|
await g_answer(message, alloh_one_text, reply_markup=reply_markup_url)
|
||||||
elif event.message:
|
elif event.message:
|
||||||
await message.reply_rich(InputRichMessage(markdown="# новый крутой стилёк\n*da*\n```\nтестовое сообщение врат\n```"))
|
await message.reply_rich(InputRichMessage(markdown="# новый крутой стилёк\n*da*\n```\nтестовое сообщение врат\n```"))
|
||||||
await message.answer(alloh_text, reply_markup=reply_markup)
|
await message.answer(alloh_text, reply_markup=reply_markup)
|
||||||
@@ -438,7 +431,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, "гостевой режим не работает с опросами. либо добавь меня " \
|
await g_answer(message, "гостевой режим не работает с опросами. либо добавь меня " \
|
||||||
"в группу, либо напиши мне в личку чтобы я выдал тебе опрос. ✅"
|
"в группу, либо напиши мне в личку чтобы я выдал тебе опрос. ✅"
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
@@ -446,7 +439,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
return
|
return
|
||||||
|
|
||||||
if result and event.guest_message:
|
if result and event.guest_message:
|
||||||
await g_answer(data, message, "отправил опрос в личку, так как гостевой режим не работает с " \
|
await g_answer(message, "отправил опрос в личку, так как гостевой режим не работает с " \
|
||||||
"опросами✅✅"
|
"опросами✅✅"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -461,7 +454,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, result, user_id=user_id)
|
await g_answer(message, result, user_id=user_id)
|
||||||
elif event.message:
|
elif event.message:
|
||||||
if msg:
|
if msg:
|
||||||
if stream == "native":
|
if stream == "native":
|
||||||
@@ -481,7 +474,7 @@ async def guest_middleware(handler, event, data):
|
|||||||
kwargs["parse_mode"] = None
|
kwargs["parse_mode"] = None
|
||||||
try:
|
try:
|
||||||
if event.guest_message:
|
if event.guest_message:
|
||||||
await g_answer(data, message, result)
|
await g_answer(message, result)
|
||||||
elif event.message:
|
elif event.message:
|
||||||
if msg:
|
if msg:
|
||||||
if stream == "native":
|
if stream == "native":
|
||||||
|
|||||||
+12
-7
@@ -70,19 +70,19 @@ def clean_tail_repeats(text: str, max_repeat: int = 10):
|
|||||||
|
|
||||||
|
|
||||||
def parse_response(text: str):
|
def parse_response(text: str):
|
||||||
if "Connection error." in text:
|
if "connection error." in text:
|
||||||
return {
|
return {
|
||||||
"type": "connection",
|
"type": "connection",
|
||||||
"message": "ошибка подключения к провайдеру. подожди или смени провайдера в настройках узбекгпт.",
|
"message": "ошибка подключения к провайдеру. подожди или смени провайдера в настройках узбекгпт.",
|
||||||
}
|
}
|
||||||
elif "Model quota exceeded" in text:
|
elif "model quota exceeded" in text:
|
||||||
return {
|
return {
|
||||||
"type": "quota",
|
"type": "quota",
|
||||||
"message": "лимит токенов закончился. подожди или смени модель.",
|
"message": "лимит токенов закончился. подожди или смени модель.",
|
||||||
}
|
}
|
||||||
elif "tier capacity exceeded." in text:
|
elif "tier capacity exceeded." in text:
|
||||||
return {"type": "tier", "message": "попробуй ещё раз!"}
|
return {"type": "tier", "message": "попробуй ещё раз!"}
|
||||||
elif "Internal server" in text:
|
elif "internal server" in text:
|
||||||
return {
|
return {
|
||||||
"type": "int",
|
"type": "int",
|
||||||
"message": "произошла ошибка на стороне провайдера. подожди или смени провайдера в настройках узбекгпт.",
|
"message": "произошла ошибка на стороне провайдера. подожди или смени провайдера в настройках узбекгпт.",
|
||||||
@@ -92,10 +92,15 @@ def parse_response(text: str):
|
|||||||
"type": "incomplete",
|
"type": "incomplete",
|
||||||
"message": "сервер петух и оборвал соединение. подожди или смени провайдера в настройках узбекгпт.",
|
"message": "сервер петух и оборвал соединение. подожди или смени провайдера в настройках узбекгпт.",
|
||||||
}
|
}
|
||||||
elif "invalid token" in text:
|
elif "provider error" in text:
|
||||||
return {
|
return {
|
||||||
"type": "incomplete",
|
"type": "provider",
|
||||||
"message": "указан неверный токен. смени провайдера или модель.",
|
"message": "врат ошибка на стороне провайдера модели. смени провайдера или модель.",
|
||||||
|
}
|
||||||
|
elif "rate limit" in text:
|
||||||
|
return {
|
||||||
|
"type": "quota",
|
||||||
|
"message": "лимит токенов закончился у провайдера врат. подожди или смени модель.",
|
||||||
}
|
}
|
||||||
else:
|
else:
|
||||||
return {
|
return {
|
||||||
@@ -406,7 +411,7 @@ async def openai_generate_text(
|
|||||||
else:
|
else:
|
||||||
text = completion.choices[0].message.content
|
text = completion.choices[0].message.content
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
error = parse_response(str(e))
|
error = parse_response(str(e).lower())
|
||||||
print(f"{RED} -- {error['type']} - {e}{RESET}")
|
print(f"{RED} -- {error['type']} - {e}{RESET}")
|
||||||
return error["message"]
|
return error["message"]
|
||||||
else:
|
else:
|
||||||
|
|||||||
Reference in new issue
Block a user