- 博客(128)
- 资源 (1)
- 收藏
- 关注
原创 11. LangGraph 记忆机制
修剪或删除消息的弊端是可能丢失关键对话信息,因此部分应用可采用更优的策略:通过大语言模型总结对话历史,并用总结内容替代原始消息。# 扩展消息状态,添加总结字段# 定义对话总结节点# 获取已有总结# 构造总结提示词# 已有总结,扩展总结。
2026-03-15 00:59:21
163
原创 10. LangGraph 时间旅行详解
在处理基于模型决策的非确定性系统(例如由大语言模型驱动的智能体)时,详细检查其决策过程非常有价值,具体包括:理解推理逻辑:分析促成成功结果的关键步骤调试错误问题:定位错误发生的位置及根本原因探索替代方案:测试不同执行路径,发掘更优解决方案LangGraph 提供的“时间旅行”功能可满足上述需求。通过该功能,你可以从之前的检查点(checkpoint)恢复执行——既可以重放相同状态,也可以修改状态以探索替代路径。无论哪种情况,从过往执行状态恢复都会在执行历史中产生一个新的分支。
2026-03-15 00:54:28
14
原创 9. LangGraph 中断机制
tool"""向收件人发送邮件"""# 发送前暂停,载荷通过 result["__interrupt__"] 暴露"to": to,})# 恢复值可覆盖输入参数后再执行。
2026-03-15 00:49:54
22
原创 8. LangGraph 流式传输完整教程
LangGraph流式传输教程摘要 LangGraph提供强大的流式传输功能,通过同步stream和异步astream方法实现实时数据推送。本教程完整介绍了v2版本统一输出格式,包含7种流式模式:values(完整状态)、updates(状态更新)、messages(LLM输出)、custom(自定义数据)、checkpoints(检查点)、tasks(任务事件)和debug(调试信息)。每种模式对应特定数据类型,通过type字段区分,支持类型检查和编辑器提示。教程包含基础用法示例,展示如何接收节点更新和自
2026-03-15 00:42:30
38
原创 4. LangGraph思维构建智能体
本文介绍了使用LangGraph构建客户支持邮件智能体的核心方法。主要内容包括: 业务场景分析:处理客户支持邮件的分类、检索、回复等需求 构建流程:将工作流拆分为离散节点→定义节点类型和职责→设计共享状态→实现节点函数→连接节点 关键技术点: 节点分类(LLM步骤/数据步骤/动作步骤/用户输入步骤) 状态设计原则(必存/原始/解耦) 错误处理策略(临时错误/可恢复错误/用户可修复错误/意外错误) 该方法可推广用于构建各类复杂智能体,实现可持久化、可调试、支持人机协同的工作流。
2026-03-14 23:45:47
186
原创 2. LangGraph 安装指南
LangGraph安装指南提供了完整的安装流程说明。核心包可通过pip或uv安装,支持Python 3.10+环境。实际使用通常需要集成LLM和工具,推荐安装LangChain包作为可选组件。第三方LLM提供商需单独安装对应集成包。安装后可通过Hello World示例验证,包含状态图构建、节点定义和流程执行测试。该指南明确了基础安装与可选集成的区别,确保用户根据实际需求灵活配置开发环境。
2026-03-14 23:23:35
54
原创 AI 大模型应用开发前置知识:Python 泛型编程全教程
泛型(Generic Programming)是一种参数化类型机制,允许在定义类、函数、接口时使用类型占位符,在使用时再指定具体类型,从而实现:代码高度复用编译期类型安全不依赖 Any架构可扩展规则:引号内名称必须与变量名一致不变(Invariant):默认。Generic[T]与Generic[S]无关协变(Covariant):若 S 是 T 子类,则C[S]是C[T]子类逆变(Contravariant):若 S 是 T 子类,则C[S]是C[T]父类协变 = 输出/返回/读取。
2026-02-19 18:44:36
730
原创 AI 大模型应用开发前置知识:Python 类型注解全教程
类型注解是 Python 3.5+ 引入的静态类型标记,用于:标记变量类型标记函数参数类型标记函数返回值类型不影响程序运行仅用于提示、检查、文档被 IDE / mypy / 框架识别strintfloatboolNonename: str。
2026-02-19 18:16:00
798
原创 AI大模型应用开发前置知识:Python迭代器和生成器深入详解
在 Python 中,能够直接被 **** 循环遍历的对象,统称为可迭代对象。这是学习迭代器与生成器的第一步,也是最基础的概念。迭代器是可迭代对象的升级版,是 Python 中真正负责逐个取出数据、控制遍历流程的工具,也是所有遍历操作的底层实现。不用把所有数据一次性加载到内存,而是用到一个取一个,极大节省内存。可迭代对象:能 for 循环,有__iter__(),可重复遍历迭代器:可迭代对象 +__next__(),一次性使用、节省内存iter():将可迭代对象转换为迭代器next()
2026-02-18 13:48:28
657
原创 AI大模型应用开发前置知识: Python 异步编程
异步编程的本质是单线程协作式并发,依靠await主动挂起任务,在I/O等待期间处理其他任务,完全避开Python GIL限制,专门为I/O密集型场景设计。在AI大模型开发中:大模型API调用 = I/O密集 → 异步提升10~100倍性能;RAG检索 = 多库并发查询 → 异步大幅降低延迟;流式对话 = 异步生成器 → 实现逐字输出;FastAPI服务 = 异步接口 → 单进程扛1000+并发;LangChain/LlamaIndex = 原生异步 → 必须使用异步接口。
2026-02-17 21:59:35
429
原创 LangGraph工作流与智能体
本节介绍常见的工作流与智能体模式。工作流:拥有预先确定的代码执行路径,按固定顺序运行。智能体:动态自主,自行决定执行流程与工具使用方式。使用 LangGraph 构建智能体与工作流有诸多优势,包括持久化、流式输出,同时支持调试与部署。
2026-02-17 11:58:31
705
原创 3. LangGraph快速入门
本示例中,我们将使用 Claude Sonnet 4.5 模型,并定义加法、乘法、除法工具。# 定义工具@toolArgs:"""@toolArgs:"""@toolArgs:"""# 为大模型绑定工具图的状态用于存储消息和大模型调用次数。LangGraph 中的状态在整个智能体执行过程中保持持久化。使用带的Annotated类型可以确保新消息追加到现有列表,而不是替换列表。模型节点用于调用大模型,并决定是否调用工具。return {],
2026-02-17 10:58:45
776
原创 1. LangGraph 综述
借助 LangGraph 实现精准控制,设计能够的智能体。LangGraph 受到包括 Klarna、Replit、Elastic 等引领智能体未来的企业信赖,是一个底层编排框架与运行时,用于构建、管理和部署的智能体。LangGraph 非常底层,并且完全专注于智能体。本文档中我们会普遍使用 LangChain 组件来集成模型与工具,但。
2026-02-17 01:10:09
280
原创 4.3 自定义中间件
中间件可以扩展智能体状态,添加自定义字段。作用:在执行中追踪状态(计数器、标志位)在钩子之间共享数据实现横切关注点(限流、审计、用户上下文)做动态条件决策。
2026-02-17 00:27:33
167
原创 4.2 预构建中间件
接近令牌限制时自动总结对话历史,保留最近消息,同时压缩较早的上下文。摘要中间件适用于以下场景:超出上下文窗口的长时间对话。历史记录庞大的多轮对话。需要保留完整对话上下文的应用。API 参考),],支持三种自定义检测器:正则字符串编译正则自定义检测函数import re# 正则字符串tools=[],"api_key",),],# 自定义检测函数import re})tools=[],"ssn",),],
2026-02-17 00:18:25
211
原创 4.1 中间件(Middleware)综述
中间件(Middleware)提供了一种更精细地控制智能体内部行为的方式,在每一步控制和自定义智能体执行。通过将中间件传递给。
2026-02-17 00:03:04
163
原创 高级用法:模型上下文协议(Model Context Protocol (MCP))
数学服务器(stdio 传输)"""两数相加""""""两数相乘"""# 气象服务器(可流式 HTTP 传输)"""获取指定地点的天气"""拦截器是包装工具执行的异步函数,支持请求/响应修改、重试逻辑和其他横切关注点。它们遵循“洋葱”模式,列表中的第一个拦截器是最外层。
2026-02-16 22:14:21
54
原创 高级用法:运行时(Runtime)
LangChain 的底层运行在 LangGraph 的运行时之上。LangGraph 暴露了一个Runtime上下文(Context):静态信息,例如用户 ID、数据库连接或其他 Agent 调用所需的依赖项存储(Store):一个BaseStore实例,用于长期记忆流写入器(Stream writer):用于通过"custom"流模式流式传输信息的对象运行时上下文为你的工具和中间件提供依赖注入。
2026-02-16 16:58:03
45
原创 高级用法:LangChain 安全防护(Guardrails)
在调用开始时校验请求,可做关键词过滤、身份校验、限流等。= "human":return {}],# 使用],= "human":return {}],
2026-02-16 15:55:48
234
原创 高级用法:长期记忆(Long-term memory)
LangChain 智能体使用 LangGraph 持久化实现长期记忆功能。这是一个进阶主题,使用时需要掌握 LangGraph 相关知识。
2026-02-16 15:07:27
156
原创 智能体中的上下文工程
构建智能体(或任何大语言模型应用)最困难的部分,是让它们足够可靠。虽然在原型中可能正常工作,但在实际使用场景中经常失效。每个工具需要清晰的名称、描述、参数名和参数描述。这些不只是元数据 —— 它们指导模型判断何时、如何使用工具。) -> str:Args:"""pass模式定义指导模型。字段名、类型和描述精确指定输出应遵循的格式。"""从客户消息中提取的结构化工单信息。"""
2026-02-16 14:43:21
34
原创 3.11 提示词与输出解析器(Parser)协同适配方案
提示词与输出解析器协同适配,是指通过提示词模板声明输出格式约束,并通过输出解析器(Parser)对大模型原生输出进行结构化解析、校验与转换,实现非结构化文本到Python标准数据类型(字典、列表、Pydantic对象等)的标准化映射,是LangChain链路标准化、工程化的核心环节。"""1.2.7版本输出解析器基类,继承Runnable协议""""""核心解析方法,需子类实现""""""标准执行入口,自动调用parse并处理异常""""""生成格式提示指令,用于注入提示词模板"""继承。
2026-02-11 09:26:27
29
原创 3.10 自定义提示词模板:Langchain 1.2.7 版本详解
LangChain 1.2.7 版本中,所有提示词模板均继承自与两大抽象基类,二者隶属于模块,为自定义模板提供统一接口约束。:字符串型提示词模板顶层抽象类,适配纯文本提示词场景:聊天型提示词模板顶层抽象类,适配多角色消息提示词场景核心约束:自定义模板必须实现formatinvoke核心方法,遵循Runnable协议规范3.10.1.23.10.2.13.10.3.1# 导包规范(langchain-core 1.2.7 标准路径)# 自定义字符串提示词模板类# 自定义扩展属性。
2026-02-11 09:15:50
35
原创 Langchain系统教程目录(持续更新)
2.3 Runnable 核心方法详解(invoke/ainvoke、batch/abatch、stream/astream 等)1.3 LangChain 1.2.7 核心架构概览(Runnable、Prompt、Agent、Memory 核心链路)3.3 字符串提示词模板(PromptTemplate)和聊天交互提示词模板(ChatPromptTemplate)2.4 Runnable 组合与链式调用(pipe、then、assign 等组合方式,1.2.7 版本语法适配)
2026-02-11 00:32:42
32
原创 3.9 提示词管道链式构建(PipelinePromptTemplate)
是 LangChain 官方提供的多阶段提示词串联组件,支持将多个独立提示词模板按顺序执行,前序模板的输出作为后序模板的输入变量,最终生成完整提示词,实现提示词的分步构建、逻辑解耦、动态组装。3.9.1.2PipelinePromptTemplate 是 LangChain 1.2.7 官方标准提示词链式构建工具支持字符串模板、聊天模板、嵌套管道、LCEL 链调用遵循分步构建、变量传递、最终渲染的执行流程适用于模块化、企业级、高复用性提示词工程体系。
2026-02-11 00:23:00
21
原创 3.8 提示词模板组合、拼接与模块化设计方案
3.8.1.1提示词模板组合、拼接与模块化设计,是指将单一、离散的提示词模板,通过LangChain内置API与设计模式,实现模板复用、结构拆分、逻辑解耦、批量组装的工程化方案,是企业级提示词工程的核心架构基础。3.8.1.2将完整提示词拆分为固定片段、变量片段、角色片段、规则片段等最小可复用单元,是组合与拼接的基础单元。3.8.2.2。
2026-02-11 00:17:06
26
原创 3.7 系统/人类/AI消息模板(MessagePromptTemplate)详解
MessagePromptTemplate 是 LangChain 中专门用于构建对话类提示词的模板组件,用于标准化生成系统消息、用户消息、AI 消息三类角色内容,是所有对话模型(ChatModel)必须使用的基础结构。
2026-02-11 00:07:01
15
原创 3.6 示例选择器(ExampleSelector)
ExampleSelector是LangChain中用于动态筛选少样本示例的核心组件,基于预设规则从示例集合中选择与当前输入最匹配的部分示例,替代固定示例集合传入FewShotPromptTemplate。其核心目标是在控制提示词长度(避免超出模型上下文窗口)的前提下,提升示例与任务的相关性,进而优化模型输出效果。核心逻辑:基于业务需求自定义筛选规则(如示例类别匹配、关键词匹配等),通过继承BaseExampleSelector抽象类实现。适用于特殊业务场景(如垂直领域示例筛选、多维度条件筛选)。
2026-02-11 00:02:07
36
原创 3.5 少样本提示词模板(FewShotPromptTemplate)
FewShotPromptTemplate是LangChain提示词工程体系中,专门用于少样本学习(Few-Shot Learning)的标准化模板组件,基于langchain-core底层提示词架构实现,可将人工构造的示例集合、前缀指令、动态输入区域按固定结构组合为完整提示词,使大模型在不进行微调的前提下,遵循指定格式与逻辑完成任务。
2026-02-10 23:37:18
67
原创 3.4 提示词模板变量声明、类型约束与动态传参规则
模板中{key}形式的占位符定义:对传入变量的类型、必填性、格式进行校验:运行时以 dict 向模板注入变量:预先绑定一部分变量,剩余变量运行时传入确保变量名匹配、无缺失、无多余:模板渲染后的字符串/消息结构生成规范:对最终输出内容的结构、长度、格式进行校验。
2026-02-10 23:04:29
30
原创 3.3 字符串提示词(PromptTemplate)和聊天交互提示词模板(ChatPromptTemplate)
提示词模板字符串,使用{变量名}作为占位符。模板格式化语法,可选f-stringjinja2。是否校验模板中占位符与一致性。模板必需的输入变量列表。预先绑定的变量字典。输出解析器,用于解析模型返回结果。模板元信息,用于管理、检索、版本标记。模板分类标签。3.3.1.2PromptTemplate为LangChain核心字符串提示词构造组件,用于生成适配文本补全类大模型的静态结构+动态变量组合提示词,适用于文本生成、摘要、翻译、信息抽取等非交互类任务。3.3.1.3任务:文本摘要。
2026-02-10 21:07:03
29
原创 3.2 LangChain-Core提示词底层架构与核心依赖解析
模块路径核心职责:定义所有提示词组件的顶层抽象接口、属性规范、方法签名,无具体实现核心抽象类(v1.2.7官方源码签名)(顶层抽象类)# v1.2.7 官方方法签名(无修改、无删减)input_variables: List[str] # 必选变量列表optional_variables: List[str] = [] # 可选变量列表partial_variables: Dict[str, Any] = {} # 预填充变量。
2026-02-10 13:07:38
27
原创 3.1 提示词体系核心概念
3.1.2.1大模型交互的输入指令载体,是向大模型传递任务目标、约束条件、上下文信息的文本/结构化数据单元,LangChain v1.2.7中提示词分为文本提示词与聊天提示词两类。提示词的可复用结构化封装单元,通过预留变量占位符实现动态传参,是LangChain提示词体系的核心载体,解决硬编码提示词的复用性、扩展性问题。提示词模板中预留的动态参数占位符,用于运行时注入自定义数据,分为必选变量与可选变量两类。将变量数据注入模板占位符,生成最终可发送至大模型的完整提示词的过程,是提示词体系的核心执行逻辑。
2026-02-10 12:49:35
25
原创 2.7 Runnable 与 LCEL 的联动
2.7.5.1LCEL = Runnable 组合语法糖A|B|CRunnable 是骨架,LCEL 是神经;两者深度联动,构成 LangChain 最核心的执行与编排体系。学会本节,你可以自由构建任意复杂的 AI 链路自定义逻辑与官方编排完美融合配置、监控、执行全链路统一代码极简、健壮、可维护、生产级可用。
2026-02-10 11:30:07
249
原创 2.7 Runnable 与 LCEL 的联动
2.7.5.1LCEL = Runnable 组合语法糖A|B|CRunnable 是骨架,LCEL 是神经;两者深度联动,构成 LangChain 最核心的执行与编排体系。学会本节,你可以自由构建任意复杂的 AI 链路自定义逻辑与官方编排完美融合配置、监控、执行全链路统一代码极简、健壮、可维护、生产级可用。
2026-02-10 11:28:31
30
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅