定义
短期上下文指的是人工智能模型(特别是大型语言模型 (LLM) 或对话代理)在生成下一个输出时可以主动考虑的即时、有限的先前信息集合。它是系统针对特定交互或会话的“工作记忆”。
与存储大量历史数据的长期记忆不同,短期上下文受到模型固定上下文窗口的限制——即它可以同时处理的最大令牌(单词或子词)数量。
为什么它很重要
短期上下文的质量和大小直接决定了人工智能响应的连贯性、相关性和准确性。如果上下文窗口太小,模型会“忘记”对话的早期部分,导致输出不合逻辑或重复。有效的上下文管理对于构建可靠、类人对话体验至关重要。
工作原理
当用户输入提示时,系统会将该提示与先前的对话轮次(对话历史)打包成一个单一的输入序列。这个构成短期上下文的序列被输入到 Transformer 架构中。然后,模型使用注意力机制来权衡该有限窗口内每个令牌的重要性,以预测下一个最可能的令牌。
常见用例
- 聊天机器人和虚拟助手: 在多次来回交流中保持主题相关性。
- 代码生成: 记住提示中早期提供的变量定义或函数签名。
- 摘要: 确保摘要准确反映即时源文档中的要点。
- 对话状态跟踪: 跟踪几分钟前提到的用户偏好或约束。
主要优势
- 连贯性: 确保人工智能保持在主题上并维持对话流程。
- 相关性: 允许模型根据即时输入历史来定制响应。
- 效率: 处理有界上下文窗口比尝试加载整个数据库历史在计算上更高效。
挑战
- 上下文窗口限制: 令牌的硬性限制限制了复杂、多阶段推理的深度。
- 上下文填充(Context Stuffing): 用不相关的数据过度加载上下文会稀释信号,导致性能下降。
- 延迟: 处理更长的上下文窗口会增加计算负载和响应时间。
相关概念
- 长期记忆: 用于检索超出即时上下文窗口之外信息的外部数据库或向量存储。
- 注意力机制: 确定短期上下文哪些部分对当前预测最相关的核心神经网络功能。
- 分词(Tokenization): 将文本分解成模型实际处理的离散单元(令牌)的过程。