mirror of
https://github.com/home-assistant/core.git
synced 2025-07-28 15:47:12 +00:00
Report correctly when no funds for OpenAI (#148677)
This commit is contained in:
parent
023dd9d523
commit
f3ad6bd9b6
@ -362,18 +362,25 @@ class OpenAIBaseLLMEntity(Entity):
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
result = await client.responses.create(**model_args)
|
result = await client.responses.create(**model_args)
|
||||||
except openai.RateLimitError as err:
|
|
||||||
LOGGER.error("Rate limited by OpenAI: %s", err)
|
|
||||||
raise HomeAssistantError("Rate limited or insufficient funds") from err
|
|
||||||
except openai.OpenAIError as err:
|
|
||||||
LOGGER.error("Error talking to OpenAI: %s", err)
|
|
||||||
raise HomeAssistantError("Error talking to OpenAI") from err
|
|
||||||
|
|
||||||
async for content in chat_log.async_add_delta_content_stream(
|
async for content in chat_log.async_add_delta_content_stream(
|
||||||
self.entity_id, _transform_stream(chat_log, result, messages)
|
self.entity_id, _transform_stream(chat_log, result, messages)
|
||||||
):
|
):
|
||||||
if not isinstance(content, conversation.AssistantContent):
|
if not isinstance(content, conversation.AssistantContent):
|
||||||
messages.extend(_convert_content_to_param(content))
|
messages.extend(_convert_content_to_param(content))
|
||||||
|
except openai.RateLimitError as err:
|
||||||
|
LOGGER.error("Rate limited by OpenAI: %s", err)
|
||||||
|
raise HomeAssistantError("Rate limited or insufficient funds") from err
|
||||||
|
except openai.OpenAIError as err:
|
||||||
|
if (
|
||||||
|
isinstance(err, openai.APIError)
|
||||||
|
and err.type == "insufficient_quota"
|
||||||
|
):
|
||||||
|
LOGGER.error("Insufficient funds for OpenAI: %s", err)
|
||||||
|
raise HomeAssistantError("Insufficient funds for OpenAI") from err
|
||||||
|
|
||||||
|
LOGGER.error("Error talking to OpenAI: %s", err)
|
||||||
|
raise HomeAssistantError("Error talking to OpenAI") from err
|
||||||
|
|
||||||
if not chat_log.unresponded_tool_results:
|
if not chat_log.unresponded_tool_results:
|
||||||
break
|
break
|
||||||
|
Loading…
x
Reference in New Issue
Block a user