跳转至

人工智能

LangGraph 入门到精通教程:从零基础到实现简易版 LangGraph

LangGraph 是 LangChain 生态中最重要的低层编排框架之一,它让开发者能够以“图”(Graph)的形式构建复杂、状态持久、多 Actor 的 LLM 应用。不同于传统的 LangChain Chain 或 Agent,LangGraph 真正解决了“长生命周期、有状态、可恢复、可中断、可调试”的核心痛点,被广泛用于构建生产级 Agent、自主工作流、多 Agent 协作系统等场景。

本文从入门(零基础快速上手)到深入(源码级原理分析),再到实践(基于 LangGraph 原理手写一个简易版 LangGraph),帮助你真正“精通”LangGraph。所有代码均在 Python 3.10+ 环境下测试通过,基于官方仓库原理提炼。

LangGraph 是什么?为什么需要它?

LangGraph 的核心思想源于 Google Pregel(一种大规模图计算框架)和 NetworkX 图接口。它把 LLM 应用建模为有向图

  • 节点(Node):执行具体动作的函数或 Runnable(LLM 调用、工具调用、Python 函数等)。
  • 边(Edge):控制流(无条件边、条件分支边、动态 Send)。
  • 状态(State):共享的 TypedDict,通过 Channel(通道)进行更新,支持多种归约器(reducer,如 append、last_value)。
  • 执行引擎:Pregel 算法 —— “超级步”(superstep)模型,实现 Bulk Synchronous Parallel(BSP),支持循环、并行、检查点持久化。

与 LangChain 的区别

  • LangChain Chain 是线性/树状流程,适合简单任务。
  • LangGraph 是循环有向图(支持 cycle),天然适合 ReAct Agent、规划-执行-反思循环、多 Agent 协作。
  • 官方文档定位:LangGraph 是“为长期运行、有状态 Agent 设计的低层框架”,LangChain 很多高级 Agent(如 create_react_agent)底层就是 LangGraph。

核心优势

  1. 持久化(Checkpoint):任意时刻保存状态,支持故障恢复、人机协同。
  2. Human-in-the-Loop:中断执行,人工修改状态后继续。
  3. 流式 + 调试:stream_mode 支持 values/updates/debug/messages,与 LangSmith 无缝集成。
  4. 可扩展:自定义 Channel、Subgraph、Remote Pregel。
  5. 生产就绪:支持 Postgres/SQLite 持久化、异步执行、重试策略。

官方最新版本(2026 年 4 月):langgraph==1.1.7a1(预发布),核心位于 libs/langgraph/langgraph/ 下,主要模块包括:

  • graph/:StateGraph、MessageGraph、分支逻辑。
  • pregel/_loop.py_runner.py_algo.py_checkpoint.py 等实现 Pregel 执行引擎。
  • channels/:LastValue、Topic、BinaryOperatorAggregate 等通道实现。

Mem0:为 AI Agent 构建持久化记忆层的技术解析与实现原理

Mem0 是什么?

Mem0 是一个开源的 AI 记忆层(Memory Layer) 框架,专为大型语言模型(LLM)应用提供长期记忆能力。与简单的对话历史存储不同,Mem0 实现了语义理解、实体关系图谱、个性化偏好学习等高级记忆机制,使 AI 能够像人类一样"记住"用户、积累知识、并在多次会话中保持连续性。

其核心定位是介于传统 RAG(检索增强生成)与简单对话管理之间的智能记忆中间件,通过 分层记忆架构(Tiered Memory Architecture) 实现从短时记忆到长时记忆的完整生命周期管理。

MCP 完全指南:从入门到精通

入门篇:什么是 MCP?

MCP 的定义与价值

MCP(Model Context Protocol,模型上下文协议) 是一个开源标准协议,用于连接 AI 应用程序与外部系统。它就像 USB-C 接口 一样,为 AI 应用提供了一种标准化的方式来连接数据源、工具和工作流。

MCP 能做什么?

  • 让 AI 助手访问你的 Google Calendar 和 Notion,成为个性化助理
  • 让 Claude Code 根据 Figma 设计生成完整 Web 应用
  • 让企业聊天机器人连接多个数据库,通过对话分析数据
  • 让 AI 模型创建 3D 设计并通过 3D 打印机输出

为什么 MCP 很重要?

角色 收益
开发者 减少开发时间和复杂度,无需为每个集成重复造轮子
AI 应用 接入丰富的数据源和工具生态,增强能力
终端用户 获得更强大的 AI 应用,能访问个人数据并执行操作

Kimi官方 Prompt 最佳实践指南

本文转载自 Kimi 官方文档入门指南:Prompt 最佳实践一文。

System Prompt最佳实践:system prompt(系统提示)指的是模型在生成文本或响应之前所接收的初始输入或指令,这个提示对于模型的运作至关重要

大模型中 system prompt指的是什么,为什么它很重要?

在大型机器学习模型,尤其是自然语言处理(NLP)模型中,"system prompt"(系统提示)指的是模型在生成文本或响应之前所接收的初始输入或指令。这个提示对于模型的运作至关重要,原因如下:

  1. 指导生成内容:系统提示为模型提供了生成文本的起点,帮助模型理解用户的需求和上下文。
  2. 确定响应类型:提示可以明确告诉模型需要生成哪种类型的响应,比如回答问题、撰写文章、进行翻译等。
  3. 设定上下文:通过包含必要的上下文信息,系统提示可以帮助模型更好地理解问题,并生成更准确的回答。
  4. 影响生成文本的风格和语气:系统提示还可以设定文本的风格和语气,比如正式、非正式、幽默、严肃等。
  5. 控制生成文本的长度:在某些情况下,系统提示可以包含对生成文本长度的要求。
  6. 避免不当内容:通过精心设计系统提示,可以减少模型生成不当或不安全内容的风险。
  7. 提高效率:一个好的系统提示可以提高模型的效率,因为它减少了模型需要猜测的内容,从而加快了生成过程。
  8. 用户交互:在交互式应用中,系统提示是用户与模型之间沟通的桥梁,确保了用户意图的准确传达。

在设计系统提示时,需要考虑到这些因素,以确保模型能够生成高质量、相关且符合预期的输出。

编写清晰的说明

为什么需要向模型输出清晰的说明?

模型无法读懂你的想法,如果输出内容太长,可要求模型简短回复。如果输出内容太简单,可要求模型进行专家级写作。如果你不喜欢输出的格式,请向模型展示你希望看到的格式。模型越少猜测你的需求,你越有可能得到满意的结果。

🦞 OpenClaw:给 AI 装上“爪子”的开源革命 —— 数字贾维斯已到来

OpenClaw 是什么?

OpenClaw(原名 Clawdbot → Moltbot → OpenClaw)是一个开源 AI 代理框架,由奥地利独立开发者 Peter Steinberger 创建。它不是一个大模型,而是一个"给 AI 装上爪子的执行系统"

简单来说:

  • GPT/Claude 是"大脑"——只能思考和建议
  • OpenClaw 是"手脚"——能真正操作你的电脑执行任务

它运行在你的本地设备(Mac/PC)或私有服务器上,通过 WhatsApp、Telegram、Slack、飞书、钉钉等日常聊天软件与你交互,拥有读写文件、执行终端命令、操控浏览器、访问邮件日历等系统级权限