PydanticAI图表转换AI代理工作流程
PydanticAI 最近推出了一项颠覆性的功能,称为 PydanticAI Graphs,承诺将转变 AI 代理管理与执行工作流程的方式。这一新工具为开发者提供了以空前清晰度和效率建模、控制和可视化复杂 AI 交互的方法。在本文中,我们将深入探讨 PydanticAI Graphs,这一异步图与状态机库,探索其关键特性、优势以及其在革新 AI 开发方面的潜力。
关键要点
- PydanticAI 引入了图支持,用于建模 AI 代理工作流程。
- 这些图作为异步状态机运行,使用类型提示定义。
- 该库面向中高级开发者,提供复杂的控制选项。
- 核心组件包括 GraphRunContext、End、Nodes 和 Graph。
- 它旨在增强 AI 应用的决策过程。
- 这些核心组件是 PydanticAI Graphs 的基本构建模块。
了解 PydanticAI Graphs
什么是 PydanticAI Graphs?
PydanticAI Graphs 是一个专为 Python 构建的异步图与状态机库,使开发者能够使用类型提示定义节点和边。这种结构化方法允许设计复杂的 AI 代理交互。

该库使开发者能够以卓越的清晰度建模、执行、控制和可视化复杂的工作流程。通过使用 PydanticAI Graphs,您可以创建更健壮、易于理解和可维护的 AI 应用,为 AI 代理设计设定新标准。图与有限状态机的结合为管理复杂工作流程提供了强大的抽象。
目标受众
PydanticAI Graphs 专为中高级开发者量身定制,而非初学者。该工具需要对 Python 和图数据结构有扎实的理解。

鉴于其高级特性,该库利用 Python 泛型和类型提示来简化开发过程。对于熟悉图数据结构的开发者,PydanticAI Graphs 提供了无与伦比的强大功能和灵活性。
安装
开始使用 PydanticAI Graphs 非常简单。您可以使用 pip 安装:
pip install pydantic-graph
建议同时安装 PydanticAI,尽管它是可选依赖项。
PydanticAI Graphs 的核心组件
PydanticAI Graphs 围绕四个核心组件构建,这些组件对于有效理解和使用该库至关重要:
- GraphRunContext: 类似于 PydanticAI 中的 RunContext,该组件管理图及其依赖项的状态。它就像接力赛中的接力棒,在节点之间传递关键信息以确保顺利执行。

- End: 这表示图执行的结束,标记节点返回其最终值。它是比赛的终点线,标志着工作流程的完成,特别有助于管理包含多个动作的复杂工作流程。
- Nodes: 这些是图的核心单元,通过 run 方法执行处理逻辑。
- Graph: 作为执行引擎,由节点组成。它是协调整个工作流程的主蓝图,类似于触发任务的管道。
PydanticAI Graphs 的高级主题
图数据结构及其重要性
在计算机科学中,图是表示实体之间连接的抽象数据类型。它们由顶点(或节点)和边组成,边可以是有向或无向的。

图有众多应用,从建模交通和公用事业网络到社交网络和分子结构。它们对于表示复杂关系和系统至关重要。
状态机解释
状态机是一种计算模型,任何时候只能处于有限数量的状态之一。它根据输入改变状态,这些改变称为转换。

状态机对于建模复杂系统、设计机器人控制器、分析计算机语言和开发视频游戏至关重要。它们可以可视化为有向图,其中节点表示状态,边表示转换。
如何使用 PydanticAI Graph
编写简单图
让我们设置一个包含三个节点的简单图:
- 节点 A 作为起始节点。
- 节点 B 作为决策节点。
- 节点 C 作为流程的结束。
每个节点共享一个基类类型,这一点至关重要。首先,导入必要的组件:

textfrom dataclasses import dataclass
from pydantic_graph import GraphRunContext, BaseNode, Graph, End
,[object Object],[object Object]text@dataclass
class NodeC(BaseNode[int]):
track_number: int编写异步 Run 方法
现在,让我们为这些节点编写异步 run 方法:
text@dataclass
class NodeA(BaseNode[int]):
track_number: int
async def run(self, ctx: GraphRunContext) -> BaseNode:
print(f'调用节点 A')
return NodeB(self.track_number)
,[object Object]text@dataclass
class NodeC(BaseNode[int]):
track_number: int
async def run(self, ctx: GraphRunContext) -> End:
print(f'调用节点 C')
return End(f'在节点 C 返回的值:{self.track_number}')节点 A 将跟踪传递给节点 B,节点 B 决定是停止执行还是继续到节点 C。
运行
最后,初始化图并运行它:
textgraph = Graph(nodes=[NodeA, NodeB, NodeC])
result, history = graph.run_sync(start_node=NodeA(track_number=1))
print('*' * 40)
print('历史记录:')
for history_part in history:
print(history_part)
print('*' * 40)
print(f'结果:{result}')此代码将调用节点 A,然后在节点 B 处停止执行,跟踪值为 1。
使用 PydanticAI Graphs 的优势与劣势
优势
- 增强的工作流程建模和可视化。
- 异步操作以实现高性能。
- 类型提示以实现健壮的代码。
- 可独立使用。
劣势
- 对初学者来说学习曲线陡峭。
- 早期测试版可能包含错误和不完整的文档。
常见问题解答
什么是 PydanticAI?
PydanticAI 是一个 AI 框架,旨在简化 AI 应用的开发、部署和管理。它集成了异步编程、数据验证和工作流程管理,形成一个 cohesive 系统。
使用 PydanticAI Graphs 的主要优势是什么?
PydanticAI Graphs 使开发者能够以更高的清晰度和控制力创建复杂的 AI 代理工作流程。图结构便于这些工作流程的建模和可视化,增强了可维护性和性能。
PydanticAI Graphs 是否依赖于其他 PydanticAI 组件?
虽然作为 PydanticAI 的一部分开发,PydanticAI Graphs 不依赖于其他组件,可以独立用于基于图的状态机应用。这种灵活性使其适用于广泛的项目。
相关问题
PydanticAI 的替代方案有哪些?
用于构建 AI 代理和工作流程的替代方案包括:
- Langchain: 一个用于使用大型语言模型(LLMs)创建应用的框架。
- AutoGen: 由 Microsoft 开发,帮助开发者通过协调多个可对话以解决任务的代理来构建会话 AI。
- Haystack: 由 deepset 提供的开源框架,使开发者能够在大规模文档集合上构建智能搜索应用。
相关文章
阿里巴巴超级杯:Qwen3.8-Max 重磅登场,代码与办公工具能力全面升级
阿里巴巴正式发布了Qwen3.8-Max,这是一款拥有2.4万亿参数的下一代基础大模型。这一重大AI进展在编码和专业办公任务等核心领域带来了显著的性能提升,展现了强大的技术能力。在权威的Arena大模型排名中,Qwen3.8-Max取得了令人瞩目的成绩,仅次于Anthropic的Claude系列,位居行业前列。这一里程碑标志着国内大模型在处理复杂任务方面取得了快速进展,为开发者和企业用户提供了先进的智能工具。该模型的API现已在Qwen AI平台上上线,并集成到新推出的“Qwen Offic
印度科技巨头投资3000万美元,打造微软Office的AI竞争对手
连续创业者 Bhavin Turakhia 正投入 3000 万美元自有资金,押注企业 AI 领域仍有新玩家的空间。他最新的创业项目 Neo 基于一个核心信念:传统的职场软件不能仅靠聊天机器人进行修补,而需要进行彻底的架构重构。46 岁的 Turakhia 有着支持雄心勃勃的企业科技项目的历史。在过去二十年中,他联合创立了 Directi、Radix、Titan 和 Zeta,在寻求外部投资之前,主要使用个人资本为这些项目提供资金。他正将同样的自力更生策略应用于 Neo。Turakhia 向
前OpenAI首席科学家Ilya的SSI首次发布模型
AI 取得了另一项重大里程碑。在从 OpenAI 离职后,前首席科学家伊利亚·苏茨克弗(Ilya Sutskever)创立了 Safe Superintelligence Inc.(SSI),该公司最近公布了其首个模型的详细信息。海外社交媒体上的报道指出,该团队正在利用 TTT(测试时训练)开发一个紧凑的推理引擎,这是他们在追求安全超级智能过程中的关键进展。这种新颖的架构专注于使模型能够“学习如何学习”。与在推理过程中保持参数静态的传统大型语言模型不同,该引擎在处理现实世界任务时会动态更新特定
相关专题推荐
评论 (14)
0/500
This looks like a game-changer for workflow management! The ability to visualize AI interactions could make debugging so much easier. 🚀 I'm curious how this compares to LangGraph in real-world applications though - anyone tried both yet?
PydanticAI Graphs sound like a game-changer for AI workflows! The ability to visualize complex interactions is super cool, but I wonder how steep the learning curve is for newbies. 🤔 Anyone tried it yet?
Cette fonctionnalité de PydanticAI Graphs semble révolutionnaire, mais est-ce vraiment accessible aux développeurs moins expérimentés ou juste un jouet pour les pros ? 🤔
This PydanticAI Graphs thing sounds like a total game-changer for AI workflows! 😎 I'm curious, how easy is it to integrate with existing Python projects?
PydanticAI Graphs es un cambio de juego total para gestionar flujos de trabajo de IA. ¡Es como tener un mapa para navegar por interacciones de IA complejas! La visualización es súper clara, pero a veces puede ser un poco abrumadora. Aún así, es imprescindible para cualquier desarrollador que trabaje con agentes de IA. ¡Altamente recomendado! 🚀
PydanticAI 最近推出了一项颠覆性的功能,称为 PydanticAI Graphs,承诺将转变 AI 代理管理与执行工作流程的方式。这一新工具为开发者提供了以空前清晰度和效率建模、控制和可视化复杂 AI 交互的方法。在本文中,我们将深入探讨 PydanticAI Graphs,这一异步图与状态机库,探索其关键特性、优势以及其在革新 AI 开发方面的潜力。
关键要点
- PydanticAI 引入了图支持,用于建模 AI 代理工作流程。
- 这些图作为异步状态机运行,使用类型提示定义。
- 该库面向中高级开发者,提供复杂的控制选项。
- 核心组件包括 GraphRunContext、End、Nodes 和 Graph。
- 它旨在增强 AI 应用的决策过程。
- 这些核心组件是 PydanticAI Graphs 的基本构建模块。
了解 PydanticAI Graphs
什么是 PydanticAI Graphs?
PydanticAI Graphs 是一个专为 Python 构建的异步图与状态机库,使开发者能够使用类型提示定义节点和边。这种结构化方法允许设计复杂的 AI 代理交互。

该库使开发者能够以卓越的清晰度建模、执行、控制和可视化复杂的工作流程。通过使用 PydanticAI Graphs,您可以创建更健壮、易于理解和可维护的 AI 应用,为 AI 代理设计设定新标准。图与有限状态机的结合为管理复杂工作流程提供了强大的抽象。
目标受众
PydanticAI Graphs 专为中高级开发者量身定制,而非初学者。该工具需要对 Python 和图数据结构有扎实的理解。

鉴于其高级特性,该库利用 Python 泛型和类型提示来简化开发过程。对于熟悉图数据结构的开发者,PydanticAI Graphs 提供了无与伦比的强大功能和灵活性。
安装
开始使用 PydanticAI Graphs 非常简单。您可以使用 pip 安装:

建议同时安装 PydanticAI,尽管它是可选依赖项。
PydanticAI Graphs 的核心组件
PydanticAI Graphs 围绕四个核心组件构建,这些组件对于有效理解和使用该库至关重要:
- GraphRunContext: 类似于 PydanticAI 中的 RunContext,该组件管理图及其依赖项的状态。它就像接力赛中的接力棒,在节点之间传递关键信息以确保顺利执行。
- End: 这表示图执行的结束,标记节点返回其最终值。它是比赛的终点线,标志着工作流程的完成,特别有助于管理包含多个动作的复杂工作流程。
- Nodes: 这些是图的核心单元,通过 run 方法执行处理逻辑。
- Graph: 作为执行引擎,由节点组成。它是协调整个工作流程的主蓝图,类似于触发任务的管道。

PydanticAI Graphs 的高级主题
图数据结构及其重要性
在计算机科学中,图是表示实体之间连接的抽象数据类型。它们由顶点(或节点)和边组成,边可以是有向或无向的。

图有众多应用,从建模交通和公用事业网络到社交网络和分子结构。它们对于表示复杂关系和系统至关重要。
状态机解释
状态机是一种计算模型,任何时候只能处于有限数量的状态之一。它根据输入改变状态,这些改变称为转换。

状态机对于建模复杂系统、设计机器人控制器、分析计算机语言和开发视频游戏至关重要。它们可以可视化为有向图,其中节点表示状态,边表示转换。
如何使用 PydanticAI Graph
编写简单图
让我们设置一个包含三个节点的简单图:
- 节点 A 作为起始节点。
- 节点 B 作为决策节点。
- 节点 C 作为流程的结束。
每个节点共享一个基类类型,这一点至关重要。首先,导入必要的组件:

from dataclasses import dataclass
from pydantic_graph import GraphRunContext, BaseNode, Graph, End
,[object Object],[object Object]@dataclass
class NodeC(BaseNode[int]):
track_number: int编写异步 Run 方法
现在,让我们为这些节点编写异步 run 方法:
@dataclass
class NodeA(BaseNode[int]):
track_number: int
async def run(self, ctx: GraphRunContext) -> BaseNode:
print(f'调用节点 A')
return NodeB(self.track_number)
,[object Object]@dataclass
class NodeC(BaseNode[int]):
track_number: int
async def run(self, ctx: GraphRunContext) -> End:
print(f'调用节点 C')
return End(f'在节点 C 返回的值:{self.track_number}')节点 A 将跟踪传递给节点 B,节点 B 决定是停止执行还是继续到节点 C。
运行
最后,初始化图并运行它:
graph = Graph(nodes=[NodeA, NodeB, NodeC])
result, history = graph.run_sync(start_node=NodeA(track_number=1))
print('*' * 40)
print('历史记录:')
for history_part in history:
print(history_part)
print('*' * 40)
print(f'结果:{result}')此代码将调用节点 A,然后在节点 B 处停止执行,跟踪值为 1。
使用 PydanticAI Graphs 的优势与劣势
优势
- 增强的工作流程建模和可视化。
- 异步操作以实现高性能。
- 类型提示以实现健壮的代码。
- 可独立使用。
劣势
- 对初学者来说学习曲线陡峭。
- 早期测试版可能包含错误和不完整的文档。
常见问题解答
什么是 PydanticAI?
PydanticAI 是一个 AI 框架,旨在简化 AI 应用的开发、部署和管理。它集成了异步编程、数据验证和工作流程管理,形成一个 cohesive 系统。
使用 PydanticAI Graphs 的主要优势是什么?
PydanticAI Graphs 使开发者能够以更高的清晰度和控制力创建复杂的 AI 代理工作流程。图结构便于这些工作流程的建模和可视化,增强了可维护性和性能。
PydanticAI Graphs 是否依赖于其他 PydanticAI 组件?
虽然作为 PydanticAI 的一部分开发,PydanticAI Graphs 不依赖于其他组件,可以独立用于基于图的状态机应用。这种灵活性使其适用于广泛的项目。
相关问题
PydanticAI 的替代方案有哪些?
用于构建 AI 代理和工作流程的替代方案包括:
- Langchain: 一个用于使用大型语言模型(LLMs)创建应用的框架。
- AutoGen: 由 Microsoft 开发,帮助开发者通过协调多个可对话以解决任务的代理来构建会话 AI。
- Haystack: 由 deepset 提供的开源框架,使开发者能够在大规模文档集合上构建智能搜索应用。
阿里巴巴超级杯:Qwen3.8-Max 重磅登场,代码与办公工具能力全面升级
阿里巴巴正式发布了Qwen3.8-Max,这是一款拥有2.4万亿参数的下一代基础大模型。这一重大AI进展在编码和专业办公任务等核心领域带来了显著的性能提升,展现了强大的技术能力。在权威的Arena大模型排名中,Qwen3.8-Max取得了令人瞩目的成绩,仅次于Anthropic的Claude系列,位居行业前列。这一里程碑标志着国内大模型在处理复杂任务方面取得了快速进展,为开发者和企业用户提供了先进的智能工具。该模型的API现已在Qwen AI平台上上线,并集成到新推出的“Qwen Offic
印度科技巨头投资3000万美元,打造微软Office的AI竞争对手
连续创业者 Bhavin Turakhia 正投入 3000 万美元自有资金,押注企业 AI 领域仍有新玩家的空间。他最新的创业项目 Neo 基于一个核心信念:传统的职场软件不能仅靠聊天机器人进行修补,而需要进行彻底的架构重构。46 岁的 Turakhia 有着支持雄心勃勃的企业科技项目的历史。在过去二十年中,他联合创立了 Directi、Radix、Titan 和 Zeta,在寻求外部投资之前,主要使用个人资本为这些项目提供资金。他正将同样的自力更生策略应用于 Neo。Turakhia 向
前OpenAI首席科学家Ilya的SSI首次发布模型
AI 取得了另一项重大里程碑。在从 OpenAI 离职后,前首席科学家伊利亚·苏茨克弗(Ilya Sutskever)创立了 Safe Superintelligence Inc.(SSI),该公司最近公布了其首个模型的详细信息。海外社交媒体上的报道指出,该团队正在利用 TTT(测试时训练)开发一个紧凑的推理引擎,这是他们在追求安全超级智能过程中的关键进展。这种新颖的架构专注于使模型能够“学习如何学习”。与在推理过程中保持参数静态的传统大型语言模型不同,该引擎在处理现实世界任务时会动态更新特定
This looks like a game-changer for workflow management! The ability to visualize AI interactions could make debugging so much easier. 🚀 I'm curious how this compares to LangGraph in real-world applications though - anyone tried both yet?
PydanticAI Graphs sound like a game-changer for AI workflows! The ability to visualize complex interactions is super cool, but I wonder how steep the learning curve is for newbies. 🤔 Anyone tried it yet?
Cette fonctionnalité de PydanticAI Graphs semble révolutionnaire, mais est-ce vraiment accessible aux développeurs moins expérimentés ou juste un jouet pour les pros ? 🤔
This PydanticAI Graphs thing sounds like a total game-changer for AI workflows! 😎 I'm curious, how easy is it to integrate with existing Python projects?
PydanticAI Graphs es un cambio de juego total para gestionar flujos de trabajo de IA. ¡Es como tener un mapa para navegar por interacciones de IA complejas! La visualización es súper clara, pero a veces puede ser un poco abrumadora. Aún así, es imprescindible para cualquier desarrollador que trabaje con agentes de IA. ¡Altamente recomendado! 🚀





首页






