大模型没有记忆,多轮对话的上下文靠四种消息拼出来

大模型有个反直觉的地方。

它没有记忆。

这一轮说的话,下一轮就当没发生过。

原因是它没有状态,输出只看这一次喂进去的内容。

很多接口也不在服务端替你保存会话历史。

想让它记住,只能在程序里自己维护一份消息列表。

大模型无记忆与消息列表解法的对比示意图

消息是这套东西里最小的单元。

它既代表模型收到的输入,也代表模型给出的输出。

一轮对话[……]

继续阅读