MiniMax Agent 需要配置为“多轮会话保持”模式,并通过 session_state 或 chain_tool_call 传递中间结果,结合结构化 Prompt 与严格的 JSON 输出,才能稳定、准确地执行多步骤任务。

如果你希望 MiniMax Agent 在处理多步骤任务时,能够按顺序完成多个子任务并正确传递中间结果,就必须避免它只执行第一步后中断,或在后续步骤中丢失上下文信息。
确认Agent当前是否支持多步骤执行
打开 MiniMax 控制台 → 进入对应 Agent 的「配置」页面 → 点击「高级设置」标签页 → 查看「执行模式」选项。
如果当前显示为「单步响应」,则必须切换为「多轮会话保持」,否则后续所有代码层面的优化和调整都不会生效。
这一步绝对不能省略——【在单步响应模式下,Agent 每次调用都会清空历史上下文,无法识别和继承前序步骤的信息】。
修改tool_call逻辑以支持步骤间状态传递
方法一:使用 session_state 显式传参
在每个 tool_call 的参数中,都需要把上一步返回的关键字段明确补充进去。例如,上一步已经返回了 order_id 和 user_address,那么下一步调用 shipping_api 时,这两个字段就必须作为参数一同传入,不能依赖 Agent 去“自动记忆”这些中间结果。
方法二:改用 chain_tool_call 方式(推荐)
你可以把原本零散分散的 tool_calls 收拢为一个按执行顺序串联起来的链式调用数组;数组中的每个 item 都保留三个字段:name、parameters、depends_on。对于 depends_on,直接填写前一个步骤的 output_key,例如 "order_id"。
这个改法实际并不复杂,通常只需要把原来并列的 tool_calls 改成嵌套数组结构即可。但要特别注意,depends_on 的值必须与前一项的 output_key 完全一致,大小写、下划线以及字段拼写都不能出错。
重写prompt模板以激活步骤推理能力
第一步:在 system prompt 末尾追加指令:“你正在执行一个多步骤任务。每一步完成后,必须明确输出关键词【STEP_DONE:step_name】,且仅输出一次。”
第二步:在 user prompt 开头插入当前步骤编号和前置条件,例如:“【当前步骤:3/5】你已获得支付凭证 pay_token=ptk_xxx,请调用 verify_payment 接口校验。”
第三步:删除所有模糊表达,比如“根据情况决定下一步”,统一替换为“若 status=success,则执行步骤4;若 status=failed,则执行步骤5”。因为 Agent 对模糊指令的理解能力有限,更容易卡在分支判断上。
第四步:在每个工具调用后,强制要求返回结构化 JSON,字段名称统一使用 snake_case,禁止混用驼峰命名和空格命名。
验证中间状态是否真正留存
在本地调试 MiniMax Agent 时,调用完成后应立即打印 response['session_state'] 的内容。
如果其中没有 prev_step_output 或 tool_results 等字段,就说明 session_state 没有启用,或者虽然启用了但并未成功写入。
此时需要重点检查:是否在请求头中设置了 X-Session-ID;是否在每一次调用时都复用了同一个 session_id;【session_id 不一致会导致上下文状态彻底丢失,而且通常不会有任何报错提示】。
