Messages(对话消息数组) 协议

别名: 消息数组

chat/completions 请求中携带的完整对话历史,一个有序数组,每条消息必须有 `role`(`system` / `user` / `assistant`)。服务端是无状态的:每次请求都要把全部历史重新发给模型,对话状态完全由客户端维护——这是理解 Agent「记忆」的关键。

它是什么

Messages 是 chat/completions 请求中携带的完整对话历史,一个有序数组,每条消息必须有 rolesystem(系统指令,设定角色与行为边界)、user(用户说的话或工具返回的结果)、assistant(模型之前生成的回复,多轮时要原样放回)。模型基于整个数组生成下一条。

服务端无状态是关键

每次请求都要把全部历史重新发给服务端,服务端不记得「上次聊到哪」。所以:漏发历史 → 模型「失忆」;历史越攒越长 → 请求又慢又贵,直到撞上上下文窗口上限(context-window 词条);两个并发请求共享同一份 messages 时,先后顺序会影响模型接的话——状态的顺序就是消息的顺序。

在本教程的位置

第 02 章建立这个认知;第 10 章把消息落进数据库(persistence 词条);第 16 章用它实现断线恢复。一句话:Agent 的「记忆」本质是一份由你的代码保管、每次全量重发的消息数组。

相关词条

出现在这些章节