You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Langchain4j调用Gemini-1.5-pro工具时第三次触发INVALID_ARGUMENT异常

异常含义与解决方法

异常含义

这个INVALID_ARGUMENT异常明确说明你向Gemini-1.5-Pro发起的工具调用违反了模型的对话轮次规则:工具调用必须紧跟在用户输入轮次,或者工具执行结果返回的轮次之后。第三次调用时触发该异常,大概率是对话历史的轮次顺序或类型出现错误,导致模型判定当前场景不允许发起工具调用。

避免方法

  • 严格遵循合法对话轮次逻辑:对话历史需保持「用户输入 → 工具调用 → 工具结果 → 工具调用 → ...」或「用户输入 → 模型纯文本回复 → 用户输入 → 工具调用」的结构,禁止出现连续工具调用(未插入工具结果)、或在模型纯文本回复后直接发起工具调用的情况。
  • 规范LangChain4j对话历史的消息类型:确保每次工具执行完成后,将结果以ToolExecutionResultMessage类型添加到对话历史,而非误标记为UserMessage或AiMessage——这三类消息的区分是模型判断轮次合法性的关键。
  • 排查第三次调用前的轮次状态:在触发第三次工具调用前,打印或调试对话历史的所有轮次,检查是否存在多余的AiMessage(模型纯文本回复),或遗漏了前一次工具调用对应的ToolExecutionResultMessage。
  • 不要随意手动修改对话历史:除非明确了解轮次规则,否则不要手动插入或修改对话历史中的消息,尽量让LangChain4j的工具调用流程自动维护轮次顺序与类型。

内容的提问来源于stack exchange,提问作者kstanisz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 21:07:46