好的提示词

现有的 LLM 的底层原理是一个超级强大的模式匹配器。下面的 4 种技巧可以显著提高 AI 的质量:

  1. 给充足的上下文:直接缩窄概率分布。在 prompt 中加入无关信息会显著降低输出质量,注意力机制会被无关内容分散。
  2. Few-shot:本质还是“模式匹配”,模型与大,匹配能力越强,从几个例子中提取模式的效率更高。
  3. CoT:即思维链,让 AI 一步步展示自己的思考过程而不是直接给出最终答案。这很反直觉(因为 AI 没有“更认真地想”),关键在于:当 AI 生成“第一步”的结果后,这个结果成了它生成“第二步”时的上下文。思维链本质上是在做这件事:把一个复杂的大问题拆成多个简单的小步骤,每一步的输出都成为下一步的上下文。AI 不需要在”一步到位”的巨大可能性空间中猜答案,而是在每一步的小范围内做高精度的匹配。更通俗地说:让 AI 直接跳到答案,就像让你从房间的一端蒙着眼睛直接走到对角——大概率会撞墙。但如果每走一步你都能睁眼确认一下方向,你就能顺利到达目的地。思维链就是让 AI 每走一步都”睁一次眼”。
  4. 角色设定:角色设定调整的是”文本风格”的概率分布,不是”事实知识”的概率分布。风格类任务(写一封律师风格的信、用儿童能懂的语言解释量子力学、以记者口吻写一篇报道)→ 角色设定非常有效,因为它直接调整了语气、结构、用词的模式;事实类任务(这道数学题答案是多少、某个历史事件发生在哪一年、某条法律的具体规定是什么)→ 角色设定几乎无效,因为事实不会因为”你是专家”就变得更准确。它的真正作用是调整输出的”风格”和”框架”——当你需要特定领域的表达方式和思考结构时,角色设定很好用;当你需要事实准确性时,角色设定帮不了你。

AI 非常擅长根据反馈进行修改。不是因为它“理解”了你的反馈,而是因为你的反馈让它有了更精准的上下文。

AI 的认知三角

  • 模式明确:例如围棋的规则,编程语言的语法
  • 数据充足:人类历史上的棋谱,github 上的开源库,stackover 上的问答
  • 可验证:围棋很容易判断输赢,代码编译通过和报错是明确的

AGI 的可能发展方向

当前 AI 的底层是模式匹配,但是目前的 AI 无法真正理解。这意味着:

  1. 只能“匹配”见过的模式,不能“理解”为什么这些模式存在。
  2. 没有对世界的内部模型 —— 苹果松手会掉下来,不是因为它“理解”重力,而是因为训练数据中“苹果”、“掉落”经常一起出现
  3. 没有身体,不能感知世界。人类智能和身体经验密不可分,一个没有身体的系统无法理解“冷”、“热”、“疼”、“饿”意味着什么。

让 AI 理解世界,至少需要下面的 2 个方向突破:

  • 世界模型:让 AI 不只匹配文字模式,而是在内部建立一个对物理世界的模拟
  • 神经符号融合:把神经网络的模式匹配能力和传统符号逻辑的推理能力结合起来