Gemini 3.5 Flash兼容性问题反馈

当我把模型切换到Gemini 3.5的时候,会话时常会出现下列错误信息,

Function call is missing a thought_signature in functionCall parts. This is required for tools to work correctly, and missing thought_signature may lead to degraded model performance. Additional data, function call `default_api:TodoWrite` , position 10. Please refer to https://ai.google.dev/gemini-api/docs/thought-signatures for more details. (HTTP Status: 400) (4028)

这是一个 Gemini 3.5 API 兼容性问题,需要 SOLO 应用更新其对 Gemini 工具调用的实现来支持 thought_signature 参数。在此之前,建议暂时使用其他模型或避免在 Gemini 3.5 会话中使用工具功能。

1 个赞

确实是兼容问题,把问题反馈到【帮助与支持】板块吧。

1 个赞


这样配置下试试

1 个赞

仍然不行。与Gemini进行一般对话是可以的,但是一旦涉及到技能调用就会出现上述问题。似乎主要是因为当前版本的Gemini对话方式和OpenAI以及Anthropic不同,每当定义一个Function时并将其传给模型后,模型会在回复时返回一个属于该Function的“thought_signature”。必须在下次会话请求时把之前模型返回的“thought_signature”加入上下文,否则就会出现上述错误。但SOLO中预设的会话机制没有兼容这一要求

1 个赞


辛苦发个对话id

1 个赞

我也是gemini-3.5
我遇上的另一个问题 The custom model provider has returned empty content. (HTTP Status: 500)
对话id .2833920402917259:3b8d083146c8321e2fe2548ae215d064_6a180ebc074529e4bcbaa663.6a180ec1074529e4bcbaa668.6a180ec1ee93aa553ea8e2ff:Trae CN.T(2026/5/28 17:45:37)

1 个赞

445720261562747:c53c4d5e13ca0d951c845efe7458a8df_6a1e3c9460c719b3f2c3d248.6a1e3c94b4817d61a1335aea.6a1e3c9460c719b3f2c3d24a:TRAE SOLO CN.0.1.15.no_sid.no_ppe.T(2026/6/2 10:14:44)

1 个赞

收到,我们看下

1 个赞

哈喽~可以在试试,修复了一版。

1 个赞

我是直接400,或者503

1 个赞

在 Trae 官方更新自定义 LLM 源码、使其能够原生支持 Google 的 thought_signature 机制之前,你绝对无法通过直连 Google API Key 的方式完美跑通 Trae 的 Agent 任务。


第一层:Agent 模式下的“思维断链”(400 报错)

当你让 Trae 执行具体任务(如 default_api:Glob 搜索文件)时,过程会像一场抛接球游戏:

1. Trae 发起任务 ➔ 
2. Gemini 3 响应 ➔ "我要用搜索工具,同时给你一个【加密状态包 (thought_signature)】"
3. Trae 拿到工具 ➔ 执行了本地文件搜索
4. Trae 汇报结果 ➔ "我搜完了,这是结果。"(❌ 这里漏掉了那个加密状态包)
5. Google API 拦截 ➔ "拒绝处理!你把我的【加密状态包】弄丢了,报 HTTP 400 错误!"

由于 Trae 的自定义 LLM 模块是按照标准 OpenAI 协议(非原生 Google 协议)开发的,它在多轮对话中会直接“裁剪”或“丢弃” Google 发过来的加密签名字段(thought_signature)。Google API 只要发现这个签名断了,就会立刻阻断任务。

第二层:格式转换时的“参数污染”(400 报错)

为了绕过上面的问题,你尝试在 Trae 中切换 OpenAI 格式或 Anthropic 格式:

  • 当你选 OpenAI 格式 时,Trae 误以为你是推理模型,会在数据包里擅自加上 "thinking": true

  • 当你选 Anthropic 格式 时,Trae 会按照 Claude 的标准把工具打包成 input_schema

然而,你底层的 API 地址指向的依然是 Google。Google 的网关非常严苛,它一看到请求里有 thinkinginput_schema 这些它不认识的字段,就会立刻抛出 Unknown name "thinking"Unknown name "input_schema" 的 JSON 载荷非法报错。


你可以直接在 Trae 的自定义模型 ID 中填写 gemini-3.1-flash-lite。但是,由于它是标准的 Gemini 3 系列推理模型,调用结果会出现以下物理分裂

  • 基础对话(Chat 模式):可以跑通。 如果你只是在聊天框里问它代码怎么写、解释一个概念,没有任何报错。因为不触发外部工具,Google 不会校验签名。

  • 具体任务(Agent 模式):必死锁报错。 一旦你让它执行“查找文件、读取代码、修改错误、打开终端”等具体任务,Trae 就会触发底层工具调用。正如报错规则所示,Gemini 3.1 强制要求客户端回传 thought_signature,而 Trae 无法回传,依然会立刻卡死在 HTTP 400 (missing a thought_signature)

2. 为什么 Lite 也会这样?

gemini-3.1-flash-lite 虽然定位为极速、轻量、低成本,但它依然继承了 Gemini 3 架构的原生 Reasoning(推理)特性(支持设置最低到高的思考级别)。Google 官方文档明确指出:所有 Gemini 3 系列模型在处理函数调用(Function Calling)时,都必须严格闭环校验思维签名

1 个赞

彻底验证了之前的技术定论:在 Trae 官方没有专门升级对齐 Google 的思维签名协议前,你直连 Google Key 的玩法,上限只能当成一个“高级聊天框(Chat)”来用。一旦想让它干重体力活(自动查文件、自动用 Skill 联网、自动改代码),它脆弱的协议接口就会立刻散架报错。

1 个赞

国际版什么时候会上新版gemini

1 个赞

对啊,国际版我们是花钱的,但是模型都有点老了