一、注解
确保代码安全,提供提示,捕获错误
普通的字典类型无法判断传入对应键的值的类型
TypedDict(类型字典)

Union(联合类型)

Optional(可选类型)

Any(可以是任何数据结构)

Lambda函数

Element(元素)
State状态
它是一个共享的数据结构,存储了整个应用程序的当前信息或上下文。
Nodes节点
节点是图(graph)中执行特定任务的独立函数或操作。
Graph图
它描绘了不同任务(也就是节点)是如何连接和执行的。
Edges边
边就是节点之间的连接,它们决定了执行的流程。它们会告诉应用程序,在当前节点完成任务后,接下来应该执行哪个节点。
conditional edge条件边
基于当前状态所应用的特定条件或逻辑,决定下一步去哪个节点,类似if else
START起点
它标志着工作流程从哪里开始。需要注意的是,它本身并不执行任何操作。
END终点
终点节点只是表示LangGraph中工作流程的结束。
Tools工具
工具是一些专门的函数或实用程序,节点可以利用它们来执行特定任务。
节点是图结构的一部分,而工具,则是节点内部使用的功能。
ToolNode工具节点
工具节点是一种特殊的节点,它的主要任务是运行工具。比如,一个工具节点可能是一个只负责使用工具的节点,这个工具的任务是从API获取数据。
它会将工具的输出连接回状态(state),以便其他节点可以使用这些信息。
StateGraph状态图
这将是你实际交互的第一个元素之一,它的主要作用是构建和编译图结构。它管理节点、边、整体状态,并确保工作流以统一的方式运行,所有数据在组件之间正确流动。
Runnable可运行组件
在LangGraph中,runnable就是一个标准化的可执行组件,用于在AI工作流中完成特定任务。
简单来说,runnable可以代表各种操作,而LangGraph中的节点通常接收一个状态,
Messages消息

条件边,使用lambda返回下一个节点名称,


Agent Loop
定义工具

定义大模型节点和条件边

添加大模型节点、工具节点、条件边

流式输出

RAG








