综合介绍
PocketFlow 是一个只有100行代码的轻量级AI应用开发框架,由 The-Pocket 团队开发并在 GitHub 上开源。它追求极简设计,核心代码控制在100行,没有任何外部依赖,也没有厂商绑定。开发者可以用它快速搭建AI应用,支持多智能体、工作流、检索增强生成(RAG)等功能。它的亮点是“Agentic Coding”,也就是让AI智能体(比如 Cursor AI)自己写代码,极大提升开发效率。PocketFlow 从最基本的图(Graph)结构出发,用最少的代码实现强大功能,非常适合需要快速开发AI应用的个人或团队。
因为代码量相对较小,该项目还提供了 .cursorrules 配置文件,可以在 Cursor 中自动化编写智能体应用。
功能列表
- 核心代码仅100行:精简到100行,易读易改。
- 基于图(Graph)结构:用节点和连接定义AI任务。
- 支持多智能体:多个AI智能体可以协同完成任务。
- 内置工作流:任务分解和执行顺序一目了然。
- 检索增强生成(RAG):结合外部数据提升输出质量。
- AI自编程(Agentic Coding):AI能自己写代码,节省时间。
- 零依赖设计:无需额外库,直接运行。
- 兼容任意LLM:可以接入任何大型语言模型。
使用帮助
安装流程
PocketFlow 的安装非常简单,不需要复杂的环境配置。以下是两种安装方式:
方法1:通过pip安装
- 打开命令行工具(Windows 用 CMD,Mac 用 Terminal)。
- 输入命令:
pip install pocketflow
,然后按回车。 - 安装过程只需几秒,完成后即可使用。
- 验证安装:在命令行输入
python -c "import pocketflow; print(pocketflow.__version__)"
,如果显示版本号,说明成功。
方法2:直接复制源码
- 打开浏览器,进入 https://github.com/The-Pocket/PocketFlow。
- 点击右上角“Code”按钮,选择“Download ZIP”下载源码。
- 解压文件,找到
pocketflow/__init__.py
(这就是100行核心代码)。 - 把这个文件复制到你的项目文件夹。
- 在Python代码中导入:
import pocketflow
,即可开始使用。
如何使用主要功能
PocketFlow 的核心是一个基于图(Graph)的框架,通过节点(Node)和连接(Flow)来组织AI任务。以下是具体操作步骤:
1. 创建基本工作流
- 步骤:
- 新建一个Python文件,比如
test_flow.py
。 - 输入以下代码:
import pocketflow flow = pocketflow.Flow() flow.add_node("hello", lambda x: print("你好,PocketFlow!")) flow.run()
- 在命令行运行:
python test_flow.py
。 - 屏幕会显示“你好,PocketFlow!”。
- 新建一个Python文件,比如
- 说明:这是一个简单的工作流,包含一个打印消息的节点。
2. 使用多智能体功能
- 步骤:
- 修改代码,加入多个智能体:
import pocketflow flow = pocketflow.Flow() flow.add_node("agent1", lambda x: "智能体1说:你好") flow.add_node("agent2", lambda x: f"智能体2回答:{x},你也好") flow.connect("agent1", "agent2") result = flow.run() print(result)
- 运行后,会输出智能体之间的对话。
- 修改代码,加入多个智能体:
- 说明:
connect
方法连接两个节点,数据从“agent1”流到“agent2”。
3. 添加RAG功能
- 步骤:
- 创建一个文本文件
info.txt
,写入内容,比如:“PocketFlow 是轻量AI框架。” - 修改代码:
import pocketflow flow = pocketflow.Flow() def get_data(x): with open("info.txt", "r", encoding="utf-8") as f: return f.read() flow.add_node("retrieve", get_data) flow.add_node("generate", lambda x: f"生成结果:{x}") flow.connect("retrieve", "generate") result = flow.run() print(result)
- 运行后,会输出文件内容和生成结果。
- 创建一个文本文件
- 说明:RAG通过“retrieve”节点读取外部数据,再交给“generate”节点处理。
4. 使用Agentic Coding(AI自编程)
- 步骤:
- 安装一个支持代码生成的工具,比如 Cursor AI。
- 在 Cursor AI 中输入需求:“用PocketFlow写一个计算1到10总和的程序”。
- AI可能会生成:
import pocketflow flow = pocketflow.Flow() flow.add_node("numbers", lambda x: list(range(1, 11))) flow.add_node("sum", lambda x: sum(x)) flow.connect("numbers", "sum") result = flow.run() print(f"总和是:{result}")
- 运行后,输出“总和是:55”。
- 说明:AI直接生成PocketFlow代码,开发者只需复制运行。
5. 接入外部LLM
- 步骤:
- 假设你有 OpenAI API key,修改代码:
import pocketflow from openai import OpenAI client = OpenAI(api_key="你的API密钥") flow = pocketflow.Flow() flow.add_node("ask", lambda x: client.chat.completions.create( model="gpt-3.5-turbo", messages=[{"role": "user", "content": "你好"}] ).choices[0].message.content) result = flow.run() print(result)
- 运行后,会输出模型的回复。
- 假设你有 OpenAI API key,修改代码:
- 说明:PocketFlow 不绑定任何LLM,你可以自由接入。
操作流程总结
- 安装 PocketFlow(用 pip 或复制源码)。
- 新建 Python 文件,导入
pocketflow
。 - 用
Flow()
创建工作流,添加节点和连接。 - 调用
run()
执行任务,检查结果。 - 根据需求调整节点功能,加入智能体或RAG。
注意事项
- Python 版本建议 3.6 或更高。
- 如果用外部 LLM,需要配置 API 和网络。
- 更多示例和用法见官方文档:https://the-pocket.github.io/PocketFlow/。
应用场景
- 快速验证AI想法
你想做一个自动回复工具,用 PocketFlow 几分钟就能搭好原型。 - 学习AI开发
学生或新手可以用它练习,因为代码简单,逻辑清晰。 - 小型任务自动化
比如总结文档或生成邮件,PocketFlow 能快速搞定。 - 团队协作开发
多人可以用它分工设计节点,快速拼装应用。
QA
- PocketFlow 和其他框架有什么不同?
它只有100行代码,没有依赖,比其他框架(比如 LangChain 的40万行)更轻量。 - AI自编程需要额外工具吗?
是的,建议用 Cursor AI 或类似工具配合。 - 可以商用吗?
可以,它是开源的,具体许可见 GitHub 页面。