mirror of
https://github.com/migatu/conjurer.git
synced 2026-07-14 21:38:38 +00:00
Error handling for openai
This commit is contained in:
@@ -385,14 +385,38 @@ async def on_message(message):
|
||||
logger.info("Poczatek procedury obrazkowej")
|
||||
message.content = message.content.replace("imaginuje sobie: ", "")
|
||||
logger.debug("Wywolanie obrazka: %s", message.content)
|
||||
response = await openAIClient.images.generate(
|
||||
try:
|
||||
response = await openAIClient.images.generate(
|
||||
model="dall-e-3",
|
||||
prompt=message.content,
|
||||
size="1024x1024",
|
||||
quality="standard",
|
||||
n=1,
|
||||
)
|
||||
|
||||
)
|
||||
except openai.APITimeoutError as e:
|
||||
#Handle timeout error, e.g. retry or log
|
||||
await message.reply (f"*Kondziu patrzy na terminal, czeka, czeka, czeka,.... Jeszcze chwile czeka Przypierdala w niego pięścią....* Nie mogę się połączyć z Openai spróbuj od nowa. *Na ekranie pojawia się*: {e}")
|
||||
except openai.APIConnectionError as e:
|
||||
await message.reply(f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Nie mogę się połączyć z Openai. *Na ekranie pojawia się*: {e}")
|
||||
except openai.BadRequestError as e:
|
||||
#Handle invalid request error, e.g. validate parameters or log
|
||||
if message.author.nick:
|
||||
username = message.author.nick
|
||||
else:
|
||||
username = message.author.name
|
||||
resp, _ = await handle_response(f"Wytlumacz jakie sa zasady dotyczące treści które możesz generować używając Dalle. Wytłumacz błąd {e} prostym językiem. Przeproś za nadmierną cenzurę. Wytłumacz co mogło być nie tak w prompcie '{message.content}'",True,True,MESSAGE_TABLE,username,"RANDOM")
|
||||
await message.reply(f"Sorki, cenzura: {resp}. Jak chcesz to są kanały na nudle #sexy-foteczky i #kanal-do-fapania *Na ekranie pojawia się: {e}")
|
||||
except openai.AuthenticationError as e:
|
||||
#Handle authentication error, e.g. check credentials or log
|
||||
await message.reply(f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Wołaj szefa - coś się z hasłem zjebało. *Na terminalu pojawia się:* {e}")
|
||||
except openai.PermissionDeniedError as e:
|
||||
#Handle permission error, e.g. check scope or log
|
||||
await message.reply((f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Wołaj szefa - coś się z uprawnieniami zjebało. *Na terminalu pojawia się:* {e}"))
|
||||
except openai.RateLimitError as e:
|
||||
await message.reply(f"*Kondziu patrzy na terminal* Wołaj szefa. Zapłacić rachunki za AI trzeba. Jak chcesz to się na #zebranie dorzuć. {e}")
|
||||
except openai.APIError as e:
|
||||
#Handle API error, e.g. retry or log
|
||||
await message.reply(f"OpenAI API returned an API Error: {e}")
|
||||
logger.info(response)
|
||||
image_url = response.data[0].url
|
||||
logger.debug("Wynikowy obrazek pod url: %s", image_url)
|
||||
@@ -854,9 +878,37 @@ async def handle_response(
|
||||
temp = {"role": "user", "content": final_prompt}
|
||||
history.append(temp)
|
||||
logger.info("Rozmiar zapytania po wyslaniu %s", chat_gpt_config_request_size)
|
||||
response = await openAIClient.chat.completions.create(
|
||||
model=algorithm, messages=history
|
||||
)
|
||||
try:
|
||||
response = await openAIClient.chat.completions.create(
|
||||
model=algorithm, messages=history
|
||||
)
|
||||
except openai.APITimeoutError as e:
|
||||
#Handle timeout error, e.g. retry or log
|
||||
result = f"*Kondziu patrzy na terminal, czeka, czeka, czeka,.... Jeszcze chwile czeka Przypierdala w niego pięścią....* Nie mogę się połączyć z Openai spróbuj od nowa. *Na ekranie pojawia się*: {e}"
|
||||
except openai.APIConnectionError as e:
|
||||
result = f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Nie mogę się połączyć z Openai. *Na ekranie pojawia się*: {e}"
|
||||
except openai.BadRequestError as e:
|
||||
#Handle invalid request error, e.g. validate parameters or log
|
||||
resp, _ = await handle_response(f"Wytlumacz jakie sa zasady dotyczące treści które możesz generować używając Dalle. Wytłumacz błąd {e} prostym językiem. Przeproś za nadmierną cenzurę. Wytłumacz co mogło być nie tak w prompcie 'prompt'",True,True,MESSAGE_TABLE,username,"RANDOM")
|
||||
result = f"Sorki, cenzura: {resp}. Jak chcesz to są kanały na nudle #sexy-foteczky i #kanal-do-fapania *Na ekranie pojawia się: {e}"
|
||||
except openai.APIResponseValidationError as e:
|
||||
#Handle invalid request error, e.g. validate parameters or log
|
||||
resp, _ = await handle_response(f"Wytlumacz jakie sa zasady dotyczące treści które możesz generować używając Dalle. Wytłumacz błąd {e} prostym językiem. Przeproś za nadmierną cenzurę. Wytłumacz co mogło być nie tak w prompcie 'prompt'",True,True,MESSAGE_TABLE,username,"RANDOM")
|
||||
result = f"Sorki, cenzura: {resp}. Jak chcesz to są kanały na nudle #sexy-foteczky i #kanal-do-fapania *Na ekranie pojawia się: {e}"
|
||||
except openai.AuthenticationError as e:
|
||||
#Handle authentication error, e.g. check credentials or log
|
||||
result = f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Wołaj szefa - coś się z hasłem zjebało. *Na terminalu pojawia się:* {e}"
|
||||
except openai.PermissionDeniedError as e:
|
||||
#Handle permission error, e.g. check scope or log
|
||||
result = f"*Kondziu patrzy na terminal, chwile się zastanawia. Przypierdala w niego pięścią....* Wołaj szefa - coś się z uprawnieniami zjebało. *Na terminalu pojawia się:* {e}"
|
||||
except openai.RateLimitError as e:
|
||||
result = f"*Kondziu patrzy na terminal* Wołaj szefa. Zapłacić rachunki za AI trzeba. Jak chcesz to się na #zebranie dorzuć. {e}"
|
||||
except openai.UnprocessableEntityError as e:
|
||||
result = f"*Kondziu patrzy na terminal. Potem na to co każesz mu wysłać....* Ja wiem że jesteśmy w barze BDSM - ale nie da się włożyć TEGO w TO. *Za jego plecami na terminalu pojawia się:* {e}"
|
||||
except openai.APIError as e:
|
||||
#Handle API error, e.g. retry or log
|
||||
result = f"*Kondziu nurkuje za bar, terminal wybucha. Przed tobą ląduje pergamin zapisany pięknym gotykiem a na nim*: {e}"
|
||||
|
||||
|
||||
logger.info("Historia wysłana:")
|
||||
logger.info(history)
|
||||
|
||||
Reference in New Issue
Block a user