聊天记录
聊天历史记录是用户与聊天模型之间对话的记录。它用于在整个对话过程中保持上下文和状态。聊天历史记录是一系列消息的序列,每条消息都与特定的角色相关联,例如“用户”、“助手”、“系统”或“工具”。
对话模式
大多数对话以系统消息开始,该消息为对话设置了上下文。接着是包含用户输入的用户消息,然后是包含模型响应的助手消息。
助手可以直接响应用户,或者如果配置了工具,可以请求调用工具来执行特定任务。
完整的对话通常涉及两种交替消息模式的组合:
- 代表来回对话的用户和助手。
- 代表“代理”工作流程的助手和工具消息,其中助手正在调用工具来执行特定任务。
管理聊天记录
由于聊天模型对输入大小有最大限制,因此管理聊天历史并根据需要进行修剪以避免超出上下文窗口是很重要的。
在处理聊天记录时,保持正确的对话结构至关重要。
管理聊天历史的关键指南:
- 对话应遵循以下结构之一:
- 第一条消息是“用户”消息或“系统”消息,然后是“用户”消息,接着是“助手”消息。
- 最后一条消息应该是“用户”消息或包含工具调用结果的“工具”消息。
- 当使用工具调用时,"工具"消息应仅跟在请求工具调用的"助手"消息之后。
tip
理解正确的对话结构对于能够在聊天模型中正确实现记忆至关重要。