当前位置: 首页 > wzjs >正文

php企业网站开发好学么常州设计网站

php企业网站开发好学么,常州设计网站,著名网页设计师及作品,seo百度快速排名Chapter 4: Messaging and Memory 从配置管理到消息记忆:如何让AI记住对话内容? 在上一章的配置管理中,我们已经能让系统记住所有参数设置。但你是否想过:如果用户连续提问“今天天气如何?”和“明天呢?”…

Chapter 4: Messaging and Memory


从配置管理到消息记忆:如何让AI记住对话内容?

在上一章的配置管理中,我们已经能让系统记住所有参数设置。但你是否想过:如果用户连续提问“今天天气如何?”和“明天呢?”,AI如何知道“明天”是接续之前的查询?这就像给指挥官配备一个记忆力超强的副官,专门记录对话历史!本章将介绍如何通过消息与记忆系统让AI记住之前的对话内容,保持上下文连贯。


核心问题:如何让AI记住“之前的对话”?

想象你和朋友聊天时,突然对方忘记你们之前讨论过的内容,这会让人很困扰!对于AI来说:

  • 用户先问:“今天的天气?”
  • 接着问:“明天呢?”

如果AI不知道“明天”是接续“今天”的查询,就无法正确回答。消息记忆系统就像一个智能笔记本,自动记录:
✅ 每个对话参与者的发言
✅ 工具调用的执行结果
✅ 保持对话上下文不超过限制

通过本章学习,我们将实现:
✅ 自动维护对话历史记录
✅ 设置消息数量上限防止内存溢出
✅ 整合工具调用的结果到对话中


核心概念分解

1. 消息结构:对话记录的“标准化格式”

每条消息都有统一格式,包含:

  • 角色:用户、助手、工具(如天气API)
  • 内容:文本或图片(base64编码)
  • 工具调用记录:记录调用了哪个工具
# app/schema.py中的Message类片段
class Message(BaseModel):role: Role          # 发言者身份(用户/助手/工具)content: Optional[str]  # 文本内容tool_calls: Optional[List[ToolCall]]  # 工具调用记录
2. 记忆管理:对话历史的“智能管家”

记忆对象负责:

  • 存储消息列表
  • 限制最多存储100条消息(默认值可配置)
  • 提供添加/清理/获取最近消息的功能
# app/schema.py中的Memory类片段
class Memory(BaseModel):messages: List[Message] = []  # 消息列表max_messages: int = 100       # 最大消息数量def add_message(self, message: Message):self.messages.append(message)if len(self.messages) > self.max_messages:self.messages = self.messages[-self.max_messages:]  # 只保留最新消息
3. 工具调用整合:让工具结果“参与对话”

当调用天气API时,工具调用记录会自动加入对话历史,方便后续分析:

# 示例:添加工具调用消息
tool_call = ToolCall(id="123", function=Function(name="get_weather", arguments="北京"))
memory.add_message(Message.tool_message(content="查询到北京今天25°C",name="天气API",tool_call_id="123"
))

如何用消息记忆解决问题?

场景:用户连续查询天气并获得连贯回答

步骤1:初始化记忆系统
from app.schema import Memory# 创建记忆对象,设置最大消息数为5
memory = Memory(max_messages=5)
步骤2:记录用户提问
# 用户问“今天北京天气?”
memory.add_message(Message.user_message("今天北京天气?"))
步骤3:记录工具调用结果
# 调用天气API获取数据
tool_response = "北京今天25°C,晴"
memory.add_message(Message.tool_message(content=tool_response,name="天气API",tool_call_id="tool_001"
))
步骤4:生成回答并记录
# 助手回复结果
assistant_response = f"今天北京{tool_response}"
memory.add_message(Message.assistant_message(assistant_response))
步骤5:用户继续提问
# 用户接着问“明天呢?”
memory.add_message(Message.user_message("明天呢?"))

此时,记忆中的消息列表会显示完整的对话历史,确保助手能理解“明天”是接续“今天”的查询。


内部实现揭秘:记忆系统的“工作原理”

流程分解(用简单序列图演示)
用户 Memory WeatherAPI 发送"今天北京天气?" 存储用户消息 触发工具调用 返回天气数据 存储工具结果 显示完整对话历史 用户 Memory WeatherAPI
关键代码解析

1. 消息格式化示例

# 将消息转化为字典格式方便传输
message = Message.user_message("你好!")
print(message.to_dict())
# 输出:
# {'role': 'user', 'content': '你好!'}

2. 消息数量限制机制

memory = Memory(max_messages=2)
for i in range(5):memory.add_message(Message.user_message(f"消息{i}"))print(len(memory.messages))  # 输出:2(只保留最后两条消息)

深入理解消息与记忆系统

通过本章,你已掌握:
✅ 消息的标准化存储格式
✅ 记忆对象对对话历史的管理机制
✅ 工具调用记录如何参与对话上下文


小结与展望

通过消息与记忆系统,我们实现了:
✅ 对话历史的完整记录
✅ 动态调整消息存储数量
✅ 工具执行结果与对话的无缝衔接

下一章我们将探讨执行流框架,学习如何让所有组件按照预设流程协同工作——就像给指挥官制定一份详细的作战计划!现在你可以尝试修改代码,让AI在回答时主动引用之前的对话内容了。


文章转载自:

http://Nw14LXO2.nbrdx.cn
http://P94VdDoC.nbrdx.cn
http://47oTUSOk.nbrdx.cn
http://XIricOf6.nbrdx.cn
http://SqsA4xb1.nbrdx.cn
http://8SaN02nx.nbrdx.cn
http://1meUR9IK.nbrdx.cn
http://C5ImUdiV.nbrdx.cn
http://wHEkr5rA.nbrdx.cn
http://tky0xZUb.nbrdx.cn
http://gjzI4gke.nbrdx.cn
http://swZwsWy1.nbrdx.cn
http://ot6QvEyu.nbrdx.cn
http://drz08rfG.nbrdx.cn
http://RBeOkxO3.nbrdx.cn
http://PRUN0cKC.nbrdx.cn
http://kT6IBR5m.nbrdx.cn
http://62iuVcRm.nbrdx.cn
http://UBc0j7Mw.nbrdx.cn
http://0SGB4SJN.nbrdx.cn
http://I4tjAfLD.nbrdx.cn
http://oFTGErsB.nbrdx.cn
http://XDlaKkkU.nbrdx.cn
http://57iQ6Gba.nbrdx.cn
http://HO3VvS0D.nbrdx.cn
http://ZqAAcKcR.nbrdx.cn
http://7rOa7enm.nbrdx.cn
http://UpVtPDM7.nbrdx.cn
http://EGDoG6E5.nbrdx.cn
http://GXIOdLm3.nbrdx.cn
http://www.dtcms.com/wzjs/621218.html

相关文章:

  • 阿里云手机网站建设2个淘宝可以做情侣网站么
  • 哪个公司网站做的好html注册登录界面代码
  • 网站优化公司 网络服务佛山网站搭建公司
  • 陕西建设交通集团招聘信息网站江苏省住房和城乡建设局网站
  • 北京麒麟网站建设wordpress安装md
  • 做网站mfdos足球比赛直播间在线观看
  • 网站设置默认首页小学做试卷的网站
  • 自己如何建设网站步骤粤icp备网站建设 中企动力广州
  • 这几年做那些网站致富莱芜网络推广公司电话
  • 专业的高端网站制作公司顺义网站建设哪家好
  • 百度云搭建网站济南网站建设维护
  • 企业网站排名技巧seo优化效果
  • 佛山网站建设企业推荐八年级做网站
  • 惠州微网站推广方案2021军事热点新闻
  • 网站建设店seo搜索优化工程师招聘
  • ai做的网站怎么切图网站优化seo推广服务
  • 小米路由器 做网站wordpress 首页显示
  • 查网站开通时间常见的电子商务网站网址
  • 合肥地区网站制作百度关键词搜索怎么收费
  • 威海 网站开发网站架构包括
  • 佛山p2p网站建设网络服务协议模板
  • 网站都要交域名费么东营网络建设
  • 做网站+广告费+步骤中小企业名录查询官网
  • anydrag建站专家网站建设系统全球邮企业邮箱登录
  • ftp 网站文件给期货交易类做网站违法吗
  • 佛山市品牌网站建设多少钱电子商务网站开发需求分析
  • 建立英文网站免费的破解版wordpress主题
  • 做定制型网站牡丹江免费信息网
  • 网站建设制作免费咨询网页模板dw
  • 东台做网站的网站建设性意见表