diff --git a/_local/system.env.example b/_local/system.env.example index 1a6dc25a..34ac6a01 100644 --- a/_local/system.env.example +++ b/_local/system.env.example @@ -271,6 +271,8 @@ OCLAW_OPS_AI_SHARED_TOKEN= AIA_OPENAI_TOOLS_MAX_JSON_CHARS= AIA_SHRINK_OPENAI_TOOLS= AIA_SHRINK_OPENAI_TOOLS_MAX_JSON= +# OpenAI 兼容 /chat/completions:默认在每个 tools[].function 写入 strict: true;网关因未知字段 400 时设为 0。 +AIA_TOOL_FUNCTION_STRICT= AIA_REPLAY_POLICY_ENABLED= AIA_REPLAY_REPAIR_TOOL_PAIRING= diff --git a/docs/ENVIRONMENT_VARIABLES.md b/docs/ENVIRONMENT_VARIABLES.md index 813e8fcc..54656c29 100644 --- a/docs/ENVIRONMENT_VARIABLES.md +++ b/docs/ENVIRONMENT_VARIABLES.md @@ -146,6 +146,13 @@ - 作用:可选的 host 子串黑名单,强制走 prompt-tool 模式 - 生效:`oclaw/platform/llm/chat_models.py` +- `AIA_TOOL_FUNCTION_STRICT` + - 默认:未设置即 **开启**(在发往 OpenAI 兼容 **`/chat/completions`** 的请求里,为每个 **`tools[].function`** 写入 **`strict: true`**) + - 作用:设为 `0` / `false` / `no` / `off`(大小写不敏感)时关闭,避免少数网关因未知字段校验失败返回 400 + - 说明:与具体模型无关;若使用 DeepSeek 文档中的 **strict(Beta)工具模式**,还需 **`/beta`** base URL 与符合规范的 JSON Schema,参见 [DeepSeek Tool Calls](https://api-docs.deepseek.com/zh-cn/guides/tool_calls) + - 示例:`_local/system.env.example` + - 生效:`svc/llm/transports/openai_chat_completions.py` + ## 工具执行与安全 - `AIA_DISABLE_TOOL_CONFIRM` diff --git a/docs/ENVIRONMENT_VARIABLES_CHANGELOG.md b/docs/ENVIRONMENT_VARIABLES_CHANGELOG.md index bc93b583..23096453 100644 --- a/docs/ENVIRONMENT_VARIABLES_CHANGELOG.md +++ b/docs/ENVIRONMENT_VARIABLES_CHANGELOG.md @@ -60,6 +60,7 @@ ## 2026-05-10 / Unreleased ### Added +- `AIA_TOOL_FUNCTION_STRICT`:控制 OpenAI 兼容 chat completions 是否在 **`tools[].function`** 上默认加 **`strict: true`**;`0`/`false`/`no`/`off` 关闭;默认开启。影响模块:`svc/llm/transports/openai_chat_completions.py`。示例占位:`_local/system.env.example`。 - `AIA_IMAGE_EXPERT_API_KEY`、`AIA_IMAGE_EXPERT_BASE_URL`、`AIA_IMAGE_EXPERT_MODEL`、`AIA_IMAGE_EXPERT_CHAT_ENDPOINT`:图片专家(`send_legacy_image_messages`)专线,与 **`AIA_OCR_*`** 互不继承。 - `AIA_IMAGE_EXPERT_REQUEST_EXTRA`:图片专家顶层 JSON;旧名 **`AIA_LEGACY_IMAGE_REQUEST_EXTRA`** 仍作别名可读。 - `DASHSCOPE_IMAGE_*`(零散变量):由 `image_legacy_client` 映射为请求体顶层字段。