LangGraph代理递归限制异常:设100仍触发25上限报错
问题原因
recursion_limit配置层级错误,或是create_react_agent创建的代理默认使用25的递归限制,你在invoke的config中平级设置的参数未被正确识别。
解决方案
方案1:修正config结构
LangGraph中,recursion_limit这类可配置参数必须放在configurable字段下,而非config顶层。修改代码如下:
config = { "configurable": { "thread_id": "abc123", "recursion_limit": 100 } }
方案2:创建代理时直接指定递归限制
若方案1无效,可在调用create_react_agent时直接传入recursion_limit参数,覆盖默认值:
agent_executor = create_react_agent( model, tools=tools, prompt=instructions, checkpointer=memory, recursion_limit=100 # 此处设置递归上限 ) # 此时invoke的config仅需保留thread_id config = { "configurable": { "thread_id": "abc123" } }
额外检查项
- 确认代理未陷入无限递归:错误提示说明递归到25次仍未触发停止条件,需优化prompt或工具逻辑,确保代理能在合理步骤内完成任务。
- 核对LangGraph版本:不同版本参数结构可能有差异,建议使用最新稳定版。
内容的提问来源于stack exchange,提问作者Vishwas Mishra
相关产品推荐
相关产品推荐

