问题描述
在 Agent 审查模式中,将审查模型配置为 openai_compatible 并接入 GLM Coding Plan(经 OpenAI-compatible 代理)时,所有工具调用都会被审查模块拒绝;使用相同审查提示词切换到 Anthropic 协议后可正常完成审查。
排查后确认,OpenAI 审查请求被上游以 HTTP 400 拒绝,原因是该模型只接受 temperature: 0.6,而 CyberStrikeAI 的审查模型调用无法为此供应商配置/覆盖该参数。调用异常又被 fail-closed 逻辑转换为 reject,最终形成大量误拒绝。
环境
- CyberStrikeAI:通过官方
upgrade.sh 更新到当时最新版本(2026-08-05)
- 系统:Kali Linux,linux/arm64
- 审查模式:Agent 审查模式
- 主模型协议:OpenAI compatible
- 审查模型协议(失败时):OpenAI compatible
- 上游模型:GLM Coding Plan(通过本地 OpenAI-compatible 代理接入)
API Key、登录信息及真实凭据均已省略。
复现步骤
- 正常配置主模型并确认普通模型调用成功。
- 开启 Agent 审查模式。
- 将
hitl.audit_model 配置为 openai_compatible,指向可正常访问的 OpenAI-compatible 地址和模型。
- 发起会触发任意工具调用的任务,例如只读查询、
exec 或资产查询。
- 观察到所有工具调用均被拒绝,审查记录显示:
audit agent: LLM 调用失败,保守拒绝
服务端日志中的实际错误为:
OpenAI chat completion returned non-200
status: 400
body: {"error":{"message":"invalid temperature: only 0.6 is allowed for this model","type":"invalid_request_error"}}
对应工具包括 http-framework-test、exec、execute、query_assets、list_project_facts 等,因此与特定工具参数无关。
- 保持审查提示词和任务不变,仅将审查模型切换为 Anthropic Messages 协议,审查立即恢复正常,能够返回
approve。
预期行为
- OpenAI-compatible 审查模型应允许配置
temperature,或者按供应商/模型要求覆盖该参数。
- 审查 LLM 调用失败应与模型明确作出的
reject 区分展示,避免用户将协议或参数错误误认为安全拒绝。
实际行为
- OpenAI-compatible 审查请求因
temperature 不兼容返回 HTTP 400。
- 审查模型调用异常被统一转换为
reject,导致所有低风险工具调用被误拒绝。
- 切换到 Anthropic 协议后问题消失。
建议修复
- 为
hitl.audit_model 增加可选的生成参数,例如:
hitl:
audit_model:
provider: openai_compatible
temperature: 0.6
- OpenAI 审查客户端应读取并传递该配置,而不是使用不可调整的默认值。
- 前端和审查日志区分以下状态:
- 审查模型明确返回
reject
- 审查模型 API 调用失败后触发 fail-closed
- 建议在错误详情中保留上游 HTTP 状态码和脱敏后的错误消息,便于定位模型兼容问题。
补充说明
此问题不影响普通 OpenAI-compatible 主模型调用;故障仅在 Agent 审查模型调用链中稳定复现。对照 Anthropic 协议成功,说明审查提示词及工具调用 JSON 本身可以正常处理。
问题描述
在 Agent 审查模式中,将审查模型配置为
openai_compatible并接入 GLM Coding Plan(经 OpenAI-compatible 代理)时,所有工具调用都会被审查模块拒绝;使用相同审查提示词切换到 Anthropic 协议后可正常完成审查。排查后确认,OpenAI 审查请求被上游以 HTTP 400 拒绝,原因是该模型只接受
temperature: 0.6,而 CyberStrikeAI 的审查模型调用无法为此供应商配置/覆盖该参数。调用异常又被 fail-closed 逻辑转换为reject,最终形成大量误拒绝。环境
upgrade.sh更新到当时最新版本(2026-08-05)复现步骤
hitl.audit_model配置为openai_compatible,指向可正常访问的 OpenAI-compatible 地址和模型。exec或资产查询。服务端日志中的实际错误为:
对应工具包括
http-framework-test、exec、execute、query_assets、list_project_facts等,因此与特定工具参数无关。approve。预期行为
temperature,或者按供应商/模型要求覆盖该参数。reject区分展示,避免用户将协议或参数错误误认为安全拒绝。实际行为
temperature不兼容返回 HTTP 400。reject,导致所有低风险工具调用被误拒绝。建议修复
hitl.audit_model增加可选的生成参数,例如:reject补充说明
此问题不影响普通 OpenAI-compatible 主模型调用;故障仅在 Agent 审查模型调用链中稳定复现。对照 Anthropic 协议成功,说明审查提示词及工具调用 JSON 本身可以正常处理。