AI
文章平均质量分 82
红蒲公英
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
( 教学 )Agent 构建 Memory(提示词对话存储)5. ConversationKGMemory(以图形式管理实体之间关系的模块, 版本>1.0和<1.0的区别)
本文介绍了ConversationKGMemory模块,这是一种基于图结构管理对话实体关系的记忆系统。该模块能够提取并存储知识三元组(主体-关系-客体),有效捕捉实体间的复杂关联。 主要内容包括: 功能特点:支持对话上下文存储、实体提取、知识三元组获取等功能 核心方法: get_topological_sort():返回按依赖关系排序的实体列表 get_current_entities():从输入中提取专有名词 get_knowledge_triplets():检索实体间的关联信息 应用示例:展示了如何结合原创 2026-01-03 22:28:06 · 836 阅读 · 0 评论 -
( 教学 )Agent 构建 Memory(提示词对话存储)4. ConversationEntityMemory(保存对话过程中提及的特定实体的相关信息, 版本>1.0和<1.0的区别)
摘要: ConversationEntityMemory是一种对话记忆存储机制,能够提取并保存对话中提到的特定实体信息。文章展示了两种实现方式:1) 旧版本(<1.0)通过简单字典存储实体信息;2) 新版本(≥1.0)采用结构化EntityState类型,包含实体类型、置信度等更多元数据。通过代码示例演示了两种实现的具体应用,新版本通过状态图(graph)方式实现了更灵活的实体提取和记忆功能,能够更好地支持多轮对话中的实体信息维护和引用。原创 2026-01-03 21:32:56 · 235 阅读 · 0 评论 -
( 教学 )Agent 构建 Memory(提示词对话存储处理)3. ConversationTokenBufferMemory(根据“令牌长度”刷新对话内容, 版本>1.0和<1.0的区别)
摘要: ConversationTokenBufferMemory是一种基于令牌长度管理对话历史的机制,通过max_token_limit控制存储上限,支持自定义消息前缀。旧版本(<1.0)直接存储对话,而新版本(≥1.0)结合LangGraph框架,通过MemorySaver动态计算和截断令牌(如使用tiktoken编码器),支持智能总结和多策略混合管理。高级用法包括动态调整令牌限制、自定义计算逻辑及与其他记忆策略结合,适用于复杂对话场景。原创 2026-01-03 20:44:35 · 387 阅读 · 0 评论 -
( 教学 )Agent 构建 Memory(提示词对话存储)2. ConversationBufferWindowMemory(随时间滑动最近对话交互窗口, 版本>1.0和<1.0的区别)
本文介绍了ConversationBufferWindowMemory的实现原理与应用。这是一种基于滑动窗口的对话记忆管理机制,只保留最近K次交互内容,避免内存膨胀。文章展示了两种实现方式:1)1.0版本前的传统方法,通过模拟银行开户流程演示了仅保留最近2轮对话的效果;2)1.0版本后的新方法,使用MemorySaver和StateGraph构建,实现保留3条消息的窗口记忆。两种方法都验证了滑动窗口在对话系统中的应用价值,能有效控制记忆存储规模,同时保持对话连贯性。原创 2025-12-24 00:47:14 · 220 阅读 · 0 评论 -
( 教学 )Agent 构建 Memory(提示词对话存储)1. ConversationBufferMemory(对话缓存存储, 版本>1.0和<1.0的区别)
这是一个用于在缓冲区中存储对话历史的内存类。通常情况下,不需要额外的处理。但是,当对话历史超出模型的上下文窗口时,可能需要进行额外处理。学习如何使用来存储和检索对话历史。原创 2025-12-23 23:59:12 · 544 阅读 · 0 评论 -
( 教学 )Agent 构建 Prompt(提示词)4. 提示词模板 (初级到高级的应用提示词)
摘要提示词旨在生成简洁、信息丰富的文档摘要,同时保留关键信息和上下文。from langsmith import Client from langchain_core . prompts import PromptTemplate # 将提示上传到 LangChain Hub。# 别忘了在环境变量中设置 LangSmith API。请根据以下要求对句子进行总结。要求:1. 以项目符号的形式概括要点。2. 每条总结句开头需使用贴合句意的表情符号。3. 使用多样的表情符号让摘要更有趣。原创 2025-12-11 17:45:50 · 1162 阅读 · 0 评论 -
( 教学 )Agent 构建 Prompt(提示词)3. 提示词模板 (LangChain Hub)
本文介绍了LangChain Hub提示词的使用方法,主要包括两大功能:1)从Hub获取预设提示词,如RAG问答模板;2)向Hub注册自定义提示词(如韩语摘要模板)。通过简单的Python代码即可实现提示词的拉取、执行和共享,显著提升开发效率。LangChain Hub作为提示词集中管理平台,支持搜索分类、版本控制和团队协作,使开发者能够快速复用优质提示词模板。文中提供了详细的操作示例和API参考链接,帮助开发者快速上手这一高效工具。原创 2025-12-10 16:50:42 · 648 阅读 · 0 评论 -
( 教学 )Agent 构建 Prompt(提示词)2. 提示词模板 ( Few-Shot Templates (FewShotPromptTemplate))
本文介绍了LangChain框架中的少样本提示技术(Few-Shot Prompting),重点讲解了提示词模板和实例选择器的应用。主要内容包括: 少样本提示模板(FewShotPromptTemplate)的作用机制,通过嵌入示例引导模型生成符合预期的输出 实例选择器(Example Selector)的核心价值,包括: 实现语义缓存降低维护成本 优化token使用效率 支持多租户隔离 增强可解释性 支持实时修正 扩展多模态能力 详细说明了实例选择器的工作流程,以及如何与Chroma向量存储结合实现动态示原创 2025-12-10 15:54:26 · 1282 阅读 · 0 评论 -
( 教学 )Agent 构建 Prompt(提示词)1. 提示词模板 (Prompt Template)
本文介绍了使用LangChain构建提示词模板的方法。主要内容包括:1)两种创建PromptTemplate对象的方式(from_template方法和直接实例化);2)使用partial_variables进行部分变量赋值;3)从YAML文件加载模板;4)高级功能如ChatPromptTemplate和MessagePlaceholder的使用。教程提供了具体代码示例,展示如何动态生成提示词,并演示了与Qwen2.5-7B-Instruct模型的集成应用。通过学习这些技术,开发者可以创建更灵活、可维护的提原创 2025-12-09 17:19:53 · 843 阅读 · 0 评论 -
( 教学 )Agent 构建 OutPutParser (定义输出结构)5. PandasDataFrameOutPutParser
本文介绍了如何使用PandasDataFrameOutputParser与LLM交互处理表格数据。主要内容包括:1) 定义大语言模型(Qwen2.5-7B)的配置;2) 创建DataFrameResponse输出模型将LLM响应转为pandas DataFrame;3) 演示从figshare获取航空乘客统计数据并展示前五行;4) 提供格式转换函数处理解析器输出。教程使用真实数据集替代常见的titanic数据,展示了LLM与结构化数据交互的实用方法。原创 2025-12-09 14:10:14 · 1109 阅读 · 0 评论 -
( 教学 )Agent 构建 OutPutParser (定义输出结构)2. CommaSeparatedListOutputParser
摘要:CommaSeparatedListOutputParser是LangChain中的输出解析器,用于生成逗号分隔的结构化列表数据。它通过以下步骤实现:1)导入模块并初始化解析器;2)创建提示模板定义输出格式;3)集成ChatOpenAI模型运行链式调用。该工具支持流式输出和Python索引访问,适用于数据提取、内容分类、自动摘要等多种场景,能有效提高数据处理的清晰度和工作效率。测试案例展示了如何使用该解析器生成"中国著名地标"列表并访问其中的元素。原创 2025-11-30 03:23:22 · 338 阅读 · 0 评论 -
( 教学 )Agent 构建 OutPutParser (定义输出结构)1. PydanticOutputParser
本文介绍了如何使用PydanticOutputParser将语言模型输出转换为结构化数据。文章包含两个主要部分: 基础使用:展示如何用StrOutputParser提取邮件关键内容,获得文本摘要。 高级使用:通过定义Pydantic数据模型(EmailSummary类),使用PydanticOutputParser将邮件内容解析为结构化JSON格式。重点说明了字段描述的重要性、数据验证以及两个核心方法: get_format_instructions():提供输出格式说明 parse():将文本转换为结构化原创 2025-11-30 01:42:27 · 362 阅读 · 0 评论 -
构建简单Agnet(3) 使用简单RAG
什么是RAG?RAG是一种 混合AI Agent架构 ,它将传统的信息检索系统与现代的生成式AI模型结合起来,以提高AI回答问题的准确性和可靠性。原创 2025-11-29 21:55:59 · 990 阅读 · 0 评论 -
LangGraph节点完整组成与要求详解
LangGraph节点组成摘要 LangGraph节点由三核心部分组成:1)输入结构(TypedDict定义数据类型);2)处理函数(含核心逻辑和错误处理);3)输出结构(含结果和元数据)。关键要求包括:状态管理(共享/私有状态隔离)、多样节点类型(普通/条件/入口/出口节点)、流程控制(条件边和序列连接)以及容错机制(异常捕获和状态回滚)。节点需明确定义接口,保持逻辑纯净,并提供足够的可追溯性信息。原创 2025-09-05 21:24:34 · 1111 阅读 · 0 评论 -
LangGraph 父子图模式详解
LangGraph父子图模式是一种模块化架构,允许父图和子图拥有不同的状态结构。关键点包括: 状态隔离:父图和子图各自定义状态模式(如ParentState和SubgraphMessagesState) 节点调用:父图中专门节点(call_subgraph)负责: 转换父图状态为子图格式 调用子图处理 将子图输出转回父图格式 核心优势: 模块化设计,子图可复用 状态结构解耦 支持复杂处理流程 典型应用场景:多代理系统、分阶段工作流、数据处理管道等 该模式通过状态转换实现灵活集成,是构建复杂LangGraph原创 2025-09-04 19:19:26 · 614 阅读 · 0 评论 -
LangGraph 边(Edge)机制完全指南
Q: 条件边选择了未连接的节点怎么办?A: 会从节点入口重新执行所有边逻辑。Q: 中断后边的执行会怎样?原创 2025-09-01 14:34:10 · 968 阅读 · 0 评论 -
LangGraph interrupt() 函数详解
【代码】LangGraph interrupt() 函数详解。原创 2025-09-01 13:13:11 · 310 阅读 · 0 评论
分享