40 章讲透模型调用、Prompt、RAG、Tools、Agent、Memory、LangGraph、LangSmith 与企业级落地。
共 24 章
一、为什么很多人调通了大模型 API,却做不出真正的 AI 应用? 现在调用一个大模型已经很简单。你只要拿到 API Key,写几行代码,就可以让模型回答问题。Demo 阶段看起来很顺利:用户输入一句话,模型返回一段文字。 但真实项目一上线
上一篇我们讲了 LangChain 到底是什么。 这一章继续往下拆:LangChain 不是一个单点工具,而是一套组件体系。你可以把它想成一条 AI 应用生产线:前面接用户问题,中间接模型、知识库和业务系统,后面接结构化输出、日志、评测和监
这一章讲清楚 LangChain 模型层的核心:Chat Model。它就像一个“统一插座”,让业务系统用同一套接口去调用 OpenAI、Claude、Gemini、Qwen、DeepSeek、Ollama 等不同模型。 一、Chat Mo
大模型对话不是“字符串输入、字符串输出”这么简单。真正进入模型上下文的,是一组带角色、内容和元数据的消息列表。 1. Messages 是大模型对话的骨架 很多人刚学 LangChain,会把模型调用理解成:我给模型一段文本,模型返回一段文
从模板语法、ChatPromptTemplate、MessagesPlaceholder 到源码级执行链路 一、为什么 Prompt 不能一直写在代码里? 很多人刚接触大模型应用时,第一反应是:不就是把一句话发给模型吗?比如“你是一个客服助
01 先把问题讲透:为什么需要结构化输出? 大模型最擅长的是“像人一样说话”。这也是它最大的问题。人能看懂一段话,系统不一定能看懂。系统要的是字段、类型、枚举、范围、布尔值、数组。不是一段情绪饱满的解释。 比如用户问:“帮我看一下这个订单是
大模型很强。它会写代码,会总结,会分析,会对话。 但它有三个硬伤:不知道你的私有数据,训练知识会过期,上下文窗口也不是无限大。 RAG 就是为了解决这三个问题。它不是让模型重新训练一次,也不是把所有资料都塞给模型。它的核心动作很简单:回答之
一、Loader 是 RAG 的入口,不是普通文件读取 很多人第一次用 LangChain 做知识库,代码通常是这样的: loader = PyPDFLoader("产品手册.pdf") docs = loader.load() 看起来像两
一、前言 Document Loader 只是把资料读进来。Text Splitter 才决定这些资料怎么进入知识库。 切分太大,检索像大海捞针。切分太小,语义被切碎。一个好的 Chunk,要能被召回,也要能独立表达完整意思。 这就是 Te
Embedding 不是可有可无的组件,它是 RAG 的地基。地基歪了,后面 Retriever、Rerank、Prompt 再漂亮也救不回来。 一、Embedding 到底是什么? Embedding,就是把一段文字变成一串数字。 这串数
1、Vector Store 不是普通数据库 普通数据库更擅长精确匹配。你查订单号,它能准。你查用户 ID,它也能准。 但 RAG 场景不是这么问的。用户不会说“我要第 32 页第 5 段”。用户只会问:“合同里违约责任怎么写?”、“三安光
01 前言 Retriever 是 RAG 的入口。它接收一个 query,返回一组 List[Document]。模型不是先出场,资料先出场。 前面几章我们讲了 Loader、Splitter、Embedding、VectorStore。
RAG 最容易踩的坑,不是“没有召回”。 而是召回了一堆看起来相关、实际会干扰模型的资料。 所以,成熟的 RAG 链路不会把 TopK 直接塞进 Prompt。 它会先召回,再重排,再压缩。 1. 为什么召回 TopK 后还要重排? 向量召
这一章不再单讲一个组件,而是把前面所有 RAG 组件合起来:从文件上传,到向量入库,再到用户提问、检索证据、模型回答、日志追踪。 01 先搞清楚:企业知识库问答不是 Demo Demo 只要能回答。企业系统要能上传、能解析、能检索、能引用、
前面几章,我们把 RAG 的底层链路讲完了:文档进来,切分,向量化,入库,检索,重排,最后把上下文交给模型。 但这还不够。 RAG 让模型会“查资料”。Tools 让模型能“办事情”。 没有 Tools,大模型只是一个会聊天的脑子。它能分析
一、模型不会真的调用工具 很多人第一次看 Tool Calling,会以为模型自己会查数据库、调接口、执行函数。错。模型没有直接执行你代码的权限。它能做的,是看懂你给它的工具说明,然后输出一段结构化数据。 这段结构化数据就是 tool_ca
01 Agent 到底是什么? 普通大模型,只会回答。Agent 不一样,它可以先判断,再行动,再根据结果继续判断。 一句话:Agent = 会使用工具的大模型循环。 用户问“帮我分析这只股票今天为什么涨”,普通问答可能直接编。Agent
1. 前言 前面几章,我们讲了 Tools、Tool Calling、Agent Loop。现在进入新版 LangChain Agent 的入口:create_agent。 它是新式 Agent 的总装厂。你把 model、tools、sy
1. Agent 不是员工,是实习生 Agent 能规划,能调用工具,能连续执行。 这很强。也很危险。 因为模型会犯错。它可能调错工具,填错参数,误解返回值,重复调用接口,甚至尝试执行高风险动作。 所以生产级 Agent 的第一原则是:模型
1. 前言 Agentic RAG 的核心,不是把 RAG 写得更复杂。 它只是把“检索知识库”这件事,从固定步骤,变成 Agent 可以选择调用的工具。 普通 RAG:用户一问,系统就查。Agentic RAG:用户一问,模型先判断;需要
记忆不是“多带几轮聊天记录”。记忆是一个可读、可写、可压缩、可持久化的上下文系统。 1. 记忆不是历史消息 很多人第一次做多轮对话,会把历史消息全部拼进 Prompt。刚开始没问题。聊十轮、二十轮以后,问题就来了:上下文越来越长,成本越来越
1. 短期记忆到底是什么? Short-term Memory = 当前 thread 内的状态保存。它让 Agent 在同一段会话里记住前面发生过什么。 LangChain 官方把短期记忆叫做 thread-level persisten
1. 长期记忆到底是什么? 短期记忆解决“这轮对话怎么接上”。长期记忆解决“这个用户下次再来,我还认不认识他”。 在 LangChain / LangGraph 里,短期记忆通常跟 thread 绑定;长期记忆放在 Store 里,按 na
一、Prompt 只是入口,上下文才是现场 很多人做 AI 应用,第一反应是改 Prompt。 但线上 Agent 出错,往往不是 Prompt 写得不够玄,而是模型看到的上下文不对。 一句话讲透 Context Engineering,就