Telegram Channel
记录和分享有趣的信息。

Record and share interesting information.

contact: [email protected]
读了两篇关于 prompt/context engineering 的文章:

* Manus 之外:实战笔记(1)薛定谔的缓存
* Context Engineering for AI Agents: Lessons from Building Manus

最重要的还是 KV-Cache,Manus 甚至称之为衡量 agent 框架的最重要的指标。因为 Transformer 的单向注意力机制 (Causal Attention Mask),每一个 input token 都只会使用它前面的全部 tokens 计算 KV。所以,保持 context prefix 稳定,可以极大提高 KV-Cache 的命中率,从而提高 LLM 输出效率和降低费用。

所以 Context Engineering 中的一个重要策略,就是在尽可能保持 context prefix 不变的前提下,实现各种功能需求:

1. 利用 LLM API 提供的 prefill 特性,利用 tool name 前缀来限定 tools 调用范围。而不是动态修改 context 中的 tools declaration。(OpenAI 不支持该功能,Claude 支持)
2. 使用 JSON schema 定义 tools 时,要注意使用确定性排序的序列化方法

除了提高 KV-Cache 命中率的各种工程方法外,Manus 还分享了一些其他的经验:

* 利用外部文件来提供无限上下文,并且保持 AI 对最初目标的关注
* 在 context 中保留犯错记录,避免重复犯错
* few-shots 需要添加噪音,预防 repetitive decision

很高兴地发现绝大部分内容和我自己的实践中总结出来的经验完全一致,甚至连用法也是一致的。不过 prefill 这个技巧我是第一次学到,我以前只关注 OpenAI 的 API,没想到实际上其他家,尤其是 Anthropic,已经有很长远的发展了。
我过去一直不太喜欢莫言,以前读过他的《丰乳肥臀》和《檀香刑》,都没找到太多共鸣。但最近读了他的《生死疲劳》,感觉很棒。

书的主要内容很简明,通过一名被枪毙的地主在自己土地上的六次转世,描写了中国从建国至 2000 年期间的制度变迁与乡民的命运。尤其其中各个主要人物的性格刻画与境遇,可谓是精准地抓住了时代的刻印。

回想起来,我很喜欢这种时代大背景下对个体命运的洞察与刻画。深受我喜爱的,类似题材的作品还有:

* 《静静的顿河》(And Quiet Flows the Don):苏维埃成立初期,顿河流域哥萨克农民的命运变迁。
* 《白鹿原》:抗战和内战背景下,陕西关中地区的农民的命运。
* 《荆棘鸟》(The Thorn Birds):澳大利亚的乡民家庭的命运。
* 《百年孤独》(One Hundred Years of Solitude):拉丁美洲的家族历史与命运。 #book
Telegram Channel