fix: increase agent execute and chat completions timeouts to ≥600s#194
Conversation
- Agent completions/async_completions: enforce min 600s timeout for OpenAI client - Executions: increase HTTP request timeout from 120s to 600s - Executions.wait: increase default polling timeout from 300s to 600s - Predictions.wait: increase default polling timeout from 300s to 600s Orion agent executions and chat completions can take several minutes, especially for complex tasks. Previous timeouts (120-300s) caused premature errors and retries. Co-Authored-By: dinesh@vlm.run <dinesh.andromeda@gmail.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
There was a problem hiding this comment.
Code Review
This pull request increases various timeout values to 600 seconds across the agent, executions, and predictions clients. Feedback on these changes highlights a potential TypeError in agent.py if the client timeout is configured as None, and suggests safely handling this case. Additionally, increasing the APIRequestor timeout to 600 seconds in executions.py is discouraged, as it affects metadata operations that should fail quickly, whereas the long-running wait is already properly handled by the wait method's timeout.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Summary
Increase timeouts for Orion agent execute and chat completions to ≥600s to prevent premature errors and retries on long-running tasks.
Changes:
Agent.completions/Agent.async_completionsOpenAI clientself._client.timeout(120s default)max(self._client.timeout, 600)Executions.__init__APIRequestorExecutions.wait()defaultPredictions.wait()defaultThe
Agent.completionschange usesmax()so users who explicitly set a timeout >600s keep their value, while the default 120s gets bumped to 600s.Related PRs: vlm-run/vlmrun-node-sdk (same changes), vlm-run/vlm-lab (server-side timeouts).
Link to Devin session: https://app.devin.ai/sessions/977e2c561b8c4ef8b72d04517946a4dc
Requested by: @dineshreddy91