AI创想

标题: LangGraph——Multi-agent [打印本页]

作者: 米落枫    时间: 5 天前
标题: LangGraph——Multi-agent
作者:CSDN博客
Multi-agent架构

Multi-agent架构分类

(, 下载次数: 0)


Handoffs(交接)

在Multi-agent架构中,agent可以表示为图节点。每个agent节点执行其步骤并决定是完成执行还是路由到另一个agent,包括可能路由到自身(例如,在循环中运行)。Multi-agent交互中的一种常见模式是交接 ,即一个agent将控制权移交给另一个agent。切换允许您指定:
要在 LangGraph 中实现切换,agent节点可以返回 Command 对象,该对象允许您结合控制流和状态更新:
  1. def agent(state) -> Command[Literal["agent", "another_agent"]]:
  2.     # the condition for routing/halting can be anything, e.g. LLM tool call / structured output, etc.
  3.     goto = get_next_agent(...)  # 'agent' / 'another_agent'
  4.     return Command(
  5.         # Specify which agent to call next
  6.         goto=goto,
  7.         # Update the graph state
  8.         update={"my_state_key": "my_state_value"}
  9.     )
复制代码
在更复杂的场景中,每个agent节点本身都是一个图(即子图 ),其中一个agent子图中的节点可能希望导航到不同的agent。例如,如果您有两个agent,alice 和 bob(父图中的子图节点),并且 alice 需要导航到 bob,则可以在 Command 对象中设置 graph=Command.PARENT:
  1. def some_node_inside_alice(state):
  2.     return Command(
  3.         goto="bob",
  4.         update={"my_state_key": "my_state_value"},
  5.         # specify which graph to navigate to (defaults to the current graph)
  6.       
复制代码
原文地址:https://blog.csdn.net/qq_50863584/article/details/151263069




欢迎光临 AI创想 (http://llms-ai.com/) Powered by Discuz! X3.4