AI Agent 架构初探:从大模型、LangGraph 到 Harness 的工程元模型
·
LangGraph & LangChain
| 维度 | LangChain (早期的 Chain 模式) | LangGraph (新一代 Graph 模式) |
|---|---|---|
| 核心抽象 | DAG(有向无环图 / 线性链) | 有向有环图(Stateful Graph with Loops) |
| 执行模式 | “单向向前”:输入 A →\rightarrow→ 步骤 1 →\rightarrow→ 步骤 2 →\rightarrow→ 输出 B。 | “循环与状态机”:支持 A -> B -> C -> 反思判断 -> 回到 B 重试 -> 结束。 |
| 状态管理 | 主要是隐式或简单的参数传递。 | 显式全局状态(State),全程记录并支持持久化(Persistence)。 |
| 适合场景 | 简单的 RAG(文档检索问答)、固定步骤的数据处理流。 | 复杂 Agent:自我纠错、多 Agent 协作、人机协同(Human-in-the-loop)、长流程审批。 |
- LangChain 提供了“砖块”:基础设施与生态集成(LLM API 封装、向量库连接器、Prompt 模板、Tool 工具库)。
- LangGraph 提供了“设计图与骨架”:以**状态图(State Machine)**的形式把“砖块”串联,支持复杂逻辑中的循环、暂停、人工干预和重试。
Agent & 大模型 & 工作流框架
大模型+工作流+工具=智能体LLM+LangGraph/LangChain+Tools/Actions=Agent \begin{align} 大模型 + 工作流 + 工具 &= 智能体 \\ \text{LLM} + \text{LangGraph/LangChain} + \text{Tools/Actions} &= \text{Agent} \end{align} 大模型+工作流+工具LLM+LangGraph/LangChain+Tools/Actions=智能体=Agent
- 大模型(LLM) = 大脑(负责意图理解、推理决策、内容生成)
- 工作流框架(LangGraph / LangChain) = 骨骼与神经系统(管理状态、流程控制、记忆维护)
- 工具(Tools / Actions) = 双手与感知器官(网络搜索、代码执行、数据库/API 调用、硬件控制)
Agent & Skill & Harness
关系
- Agent:主体系统。以 LLM 为核心决策单元,结合工作流逻辑、存储和工具,构成能够独立执行任务的完全体。
- Skill:能力封装。为 Agent 提供的特定领域或特定业务场景的标准技术包/操作规程。
- Harness:运行脚手架/底盘系统。包裹在 Agent 外层的支撑环境,提供状态控制、安全隔离、上下文裁剪与异常恢复能力。
Agent
- 本质:大模型 + 工作流框架 (LangChain/LangGraph) + 工具。
- 解决问题:解决单次 LLM 调用缺乏“持久状态”、“复杂多步规划”和“与外部物理世界交互”能力的问题,实现从单纯对话到多步自主完成任务的跨越。
Skill
- 本质:对 Tools 的高阶封装与组合,将特定任务的 Prompt 模板、约束规则、执行脚本(Python/Shell)及配套资源文件组合在一起的标准化能力模块。
- 解决问题:解决普通 API/Tool 粒度过细、缺乏业务逻辑约束的问题,避免复杂的场景规则挤爆 LLM 的上下文,实现业务操作的模块化与高复用。
Harness
- 本质:围绕大模型构建的工程化支撑与控制软件基础设施(软件安全沙箱、上下文管理器、状态持久化引擎等)。
- 解决问题:解决 LLM 容易幻觉、无状态、上下文过载、运行不可控及执行高风险代码(如删库/越权)的问题,保证长流程任务的稳定性、安全性和可恢复性。
执行流程
开发模式:低代码、中代码、高代码
低代码 (Low-Code / No-Code)
- 代表工具:Coze、Dify
- 开发方式:可视化网页拖拽节点与连线(“输入 -> LLM -> 插件 -> 输出”),允许嵌入少量自定义 Code 节点做轻量数据处理。
- 适用场景:快速原型验证、业务人员或非纯后端开发人员。
中代码 (Medium-Code / Framework-level)
- 代表工具:LangChain / LangGraph (Python / TypeScript SDK)
- 开发方式:编写标准代码,调用框架封装好的类(如
StateGraph、ToolNode、PromptTemplate)。 - 核心价值:屏蔽底层状态传递、重试机制、流控等胶水代码,专注业务图逻辑构建。
高代码 (High-Code / Pro-Code)
- 开发方式:直接调用 LLM 原生 API,完全自主编写代码逻辑。
- 具体实现:自行手写
while运行循环、解析 JSON 工具调用、设计 Session 持久化及异常重试。 - 优缺点:掌控力 100%,但开发与运维基础设施成本极高。
LangGraph 核心机制
- 底层本质:带持久化状态的有向图(Stateful Directed Graph)与状态机。
- 核心四要素:
- State(状态):全局共享的数据结构(通常是 TypedDict 或 Pydantic)。
- Node(节点):具体执行动作的函数(可以是 LLM 请求、Tool 执行,或普通 Python 函数)。
- Normal Edge(普通边):确定的节点跳转关系。
- Conditional Edge(条件边/路由):根据 State 当前值或 LLM 判断,动态决定下一步跳转。
- 解决痛点:解决 LLM 在复杂多轮交互、条件路由(Router)、自我修正(Reflection/Self-Correction)及记忆管理中的非确定性问题。
更多推荐


所有评论(0)