Skip to content

feat(agent): support customizable LLM call timeout#916

Merged
lyingbug merged 1 commit into
Tencent:mainfrom
tsukiga-kirei:feat/customizable-agent-timeout
Apr 7, 2026
Merged

feat(agent): support customizable LLM call timeout#916
lyingbug merged 1 commit into
Tencent:mainfrom
tsukiga-kirei:feat/customizable-agent-timeout

Conversation

@tsukiga-kirei
Copy link
Copy Markdown
Contributor

Pull Request

描述 (Description)

针对 issue #870 中提到的智能体长推理超时问题以及个人遇到的同样问题,引入了对智能体(Agent) LLM 调用超时的多级自定义支持。

主要变更内容:

  1. 全局默认值控制:新增环境变量 WEKNORA_AGENT_LLM_TIMEOUT,允许通过 .env 文件快速调整所有 Agent 的默认超时时间(默认 120s)。
  2. Docker 环境支持:同步更新 docker-compose.yml 环境部分,确保环境变量能正确传递到应用容器。
  3. 智能体独立配置:在 CustomAgentConfig 结构中增加了 llm_call_timeout 字段,支持在数据库层面为特定“重推理”智能体设置更长的时长限制(例如 600s)。
  4. 配置优先级链路:实现了 智能体特定配置 > 环境变量全局默认值 > 系统硬编码默认值 的优先级分层,兼顾了灵活性和易用性。
  5. 文档更新:同步更新了 .env.example,增加了相关配置项的说明及优先级注释。

解决的问题:
解决了在调用复杂的推理模型(如 GLM5 部署的模型)进行长思考任务时,由于系统硬编码的 120s 超时时间导致的 context deadline exceeded 报错以及中途连接断开的问题。

变更类型 (Type of Change)

  • 🐛 Bug 修复 (Bug fix)
  • ✨ 新功能 (New feature)
  • 💥 破坏性变更 (Breaking change)
  • 📚 文档更新 (Documentation update)
  • 🎨 代码重构 (Code refactoring)
  • ⚡ 性能优化 (Performance improvement)
  • 🧪 测试相关 (Test related)
  • 🔧 配置变更 (Configuration change)
  • 🐳 Docker 相关 (Docker related)
  • 🎨 前端 UI/UX (Frontend UI/UX)

影响范围 (Scope)

  • 后端 API (Backend API)
  • 前端界面 (Frontend UI)
  • 数据库 (Database)
  • 文档解析服务 (Document Reader Service)
  • MCP 服务器 (MCP Server)
  • Docker 配置 (Docker Configuration)
  • 配置文件 (Configuration)
  • 其他 (Other):

测试 (Testing)

  • 单元测试 (Unit tests)
  • 集成测试 (Integration tests)
  • 手动测试 (Manual testing)
  • 前端测试 (Frontend testing)
  • API 测试 (API testing)

测试步骤 (Test Steps)

1.在 .env 中设置 WEKNORA_AGENT_LLM_TIMEOUT=2。
2.调用具有长任务的 Agent,观察是否能在 2 秒后触发预期超时。

检查清单 (Checklist)

  • 代码遵循项目的编码规范
  • 已进行自我代码审查
  • 代码变更已添加适当的注释
  • 相关文档已更新
  • 故障排除文档已根据新功能更新
  • 变更不会产生新的警告
  • 已添加测试用例证明修复有效或功能正常

相关 Issue

Fixes #870

数据库迁移 (Database Migration)

  • 需要数据库迁移
  • 不需要数据库迁移

配置变更 (Configuration Changes)

需在 .env 中添加或修改 WEKNORA_AGENT_LLM_TIMEOUT

部署说明 (Deployment Notes)

由于修改了 docker-compose.yml 环境变量映射,部署时需重启容器以加载新映射配置。

@lyingbug lyingbug merged commit d5ecc15 into Tencent:main Apr 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Question]: 结果生成失败,返回context deadline exceeded

2 participants