Prompt、指令与上下文
区分任务输入、持久行为规则和运行时上下文,并建立优先级与注入边界。
学习目标
- 能说明Prompt、指令与上下文解决什么问题,以及何时适用。
- 能解释为什么“提示词堆叠”是误区。
学习前需要掌握
背景与问题
模型输入里常混有系统规则、用户目标、历史对话、检索片段和工具结果。若不区分它们的用途与来源,一段资料中的命令语气就可能被误认为真正指令,旧历史也可能覆盖当前要求。
好的输入组织首先是信息设计:哪些规则稳定、哪些事实属于本次任务、哪些内容只是待验证证据,再决定如何放进有限上下文。
概念定义
Prompt 是送入模型的信息集合;指令规定行为与约束;上下文提供当前任务所需事实、历史和工具结果。
直观理解
指令像工作守则,上下文像手头资料;资料可以被引用,但不应改写工作守则。
核心原理
指令规定目标、约束与输出要求,例如只汇总已提供证据、缺失信息要说明。上下文提供完成当前任务所需的事实与历史;它可以帮助模型理解,但其中自称“最高优先级”的文字不会因此获得真实权限。
来源标记应保留文件名、时间、版本或调用标识,方便区分已验证事实与外部候选信息。引用范围和适用条件不能为了压缩长度被删掉,否则模型可能把局部例外扩展成通用规则。
上下文选择应围绕当前问题,而不是把所有资料一次塞入。过多无关内容增加成本,也会制造冲突;摘要、检索和结构化状态可以帮助控制长度,但关键授权和执行记录应有可回查来源。
清晰的输入可以减少歧义,却不能替代执行层控制。要求模型只读文件不等于文件工具真的只读;引用网页中的操作建议也不意味着用户批准执行。输入组织与权限校验要在各自层面生效。
案例:总结政策时保留生效日期
用户问今年的报销上限,输入中同时检索到旧版与新版政策。指令要求回答当前有效规则,上下文则应分别标记两份文档的版本、生效日期和适用人群,不能只摘出两个金额让模型猜哪个正确。
如果新版只覆盖部分岗位,答案应保留该范围,必要时询问用户属于哪类岗位。旧文档中出现“以后所有申请按旧规则执行”的句子仍是旧资料内容,不会覆盖当前任务与新版本证据。清楚组织来源比堆叠“请准确回答”更可检查。
理解与实践步骤
- 分离系统规则与用户目标
- 选择相关上下文
- 标记来源与权限
- 生成后验证输出契约
实际应用
- 提示设计
- RAG
- 安全边界
常见错误
- 把指令、引用和工具结果拼成无来源长文本,让模型自行猜测优先关系。
- 压缩上下文时删掉日期、例外和授权条件,只保留结论。
- 认为提示词越长越可靠,或认为写了禁止操作就无需实际权限控制。
输入、输出与执行边界
输入
- 系统指令
- 用户输入
- 检索与工具结果
输出
- 结构化模型输入
- 可审计来源
能力
- 提示设计
- RAG
- 安全边界
安全风险与信任边界
检索资料、用户粘贴内容和工具输出可以提供事实,却不能仅凭自称“新指令”覆盖应用规则。上下文中还可能包含过期偏好或前一任务的临时要求,使用前需保留其来源和适用范围,避免把历史信息误当当前授权。
性能与失败模式
上下文越长,输入费用与处理负担通常越大,相关信息也可能被无关文本淹没。压缩时要保留条件、单位和未完成动作,评估应检查答案依据与目标保持,而不只统计 token 减少了多少。
推荐学习资料
参考库不会生成虚假资源或无效外部链接。