
🧠 记忆锚点:限制预算,检测无进展,必要时交给人。
💡 答案要点
问题原因:
- 工具调用失败,Agent 重复尝试
- 任务太复杂,Agent 无法完成
- Prompt 设计不好,Agent 理解错误
解决方案:
python
max_iterations = 10
iteration = 0
visited = set() # 记录已执行的动作
while iteration < max_iterations:
action = agent.thought()
if action in visited:
break # 检测到循环
visited.add(action)
result = agent.act(action)
iteration += 1防护措施:
- 最大轮次限制(如最多 10 轮)
- 超时机制(如 60 秒无进展则停止)
- 工具调用去重(记录已调用的工具 + 参数)
- 反思机制(让 Agent 评估当前进展)
- 人工介入(复杂任务允许用户中断)
📚 参考:LangGraph:可控循环与状态图