提示词与上下文工程入门已核验核验于 2026-07-30

对话上下文

Conversation Context

当前对话中的历史消息、状态和约束集合,决定模型能够参考哪些先前信息。

本页目录
快速跳转

它是什么

对话上下文是模型在当前请求中能够参考的会话信息,包括先前用户与助手消息、当前问题、系统规则、工具结果和应用补充的状态。[S1][S2] 它描述的是“这一轮带进来的历史”,不是模型自动永久保存的个人记忆,也不等于应用数据库中的完整聊天记录。

为什么需要它

用户常用“它”“继续”“改成昨天那个版本”等省略表达。没有相关历史,模型无法知道指代对象、已作决定或尚未完成的步骤;历史过多或相互矛盾,又会让旧要求干扰新任务。明确对话上下文能让应用决定连续性来自哪里,并在可解释的位置修正状态。

它如何工作

许多消息 API 接收按角色排列的消息列表。应用保存先前轮次,在新请求中选择需要的历史并连同当前消息发送;模型输出随后可能成为下一轮输入。[S1][S2] 随着轮次增加,历史会持续占用上下文窗口,应用因此需要截断、摘要、检索旧消息或把确定状态迁移到结构化存储。

必须澄清的误会

对话上下文 ≠ 短期记忆。 短期记忆是以对话为单位保留的状态,通常实现为上下文或会话存储;对话上下文更强调「这一轮要带上哪些文本」。

对话上下文 ≠ 上下文窗口。 上下文窗口是容量上限,对话上下文是填进去的内容,前者决定后者能有多长。

真实例子

差旅助手先记录用户要去上海、预算上限 1200 元,随后用户说“改成周五晚出发”。若应用只发送最后一句,模型不知道目的地和预算;若发送全部闲聊,又会浪费窗口。更稳妥的做法是回传当前行程状态、最近相关轮次和修改请求,并把已作废日期标记为旧值。

什么时候适合与不适合

对话上下文适合保存当前任务的连续意图、约束和未完成事项,但不应无期限回传所有消息。历史可能包含隐私、过期结论、提示注入或错误的模型回答;“模型之前说过”也不是事实证据。应用必须区分原始记录、本轮实际输入和长期业务状态,并为删除、保留与更正建立规则。

亲自试一下

准备一段六轮对话和一个依赖前文的最终问题,分别用完整历史、仅最后一轮、人工摘要三种上下文运行。按“指代是否正确、约束是否保留、过期信息是否误用、Token 数”评分。再故意删除一条关键决定,记录哪种表示最容易发现状态缺失。

接下来学什么

阅读上下文窗口理解历史如何占用输入预算,再学习短期记忆和状态管理区分模型可见历史与应用持久状态;长对话则需要上下文压缩。

来源与修订

消息角色、内容列表和多轮请求方式参考 Anthropic Messages API [S1];历史逐轮累积、工作记忆范围和窗口计数参考上下文窗口文档 [S2]。服务端是否保存会话、自动裁剪什么内容以及各模型的容量必须按实际产品版本复核。

Learning questions

这个概念出现在哪些题里

下面的题目直接引用了本词条,适合先做判断,再回到正文核对边界。

Learning navigation

学习导航

沿认知链路:你现在在第 2 站,下一站是「给知识 · 怎么让它知道你家的资料」:先沿主路径补上这一层。

Relation topology

概念关系

本词条在知识拓扑中的连接关系。涵盖前置依赖、组成要素、对比差异与应用场景。

🌱 独立基准概念

基础定义单元 · 暂无直接强依赖关系

「对话上下文」在当前知识体系中作为底层基准概念建立,不直接依赖其它前置概念,亦未设定强约束关联。读者可直接阅读正文理解其内涵,或前往全网概念图谱探索整体领域架构。

Source register

核验来源

  1. Create a MessageAnthropic · 访问于 2026-07-30
  2. Context windowsAnthropic · 访问于 2026-07-30

发布 2026-07-30 · 更新 2026-07-30 · 核验 2026-07-30