# AI 导航

这里沉淀 AI Agent 设计模式、LangChain 工程实践、工程问题、面试题和 Claude Code 源码学习笔记。

# AI Agent 设计模式

文章 说明
Agent 设计模式地图:从 Google 12 模式到 claude-learn 与 Claude Code 源码 对照 Google Agent 设计模式、claude-learn 教学项目和 Claude Code 源码,梳理 ReAct、Loop、Coordinator、Swarm 等模式。

# LangChain

目录页:LangChain

# 基础入门

文章 说明
为什么选择 LangChain:从 LLM 调用到可维护的 AI 应用工程 理解 LangChain 的定位、安装方式和文档阅读路径。
LangChain 安装与文档阅读路线:从环境配置到工程上手 理解 LangChain 的定位、安装方式和文档阅读路径。

# Prompt、模型与解析

文章 说明
LangChain Prompt 组件实践:模板、消息占位符与提示词工程化 整理 Prompt、Model、OutputParser 的核心用法和工程边界。
LangChain Model 组件实践:模型初始化、消息协议与生产调用技巧 整理 Prompt、Model、OutputParser 的核心用法和工程边界。
LangChain OutputParser 组件实践:从模型文本到可靠业务数据 整理 Prompt、Model、OutputParser 的核心用法和工程边界。

# LCEL 与 Runnable

文章 说明
LangChain LCEL 与 Runnable 实践:把 LLM 应用链路写成可组合协议 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain 两个 Runnable 核心类:RunnableParallel 与 RunnablePassthrough 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain 回调与可观测性实践:让链路执行过程透明可追踪 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain RunnableWithMessageHistory 实践:让 LCEL 链自动管理聊天历史 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain Runnable 运行时参数绑定:bind、configurable_fields 与生产配置 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain Runnable 配置运行时链内部:configurable_fields 与生产级参数治理 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain Runnable 动态替换运行组件:configurable_alternatives 与生产级路由 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain Runnable 重试与回退机制:with_retry、with_fallbacks 与生产级容错 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain Runnable 生命周期监听器:with_listeners、with_alisteners 与生产观测 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。
LangChain 基于 Runnable 封装记忆链:从手写自动管理到新版生产实践 围绕 Runnable 协议、LCEL 编排、运行时配置、回调、重试和记忆封装展开。

# 记忆模块

文章 说明
LangChain ChatMessageHistory 实践:聊天记录、短期记忆与生产持久化 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。
LangChain Memory 运行流程与分类:从旧版组件到当前记忆架构 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。
LangChain 缓冲记忆实践:从 ConversationBufferMemory 到新版短期记忆 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。
LangChain 摘要记忆实践:长对话压缩、短期记忆与生产治理 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。
LangChain 实体记忆实践:从 ConversationEntityMemory 到长期记忆 Store 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。
LangChain 记忆持久化与第三方集成:从 ChatMessageHistory 到 Checkpointer 和 Store 梳理聊天历史、短期记忆、摘要记忆、实体记忆和持久化方案。

# Embedding

文章 说明
LangChain CacheBackedEmbeddings 实践:Embedding 缓存、版本治理与生产落地 整理 Embedding 缓存、模型选型和生产治理。
LangChain 其他 Embedding 模型实践:Hugging Face、本地模型、云厂商与生产选型 整理 Embedding 缓存、模型选型和生产治理。

# 函数调用基础

文章 说明
大语言模型函数调用与 Agent 开发导览 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
LLM 函数调用使用技巧与应用场景 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
ChatModel 使用函数调用的技巧与流程 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
不支持函数调用的大语言模型解决技巧 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
函数调用快速提取结构化数据使用技巧 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
函数调用出错处理提升程序健壮性 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。
多模态 LLM 执行函数调用的技巧 围绕函数调用、工具 schema、结构化输出、错误处理和多模态调用展开。

# 工具与联网插件

文章 说明
LangChain 中的工具与工具包 整理 LangChain 工具、工具包、自定义工具以及天气/搜索类联网插件实现。
创建自定义工具的 3 种技巧与使用场景 整理 LangChain 工具、工具包、自定义工具以及天气/搜索类联网插件实现。
高德天气预报查询插件的集成与编写 整理 LangChain 工具、工具包、自定义工具以及天气/搜索类联网插件实现。
谷歌实时信息搜索插件的集成与编写 整理 LangChain 工具、工具包、自定义工具以及天气/搜索类联网插件实现。

# Agent 实践

文章 说明
基于 ReACT 架构的 Agent 智能体设计与实现 梳理 ReACT、tool-calling Agent、内置 Agent 类型和 AgentExecutor 边界。
基于工具调用的智能体设计与实现 梳理 ReACT、tool-calling Agent、内置 Agent 类型和 AgentExecutor 边界。
内置的其他 Agent 类型介绍与上手 梳理 ReACT、tool-calling Agent、内置 Agent 类型和 AgentExecutor 边界。
AgentExecutor 源码解析与 Agent 组件缺陷 梳理 ReACT、tool-calling Agent、内置 Agent 类型和 AgentExecutor 边界。
大语言模型函数调用与 Agent 开发总结 梳理 ReACT、tool-calling Agent、内置 Agent 类型和 AgentExecutor 边界。

# LangGraph 工作流

文章 说明
LangGraph 与 LCEL 构建大型复杂应用导览 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LCEL 链表达式的缺点与扩展 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 介绍与基础组件上手 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
条件边与循环流程实现工具调用 Agent 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 实现 ReACT 架构 Agent 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
图结构应用程序删除消息的使用技巧 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 检查点实现持久化记忆功能 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
图结构断点实现 Agent 与人进行交互 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 子图架构实现 AI 工作流 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
需求转换图架构的技巧:CRAG 实现 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
利用图优化 LLMOps 聊天机器人架构 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 两种基础流式响应技巧 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 总结与注意事项 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。
LangGraph 与 LCEL 构建大型复杂应用总结 从 LCEL 局限出发,整理 LangGraph 节点、边、循环、检查点、断点、子图、流式响应和架构优化。

# RAG 基础

文章 说明
大语言模型幻觉的原因与缓解方案 从事实性幻觉、忠实性幻觉出发,梳理数据、训练、推理、应用链路中的幻觉来源,并给出 RAG、拒答、引用、评估和监控方案。
RAG 基础架构与手动模拟 解释 RAG 为什么能缓解知识过期和领域知识缺失,并用手动流程拆解 query、retrieval、context、prompt、generation 的关系。
向量数据库是什么:从语义搜索到 AI 应用存储 用语义空间解释向量数据库的作用,梳理向量、相似度、索引、元数据和 AI 应用场景。
传统数据库与向量数据库的使用差异 对比传统数据库和向量数据库在数据模型、查询方式、索引、排序、更新、过滤和业务边界上的差异。
Embedding 文本嵌入模型介绍与使用 解释 Embedding 如何把文本映射到向量空间,并说明相似度、维度、归一化、多语言和选型注意事项。
OpenAI Embedding 接口使用实践 介绍使用 Embedding 接口的基本流程、批量处理、向量相似度计算、成本控制和生产封装建议。
CacheBackEmbedding 的使用与注意事项 解释 Embedding 缓存的必要性、缓存命中逻辑、持久化存储、失效策略和模型版本管理。
其他 Embedding 嵌入模型的配置与使用 梳理 Hugging Face、本地模型、云厂商模型和 OpenAI 兼容接口的使用差异与选型思路。
Faiss 向量数据库的配置与使用 介绍 Faiss 的定位、索引类型、相似度搜索、LangChain 集成、持久化和适用边界。
Pinecone 向量数据库的配置与使用 介绍 Pinecone 的托管向量库能力、index、namespace、metadata filter、LangChain 集成和生产注意事项。
TCVectorDB 向量数据库的配置与使用 介绍腾讯云 TCVectorDB 的定位、外部 Embedding、元数据过滤、LangChain 对接和国内部署选型。
Weaviate 向量数据库的配置与使用 介绍 Weaviate 的开源与云部署方式、Collection、向量化模块、GraphQL/REST/gRPC、metadata filter 和 LangChain 集成。
对接自定义向量数据库的配置与使用 说明如何把自研或暂未被框架支持的向量数据库封装成统一接口,并接入 RAG 应用。
构建第一个 LangChain RAG 应用 从服务拆分角度构建一个最小 RAG 应用:加载文档、切分、Embedding、向量库、Retriever、Prompt、LLM 和返回引用。
RAG 基础总结 串联幻觉、RAG、向量数据库、Embedding、缓存、多向量库选型和第一个 LangChain RAG 应用,形成完整知识地图。

# RAG 深入

文章 说明
RAG 深入路线:从文档处理到检索器工程 把 RAG 深入部分拆成 Document、Loader、Blob、Transformer、TextSplitter、VectorStore 和 Retriever 七条主线。
LangChain Document 与文档加载器:RAG 数据入口设计 讲清 Document 的 page_content、metadata、id,以及文档加载器在 RAG 链路中的定位。
LangChain 内置文档加载器使用技巧 梳理内置 Loader 的选择原则、加载粒度、metadata 设计和常见踩坑。
自定义 LangChain 文档加载器:把业务数据接进 RAG 说明什么时候需要自定义 Loader,以及如何实现 lazy_load、load 和 metadata 规范。
Blob 与 BlobParser:替代传统文档加载器的解析模型 解释 Blob、BlobLoader、BlobParser 的分工,以及为什么新架构更适合复杂文件解析。
文档转换器与文本分割器:RAG 入库前的关键加工 讲清 DocumentTransformer 和 TextSplitter 的关系,以及为什么切分前清洗会影响检索质量。
递归字符文本分割器:运行流程与参数设计 解释 RecursiveCharacterTextSplitter 如何按分隔符递归切分文本,以及 chunk_size、overlap 的工程取舍。
语义文档分割器与其他分割器:从字符边界到语义边界 介绍语义分割、HTML/Markdown/代码分割等策略,以及它们和普通字符分割的边界。
自定义 LangChain 文档分割器:面向业务结构切 Chunk 讲解如何根据条款、问答、日志、工单等业务格式自定义文本分割器。
非分割类型文档转换器:清洗、过滤、翻译与压缩 介绍不改变或不主要依赖切分的 DocumentTransformer,例如清洗、过滤、翻译、摘要、字段标准化。
VectorStore 深入:相似度检索、得分与过滤 深入理解 VectorStore 的 add、delete、similarity_search、score、MMR 和 metadata filter。
Retriever 深入:从 VectorStore 到可组合检索能力 解释 Retriever 的职责、invoke 接口、VectorStoreRetriever、检索参数和 RAG 链路集成。
内置检索器与自定义检索器:把检索策略工程化 梳理内置 Retriever 的使用边界,并说明如何实现自定义 Retriever 适配业务检索服务。
RAG 深入知识地图:文档处理、切分、向量库与检索器 串联 RAG 深入阶段的关键组件和工程主线,形成从数据入口到检索输出的完整地图。

# RAG 优化策略分析

这一组文章按 RAG 优化的六个阶段分类:查询转换、路由、查询构建、索引、检索和生成。

# 查询转换

文章 说明
多查询改写:提升 RAG 召回准确率 把一个用户问题改写成多个检索 query,扩大召回覆盖面。
RAG 多查询融合策略:RRF 与结果合并 使用 RRF 对多路检索结果进行融合排序,减少单一路径偏差。
问题拆解:用子问题提升复杂问答准确率 把复杂问题拆成可检索、可回答、可合并的子问题。
Step-Back Prompting:扩大问题理解范围 先生成更抽象的后退问题,再用抽象问题辅助检索和回答。
HyDE 假设性文档:实现 doc-doc 对称检索 先生成假设性答案文档,再用文档到文档的相似性提高召回。
混合检索:组合多种检索算法提升召回 组合向量、关键词、多查询、RRF、HyDE 等策略构建更稳的召回链路。

# 路由

文章 说明
逻辑路由:使用查询分析限定检索范围 通过结构化查询分析识别范围、类型和条件,再路由到合适检索链路。
语义路由:为不同问题选择 Prompt 模板 根据问题语义选择不同 Prompt、模型或处理链路。

# 查询构建

文章 说明
Self-Query:基于查询分析实现动态元数据过滤 从自然语言问题中抽取过滤条件,动态构造 metadata filter。

# 索引

文章 说明
RAG 开发 6 个阶段优化策略分析 把 RAG 优化拆成查询转换、路由、查询构建、索引、检索和生成六个阶段。
RAPTOR 递归文档树:实施高级 RAG 优化策略 通过递归聚类、摘要和树状检索,让长文档具备多层级语义入口。
父文档检索器:平衡小块检索与大块上下文 小 chunk 用于精准召回,父文档用于提供完整上下文。
MultiVector:多向量检索同一文档 为同一文档建立多个语义入口,再回到原文文档生成答案。

# 检索

文章 说明
ReRank:重排提升 RAG 系统效果 在初召回后使用重排模型重新排序候选证据,提高上下文质量。

# 生成

文章 说明
CRAG:纠错式检索增强生成优化策略 对召回文档进行可信度判断,不足时改写查询、补充检索或降级处理。
LangGraph 实现 CRAG:从链到图的检索纠错 用图结构表达 CRAG 的判断、重写、检索、生成和回退分支。
Self-RAG:让模型反思检索与生成质量 让模型对是否需要检索、证据是否相关、答案是否充分进行自检。
RAG 优化策略知识地图 串联六个阶段的优化策略,形成从查询到生成的完整排查路径。

# LLM 记忆模块

文章 说明
LLM 记忆系统设计:从上下文窗口到可治理的长期记忆 梳理短期记忆、长期记忆、semantic/episodic/procedural memory、记忆读写、召回、冲突检测、隐私、成本和生产架构。
MetaGPT 记忆模块解读:多智能体协作里的消息记忆、角色上下文与长期记忆 从 MetaGPT 的 Memory、RoleContext、msg_buffer、watch、LongTermMemory 和 MemoryStorage 出发,分析多智能体协作中的消息记忆、观察过滤、长期恢复和生产化改造思路。

# AI Agent 问题与优化

文章 说明
让 LLM 老实调工具:从提示词到 Agent Harness 的四层防线 总结 LLM 工具调用可靠性的四层防线:提示词软约束、JSON Schema 硬约束、校验修复重试闭环、架构层职责分离。
大模型流式输出:为什么常用 SSE 而不是 WebSocket 分析大模型流式输出的通信模式,解释 SSE 与 WebSocket 的适用场景、工程取舍和面试回答方式。
为什么开放式 Agent 和垂类 Agent 不应该采用同一套架构 对比开放式 Agent 与垂类业务 Agent 的控制模式,分析 Claude Code、LangGraph、Agent SDK 等框架的适用边界。
Intent、Skill、Business Resolver、Capability Router 和 MCP 到底是什么关系 梳理垂类 Agent 中 Intent、Skill、业务状态解析、能力路由和 MCP 工具接入之间的层次关系。
团队 AI Coding 各玩各的,应该统一工具还是统一交付物 分析团队 AI Coding 治理思路:工具可以不同,但项目规则、任务模板、验收命令、review checklist 和 fallback tools 应该沉淀进仓库。
智能问答 Agent 到底怎么评估效果 梳理问答 Agent / RAG Agent 的分层评估体系:检索指标、生成指标、交互指标、Rubric、LLM-as-a-Judge、Golden Set 和业务指标闭环。
Agent 里的 Skill 依赖关系应该怎么设计 分析复杂 Agent 中 Skill 依赖治理:显式声明、依赖图、拓扑排序、版本管理、懒加载、沙箱隔离、依赖注入和回归测试。
大语言模型为什么会幻觉:从原因、检测到 AI Agent 的生产级缓解方案 拆解事实性幻觉与忠实性幻觉,分析数据、训练、对齐、推理和应用链路原因,并给出 RAG、工具校验、拒答、guardrails、评估集和线上反馈闭环。

# Claude Code 源码学习

文章 主题
01 hello claude code 项目起步
02 readline repl REPL 输入循环
03 modularization 模块化
04 async programming 异步编程
05 api key and env API Key 和环境变量
06 real api call 真实 API 调用
07 streaming output 流式输出
08 dialogue management 对话管理
09 session persistence 会话持久化
10 source code comparison 源码对照
11 tool system 工具系统
12 bash tool Bash 工具
13 read tool Read 工具
14 write tool Write 工具
15 glob tool Glob 工具
16 grep tool Grep 工具
17 tool calling loop 工具调用循环
18 parallel tools 并行工具
19 permission system 权限系统
20 error handling 错误处理
21 system prompt System Prompt
22 token budget Token 预算
23 cost tracking 成本追踪
24 dialogue compact 对话压缩
25 model switching 模型切换
26 config persistence 配置持久化
27 output style 输出风格
28 queryengine comparison QueryEngine 对照
29 compact orphan fix Compact 修复
30 queryengine class QueryEngine 类
31 content block model Content Block 模型
32 event stream 事件流
33 extended thinking Extended Thinking
34 engine source comparison 引擎源码对照
35 slash command framework Slash Command
36 hooks lifecycle Hooks 生命周期
37 todowrite tool TodoWrite
38 subagent tool SubAgent
39 multi agent orchestration Multi Agent 编排
40 memory system Memory
41 skills system Skills
42 plan mode Plan Mode
43 context engineering Context Engineering
44 real compaction 真实 Compact
45 phase4 integration Phase 4 集成
46 web tools Web 工具
47 mcp intro MCP 入门
48 mcp dynamic registration MCP 动态注册
49 mcp resources prompts MCP Resources / Prompts
50 mcp playwright MCP Playwright
51 mcp official sdk MCP 官方 SDK
52 plugin system Plugin System
53 lsp integration LSP 集成
55 repl bridge REPL Bridge
57 permission engine Permission Engine
58 security sandbox Security Sandbox
59 bash risk classifier Bash 风险分类
60 prompt caching Prompt Caching
61 layered settings 分层设置
62 telemetry logging Telemetry Logging
63 security source comparison 安全源码对照
64 terminal renderer Terminal Renderer
65 mini react reconciler Mini React Reconciler
66 http sse backend HTTP SSE 后端
67 websocket permissions WebSocket 权限
68 web chat frontend Web Chat 前端
69 tool ui markdown Tool UI Markdown
70 create core Create Core
71 web sessions status Web Sessions Status
72 ui bridge source comparison UI Bridge 源码对照
75 full source tour 完整源码导览