让 /v1/responses 文本请求按 Grok 模型路由到 Console#17
Conversation
There was a problem hiding this comment.
AI PR Review
Decision: comment
Confidence: 0.79
Summary
整体改动方向正确,已将 /v1/responses 文本请求按模型 provider 分流到 Grok Console,并为 Grok app-chat 返回显式 501,且补充了覆盖核心路径的测试。未发现明确阻塞合并的问题。
Findings
- [info] services/protocol/openai_v1_response.py:214 - 当前
response_events()在文本请求路径会先resolve_model(model)再决定是否走 Grok 路由;这意味着即使是非 Grok 文本模型,也会新增一次模型解析流程。建议确认这不会改变既有“未知/别名模型”在通用文本后端的容错行为(例如以前可透传、现在可能提前失败)。
Recent Comment Summary
实现与 PR 目标一致,测试补充也较完整;建议额外确认一次对非 Grok/未知模型的兼容行为,避免引入非预期回归。
|
补充说明:当前 |
Default routine Docker publish builds to linux/amd64, keep tag releases multi-platform, and validate manual platform inputs.
Adds the default Grok Console web_search tool while preserving caller-supplied web_search/x_search tools.
Routes Grok app-chat direct REST requests first unless a Browser Bridge URL is explicitly configured, while preserving bridge fallback for selected upstream failures.
There was a problem hiding this comment.
AI PR Review
Decision: comment
Confidence: 0.84
Summary
整体改动与 PR 目标(/v1/responses 对 Grok 模型显式路由)一致,测试覆盖也明显增强。未在已提供补丁中发现明确会导致功能错误的阻断性问题。
Findings
- [info] services/protocol/openai_v1_response.py:152 -
stream_grok_console_response()在stream=true场景下仍调用一次性grok.console_chat_completion(),当前会以单次response.output_text.delta输出完整文本而非真正逐段上游流式转发。该实现与现有事件结构兼容,但如果目标是降低首包延迟/实现真实 token 流,可后续考虑切到console_chat_completion_events()。 - [info] .github/workflows/docker-publish.yml:4 - 发布工作流新增了
push.branches: [main]触发条件。鉴于仓库开发分支为dev、main为稳定分支,这一配置在发布策略上是可理解的;建议团队确认是否希望在 main 的每次 push 也触发镜像发布(而不仅是 tag 发布),以避免非预期发布频率。
Recent Comment Summary
实现方向正确、测试补充充分;建议仅就“responses 流式是否需要真实上游流转发”与“main push 触发发布策略”做产品/运维层确认。
|
感谢贡献,PR #17 已完成审查并 squash merge 到 dev。 合并信息: 本次合并前处理:
合并验证:
说明:
|
变更说明
这个 PR 处理 #11:
/v1/responses文本请求使用 Grok 模型时,不再静默进入通用文本后端,而是按模型 provider 显式路由。主要改动
/v1/responses文本路径增加模型解析:grok.console_chat_completion()。/v1/responses返回明确501,避免静默走错后端。Responses 输出保持现有事件结构:
response.completed中的 Responses 格式对象。stream=true返回response.created、response.output_text.delta、response.output_text.done、response.completed等兼容事件。build_console_payload()保留 Responses 工具字段:toolstool_choiceparallel_tool_calls验证
已通过定向回归测试:
结果:
Ran 4 tests ... OK另外执行了:
结果:通过。
说明:
python -m unittest test.test_grok_provider仍存在一个既有测试替身错误,curl_cffi.requests.Session=object导致object(**kwargs)报错,和本 PR 修改的 Responses 路由无关。关联:#11