开源了一本《动手学 Pi》,用 15 个 checkpoint 把 Agent 的运行链路走一遍

南海 2026-07-21 14:35 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签:

  • 我的开源项目完整开源,无未开源部分:

  • 我的开源项目已链接认可 LINUX DO 社区:

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出:

  • 以上选择我承诺是永久有效的,接受社区和佬友监督:


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出




项目链接



  • 在线教材:https://build-your-own-pi-cn.enochzhang.chatgpt.site

  • 教材仓库:GitHub - hahhforest/pi-textbook: 《动手学 Pi》:沿 15 个真实 checkpoint 从零构建 Pi-style Agent · GitHub

  • 课程代码:pi/packages/pi-course at course/build-your-own-pi · hahhforest/pi · GitHub


教材首页



项目介绍


写这套教材的起点其实很简单:我想把 coding agent 的运行过程真正弄明白。于是我让codex去看到《动手学深度学习》是怎么组织教材的,然后把pi agent开发过程拆成了类似的章节形式,有实现的代码分支,以及配套的教材讲解。


现在很多 Agent 教程会从“调用一次模型”直接跳到一个完整框架。最后确实能跑起来,但中间最关键的部分还是黑盒:流式消息怎么拼起来,tool call 和 tool result 怎么对应,循环什么时候停,会话状态如何保存,context 太长以后又该怎么压缩。碰到问题时,往往只能在一个很大的系统里反复猜。


所以我沿着 Pi 的实际运行链路,把这些东西拆成了 15 个 checkpoint。从一段离线轨迹开始,逐步实现消息协议、流式模型、Provider、工具系统、Agent Loop、会话树、Context Compaction、扩展机制和 Eval。每一章只增加一层复杂度,并对应到真实的上游 commit,不是另外写一份看起来相似的示例代码。


前几章完全离线,不需要模型额度。先把协议、状态和工具边界弄清楚,确认测试都能通过,再接入真实 Provider。每章除了正常路径,还安排了聚焦测试和故障实验,目的是让人看见第一处偏差到底发生在哪里,而不只是展示一遍成功结果。


目前开源的内容包括教材网站、15 个 checkpoint 的 TypeScript 代码、测试以及练习生成器。练习目录里不会附带答案和课程 Git 历史,可以自己从当前 checkpoint 往下实现。最好的方式是由一个agent读取教材和checkpoint历史后,在旁边辅导(所谓的copilot?)。看教材、agent指导实现和答疑、agent验证


顺手统计了一下投入:目前能从任务日志核到的消耗下限大约是 5061 万 token,其中缓存输入约 4843 万,模型输出约 19.6 万。早期建设教材正文时的日志并不完整,所以这不是完整制作成本,只是目前能确认的部分。


注意:项目是社区原创的非官方课程,不隶属于 Pi 或 Earendil Works;代码使用 MIT License,教材正文和原创媒体使用 CC BY 4.0,上游代码继续沿用原有许可证。

最新回复 (19)
  • 🅄🄽🄲🄻🄴𝕁𝕚𝕞𝕒𝕠 07-21 14:56
    1

    强啊佬,最近开有个叫第四种黑猩猩的博主也在推荐Pi Agent

  • 漓江塔夜市烤肉 07-21 15:17
    2

    太强了佬,支持一波,正好用来入门学习agent很适合

  • 南海 楼主 07-21 15:20
    3

    感谢,我也是想要学一下agent harness的底层,所以干脆让codex搓了一本教材出来,共勉 ^-^

  • Theo 07-21 15:22
    4

    佬,这种风格的界面排版是用的什么框架还是什么skill吗?

  • xiaosheng 07-21 15:22
    5

    简直是及时雨呀佬, 正打算详细学习一下Coding Agent 的核心原理, 搞清其本质, 这本书太及时了, 开始学习!

  • 大屁股家的粑粑 07-21 15:26
    6

    佬,我在看。开始学习了。谢谢佬的分享

  • yi_zero 07-21 15:27
    7



    佬,为啥我打不开呢?梯子这些我都尝试过了,国内连接也不行

  • Jay 07-21 15:28
    8

    我哇哇哭

  • 999999tong 07-21 15:28
    9

    支持大佬一波,已经star,之后有时间学习

  • 南海 楼主 07-21 15:28
    10

    chatgpt的部署服务。按照readme本地起服务吧

  • QtZero 07-21 15:33
    11

    试着用全局或者clash里面给chatgpt.site加规则?这东西直接屏蔽国内IP的,而且当前规则都还没覆盖到

  • PuPu 07-21 15:33
    12

    (帖子已被作者删除)

  • PuPu 07-21 15:34
    13

    这个pi-agent ,和那个learn-claude-code 是不是挺有重合度的,只不过最后实现的语言不同

  • 方不白 07-21 15:37
    14

    换个节点吧, 这网站不支持香港的节点访问, 换成日本或台湾就好

  • QtZero 07-21 15:37
    15

    我自己都是用阿妹你看的节点的,问题不大

  • 水很深 07-21 15:38
    16

    刚好最近在了解,先mark一下,到时候细看

  • xlao 07-21 15:45
    17

    全局日本节点终于进去了,开始学习

  • 1076718373 07-21 15:54
    18

    哇,正准备学一下pi的设计原理,佬就出教程了,star了

  • 南海 楼主 07-21 15:55
    19

    claude code的内置skill,被codex索引到了,他经常在用(我已经不用claude code了) skills/skills/frontend-design/SKILL.md at main · anthropics/skills · GitHub

* 帖子来源Linux.do
返回