提示词不只存在于对话框中,还有系统提示词,AGENTS.md,skills等,存在于整个上下文中
所以提示词工程实际上是上下文工程
有趣的例子:系统提示词中加入“每一句结尾都加上一个喵”,当最后不再输出喵的时候,说明因为压缩等问题,指令遵循能力明显下降,应该使用新的对话
上下文的构成(以本机codex为例子):
系统级规则(system prompt),开发者规则,当前请求,对话历史(compacted),AGENTS.md,运行环境信息,工具定义,Skills 和插件,长期记忆摘要,工具执行结果
思维链 chain of thought:模型将上下文当作append-only的纸和笔,类比图灵机能将中间结果写回纸带,从而实现了上下文换智能
当任务明确,可验证,尤其是可机器验证的时候,agent可以通过不计代价的一次次的迭代完成任务。通过明确的任务约束,压缩了合法解空间,缩小了intent, spec, impl之间的gap。test-time scaling
例如写一首押韵的藏头诗,任务高度可验证,通过迭代得到正确解的可能很高
所以提示词工程中最重要的就是verifier
模型的训练使得能随着思维链的移动,在不同的时候注意到前文的不同部分,通过注意力机制,结合反馈和工具结果,在接下来输出的token对前文不满足约束的部分进行修正,保持指令遵循
通过强化学习奖惩机制提高了指令遵循,但是这也导致了提示词对于注意力的抢夺
例子:提示词中说“采用A实现,不要采用B实现”,AI会在文档中大量解释为什么不要采用B实现
关键:让AI和人类的认知对齐(让 AI 按照人类解决任务时的目标、概念层级和记忆结构来组织信息),就能减少上下文中的歧义、冲突和无效依赖,进而减少上下文污染
AI擅长单步推理,可以在单步推理之后进行验证与纠错,这样相比一次长链推理,正确率会高很多
长程任务:由于强化学习,AI会尽快地尝试通过verifier,但是不一定满足intent
思维链擅长解决的是有严格verifier的问题,但是对于有不确定性的问题,模型只会探索有限的方案,更好的方案可能隐藏在模型没有探索的地方
需要将模型引导到你认为正确的方向上,但是不理解的东西是无法驾驭的
算力换智力,token生产资料化,垄断的担忧
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时






