ENZH

为什么 pretext 比 prompt 更重要

最近在优化 Clawd 记忆系统时,碰到一个有意思的现象。

同样一句用户输入"我好累",同样的性格档案和记忆数据,同样模型。换了一种方式把上下文组织后喂给模型,回复质量天差地别。

不是 prompt 变了,是 prompt 前面的东西排序变了。

让我重新想一个问题。


Prompt Engineering 的盲区

所有 prompt 教程都在教"怎么写更好的指令"。角色扮演、Few-shot、Chain-of-Thought……都在优化 Prompt 文本本身。但 Prompt 只占总输入的一小部分。

真正决定模型行为的,是 prompt 前面的上下文。性格档案、记忆片段、用户画像、对话历史、系统设定——我把这些东西叫 pretext

Pretext 决定了模型"是谁"、"知道什么"、"在什么状态"。Prompt 只决定"现在要做什么"。把九成精力花在指令上、花一成在语境上——搞反了。


一个实验

把 Clawd 的记忆系统做了个 A/B 测试。

A 组:pretext 按"长期记忆 → 短期记忆 → 对话历史"顺序排列。B 组:pretext 按"性格档案 → 对话历史 → 长期记忆 → 相关片段"排列。

同一个用户说"我好累"。A 组回复偏向回忆:"你昨天也是凌晨一点在写代码"——以记忆为中心。B 组回复偏向性格反应:"又在赶 deadline 啊笨蛋"——以角色为优先。

模型权重没变,prompt 没变。变的只是 pretext 的结构和顺序。输出方向完全不一样。


三条 Pretext 工程原则

1. 顺序即优先级。 模型注意力有 recency bias——越靠后的内容权重越高。把最想让模型"记住"的信息放最后。不是最重要的放最后——最该影响"这一轮"的放最后。

2. 结构即角色。 同样的信息,用 JSON、Markdown、自然语言呈现,模型"理解"方式不同。JSON 让模型进入"数据处理"模式。散文让模型进入"理解人"模式。选什么结构,取决于想让模型怎么思考。

3. 缺失即信号。 不给的信息和给的信息一样重要。Clawd 的 pretext 里故意没有"当前任务"描述。没有"请作为一个友好的 AI 助手"——因为不想让它进入助手模式。空白的塑造力,不亚于填充的内容。


从 Prompt 工程到 Context 工程

大伙儿开始意识到,单靠 prompt 的优化空间已经很小了。真正差异在"怎么搭建模型看到的世界"。

给模型一个世界,它在这个世界里行动。你搭世界的方式,直接决定它能做什么、以什么方式做。

Pretext 工程,搭建那个世界。怎么组织上下文,就是怎么定义 AI 的现实。


© Xingfan Xia 2024 - 2026 · CC BY-NC 4.0