fix(providers): validate stream idle timeout config

This commit is contained in:
yu-xin-c
2026-06-17 00:47:44 +08:00
committed by Xubin Ren
parent 7bec0f6e01
commit 846410f936
6 changed files with 190 additions and 10 deletions
+3 -2
View File
@@ -25,6 +25,7 @@ from nanobot.providers.base import (
LLMResponse,
ToolCallRequest,
parse_tool_arguments,
resolve_stream_idle_timeout_s,
tool_arguments_json_for_replay,
)
from nanobot.providers.openai_responses import (
@@ -1386,7 +1387,7 @@ class OpenAICompatProvider(LLMProvider):
on_tool_call_delta: Callable[[dict[str, Any]], Awaitable[None]] | None = None,
) -> LLMResponse:
await self._ensure_client()
idle_timeout_s = int(os.environ.get("NANOBOT_STREAM_IDLE_TIMEOUT_S", "90"))
idle_timeout_s = resolve_stream_idle_timeout_s()
try:
if self._should_use_responses_api(model, reasoning_effort):
try:
@@ -1503,7 +1504,7 @@ class OpenAICompatProvider(LLMProvider):
return LLMResponse(
content=(
f"Error calling LLM: stream stalled for more than "
f"{idle_timeout_s} seconds"
f"{idle_timeout_s:g} seconds"
),
finish_reason="error",
error_kind="timeout",