LangChain 核心模块学习:Memory介绍、代码剖析、使用示例

langchain主要模块(四):Memory 默认情况下,链式模型和代理模型都是无状态的,这意味着它们将每个传入的查询独立处理(就像底层的 LLMs 和聊天模型本身一样)。在某些应用程序中,比如聊天机器人,记住先前的交互是至关重要的。无论是短期还是长期,都要记住先前的交互。**Memory** 类正是做到了这一点。 LangChain 提供了两种形式的记忆组件。首先,LangChain 提供了用于管理和操作以前的聊天消息的辅助工具。这些工具被设计成模块化的,无论如何使用都很有用。其次,LangChain 提供了将这些工具轻松整合到链式模型中的方法。 阅读详情

背景

上下文衔接的能力 需要历史记录能力

  • 大多数LLM应用都具有对话界面。对话的一个重要组成部分是能够引用先前在对话中介绍过的信息。
  • 至少,一个对话系统应该能够直接访问一些过去消息的窗口。
  • 更复杂的系统将需要拥有一个不断更新的世界模型,使其能够保持关于实体及其关系的信息。

LangChain 核心模块学习:Memory

整体架构

image.png

什么是Memory

我们将存储过去交互信息的能力称为“记忆(Memory)”。

LangChain提供了许多用于向应用/系统中添加 Memory 的实用工具。这些工具可以单独使用,也可以无缝地集成到链中。

一个记忆系统(Memory System)需要支持两个基本操作:读取(READ)和写入(WRITE) 。

每个链都定义了一些核心执行逻辑,并期望某些输入。其中一些输入直接来自用户,但有些输入可能来自 Memory。

在一个典型 Chain 的单次运行中,将与其 Memory System 进行至少两次交互:

  • 在接收到初始用户输入之后,在执行核心逻辑之前,链将从其 Memory 中读取并扩充用户输入。

    • 有点类似读cache
  • 在执行核心逻辑之后但在返回答案之前,一个链条将把当前运行的输入和输出写入 Memory ,以便在未来的运行中可以引用它们

    • 有点类似存入cache的套路

具备的几个能力

  • 读
  • 写
  • 复用

具备记忆能力的大模型应用

image.png

代码剖析

BaseMemory Class 基类

类继承关系:

bash
复制代码
## 适用于简单的语言模型
BaseMemory --> BaseChatMemory --> <name>Memory  # Examples: ZepMemory, MotorheadMemory

代码实现:github.com/langchain-a…

python
复制代码
# 定义一个名为BaseMemory的基础类
class BaseMemory(Serializable, ABC):
    """用于Chains中的内存的抽象基类。
    
    这里的内存指的是Chains中的状态。内存可以用来存储关于Chain的过去执行的信息,
    并将该信息注入到Chain的未来执行的输入中。例如,对于会话型Chains,内存可以用来
    存储会话,并自动将它们添加到未来的模型提示中,以便模型具有必要的上下文来连贯地
    响应最新的输入。"""

    # 定义一个名为Config的子类
    class Config:
        """为此pydantic对象配置。
        Pydantic是一个Python库,用于数据验证和设置管理,主要基于Python类型提示。
        """
        # 允许在pydantic模型中使用任意类型。这通常用于允许复杂的数据类型。
        arbitrary_types_allowed = True
    
    # 下面是一些必须由子类实现的方法:
    
    # 定义一个属性,它是一个抽象方法。任何从BaseMemory派生的子类都需要实现此方法。
    # 此方法应返回该内存类将添加到链输入的字符串键。
    @property
    @abstractmethod
    def memory_variables(self) -> List[str]:
        """获取此内存类将添加到链输入的字符串键。"""
    
    # 定义一个抽象方法。任何从BaseMemory派生的子类都需要实现此方法。
    # 此方法基于给定的链输入返回键值对。
    @abstractmethod
    def load_memory_variables(self, inputs: Dict[str, Any]) -> Dict[str, Any]:
        """根据给链的文本输入返回键值对。"""
    
    # 定义一个抽象方法。任何从BaseMemory派生的子类都需要实现此方法。
    # 此方法将此链运行的上下文保存到内存。
    @abstractmethod
    def save_context(self, inputs: Dict[str, Any], outputs: Dict[str, str]) -> None:
        """保存此链运行的上下文到内存。"""
    
    # 定义一个抽象方法。任何从BaseMemory派生的子类都需要实现此方法。
    # 此方法清除内存内容。
    @abstractmethod
    def clear(self) -> None:
        """清除内存内容。"""

BaseChatMessageHistory Class 基类

类继承关系:

bash
复制代码
## 适用于聊天模型

BaseChatMessageHistory --> <name>ChatMessageHistory  # Example: ZepChatMessageHistory
python
复制代码
# 定义一个名为BaseChatMessageHistory的基础类
class BaseChatMessageHistory(ABC):
    """聊天消息历史记录的抽象基类。"""

    # 在内存中存储的消息列表
    messages: List[BaseMessage]

    # 定义一个add_user_message方法,它是一个方便的方法,用于将人类消息字符串添加到存储区。
    def add_user_message(self, message: str) -> None:
        """为存储添加一个人类消息字符串的便捷方法。

        参数:
            message: 人类消息的字符串内容。
        """
        self.add_message(HumanMessage(content=message))

    # 定义一个add_ai_message方法,它是一个方便的方法,用于将AI消息字符串添加到存储区。
    def add_ai_message(self, message: str) -> None:
        """为存储添加一个AI消息字符串的便捷方法。

        参数:
            message: AI消息的字符串内容。
        """
        self.add_message(AIMessage(content=message))

    # 抽象方法,需要由继承此基类的子类来实现。
    @abstractmethod
    def add_message(self, message: BaseMessage) -> None:
        """将Message对象添加到存储区。

        参数:
            message: 要存储的BaseMessage对象。
        """
        raise NotImplementedError()

    # 抽象方法,需要由继承此基类的子类来实现。
    @abstractmethod
    def clear(self) -> None:
        """从存储中删除所有消息"""

ConversationChain and ConversationBufferMemory

ConversationBufferMemory 可以用来存储消息,并将消息提取到一个变量中。

ini
复制代码
from langchain_openai import OpenAI
from langchain.chains import ConversationChain
from langchain.memory import ConversationBufferMemory

llm = OpenAI(temperature=0)
conversation = ConversationChain(
    llm=llm, 
    verbose=True, 
    memory=ConversationBufferMemory()
)

输出结果 image.png

ConversationBufferWindowMemory

记录时间轴上 最近的几次对话 每次输入 都会将历史的提问就拿过来

ConversationBufferWindowMemory 会在时间轴上保留对话的交互列表。它只使用最后 K 次交互。这对于保持最近交互的滑动窗口非常有用,以避免缓冲区过大。

python
复制代码
from langchain_openai import OpenAI
from langchain.chains import ConversationChain
from langchain.memory import ConversationBufferWindowMemory

conversation_with_summary = ConversationChain(
    llm=OpenAI(temperature=0, max_tokens=1000),
    # We set a low k=2, to only keep the last 2 interactions in memory
    memory=ConversationBufferWindowMemory(k=2),
    verbose=True
)
conversation_with_summary.predict(input="嗨,你最近过得怎么样?")

print(memory.load_memory_variables({})['history'])
# 输出
# System: 
# The human asks how the AI has been doing lately. The AI responds that it has been doing well, thanks for asking. It has been learning new knowledge and trying to improve its performance, including in the areas of natural language processing and machine learning. It has also been trying to communicate more in order to better understand human thinking.

ConversationSummaryBufferMemory

ConversationSummaryBufferMemory 在内存中保留了最近的交互缓冲区,但不仅仅是完全清除旧的交互,而是将它们编译成摘要并同时使用。与以前的实现不同的是,它使用token长度而不是交互次数来确定何时清除交互

如何系统的去学习大模型LLM ?

作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的 AI大模型资料 包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

😝有需要的小伙伴,可以V扫描下方二维码免费领取🆓

在这里插入图片描述

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

在这里插入图片描述

四、AI大模型商业化落地方案

img

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。
  • 内容:
    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
      - L1.4.1 知识大模型
      - L1.4.2 生产大模型
      - L1.4.3 模型工程方法论
      - L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。
  • 内容:
    • L2.1 API接口
      - L2.1.1 OpenAI API接口
      - L2.1.2 Python接口接入
      - L2.1.3 BOT工具类框架
      - L2.1.4 代码示例
    • L2.2 Prompt框架
      - L2.2.1 什么是Prompt
      - L2.2.2 Prompt框架应用现状
      - L2.2.3 基于GPTAS的Prompt框架
      - L2.2.4 Prompt框架与Thought
      - L2.2.5 Prompt框架与提示词
    • L2.3 流水线工程
      - L2.3.1 流水线工程的概念
      - L2.3.2 流水线工程的优点
      - L2.3.3 流水线工程的应用
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。
  • 内容:
    • L3.1 Agent模型框架
      - L3.1.1 Agent模型框架的设计理念
      - L3.1.2 Agent模型框架的核心组件
      - L3.1.3 Agent模型框架的实现细节
    • L3.2 MetaGPT
      - L3.2.1 MetaGPT的基本概念
      - L3.2.2 MetaGPT的工作原理
      - L3.2.3 MetaGPT的应用场景
    • L3.3 ChatGLM
      - L3.3.1 ChatGLM的特点
      - L3.3.2 ChatGLM的开发环境
      - L3.3.3 ChatGLM的使用示例
    • L3.4 LLAMA
      - L3.4.1 LLAMA的特点
      - L3.4.2 LLAMA的开发环境
      - L3.4.3 LLAMA的使用示例
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。
  • 内容:
    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

学习计划:

  • 阶段1:1-2个月,建立AI大模型的基础知识体系。
  • 阶段2:2-3个月,专注于API应用开发能力的提升。
  • 阶段3:3-4个月,深入实践AI大模型的应用架构和私有化部署。
  • 阶段4:4-5个月,专注于高级模型的应用和部署。
这份完整版的大模型 LLM 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

在这里插入图片描述

LangChain的Memory的4种用法(一) LangChain是一个基于语言模型开发应用程序的开源框架,用于构建基于大语言模型(LLMs)的端到端语言模型应用。它的核心理念是为各种大语言模型应用提供通用的接口,简化开发过程,并提供一套工具、组件和接口来创建由LLMs和聊天模型支持的应用程序。LangChain提供了多种组件来简化我们开发大语言模型应用的难度,本文来介绍其中Memory的使用方式。 阅读详情

相关推荐

LangChain-记忆系统 (Memory)

在构建对话式AI应用时,能够记住上下文和之前的交互至关重要。存储对话历史:保存之前的消息交换管理上下文窗口:控制传递给模型的上下文量提取相关信息:从历史中选择重要信息处理长期记忆:管理超出上下文窗口的信息# 创建摘要记忆llm=ChatOpenAI(), # 用于生成摘要的模型# 使用摘要记忆summary_memory.chat_memory.add_user_message("你好!我叫李明,我是一名软件工程师。")

1.大规模企业集群服务开发和服务架构设计,性能优化等经验。 2.企业级数据仓库0-1落地经验。 1800

【LangChain系列5】【Memory模块详解】

LangChain给自身的定位是:用于开发由大语言模型支持的应用程序的框架。它的做法是:通过提供标准化且丰富的模块抽象,构建大语言模型的输入输出规范,利用其核心概念chains,灵活地连接整个应用开发流程。这里是LangChain系列的第五篇,主要介绍LangChain的Memory模块。

艰难困苦,玉汝于成。 2864

LangChain核心架构与代码实现深度解析:从模块化设计到生产级应用

大语言模型(LLM)作为当前AI应用的核心组件,其强大的自然语言理解和生成能力为开发者提供了前所未有的可能性。然而,在实际工程实践中,如何将LLM与外部数据、工具和业务流程高效集成,成为构建智能应用的关键挑战。LangChain框架通过模块化设计和清晰的抽象层,为这一挑战提供了系统性的解决方案。其核心原理在于将复杂的AI应用拆解为模型I/O、提示词模板、记忆管理、工具调用等可复用的组件,并通过链(Chain)与代理(Agent)两种核心模式进行编排,实现了从确定性的顺序工作流到动态的、由模型决策的复杂流程的

weixin_30813225的博客 319

LangChain - Memory

一、内存记忆 ( Memory ) 入门 聊天消息历史 (ChatMessageHistory) ConversationBufferMemory Using in a chain 保存消息历史 二、如何为 LLMChain 添加记忆 三、对多输入 Chain 添加记忆 四、向代理添加记忆 五、向代理添加由数据库支持的消息记忆 六、会话缓存内存 ConversationBufferMemory 在链中使用 七、会话缓冲窗口记忆 ( Conversation buffer window memory ) 在链

AI工程化、开源分享、文档翻译、代码笔记 2266

REALTEK PKE8710ECF开发板入手试玩(一)

REALTEK PKE8710ECF开发板入手试玩

lbqhope的专栏 691

ADC(三)Guard ring的设计艺术:从单元到系统的隔离策略

本文深入探讨了ADC设计中Guard ring(保护环)从单元到系统的多层次隔离策略。文章分享了从新手到专家的认知升级过程,详细分析了在单元内部进行微隔离、在模块间建立噪声屏障以及在系统层面规划全局隔离带的实用方法与设计艺术,强调了Guard ring对于提升混合信号电路性能和可靠性的关键作用。

weixin_28312391的博客 151

LangChain核心模块详解:Memory、Tools与Agents深入剖析

在上一篇文章中,我们介绍了如何快速搭建一个企业级Agent。但要真正用好LangChain,深入理解其核心模块是必不可少的。LangChain的设计哲学是"组合优于继承",通过模块化的组件,开发者可以灵活地构建各种复杂的Agent应用。Memory(记忆)Tools(工具)和Agents(智能体),帮助你理解它们的工作原理、使用场景和最佳实践。使用LLM对对话历史进行摘要,保存摘要而不是原始对话。llm=llm,# 随着对话进行,记忆会自动生成摘要。

DazedMen的博客 954

BMC的风扇控制 (Fan speed control)

这篇文章是我刚开始做风扇功能的时候写的,因为那时候都找不到主管要我报告的内容,所以报告完就顺便整理一下,最近因为在修控制学,之后应该会再补一篇和控制学相关的内容 (如果有空的话) BMC的风扇控制算一个蛮重要的功能,那这个功能包含了"TACH"和"PWM"这两个常用讯号怎么解读,还有最常用的控制演算法"PID(closed loop)"和"Stepwise(openloop)",而另外的Error control ,因为每家做法不同,就不会在这边作介绍 ##实作程式码是来自Facebook的openBM

yeiris的博客 1万+

langchain从入门到精通(四十二)——全面剖析之Memory

步骤1:先看API:https://api.python.langchain.com/en/latest/langchain_api_reference.html#module-langchain.memory步骤2:再看源码:langchain/libs/core/langchain_core/memory.py```python"""Chains 中记忆的抽象基类。记忆指的是 Chains 中的状态。

swpucwf的博客 1127

组态王通过以太网与西门子S7-200 SMART PLC通讯案例详解

通过以上步骤,我们成功实现了组态王与西门子S7-200 SMART PLC的以太网通讯。这一技术不仅提高了工业自动化系统的灵活性和可靠性,还为初学者提供了一个实用的学习案例。希望本文能帮助您快速掌握组态王与西门子S7-200 SMART PLC的通讯技术。如有任何疑问,欢迎留言讨论!

2401_88785500的博客 2005

贝叶斯网络 (Bayesian Networks) 原理与代码实例讲解

贝叶斯网络 (Bayesian Networks) 原理与代码实例讲解 1. 背景介绍 1.1 什么是贝叶斯网络? 贝叶斯网络(Bayesian Networks)是一种基于概率论的图形模型,用于表示随机

AI天才研究院 1333

Langchain Memory组件深度剖析:从对话基础到高级链式应用

Langchain框架中的Memory组件是构建智能对话系统的基石,它们不仅存储和管理对话信息,还促进上下文理解和对话连续性。本文深入探讨Memory组件的多样类型,如ChatMessageHistory记录对话历史,ConversationBufferMemory管理对话缓冲区,ConversationKGMemory通过知识图谱增强智能。同时,长时记忆机制在Langchain中占据重要地位,助力AI系统实现持续学习和记忆。

啊猪是的读来过倒的博客 2807

7、初级视觉皮层(V1)的研究综述

本文综述了初级视觉皮层(V1)的基本功能特性、计算理解、细胞相互作用及理论模型。V1不仅执行方向和空间频率的选择性滤波,还通过相位选择性和上下文调制参与高级视觉处理。研究从信息编码角度解释了V1感受野的形成,并介绍了基于自然图像统计的建模方法。横向与反馈连接揭示了V1在全局视觉整合中的作用,尤其是上下文对细胞响应的快速调节。李的动态模型提出V1可生成视觉显著性图,支持前注意分割和注意力引导。未来研究聚焦于V1在注意力、意识和硬件实现中的潜在应用,推动视觉神经科学与人工智能的交叉发展。

7z8x2c4v6b9的博客 146

第24篇:深入剖析:LangChain核心组件

Prompts是用于管理LLM输入的工具。在从LLM获得所需的输出之前,需要对提示进行相当多的调整。Prompts可以是单个句子或多个句子的组合,它们可以包含变量和条件语句,用于动态生成输入文本,从而提高模型响应的准确性和相关性。Chains是一种将LLM和其他多个组件连接在一起的工具,以实现复杂的任务。通过将不同的组件串联在一起,Chains可以执行一系列步骤,从数据预处理到调用LLM,再到后处理,最终生成所需的输出。Agents是一种使用LLM做出决策的工具,它们可以执行特定的任务并生成文本输出。

Gemini的博客 1551

智能车图像处理12-进阶篇4--环岛辅助判断条件

主函数: 第6行: 含义是当前需要不在坡道和车库状态 第11-12行 : 寻找一下环岛的双断点(在辅助函数中) 第16-66行: 当左右线的方差满足一边很大,一边很小时,truepianfangflag /truepianfangflagforleft 置1,在环岛的判断中使用。 辅助函数: 双断点函数(左与右相似,以做为例): 第13-28行: 第一处断点 第29-40行: 第一处断点后 连续边线 第41-52行: 第一处连续后,第二处断点 第53-64行: 第二处断点后,第二处

taiyuezyh的博客 1万+

mbedtls | 01 - 移植mbedtls库到STM32的两种方法

一、mbedtls 开源库 1. mbedtls是什么 Mbed TLS是一个开源、可移植、易于使用、代码可读性高的SSL库。可实现加密原语,X.509证书操作以及SSL / TLS和 DTLS 协议,它的代码占用空间小,非常适合用于嵌入式系统。 mbedtls遵循 Apache 2.0 开源许可协议,目前由 TrustedFirmware 维护(Linaro主持的一个治理开放社区项目),在Github上已收获 2.6k star,目前Github上发布的最新版本为 2.24.0 版本,开源仓库地址为:

Mculover666的博客(嵌入式) 1万+

进阶篇-LangChain篇-5--记忆机制(Memory)——多轮对话的秘密,LangChain Memory详解

本文详细解析了LangChain的Memory模块在多轮对话中的核心作用。文章通过咖啡点餐的生动类比,揭示了大模型"健忘症"的本质问题,并系统介绍了四种记忆策略(Buffer、Window、Summary、SummaryBuffer)的适用场景与性能对比。核心内容包括:Memory的存储/加载机制、与Chain的集成方式、持久化实现方案,以及新手常见陷阱。特别强调了通过智能记忆管理来平衡对话效果与Token消耗的关键技巧,为开发者提供了从原理到实践的完整指南。

weisian的博客 7665

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【LangChain专栏】LangChain Memory 核心解析

LangChain的Memory组件解决了大模型在多轮对话中缺乏上下文记忆的问题。原生大模型每次交互都是独立请求,无法记住历史对话。Memory组件通过存储和管理对话历史,使模型能基于完整上下文生成回答。核心模块包括ChatMessageHistory(底层存储)和ConversationBufferMemory(完整对话记忆)。开发者可通过这些组件实现对话历史的自动保存与读取,构建具备上下文感知能力的智能对话系统,无需手动管理消息列表。

发现问题,面对问题,分析问题,解决问题,总结问题 1231

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【LangChain核心组件】Memory:让大语言模型拥有持续对话记忆的工程实践

通过合理运用Memory组件,开发者可以构建出具备以下能力的智能对话系统:✅ 30轮以上连贯对话✅ 个性化上下文感知✅ 长期用户画像记忆✅ 跨会话状态保持工作流程图。

qq_62223405的博客 1802

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

零基础学AI大模型之LangChain六大核心模块与大模型IO交互链路

摘要 本文系统介绍了LangChain六大核心模块及其与大模型的交互链路,采用Java生态类比方式帮助开发者快速理解。主要内容包括: 六大核心模块解析: Models模块:统一接口对接不同大模型(如OpenAI/DeepSeek),类似JDBC对接不同数据库 Prompts模块:管理Prompt模板,支持动态传参,类比Thymeleaf模板引擎 Chains模块:串联多组件自动执行任务链,类似Spring Batch工作流 Memory模块:保存对话历史,类似HTTP Session管理 Indexes模块

chandfy的博客 2081

LangChain Memory 核心原理与生产级实现指南

大语言模型(LLM)本身无状态、无记忆,其对话连续性依赖外部 Memory 机制。Memory 的本质是运行时上下文管理,需满足时序保真、角色隔离、容量可控和语义裁剪四大刚性需求。LangChain 通过 RunnableWithMessageHistory 定义了‘读历史’的契约式接口,将用户身份、会话标识与历史获取逻辑解耦,支持从 InMemoryChatMessageHistory 到 Redis、PostgreSQL 乃至向量数据库的平滑演进。实际工程中,Memory 不仅关乎存储选型,更涉及对话生

weixin_33850015的博客 373

LangChain Agent四大核心抽象:LLM、Tool、Chain、Memory详解

Agent是大模型落地的关键范式,其本质是一套可组合、可调试、可追踪的运行时系统。理解Agent需从基础抽象入手:LLM抽象解决多模型切换与可观测性问题;Tool抽象支撑ReAct范式,实现‘思考-行动’闭环;Chain抽象将业务逻辑封装为可测试、可监控的工作流单元;Memory抽象则决定状态持久化粒度与范围。这些设计直击Agent开发中的熵增痛点——模型不稳、工具不可控、流程难调试、上下文易丢失。结合langchain agent实战和langchain架构两大热词,本文以Python环境配置助手为案例,

weixin_34356555的博客 395

LangChain Memory 深度解析:对话AI的状态持久化核心

摘要: LangChain的Memory模块是实现大语言模型(LLM)上下文感知的核心组件,通过状态持久化解决LLM无状态与对话连续性的矛盾。Memory分为会话级(如ConversationBufferMemory存储单次对话)和实体级(如Entity Memory跨会话存储用户信息),并通过结构化(摘要)或原始文本形式管理上下文。其核心流程包括初始化、存储历史、提取上下文和动态注入,最终拼接成完整prompt供LLM生成连贯响应,适用于聊天机器人、智能助手等场景。

没事学AI的博客 1216

LangChain核心技术全解析:Chain、Memory、RAG、Agent与LangGraph实战

模型只知道训练时的数据,不知道昨天刚发生的新闻,也不知道你公司的内部文档。就像一个 2023 年就"冬眠"的人,醒来后对 2024 年的世界一无所知。- 每次 API 调用都是全新的开始。你问它"我叫什么",它回答了;下次再问,它完全忘记了。这不是模型笨,而是 API 的调用机制决定的——每次请求都是独立的,没有状态保持。- 问它"现在比特币多少钱",它只能胡乱猜测;让它"帮我算一下 23423 × 82342",大概率算错。大模型天生不擅长精确计算和实时数据获取。

优快云_224022的博客 1287

[Ai Agent] 04 一文吃透LangChain:Prompt、LLM、Chain、Memory 全流程实战

本文详细介绍了LangChain框架的六大核心模块(Models、Prompt、Chain、Memory、Agents、RAG),所有配套代码已开源在Github,帮助开发者快速上手LangChain框架。

2401_87328929的博客 1817

LangChain LCEL、Memory、Retrieval与Agents四大核心模块深度解析

LangChain并非传统开发框架,而是一套面向大模型应用的架构范式——它将AI系统解构为可组合、带状态、可验证的组件化流水线。其核心能力围绕LCEL(声明式链式表达)、Memory(会话状态治理)、Retrieval(可信知识供给)和Agents(受限决策控制)展开:LCEL通过Runnable抽象实现数据流契约化,Memory解决多用户隔离与生命周期管理,Retrieval构建从分块、嵌入到重排序的端到端知识边界,Agents则以工具约束与状态机设计保障行为可控。这些能力共同支撑RAG、智能客服、自动化

weixin_29266749的博客 309
上一篇: OpenAI重磅发布 GPT-4o!向免费客户开放,GPT-4o官方使用指南分享
下一篇: LangChain介绍
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值