RAG和Agent学习 📅 2026/7/21 9:24:04 pip install openai -iSimple Indexhttps://pypi.tuna.tsinghua.edu.cn/simple提示词工程是指在不更新模型权重的情况下如何与大模型交互以引导其行为以获得所需结果的方法prompt是指用户给大型语言模型发出的指令技巧一详细描述技巧二让模型充当某个角色技巧三使用分隔符标明输入的不同部分技巧四对任务指定步骤技巧五提供例子技巧六基于文本文档辅助大模型问答降低模型幻觉问题Zeor-shot思想在训练阶段不存在与测试阶段完全相同的类别但是模型可以使用训练过的知识来推广到测试集中的新类别上这种能力被称为零样本学习因为模型在训练时从未见过测试集中的新类别在模型训练和提示词优化中均有体现few-shot思想少样本学习当模型在学习了一定类别的大量数据后对于新的类别只需要少量的样本就能快速学习对应的有one-shot learning单样本学习也算样本少到为1的情况下的一种few-shot learningLangChain是围绕大语言模型建立的一个框架自身并不开发LLMs核心理念是为各种LLMs实现通用的接口把LLMs相关的组件链接在一起简化LLMs应用的开发难度方便开发者快速地开发复杂的LLMs应用下载相关依赖模型支持LangChain目前支持三种类型的模型LLMs是技术范畴的统称指基于大参数量、海量文本训练的Transformer架构模型核心能力是理解和生成自然语言主要服务于文本生成场景聊天模型是应用范畴的细分是专为对话场景优化的LLMs核心能力是模拟人类对话的轮次交互主要服务于聊天场景文本嵌入模型文本嵌入模型接收文本作文输入得到文本的向量聊天模型包含下面几种类型AIMessage就是ai输出的消息可以是针对问题的回答HumanMessage人类消息就是用户消息由人给出的信息发送给LLMs的提示信息比如“实现一个快速排序方法”OpenAI库中的uesr角色SystemMessage可以用于制定模型具体所处的环境和背景如角色扮演等。你可以在这里给出具体的指示比如“作为一个代码专家”或者“返回json格式”消息的简写形式提示词优化LangChain提供了PromptTemplate类用来协助优化提示词PromptTemplate表示提示词模板可以构建一个自定义的基础提示词模板支持变量的注入最终生成所需的提示词zero-shot思想下可以基于PromptTemplate直接完成few-shot思想下需要更换为FewShotPromptTemplate使用Template模板类支持LangChain框架的链式调用后续可以实现Runnable接口chain链「将组件串联上一个组件的输出作为下一个组件的输入」是 LangChain 链尤其是管道链的核心工作原理这也是链式调用的核心价值实现数据的自动化流转与组件的协同工作。核心前提即 Runnable 子类对象才能入链以及 Callable、Mapping 接口子类对象也可加入。通过stream或者invoke触发整个链的执行RAG通用大模型存在问题1.LLM知识不是实时的模型训练好后不具备自动更新知识的能力会导致部分信息滞后2.LLM领域知识缺乏大模型的知识来源于训练数据这些数据主要来自公开的互联网和开源数据集无法覆盖特定领域或高度专业化的内部知识3.幻觉问题LLM有时会在回答中生成看似合理但实际上是错误的信息4.数据安全性RAG架构RAG检索增强生成为大模型提供了从特定数据源检索到的信息以此来修正和补充生成的答案。RAG检索技术LLM提示在用户将问题交给模型前会现在数据库中进行检索将相关信息一起交给大模型线上用户提问从数据库检索数据离线不断的获取数据向量化然后存入数据库中RAG流程索引阶段通过处理多种来源多种格式的文档提取其中文本将其切分为标准长度的文本块并进行嵌入向量化向量存储在向量数据库中检索阶段用户输入的查询被转化为向量表示通过相似度匹配从向量数据库中检索出最相关的文本块生成阶段检索到的相关文本与原始查询共同构成提示词输入大语言模型生成精确且具备上下文关联的回答。模型本质上就是用户输入模型输出用户能做的就是在输入上下功夫RAG就是在向模型提问前基于已有的知识库或文档内容做检索确保向模型提问的内容更精准以及包含足够的信息量用以提供给模型RAG核心价值解决知识时效性问题降低模型幻觉无需重新训练模型向量向量就是文本的数字身份证它把一段文字的语义信息转换成一串固定长度的数字列表让计算机能看懂文字的含义并做相似度计算文本嵌入模型通过深度学习等技术从文本提取语义特征并映射为固定长度的数字序列text-embedding-v1模型将文本映射到1536个维度上向量匹配通过算法实现如余弦相似度向量的维度表示一段文本在多个抽象语意特征方面的强度维度代表模型用多少个抽象语义特征来描述文本维度越多语义匹配越精准但性能压力也会增大余弦相似度两个向量的点积比两个向量的模长的乘积Agent智能体是一种能够自主规划、决策、执行任务的组件核心是让大语言模型根据任务需求选择并调用工具完成单靠模型自身无法解决的复杂问题没有agent时llm只能基于自身训练数据回答问题遇到需要实时数据、复杂计算、外部工具调用的场景就会卡壳有了agent后llm就像一个“指挥官”能思考任务步骤选择合适工具执行工具调用根据结果调整策略直到完成任务agent智能体大语言模型大脑工具集手脚决策逻辑思维能让大模型从只会回答升级为会做事的智能助手agent样例输出ReAct架构Agent ReAct是大模型智能体的核心思考与行动框架全称Reasoning Acting推理 行动是让Agent像人类一样「思考问题→制定策略→执行行动→验证结果」的关键逻辑。简单来说ReAct让Agent不再是“直接回答问题”而是通过“自然语言思考过程”指导工具调用一步步解决复杂问题完美适配需要多步推理、工具协作的场景如智能客服、报告生成、任务规划等。MiddleWare中间件