LangChain Memory - 给AI增加记忆(三)

LangChain Memory - 给AI增加记忆(一)
LangChain Memory - 给AI增加记忆(二)
从上两次的学习,我们都可以看到,每次给AI输入的时候,最终吐给大模型都会带上之前的信息及对应的回复。token不断变大,太花钱了,也很容易导致溢出。针对Token逐渐增加的情况,我们有两种处理方案,一种优化历史信息,一种限制Token长度。

查官方资料后发现大模型记忆有多种:
ConversationBufferMemory:一字不漏的储存对话信息。随着对话轮数增加,传给模型的历史消息列表越来越长,消耗的token越来越多。当消息长度达到模型上下文窗口token的限制时,就无法传给模型。需要手动进行截断。
实例化:memory = ConversationBufferMemory(return_messages=True)
调用链:chain = ConversationChain(llm=model, memory=memory)
示例:

ConversationBufferWindowMemory:参数k:最多储存的历史对话数量
实例化:memory = ConversationBufferWindowMemory(return_messages=True,k=整数)
调用链:chain = ConversationChain(llm=model, memory=memory)
示例:

from langchain.chains import ConversationChain
from langchain_openai import ChatOpenAI
from langchain.memory import ConversationBufferWindowMemory
model = ChatOpenAI(
    openai_api_key = "你的API-KEY",
    openai_api_base = "API-KEY域名/v1",
    model_name = "Qwen3-235B-A22B",
    temperature = 0.4,
    streaming = True,
    max_retries = 0,
    presence_penalty = 0.95,
    request_timeout = 60
)
memory = ConversationBufferWindowMemory(return_messages=True,k=2)
chain = ConversationChain
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值