Prompt 不是真的:Dan 的 Agent 实战反思
Prompts Aren't Real
我是 Dan,在洛杉矶做了 25 年工程。最近我尝试让 Agent 在生产环境中可靠运行,这既令人兴奋又充满挑战。我发现 LLM 虽然强大,但在规模化监控下,其不可靠性会暴露无遗。很多人认为精心编写 Prompt 是关键,但我发现这其实是个误区。随着上下文增加,新 Prompt 会破坏原有行为,且模型行为难以预测。我的解决方案是放弃手动调优,转而使用 pass^k 测试和自动化优化器(如 GEPA)来迭代 Prompt。最终生成的 Prompt 可能看起来毫无逻辑,但只要测试通过,它就是有效的。
在工程卓越与彻底的心理崩溃之间,那层帷幕从未如此稀薄。
HN 评论区
57- cortesoft
我希望 AI 的未来不是这种模式:公司为用户/客户提供一个界面,让 AI 替用户做事……我更希望公司是为 AI 提供一个界面,而用户自带 AI 来连接这个界面。
换句话说,给我的 AI 提供工具,而不是给我提供一个使用你们工具的 AI。
这样,我的 AI 就能带上所有它需要的上下文,而我也能带上所有关于我想要什么以及如何工作的设置和知识。我不想要一个支离破碎的世界,里面充斥着各种各样的 AI,每次互动我都得重新解释所有关于我想要什么以及我如何工作的基本信息。
这样做还有一个好处,就是能避开文章里提到的那个问题。你提供一个一致的工具,AI 的怪异表现就不再是你的问题了。你不必担心解决人们用各种奇怪方式提示 AI 的问题,也不必担心他们如何搞砸。
- roughly
我们遇到的一个问题是,运行测试套件需要花费真金白银,这和我以往接触的任何东西都不同。所以,虽然我们确实需要做足够的测试以生成具有统计意义的性能指标——天哪,我知道这是对的,但我不确定我的公司能否熬过这个过程。
- stickr
这虽然很酷,但尽管我渴望为客户创建一个可预测且“确定性”的 Agent,我还是忍不住觉得这太浪费、太昂贵、也没什么意思。
作者觉得这很有趣固然好,但对我来说,我似乎陷入了那个“猴子爬梯摘香蕉”的实验:做这件事只是因为别人在做,而且客户在给我香蕉……抱歉,是给我钱,并确信这对他有帮助(如果我开始像这样循环优化提示词,那笔钱肯定立马就会停掉)。
像我目前拥有这么多工具和 MCP,而且每个工具的行为都在退化并剧烈变化,我觉得我应该要么合并工具、做更多自动化,然后回头再处理提示词。(另一个选择是训练我自己的模型?)
- mmargenot
太棒了!当你考虑用 GEPA(或类似的方法和工具)来优化提示词时,你会单独考虑每个工具或技能吗?对于大型 Agent 系统,你是如何思考系统提示词(system prompt)的优化的?
我猜想你会进行多轮迭代,以覆盖你想要评估的每个重叠集合,但系统提示词会让所有案例相互依赖。
我过去做过的是,利用系统提示词提取 LLM 裁判的主观标准(比如各种有助于塑造品牌声音的系统提示词语句),然后用这些标准检查单个轨迹来进行评估,但我希望能超越仅仅在提示词中包含这些内容的做法。
- jdlshore
这是一篇惊人的文章。它描述的问题正是我们在构建一个利用 LLM(在大多数时候)产生可靠结果的生产系统时所发现的。广泛的测试是必要的,而利益相关者完全不知道他们的建议在现实中是如何失败的。他们只看到自己尝试的那几次成功了,却没看到长尾中那些被诅咒的结果。(“这能有多难?为什么你们不直接……”)
我们并没有像文章建议的那样走到自建提示词那一步,但这确实是个引人入胜的想法。