跳转至

FAQ

是否必须配置所有模型 Provider?

不需要。当前 Models 组件会跳过没有 API Key 的 provider。最小场景下,只要有一个可用 Provider 能注册默认模型即可。

为什么先创建会话,再发起聊天?

因为流式聊天接口要求 sessionID 已存在。Session 管理的是会话元信息,Memory 则按 session 保存上下文,两者共同组成“连续对话”的基础。

为什么我明明配置了 max_turns,上下文窗口还是有限?

因为当前 Memory 实现内部有固定的窗口行为,配置项和真实窗口容量并不是完全一一对应。这个问题需要结合开发者文档理解实现细节。

可以只开聊天,不开工具和 RAG 吗?

可以。Tools 和 RAG 都属于增强能力。关闭后系统仍可做纯模型回答,只是外部查询和知识增强能力会下降。

为什么建议复用同一个 sessionID

因为 Agent 会从 Memory 中读取该 session 的窗口历史。换一个新的 session,本质上就是开始一轮新对话。

为什么 session_test 能直接用?

因为 AgentHandler 初始化时会自动创建一个开发用 mock session。它适合本地联调,不建议把这种行为视为生产约定。

项目支持多实例部署吗?

HTTP 服务层面可以部署多个实例,但当前 Session 与 Memory 是进程内状态,没有天然共享上下文能力,所以直接横向扩容并不能得到一致的会话体验。