Skip to content

1. 快速上手

先跑起来,再理解原理。如果你更喜欢看视频,可以先看 官方视频教程,配合 官方文档 一起学习。

1.1 环境配置

Python 版本

PocketFlow 需要 Python 3.9+(推荐 3.10 或更高版本):

bash
python --version

创建虚拟环境(推荐)

bash
python -m venv .venv
.venv\Scripts\activate
bash
python -m venv .venv
source .venv/bin/activate

1.2 安装 PocketFlow

bash
pip install pocketflow
bash
# 如需锁定版本(教程编写时为 0.0.3)
pip install pocketflow==0.0.3
bash
# PocketFlow 只有 100 行,也可以直接复制到项目中
# https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py

零依赖

PocketFlow 没有任何第三方依赖,安装后即可直接使用,不会影响你现有的项目环境。

1.3 第一个 Flow:Hello PocketFlow

python
from pocketflow import Node, Flow

class GreetNode(Node):
    def prep(self, shared):
        return shared.get("name", "World")

    def exec(self, name):
        return f"Hello, {name}! Welcome to PocketFlow."

    def post(self, shared, prep_res, exec_res):
        shared["greeting"] = exec_res
        print(exec_res)

# 构建并运行
greet = GreetNode()
flow = Flow(start=greet)
flow.run({"name": "小明"})
# 输出:Hello, 小明! Welcome to PocketFlow.

1.4 配套示例代码

本教程的所有代码示例都已整理为完整可运行的 Python 脚本,存放在 examples/ 文件夹中:

文件对应章节核心概念
01_hello_pocketflow.py1.3 第一个 FlowNode + Flow 基础用法
02_node_lifecycle.py2.1 Node 最小单元prep → exec → post 三阶段
03_flow_chain.py2.2 & 2.3 图执行>> 链式连接
04_conditional_flow.py2.3 条件连接- "action" >> 条件分支
05_shared_store.py3 通信机制节点间数据传递
06_retry_node.py5.2 重试机制max_retries、exec_fallback
07_nested_flow.py5.3 嵌套子流程Flow 作为节点
08_batch_node.py5.4 批量处理BatchNode
09_async_parallel.py5.6 异步家族AsyncParallelBatchNode
10_loop_pattern.py4 设计模式循环/自校正

关于示例代码

  • 所有示例自包含,不需要 API 密钥或外部服务
  • LLM 调用使用模拟逻辑代替,便于理解核心机制
  • 如需接入真实 LLM,只需替换 exec() 中的模拟逻辑即可

Easy-Pocket —— 从零掌握 PocketFlow