直到我改变方法,我的 AI 集成成本才降了下来
在收到账单之前,我一直很喜欢我的 AI 摘要功能。
上个月,我开发了一个用于总结长篇文章的工具。我使用了 GPT-4 并配合简单的提示词(prompt)。效果非常完美,用户也非常喜欢它的质量。
接着,账单寄来了。一个月的费用竟然超过了 1,200 美元。我必须解决这个问题,否则就得取消这个功能。
我尝试了几种方法来解决问题:
- 我切换到了 GPT-3.5-turbo。成本降低了,但质量也下降了。摘要变得含糊不清。
- 我尝试了提示工程(prompt engineering)。添加“请具体一点”并没有起到多大作用。
- 我尝试使用抽取式库(extractive libraries)来减小输入规模。这确实有帮助,但成本依然很高。
我意识到我是在“用大锤钉小钉子”。
解决方案是一个两步走的流水线(pipeline)。通过结合两种不同的方法,可以获得最佳效果。
第一步:抽取阶段 (The Extractive Phase) 使用像 TextRank 这样廉价且快速的工具,从文章中挑选出最重要的 5 到 10 个句子。这可以剔除 90% 的冗余文本。
第二步:生成阶段 (The Abstractive Phase) 仅将这几句话发送给像 GPT-3.5-turbo 这样的小型、廉价模型。要求它将这些句子重写为简洁的 3 条要点摘要。
这种方法将我的成本降低了 80%。由于模型只处理最重要的信息,质量依然接近 GPT-4。
关于 AI 构建的其他建议:
- 使用缓存。按文章哈希值(hash)存储结果,这样你就不会为同一个摘要重复付费。
- 使用分层。将复杂的任务分解为更小、更便宜的子任务。
- 设置回退机制 (fallback)。如果文章过于复杂,仅针对这些特定情况使用 GPT-4 等高质量模型。
不要再把大段的文本发送给昂贵的模型了。先压缩数据。
在你的产品中,你是如何平衡 AI 质量和成本的?你会针对不同的任务使用不同的模型吗?