logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

[拆解LangChain执行引擎] PregelNode——无状态的功能节点

一个Pregel由Node和Channel构建而成,后者保持状态并以Pub/Sub的方式驱动Node执行,Pregel中的Node是一个PregelNode对象,是一个完全无状态的功能节点。

文章图片
#python
[LangChain之链]Runnable——整个LangChain生态世界的起点

LangChain编写的Agent以“图”的形式处理你的任务,图由节点和边构成,所有的功能由节点承载,而承载的功能最终体现为一个Runnable对象,后者窜起了LangChain的“Chain”。由于整个LangChain生态提供的组件都是针对Runnable的实现,所以Runnable是整个生态世界的起点。

文章图片
#python
[拆解LangChain执行引擎] ManagedValue——一种特殊的只读虚拟通道

我们一直在强调Pregel对象的状态是通过Channel维护和传递的,其实承载传递状态功能的组件除了Channel,还有ManagedValue。我们可以将ManagedValue视为虚拟Channel,Node不仅采用与读取Channel完全一样的方式读取ManagedValue,而且注册的ManagedValue也直接存放在Pregel的channels字段中。

文章图片
#python
[拆解LangChain执行引擎] Channel——驱动Node执行的原力

Pregel由Node和Channel这两个核心部件组成,Channel不仅维护了整个图的状态,还是驱动Node执行的 “原力” 。

文章图片
#python
[拆解LangChain执行引擎]以Actor模型的角度来看Pregel

作为执行引擎,Pregel是整个LangChain/LangGraph体系最核心的部分,也可能大家最陌生的部分。新版本的LangGraph采用全新的设计重写了Pregel,目前社区基本上没有系统介绍Pregel的资料,我希望这个系列的文章能够弥补这一空白。

文章图片
#python
到底了