PocketFlow:100 行代码的极简 LLM Agent 框架

AI
开源
Agent
LLM框架
极简
2026/9/30
·

阅读时间: 大约 8 分钟

PocketFlow:100 行代码的极简 LLM Agent 框架

Pocket Flow 的核心抽象:Node、Flow、Batch、Parallel、Branch、Looping、Nesting 等模式

PocketFlow 是 The-Pocket 组织开源的极简 LLM 框架,MIT 协议,口号是”100-line minimalist LLM framework”。它的主张很激进:现在的 LLM 框架太臃肿了,而你真正需要的核心抽象只要 100 行。零依赖、零厂商锁定,甚至不用 pip install——直接把那 100 行源码拷走就行。本文基于其 GitHub 仓库一手资料,拆解它为什么敢说”只要 100 行”,以及这种极简的代价。

一、背景:框架越来越重,核心其实很薄

LangChain 起家这几年,LLM 框架越长越胖:集成成千上万个工具、加了无数 app 专用 wrapper,结果是几百 MB 的依赖、看不懂的抽象栈。PocketFlow 反其道而行——它认为 Agent/Workflow/RAG 这类应用的本质抽象只有一个:图(Graph)。把图这个抽象做对,其余模式都能从它长出来。

二、是什么:Node + Flow 的图抽象

PocketFlow 的核心只有两个概念:

  • Node(节点):一个单步,例如”总结邮件”;
  • Flow(流):把多个节点串成图,例如”总结邮件 → 草拟回复”。

从这两个原语出发,官方给出的抽象图覆盖了几乎所有常见模式:Batch(重复步骤)、Parallel(并发,官方 demo 称 3x–8x 加速)、Async(I/O 等待)、Looping(长时循环)、Branch(条件分支)、Shared(节点间共享状态)、Nesting(把一条子流封装成可复用步骤)。

它还提供了 TypeScript、Java、C++、Go、Rust、PHP 多个移植版本,并配了 40+ 个 cookbook 教程,从聊天、结构化输出、RAG、多 Agent、MCP、A2A、语音对话,一直到 Deep Research、生产级 Coding Agent。

三、那 100 行到底写了什么

值得翻开源码看一眼:PocketFlow 的核心其实只有两个类。Node 节点把一步拆成三个钩子——prep(准备输入)、exec(真正干活,通常是调一次 LLM 或工具)、post(处理输出并决定下一步路由到哪个节点);Flow 则是一张节点图,维护”当前节点执行完后跳到哪个节点”的映射。所谓 Batch、Parallel、Looping、Branch,本质都是在这张图上用不同方式连边:并行就是一个节点扇出多个分支再汇合,循环就是让 post 的路由指回上游节点,嵌套就是把一条子 Flow 当成一个 Node 塞进父图。

正因为抽象只有这一层,你读完那 100 行就能完全掌握它的行为——这也是它敢让”AI Agent 自己基于它写 Agent”的底气:模型不需要学习一套庞大框架的 API 心智负担,只要理解”节点 + 路由”即可。官方那句”让 Cursor 这类工具来写上层”,前提正是内核小到 AI 能一次读全。节点之间的信息传递则靠一个显式的共享 store:上游 post 写进去,下游 prep 读出来,没有隐式的全局状态魔法,这也是它把可预测性做到极致的一处细节。

四、关键数据:和主流框架的行数对比

README 里那张对比表是它最有传播力的素材(数字为官方自报):

框架核心抽象应用封装厂商封装代码行数体积
LangChainAgent, Chain很多很多405K+166MB
CrewAIAgent, Chain很多很多18K+173MB
SmolAgentAgent一些一些8K+198MB
LangGraphAgent, Graph一些一些37K+51MB
AutoGenAgent一些很多(可选)7K(仅核心)+26MB(仅核心)
PocketFlowGraph无无100+56KB

Pocket Flow 标题:100 行极简 LLM 框架

五、评测方法批判:“100 行”是怎么算出来的

这张表很抓眼,但必须拆穿它的统计口径:

  1. 分子分母不对等:PocketFlow 的 100 行是”只有核心图抽象、零封装”的行数;而 LangChain 的 405K 行包含了几百个第三方集成、QA/摘要等 app wrapper、以及 OpenAI/Pinecone 等厂商适配。拿”裸核心”去比”全家桶”,本身就是选择性比较——AutoGen 那一行也特意标注了”core-only”,侧面说明这个口径的水分。
  2. 体积同理:56KB vs 166MB 比的是”核心包 vs 含全部集成的安装体积”,不是”完成同一个任务所需的代码量”。
  3. “10x 生产力”靠 Agentic Coding 背书:官方推崇”人设计、AI(Cursor 等)写代码”,让 Agent 去基于这 100 行框架搭应用。这省的是你的样板代码,但前提是你得会写设计文档、并接受 AI 生成代码的质量波动。
  4. 没有运行时性能或成功率 benchmark:它是个”库”,不提供任务级评测;所谓并行 3x/8x 只是 demo 里的示意。

六、优势与局限

优势: 一是核心抽象小到可以通读源码,没有黑盒,学习曲线极短;二是零依赖、零锁定,随便接哪个模型、哪个存储都不用受框架约束;三是 cookbook 覆盖场景全,配合 Agentic Coding 很适合快速搭原型;四是多语言移植,团队技术栈杂也能用同一套心智模型。

局限: 它刻意不提供生产常用的东西——没有重试、没有可观测性/链路追踪、没有内置鉴权与持久化、没有工具调用的现成封装。这意味着从 demo 到生产,那些 LangChain 替你做过的脏活,你都得自己补。对想快速上线、不想造轮子的团队,“极简”反而是负担。

七、谁该关注

  • 觉得 LangChain 太重、想要可控内核的团队:把图抽象吃透,自己按需拼装;
  • 教学与研究:100 行可读源码是讲清”Agent 到底怎么跑”的绝佳材料;
  • 走 Agentic Coding 路线、让 AI 写胶水代码的开发者:薄框架 + AI 生成上层,正好发挥。

如果你要的是开箱即用、自带监控重试的企业级编排,LangGraph 这类带电池的框架更稳妥;PocketFlow 的定位是”给你一个干净的内核,剩下的自己来”。

参考来源