- 博客(89)
- 资源 (34)
- 收藏
- 关注
原创 深度智能体—持久化后端
摘要:《深度智能体》提供了四种持久化后端配置选项:1)基于状态的后端(默认缓存中间结果);2)基于文件系统的后端(支持沙箱隔离);3)基于store的后端(使用内存存储);4)混合后端(支持多存储路由)。用户可自定义后端(需继承BackendProtocol并实现6个核心方法),示例展示了基于PostgreSQL的实现。此外还支持通过PolicyWrapper实现访问控制,可限制特定路径的写操作。系统提供灵活的存储方案,满足不同场景的数据持久化需求,同时支持业务规则扩展。
2025-11-14 10:01:33
1486
原创 langgraph构建智能RAG
本文完成了一个简单的同时也比较典型的RAG。涉及PDF文件加载,文件分块、向量化及存储,从向量库进行语义检索获取相关数据,最后用一个图把所有的组件贯穿起来。
2025-10-24 17:41:53
934
原创 LangSmith—评估数据集
本文介绍了LangSmith中创建和管理数据集的多种方法。创建数据集可通过SDK或UI界面实现,支持从样本列表、运行结果、CSV文件或DataFrame导入数据。SDK提供了丰富的API,包括创建、查询和更新数据集及样本的功能。数据集支持分块管理,可将样本划分为不同分组进行评估。此外,还详细说明了如何使用UI界面手动创建数据集或从文件导入数据。管理功能包括查询数据集、样本更新以及分块数据的创建和使用,为模型评估提供了灵活的数据支持。
2025-11-21 13:10:43
695
原创 LangSmith—AI应用性能评估关键技术
本文围绕AI应用开发中的数据质量管理与评估方法展开,重点介绍了数据集的构建和评估流程两大核心环节。在数据集方面,详细阐述了数据整理的三种方法(人工整理、线上收集和合成数据)、数据划分策略以及版本管理的重要性。在评估体系方面,系统说明了评估器的输入输出规范,并介绍了人工评估、启发式评估、大模型评估和配对评估四种技术方法。文章还区分了离线评估(包括基准测试、单元测试等)和在线评估的应用场景,最后对评估与测试的概念进行了辨析。这些内容为构建高质量AI应用提供了系统化的数据管理和性能评估方法框架。
2025-11-20 12:35:08
923
原创 LangSmith—AI应用性能评估快速上手
本文介绍了使用LangSmith工具评估AI应用性能的方法。主要内容包括:1)评估三要素:数据集(含输入和预期输出)、目标函数(被评估的AI组件)和评估器(对输出进行语义评分);2)实践步骤:设置环境变量,构建RAG智能体(含PDF加载、文本分割、向量存储和检索工具),创建5个测试用例的数据集,使用Deepseek模型实现语义评估器,定义目标函数调用智能体;3)执行评估并查看结果。该方法通过结构化评估解决大模型输出不确定性问题,帮助开发者构建更可靠的AI应用。
2025-11-19 17:48:56
636
原创 LangSmith-智能应用可见性
本文介绍了如何使用LangSmith工具对大模型应用进行开发和监控。首先演示了一个基于PDF文档的RAG应用构建过程,包括文档加载、文本分割、向量存储和信息检索。随后详细说明了如何通过设置环境变量和封装模型,使用LangSmith跟踪大模型调用过程,包括输入输出记录和完整应用流程跟踪。文章还展示了LangSmith对LangChain原生支持的特性,通过简单的环境变量配置即可实现对智能体(agent)应用的监控。这些功能可以帮助开发者提高大模型应用的可观察性,优化提示工程和质量评估。
2025-11-18 15:06:02
1040
原创 langchain 智能体护栏
本文对于langchain 智能体的护栏进行讲解。首先对于护栏的概念、作用、实现模式进行介绍,然后分别用示例讲解langchain自带护栏及如何实现自定义的护栏,最后说明如何通过护栏堆叠实现对于智能体的多级安全保护。
2025-11-18 09:38:56
775
原创 深度智能体-人机回环
本文介绍了深度智能体中人机回环(human-in-the-loop)的实现方法。通过interrupt_on参数可以设置不同工具的中断策略(允许/拒绝/编辑),实现对工具调用的细粒度控制。文章演示了如何创建具备企业信息查询和保存功能的智能体,并详细说明了处理工具调用中断的流程,包括批准、拒绝和修改参数等操作。此外,还介绍了多工具中断的批量处理和子智能体独立中断策略的配置方法。这种机制为风险操作提供了人工审核的保障,增强了智能体系统的可控性和安全性。
2025-11-14 20:18:05
619
原创 深度智能体的中间件
深度智能体采用模块化中间件架构,包含三种核心中间件:待办列表中间件(支持任务规划和更新)、文件系统中间件(实现结果持久化和上下文管理)、子智能体中间件(支持创建和管理子智能体)。这些中间件可根据需求灵活配置,通过create_agent函数进行定制,包括修改系统提示词、持久化后端(开发时用StateBackend,生产环境推荐CompositeBackend)以及定义子智能体的模型、工具和功能。深度智能体的中间件比Langchain抽象层次更高,专注于规划、持久化和子智能体管理等高级功能。
2025-11-14 16:36:29
679
原创 深度智能体-长短期记忆
本文介绍了深度智能体中的持久化存储机制。通过CompositeBackend实现混合持久化存储,StateBackend用于短期记忆(线程级数据),FilesystemBackend用于长期记忆(跨线程数据)。文章展示了长短期记忆的验证方法,并详细说明了长期记忆的三大应用场景:1)指令进化(;2)构建知识库;3)研究项目。
2025-11-14 14:52:45
744
原创 深度智能体-子智能体
摘要:深度智能体通过创建专业子智能体来执行复杂多步任务,可解决上下文膨胀问题。适用于多步任务产生中间结果、特定业务领域、需选用不同大模型等场景。配置子智能体时可采用字典格式或CompiledSubAgent形式,需遵循描述清晰、提示词详细、工具最小化等原则。常见问题包括未调用子智能体、上下文膨胀和选择错误,可通过优化描述、明确委托要求、精简输出等方式解决。深度智能体自带通用子智能体用于基础任务隔离。
2025-11-14 11:58:34
509
原创 深度智能体-智能体加强版
本文介绍了深度智能体的增强功能,主要包括:1)文件系统访问能力,包含6个类Linux命令工具;2)智能管理工具调用结果,避免上下文窗口饱和;3)可插拔的持久化后端,支持多种存储策略;4)任务委托功能,支持创建子智能体实现并行处理;5)对话历史汇总机制,自动压缩令牌数量;6)工具调用断链恢复功能,确保消息序列完整性;7)结构化待办事项跟踪系统;8)人机回环功能。这些增强使深度智能体具备更强大的文件处理、任务管理、内存优化和错误恢复能力,适用于复杂任务执行场景。
2025-11-13 12:25:27
814
原创 langchain 深度智能体
DeepAgents是LangChain发布的用于构建深度智能体的库,能够处理复杂多步任务。它支持任务规划、子智能体调用和文件系统管理,适用于需要多步骤分解、大上下文管理和跨对话记忆的场景。开发者可通过配置模型(如千问)、定制系统提示词(如史学研究专家角色)和集成工具(如Tavily搜索工具)来构建智能体。
2025-11-12 18:23:14
736
原创 langchain agent上下文工程
本文探讨了智能体开发中的上下文工程问题,提出了上下文分类框架和优化方法。主要内容包括上下文分类和上下文工程。通过上下文工程使大模型能够接受到恰当的数据,从而提高智能体的可靠性。
2025-11-10 12:50:21
651
原创 langchain 多智能体
LangChain智能体系统提供了两种协同模式:工具调用模式(中心化架构)和交接模式(去中心化架构)。工具调用模式由主智能体控制子智能体作为工具使用,适合需要集中控制的场景;交接模式则允许智能体平等交互,适合复杂对话场景。两种模式可结合使用形成混合架构。实现多智能体协调的关键是上下文工程,包括数据可见性控制、定制提示词、管理推理步骤和定义输入输出格式。文章详细展示了工具调用模式的实现过程,包括定义工具、创建智能体、智能体工具化等步骤,并提供了代码示例。同时介绍了如何通过自定义状态和Command机制修改子智
2025-11-07 15:45:14
876
原创 langchain agent的长期记忆
本文介绍了基于JSON格式的长期记忆存储系统,该系统支持多级命名空间存储,开发和测试可使用内存,生产环境需数据库支持。通过HuggingFace嵌入模型实现语义搜索功能,演示了创建存储、保存用户信息(如姓名和兴趣话题)的代码示例。系统提供读写工具,包括get_user_info和save_user_info函数,并通过LangChain代理机制实现数据访问和更新。存储内容采用结构化方式组织,支持基于用户唯一标识的个性化数据管理,为开发智能应用提供长期记忆功能支持。
2025-11-06 13:05:30
829
原创 langchain agent的中间件
LangChain中间件提供对Agent执行流程的细粒度控制,类似AOP机制。预制中间件包括:对话历史汇总、人机交互审核、模型调用限制、敏感信息过滤等10余种功能。开发人员可通过注解方式自定义中间件,支持在Agent执行各阶段插入逻辑(如调用前验证、调用后处理)。多个中间件按注册顺序依次执行,支持动态跳转控制流程。这些中间件可增强Agent的日志跟踪、安全防护、性能优化等能力,同时提供灵活的扩展机制满足定制需求。
2025-11-06 10:43:39
1222
原创 langchain agent的工具
本文介绍了使用@tool注解创建和定制LangChain工具的方法。主要内容包括:1)通过@tool注解快速创建工具函数;2)工具定制方法(修改名称、增加描述、规范化输入模式);3)工具访问上下文的实现方式(运行时上下文、长期记忆存储、实时反馈)。文中提供了创建电子印章工具和查询企业信息工具的具体代码示例,展示了如何通过BaseModel或JSON模式定义数据结构,以及如何使用ToolRuntime访问上下文和长期记忆。这些方法可以帮助开发者构建更灵活、功能更强大的智能代理应用。
2025-11-03 10:18:28
701
原创 langchain agent的短期记忆
本文探讨了在LangChain中实现短期记忆的多种方法。短期记忆依赖于持久化层的支持,开发测试可使用内存存储,生产环境需使用PostgreSQL数据库。文章详细介绍了四种短期记忆管理策略:1) 截断消息,保留最近N条;2) 删除指定历史消息;3) 使用大模型汇总历史消息;4) 自定义管理策略。此外,还演示了如何通过工具或中间件访问短期记忆进行读写操作,包括在调用模型前后处理消息。这些方法能有效控制对话历史长度,避免超出模型上下文限制,同时保留关键信息提升模型表现。
2025-11-02 20:26:00
768
1
原创 langchain1.0中的agent
本文介绍了LangChain 1.0中基于LangGraph图构建的Agent系统。主要内容包括:1) Agent的创建过程,通过整合搜索和数学计算工具;2) 工具调用的ReAct模式,展示查询两国人口比率的完整交互流程;3) 错误处理机制,可自定义工具异常提示;4) 动态模型选择功能,根据上下文切换不同AI模型;5) 提示词定制方法,支持静态和动态系统提示;6) 结构化输出能力,可定义JSON或类对象格式;7) 记忆扩展机制,支持短期记忆和自定义状态数据存储。
2025-10-31 10:12:57
866
原创 Langchain中的消息
本文介绍了大模型API与OpenAI API的兼容性实现,重点分析了LangChain框架中的消息机制。主要内容包括: 消息结构:详细说明了LangChain中的消息类型(SystemMessage、HumanMessage、AIMessage、ToolMessage)及其组成(role、content、metadata),展示了它们与OpenAI API格式的对应关系。 模型调用方法:提供了三种调用方式(直接调用、手动组织消息、使用LangChain消息类)。
2025-10-29 15:19:58
834
原创 基于pypdf和chromadb构建向量库
本文展示了使用纯Python库(pypdf+chromadb)实现文件分块和嵌入:1)通过pypdf加载并清洗PDF文本;2)使用递归文本分块器进行中文文本分割;3)利用chromadb创建持久化向量库并存储分块数据;4)实现相似性检索功能并封装为工具。分析指出pypdf的元数据提取功能有限(缺少文件名和页级元数据),可能影响检索效果,建议对元数据要求高的场景仍使用langchain的加载器。
2025-10-28 12:31:24
594
原创 langgraph构建基于数据库的RAG智能体
本文介绍了一种基于结构化数据库构建RAG智能体的方法,避免了传统向量库的分块和向量化过程。通过SQLite数据库示例,展示了使用LangChain工具包连接数据库、创建工具集和构建智能体的完整流程。文章详细演示了两种实现方式:一是基于预构件创建单体智能体,二是通过图结构将智能体分解为多个节点(查询表、获取模式、生成SQL、检查SQL等),实现更细粒度的控制。测试结果表明,该智能体能够正确回答关于印章类型数量的查询,验证了方法的有效性。这种基于数据库直接构建的RAG智能体为结构化数据问答提供了一种高效解决方案
2025-10-27 17:52:06
799
原创 langgraph 中的人机回环
本文详细介绍了LangGraph中人机回环的三种使用模式:审批模式、修订模式和工具调用检查模式。审批模式通过中断机制实现类似OA工作流的审批流程,用户可对AI生成内容进行审批;修订模式允许用户修改AI输出的内容;工具调用检查模式则用于验证工具调用的正确性。文章通过代码示例展示了如何实现审批模式和修订模式的工作流,包括节点设置、中断触发和流程恢复。同时介绍了两种调试方法:在创建图时设置断点或在调用时动态设置断点,帮助开发者调试工作流。这些模式为构建复杂的人机协作系统提供了灵活的实现方案。
2025-10-23 17:59:23
712
原创 langgraph中的时光穿梭(Time Travel)
本文介绍了如何在LangGraph智能体中实现时光穿梭功能,通过检查点机制回退到历史状态进行调试。文章以历史人物评价场景为例,展示了:1)创建包含两个节点的图结构(生成历史人物和评价);2)执行流程并检查状态变更历史;3)使用update_state方法选择特定检查点修改状态(如将"李斯"改为"刘邦");4)从修改点继续执行后续节点。关键发现:update_state仅更新状态而不执行节点代码,需注意其与常规回滚执行的差异。该功能为调试非确定性智能体系统提供了有效工具
2025-10-23 12:18:14
388
原创 langgraph实现多轮对话
本文提出了一种支持多轮交互的多智能体架构,通过引入特殊中断节点实现用户输入收集与智能体跳转。文章以影院和餐厅推荐为例,详细介绍了实现步骤:1)初始化大模型和检查点;2)创建影院推荐智能体,根据用户位置推荐3家影院;3)创建就餐推荐智能体,基于影院位置推荐周边餐厅;4)设计特殊节点处理用户中断输入;5)封装两个智能体节点;6)构建网状多智能体图结构。测试结果表明,该系统能有效实现"观影-用餐"的联动推荐,并通过中断机制支持多轮交互。该架构为复杂场景下的多智能体协作提供了可行方案。
2025-10-17 18:08:09
1050
原创 langgraph创建网状架构多智能体
本文实现了一个基于网状架构的双智能体系统,包含比价和下单两个功能模块。比价智能体通过搜索引擎查询京东、拼多多和淘宝三大电商平台的商品价格,找出最低价平台;下单智能体则在指定平台完成购买。通过创建跳转工具实现两个智能体之间的协作,形成去中心化的网状架构。测试结果显示,系统能成功完成ThinkPad X16的比价(拼多多3471.2元最优)和下单全流程。该架构展示了多智能体协作的可行性,但也指出当智能体数量增多时可能存在性能下降的问题。
2025-10-17 10:53:19
1506
原创 langgraph创建监督者架构多智能体
本文基于MCP创建监督者架构多智能体,首先基于langgraph_supervisor库中的create_supervisor创建监督者智能体,然后部分手搓实现监督者架构多智能体,最后再说明如何简化智能体之间交接时的数据传递。
2025-10-16 18:12:18
943
原创 langgraph中的MCP
本文介绍了如何将MCP(多工具调用协议)集成到智能体系统中。首先阐述了两种创建MCP服务的方法:本地服务和远程服务,分别通过Python示例展示了实现计算器工具和搜索引擎工具的步骤。然后详细说明了智能体如何连接MCP服务并获取工具列表,最终将这些工具集成到基于LangGraph构建的聊天机器人中。整个过程包括MCP服务的安装、创建、部署以及与智能体系统的对接,为实现智能体工具调用的标准化提供了完整解决方案。
2025-10-15 19:35:03
1067
原创 langgraph多智能体
本文介绍了多智能体系统的概念与架构设计。针对单智能体存在的扩展维护困难、上下文理解不足等问题,提出了借鉴微服务思想的模块化多智能体方案,具有模块化、专业化和可控性优势。重点阐述了五种多智能体架构:网状架构(全连接)、监督者架构(中心控制)、基于工具调用的监督者架构、层次架构(多层监督)和自定义混合架构。通过LangGraph框架的Command机制实现了智能体间的内部交接和跨智能体交接,并提供了Python代码示例展示不同架构的实现方式。最后指出层次架构是监督者架构的纵向扩展,适用于复杂任务场景。
2025-10-15 16:16:51
767
原创 langgraph子图
本文介绍了父子图集成的方法与应用。首先阐述了两种父子图集成方式:当父子图状态相同时,子图可直接作为父图节点运行;状态不同时需在父图节点内调用子图并进行状态适配。其次说明了子图状态的查看方法,仅能在子图中断时获取状态快照。最后提及了子图流式输出的实现方式。文章通过代码示例展示了父子图共享频道、状态适配、中断恢复等具体实现,为构建多智能体系统提供了技术基础。
2025-10-14 16:42:53
796
原创 langgraph中的工具
本文介绍了大模型与工具协同工作的机制。工具作为函数扩展了大模型能力,但实际执行由智能体完成。文章详细展示了如何创建工具(如加法工具)、在agent中动态选择工具子集、在工作流中绑定工具节点等实现方法,并提供了工具定制(命名和输入模式定义)的示例代码。
2025-10-14 14:51:55
1003
原创 langgraph集成大模型
本文介绍了如何在LangGraph中使用LangChain集成大模型。主要内容包括:1) 两种初始化大模型的方法(传统方法和init_chat_model);2) 在工作流和Agent中使用大模型,支持动态选择不同模型(如qwen-plus和deepseek-chat);3) 模型配置技巧:禁用流模式、设置容错后备模型(主模型失效时自动切换)和实现限流控制(通过InMemoryRateLimiter)。文章通过代码示例展示了具体实现方式,包括模型初始化、动态选择和配置参数设置等操作。
2025-10-13 18:30:23
1055
原创 langgraph中的记忆
文章摘要: 本文系统介绍了LangGraph中的记忆,记忆分为短期记忆和长期记忆两类。短期记忆作用于单个线程,保存对话状态等数据,可通过截断、删除、摘要和检查点四种方法管理;长期记忆作用于整个应用,支持跨线程共享。文章详细阐述了两种记忆的实现方式,包括使用Postgres数据库进行持久化存储的代码示例,展示了如何在对话系统中有效利用记忆机制来提升交互体验。关键技术点包括:短期记忆的自动继承、历史对话管理策略、长期记忆的命名空间隔离以及在工具中直接操作记忆的方法。
2025-10-13 16:39:02
1414
原创 langgraph中的接续运行
本文讨论了langgraph中"Durable Execution"的正确翻译应为"接续运行"而非"持久化执行",并分析了接续运行的实现机制。文章指出接续运行需要解决三种不一致性问题:非确定性操作、有副作用操作和非幂等操作,并提出了相应解决方案。同时介绍了三种持久化模式(exit、async、sync)及其在性能和一致性上的权衡。最后说明了如何从中断或错误中恢复工作流执行,确保接续运行时的数据一致性。
2025-10-11 10:09:28
829
原创 langgraph 函数式API(Functional API)
函数式API是一种无需重构代码即可构建工作流的方法,通过@entrypoint和@task注解实现。它支持并行操作、错误重试、检查点恢复、人机交互等功能。主要特点包括:1)使用@entrypoint标记主函数,@task标记异步任务;2)支持并行处理类似Map-Reduce任务;3)可与Graph API整合;4)提供流式调用接口;5)内置失败重试机制;6)通过检查点实现错误恢复;7)支持人机交互流程,包括工具调用参数审查。该API简化了工作流构建,同时保留了Python原生语法特性。
2025-10-10 16:28:59
778
原创 langgraph中的持久化
摘要:LangGraph通过检查点机制实现持久化架构,支持人机交互、记忆和时间旅行等功能。每个检查点保存图状态快照,包含配置、元数据和状态值等属性。通过MemoryStore实现跨线程数据共享,支持语义搜索和嵌入模型配置。开发者可选择基于内存或数据库的检查点存储方式,并通过API或手动配置实现数据持久化和状态更新。
2025-10-09 17:04:14
613
原创 Graph 概念解析
Graph:在LangGraph中Graph是一个用来处理数据的有向图,由节点(Node)和连接节点的边(Edge)构成,其处理的数据称为状态(State)。State:状态可理解为所有节点共享的数据结构,有一定的模式,并且随着数据的流转而变化。Node:节点封装了业务逻辑,以当前的状态作为输入,并且在完成业务处理后更新状态Edge:把节点串联起来。
2025-09-30 13:07:54
670
原创 使用langgraph创建工作流系列5:创建一个服务
前面创建的langgraph服务都是agent服务,本文创建一个基于工作流的langgraph服务。该工作流用于电子印章系统中,支持用户通过AI实现电子印章的申请、管理,也可以直接使用聊天工程。
2025-09-29 17:12:42
1030
原创 langgraph-api源码分析3-对话中后台任务
本文分析了langgraph-api后台任务的完整处理流程。基于FastAPI的lifespan功能,系统通过queue_with_signal()启动后台任务,采用令牌桶机制控制并发。当请求到来时,任务从Redis队列获取数据,调用worker()处理请求,通过astream_state()生成响应流,最终通过Runs.Stream.publish()将结果发布到指定Redis频道。整个过程实现了从请求获取、业务处理到结果分发的完整闭环,确保了高效可靠的异步任务处理能力。
2025-09-28 12:34:50
1022
Hadoop MapReduce入门
2015-07-03
MapReduce类型及格式
2015-07-30
Hadoop MapReduce高级特性
2015-08-01
Hadoop HDFS原理
2015-06-26
Hadoop HDFS应用
2015-07-02
Hadoop集群安装
2015-06-25
FIDO ATTESTATION
2017-02-20
Hadoop HA配置
2015-08-01
docker实战指南
2016-09-10
FIDO UAF 应用API和传输绑定规格
2017-04-01
设计模式之实战
2017-08-11
Android安全技术手册
2016-03-09
docker实战指南进阶
2016-09-28
linux内核设计与实现学习总结
2016-07-20
maven从入门到实战
2015-08-09
新经济区块链蓝图翻译
2016-11-28
go语言学习笔记
2016-10-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅