—

解读:LangChain Academy「用 LangGraph 搭 Workflow / Agent」——帖文「Anthropic 工程师 + Opus 5.5 自我改进 harness」对不上

  • #LangGraph
  • #LangChain Academy
  • #Lance Martin
  • #Agent
  • #Workflow
  • #解读

本文是对 @F5Adon 挂载的一段约 36.2 分钟(duration_ms=2170485,1280×720)横屏视频的摘要与评论(读帖时约 4.0k 曝光、38 赞、39 收藏、6 转发、2 回复)。帖文中文钩子写:这是「价值超过 1500 美元的 Agent 课程」;「Anthropic 工程师」称 95% 工程师都在用「自我改进的 harness + Opus 5.5」;并说 35 分钟讲座演示如何用 Opus 5.5 从零构建自我改进代理 harness。视频来自转载帖 @hayatomaruu;源帖还 quote 了 beamnxw 的 X Article《Make Opus 5.5 Finish Long Tasks…》(那是配置/用法长文,不是本片口播)。

核对后:钩子与正片严重不符。 正片是 LangChain Academy 公开课风格的录屏:讲者终端提示符为 rlm@rs-macbook-pro(LangChain 的 Lance Martin 常用标识),仓库目录名 langchain-academy,口播明确说「想学更多去 description 里的 LangChain Academy 免费课」。代码里绑定的是 ChatAnthropic(model="claude-3-5-sonnet-20240620")——即 Claude 3.5 Sonnet,不是 Opus 5.5。内容主线是:对照 Anthropic 博文 Building Effective Agents 的定义,用 LangGraph(把 Agent/工作流建成「节点 + 边」的图)把文中的 workflow 模式与「工具循环 Agent」从零搭一遍,并演示 LangGraph Studio。画面上的 ANTHROPIC 大水印是转载包装;讲者自我介绍与课设都指向 LangChain,不是 Anthropic 雇员的内部私课,也不是「自我改进 harness」专题。

本稿依据 X 镜像关键帧 + 本地 faster-whisper 全文转写整理,不是逐字转载课程或 Anthropic 原文。插图为草稿目录下关键帧。完整口播请看原帖视频;系统学习建议直接上 Introduction to LangGraph。

这篇在说什么

一条主线:先分清 Workflow(工作流)和 Agent(代理),再说明为什么还要框架,然后按 Anthropic 博文里的图案,用 LangGraph 把每一种都写出来并跑通。

  • Workflow:预先搭好的代码路径脚手架,LLM 调用嵌在固定或半固定的步骤里(可含路由)。
  • Agent:去掉脚手架,让模型根据工具返回的环境反馈自己决定下一步(典型是 tool-calling 循环)。

片长约 36 分钟,结构是「先 4 分钟速通一个算术 Agent → 中段讲概念与 Why Frameworks → 后半按图案实现 → 收束到持久化 / 人机回环 / 流式 / 部署」。适合已经会一点 Python、想把「Agent 一词」落到可运行图上的人。若你冲着帖文来找「Opus 5.5 自我改进 harness」或「值 1500 刀的私房课」,会对空。

1. 开场速通:agent.py + Claude 3.5 Sonnet + LangGraph Studio

VS Code 中的 agent.py:ChatAnthropic + tools

开场口播:「Agents are all the rage, but building them and making them reliable is a real challenge.」随即打开 agent.py:用 LangChain 的 ChatAnthropic 接入模型,定义 add / multiply / divide 三个玩具工具,bind_tools 绑到模型上。口播与屏幕一致:Claude 3 Sonnet / 3.5 Sonnet 档,并点明「这是 LangChain 与 Anthropic 的集成」。

LangGraph 被解释成:把 Agent 要走的步骤当成 node(节点),步骤之间的转移当成 edge(边),用图表达控制流。最小例子是 assistant 节点调模型,tools 节点执行工具,条件边决定「去调工具」还是「结束」。builder.compile() 之后即可运行。

LangGraph Studio:assistant ↔ tools 环

随后切到 LangGraph Studio:左侧可视化 __start__ → assistant ⇄ tools → __end__,右侧线程里输入 multiply 2 and 3,看到工具参数与返回值 6。这是整场的「Hello World」——证明图不是幻灯,是可点可跑的运行时。

约 4 分钟处口播指路:LangChain Academy 免费课讲得更细——这也直接打脸「1500 美元课」的定价叙事。

解读:钩子里的「Anthropic 工程师」大概是因为用了 ChatAnthropic 和博文图案,再叠上转载水印。真正的身份信号是 langchain-academy、rlm@、Academy 口播和 Studio 产品,全部指向 LangChain 教学。

2. 概念锚点:Workflow vs Agent,以及 Why Frameworks

Workflows vs Agents 对照图(源自 Anthropic 博文图案)

他引用 Anthropic《Building Effective Agents》:左边是 prompt chaining / 并行 / orchestrator-worker / evaluator-optimizer / router 等带脚手架的工作流;右边是「LLM ↔ Tool ↔ Feedback」的开放 Agent 环。口播强调:工作流里也可以出现工具调用,但有没有外围脚手架、控制流是否无界,才是分界。

接着回答「为什么还要框架」:这些图案用裸 API 也能写;LangGraph 的卖点不是抽象掉 prompt 或架构,而是提供底下的基础设施:

  1. Persistence(持久化) → 记忆、可暂停的 human-in-the-loop(人机回环)(例如批准一次工具调用)
  2. Streaming(流式) → 对 token / 节点输出有更细的控制
  3. Deployment(部署) → 从本地图到可测可上线的短路径

解读:这是对「别用框架」争论的温和回应——框架卖的是横切能力,不是又一层魔法 Agent。和帖文「自我改进 harness」相比,本片几乎没讲自动改自身权重或自动改提示词的闭环,讲的是编排与运行时。

3. 积木:结构化输出与工具调用

进入 notebook 后,先演示两个「增强元件」:

  • Structured output(结构化输出):把 Pydantic schema 绑到模型,让返回值长得像对象而不是散文。
  • Tool calling(工具调用):bind_tools 后,模型产出的是「工具载荷」;你真正执行工具,再把结果作为 ToolMessage 写回状态——这一来一回,就是后文 Agent 环的原子动作。

口播提醒:LangGraph 不强制你用 LangChain 包装模型,直连厂商 API 也可以;框架关心的是图、状态与运行时。

解读:若只带走一句:Agent 神话里的「行动」,在工程上常常只是「模型提议调用 → 运行时执行 → 结果回注状态」。

4. Prompt chaining:笑话流水线 + 条件门

generate / improve / polish joke 工作流

第一个完整 workflow:用户给 topic → generate_joke →(可选门)检查是否像有 punchline → improve_joke → polish_joke。状态用一个 dict / TypedDict 装 topic、中间稿与终稿;每个步骤是独立函数节点;check_punchline 用简单规则(如是否含 ? / !)当 conditional edge(条件边)。

画完边、compile、跑通后,他强调:这与博文里画的 prompt chaining 同构——固定多步 LLM 调用,外加一道可编程闸门。

解读:这是「脚手架」的最小可感例子。门不必是神经网络;很多生产闸门就是规则、schema 校验或单测。

5. 并行、路由、Orchestrator–Worker

并行段:同一输入扇出到写故事 / 写笑话 / 写诗等节点,再汇合——适合互相独立的多产物。

路由段:用 LLM(或分类器)决定「下一跳走哪条专用路径」。口播举检索场景:问题先路由到不同 retrieval 系统,再继续。

Orchestrator–Worker:Sections / WorkerState

Orchestrator–worker 是本片后半的重头:规划器(orchestrator)把主题拆成若干 Section(name, description);每个 worker 只领一节去写;completed_sections 用 Annotated[..., operator.add] 一类归约,让并行 worker 往同一状态键里累加结果,再交给 synthesizer 拼成报告。口播点明:它像并行,但子任务列表由模型动态生成,不是编译期写死的三条边。

解读:这才是帖文「规模化靠 Graph:谁规划、谁写、谁汇总」在本片里的真实对应物——而且讲者把它归类为 workflow 图案,不是「去掉脚手架的无界 Agent」。营销文案把 Graph 说成下一世代宗教,正片反而在说:多数生产问题先用这类可控工作流就够。

6. Evaluator–optimizer,以及真正的工具循环 Agent

evaluator–optimizer:生成器写笑话,评分器输出「是否好笑 + 反馈」的结构化结果;不好笑就带着反馈回到生成器,形成修正环。这是有界循环的工作流,不是开放工具 Agent。

工具节点与环境反馈

收尾回到 Agent:assistant 决定是否 tool_call → tool 节点执行并把 ToolMessage 写回 → 模型再看环境反馈。口播原话大意:许多人听到的「Agent 能行动」,指的就是这一层。他紧接着泼冷水——工具很多、轨迹很长时,Agent 至今仍不够稳;他自己过去一两年在生产里做的 workflow 比 Agent 多;只有当模型在低延迟下工具调用又准又稳,业界才会系统性迁过去。

最后再次收束框架收益:checkpoint 记忆、人机审批、流式、快速部署;并表示 LangGraph 还在降低「铺图」的样板成本。

解读:把这段与帖文「95% 工程师都在用自我改进 harness + Opus 5.5」并排看,反差最大:正片的经验判断是 workflow 仍是生产主流,模型档位是 3.5 Sonnet 演示级,没有任何「自我改进 harness」产品化定义。

怎么看这条帖

  • 正片价值:把 Anthropic《Building Effective Agents》从博文示意图变成可运行的 LangGraph 目录页;36 分钟密度合适,Studio 演示能建立直觉。免费入口在 LangChain Academy。
  • 帖文水分:「1500 美元课」「Anthropic 工程师」「Opus 5.5」「自我改进 harness」「95% 工程师」等与口播、屏幕、课程品牌均对不上。模型字符串是 claude-3-5-sonnet-20240620;讲者是 LangChain 侧教学向(Lance Martin / rlm@),不是 Anthropic 雇员访谈。
  • 与站内已有文差异:不同于 Isabella He Managed Agent 工坊摘要(Anthropic 官方 managed agents 工坊),也不同于 CS329A / 标题党成交帖(斯坦福推理时算力课被套「卖给 Anthropic」故事)。本片是 LangChain 教学转载 + Anthropic 博文图案,钩子却写成 Anthropic 内部工程课。
  • 与 quote 长文的关系:beamnxw《Make Opus 5.5 Finish Long Tasks…》是另一套「长任务配置」叙事;不要默认本视频在教 Opus 5.5。

原文