深入讨论LLM的不确定性特性及其在生产应用中的可靠性保证成本,解答为什么可靠的LLM系统往往昂贵。
让我为您完整翻译这篇文章。
首先,让我们用一个显而易见但仍然有争议的陈述开头:大语言模型(LLM)不是确定性系统。它们是概率序列预测器。给定一个上下文,它们从概率分布中对下一个 token 进行采样。这就是它们的本质。没有隐藏的推理引擎,没有符号层的真理,也没有正确性的内部观念。
你可以影响它们的行为。你可以限制它。你可以塑造它。但你无法将概率转化为确定性。
在某处介于主题演讲舞台、融资演示和产品演示之间,一个令人欣慰的叙述出现了:模型越来越便宜、越来越智能,因此 AI 很快就会变得微不足道。这个逻辑听起来合理。token 价格在下降。模型质量在改进。演示看起来令人印象深刻。从外部看,感觉我们正在接近 AI 成为一个已解决的商品的阶段。
从内部看,感觉完全不同。
一个好的演示和一个可靠的产品之间存在巨大的鸿沟。演示通常是单个 prompt 和单个模型调用。它看起来很神奇。它能吸引投资。产品不能停留在那里。当你试图将这个架构交付给真实用户时,现实会迅速显现。模型会幻觉。它部分回答。它忽视约束。它产生听起来流畅但细微错误的东西。而模型不知道它失败了。
这不是道德缺陷。这是一个设计属性。
所以工程师做了他们一直以来的做法:当一个组件强大但不可靠时,他们在它周围构建结构。
一旦你关心可靠性,你的架构就不再是"调用一个 LLM",而是开始成为一个管道。输入被清理和规范化。生成步骤产生候选答案。另一步评估该答案。路由层决定答案是否可接受,或系统是否应该重试。有时它会用修改过的 prompt 重试。有时用不同的模型。有时用纠正传递。只有在这个循环之后,才会有东西到达用户。
LLM 在任何时刻都不会变成确定性的。改变的是系统获得了控制回路。
这个区别很重要。我们不是在将概率转化为确定性。我们是通过冗余和验证来减少不确定性。那个减少需要计算。计算需要金钱。
这就是为什么单独引用 token 价格具有误导性。单个模型调用可能很便宜。严肃的系统很少使用单个调用。一个用户请求可以触发多个模型调用:生成、评估、重新生成、格式化、工具调用、内存查询。用户体验"一个答案"。后端执行一个小工作流。
Token 成本是组件成本。可靠的 AI 是系统成本。
说"token 很便宜,因此 AI 很便宜"就像说螺钉很便宜,因此飞机很便宜。
这导致了一个令人不适但重要的真理。AI 以两种非常不同的方式变得昂贵。
如果你实现得不好,它变得昂贵是因为你烧钱却仍然无法获得可靠性。你不断调整 prompt。你不断救火。你不断修补症状。什么都稳定不下来。
如果你实现得好,它变得昂贵是因为你故意为控制付费。你为评估器付费。你为重试付费。你为可观测性付费。你为冗余付费。但你会得到回报:一个行为方式有界、可检查且可改进的系统。
没有便宜的"可靠"版本。
混淆的另一个来源来自于混合不同类型的专业知识。知名的创始人和高管善于描述未来。他们谈论市场去向和什么将成为可能。那是他们的角色。调试为什么评估器 prompt 会泄露指令,或为什么路由阈值在负载下振荡,不是他们的角色。金钱成功并不意味着操作上的亲密感。
在一线,构建严肃的 AI 感觉更像是分布式系统工程,而不是科幻小说。你担心数据质量。你担心回归。你担心延迟和每个请求的成本。你设计 schema。你版本化 prompt。你检查 trace。你运行基准测试。你调整阈值。这是缓慢的、不起眼的、深度技术性的。
LLM 让 AI 更容易接近。它们并没有让严肃的 AI 更简单。它们将复杂性向上转移到了系统中。
所以当有人说,"很快我们就可以调用一个 API,一切都会工作"时,他们通常的意思是,"很快会有大量的工程被隐藏在那个 API 后面。"
那很好。那是进步。
但假装可靠的 AI 是便宜、平凡或已解决的,那是误导。
诚实的版本是这样的:LLM 是强大的概率组件。将它们变成可靠的产品需要多层控制。那些层需要花钱。它们也创造真实的价值。
如果你不知道自己在做什么,今天严肃的 AI 在坏的方面是昂贵的。
如果你真的想让它工作,今天严肃的 AI 在好的方面是昂贵的。
任何人销售"廉价确定性 AI"都是在售卖一个故事,而不是一个系统。
某些评论可能仅对登录用户可见。登录以查看所有评论。
要采取进一步行动,你可以考虑屏蔽此人和/或举报滥用。