用途:该技能面向使用 LangGraph 1.0 构建有状态、多步骤智能体应用的场景,核心是 StateGraph 状态机架构。资料称其支持持久化执行(可承受失败与重启)、human-in-the-loop(暂停等待批准后恢复)、流式输出与完整执行追踪回放。
主要能力与模式:
- 基础状态图:用 TypedDict 定义状态,节点为转换状态的函数,通过 add_node、set_entry_point、add_edge、compile 构建并运行。
- 条件路由:用 add_conditional_edges 根据状态(如是否存在 tool_calls)决定走向 tools 或 respond,工具节点可回环到 agent 形成循环。
- ReAct 智能体:使用 langgraph.prebuilt 的 create_react_agent,传入 LLM 与工具列表即可。
- 并行执行:从 start 扇出到多个节点,再扇入到汇总节点。
- 子图:将可复用的研究流程编译为子图,在主图中作为节点调用。
- 状态 reducer:用 Annotated 指定合并方式,如 operator.add 追加列表、自定义函数合并字典。
- 流式与调试:astream、astream_events 支持流式;compile(debug=True)、get_graph().draw_mermaid()、stream_mode="debug" 用于调试。
使用方式:安装并导入 langgraph 相关模块,定义状态 schema 与节点函数,构建图、添加节点与边、编译后调用 invoke 或 stream。示例中使用了 langchain_openai、langchain_core.tools 等依赖。
适用场景:需要多步骤、分支、循环、并行或可恢复的智能体工作流。
限制:资料未提供具体安装命令、版本要求、收费与平台信息;示例中的 llm、execute_tool、tavily_client 等为占位实现,需自行补充。