盘古大模型 PANGULARGEMODELS-History
时间:2024-09-05 14:59:05
History
History缓存,用于存储历史对话信息,辅助模型理解上下文信息,历史消息对有固定窗口、消息摘要等策略。
- 初始化:消息记录支持不同的存储方式, 如内存、D CS (Redis)和RDS(Sql)。
from pangukitsappdev.memory.sql_message_history import SQLMessageHistory from pangukitsappdev.api.memory.cache.cache_config import ServerInfoSql, ServerInfoRedis from pangukitsappdev.api.memory.message_history_config import MessageHistoryConfig from pangukitsappdev.memory.redis_message_history import RedisMessageHistory from langchain.memory import ChatMessageHistory # 内存型: chat_message = ChatMessageHistory() # Redis: redis_chat_message = RedisMessageHistory(msg_history_config=MessageHistoryConfig(store_name="redis", server_info=ServerInfoRedis(env_prefix="sdk.memory.dcs"), session_tag="test-memory-0624")) # Sql: sql_chat_message = SQLMessageHistory(msg_history_config=MessageHistoryConfig(store_name="sql", server_info=ServerInfoSql(env_prefix="sdk.memory.rds"), session_tag="test-memory-0624"))
- 添加、查找、删除数据。
# 更新数据 chat_message.add_ai_message("i am ai.") chat_message.add_user_message("i am tester.") # 查找数据 contents = [msg.content for msg in chat_message.messages] # 清理 chat_message.clear()
- 消息策略(windows-size):将固定轮次历史对话信息,作为历史上下文信息。
from langchain.memory import ChatMessageHistory, ConversationBufferWindowMemory from pangukitsappdev.api.memory.cache.cache_config import ServerInfoRedis # 历史消息存储 redis_chat_message = RedisMessageHistory(msg_history_config=MessageHistoryConfig(store_name="redis", server_info=ServerInfoRedis(env_prefix="sdk.memory.dcs"), session_tag="test-memory")) # 固定窗口策略: langchain.memory.buffer_window.ConversationBufferWindowMemory memory = ConversationBufferWindowMemory(k=3, chat_memory=redis_chat_message) memory.chat_memory.add_user_message("This is me, the human") memory.chat_memory.add_ai_message("This is me, the AI") print(memory.chat_memory.messages) memory.chat_memory.clear()
- 消息策略(信息摘要)
将历史消息进行摘要后,作为历史上下文信息。
from pangukitsappdev.memory.conversation_summory_memory import ConversationSummaryBufferMemory from pangukitsappdev.api.skill.base import SimpleSkill from pangukitsappdev.prompt.prompt_tmpl import PromptTemplates # 历史消息存储 redis_chat_message = RedisMessageHistory(msg_history_config=MessageHistoryConfig(store_name="redis", server_info=ServerInfoRedis(env_prefix="sdk.memory.dcs"), session_tag="test-memory")) # 摘要策略 memory = ConversationSummaryBufferMemory(summary_skill=SimpleSkill(PromptTemplates.get("memory_summary"), LLMs.of("pangu")), chat_memory=redis_chat_message) memory.chat_memory.add_user_message("This is me, the human") memory.chat_memory.add_ai_message("This is me, the AI") print(memory.chat_memory.messages) memory.chat_memory.clear()
父主题: Memory(记忆)
support.huaweicloud.com/ugobs-obs-pangulm/zh-cn_topic_0000001668637652.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章