Models.dev - AI SDK兼容模型跟踪
我曾经是一个自信满满的开发者,认为将AI集成到我的应用中轻而易举。但我万万没想到,我即将学到一个代价惨重的教训……
我曾经是一个自信满满的开发者,认为将AI集成到我的应用中轻而易举。但我万万没想到,我即将学到一个代价惨重的教训。
1、47美元的警钟
一切都始于一个看似无害的开始。我选择OpenAI的GPT-4o作为我的原型,因为,嗯,它是我所知道的最强大的模型。我没有费心去比较成本——毕竟,几个API调用能有多贵呢?我硬编码了模型接口,跳过了成本跟踪,直接将我的“快速原型”部署到了测试环境。
第二天早上,我查看了 OpenAI 的使用情况仪表盘。结果令人震惊!我那看似无辜的代码审查机器人一夜之间竟然消耗了价值 47 美元的token。我的测试套件竟然把整个代码库都输入到了它上面,而我却把它们交给了最昂贵的模型之一,而且完全没有进行任何成本优化。

1、AI模型选择的隐含复杂性
随着我深入研究如何控制局面,我意识到人工智能模型领域已经变得多么复杂。每个提供商的定价结构都不同:
- 输入令牌和输出令牌的价格不同(有时相差 5 倍!)
- 上下文长度限制从 8K 到超过 100 万个令牌不等
- 诸如视觉、推理、工具使用或文件附件等功能
- 缓存和非缓存输入定价不同(重复内容可节省 75% 的费用)
- 区域可用性和提供商特定的模型 ID
我发现自己需要在多个浏览器标签页和提供商文档页面之间来回切换,试图回答一些基本问题:
- 哪个模型的性价比最高?
- 使用不同的模型处理 1000 个请求需要多少成本?
- 哪些模型支持我用例所需的功能?
- 我需要遵守哪些上下文限制?
我花在维护模型比较上的时间比实际开发功能的时间还要多。肯定有更好的方法。
现在有了。
2、发现 Models.dev
几天前,我偶然发现了 models.dev。这个项目由 SST 团队(也就是广受欢迎的 Serverless 框架的开发团队)创建,几天前才刚刚上线,就已经成为我开发工作流程中不可或缺的工具。
我终于找到了我需要的解决方案

当我发现 models.dev 时,以下几点立刻吸引了我:
2.1 实时、全面的数据
无需在不同的供应商网站上搜索,所有信息都集中在一个地方:
- 来自所有主流供应商(OpenAI、Anthropic、Google、Mistral、xAI 等)的 130 多个模型
- 输入/输出令牌和缓存内容的实时定价
- 附件、推理、温度控制等功能标志
- 清晰显示上下文和输出限制
- 与 AI SDK 兼容的供应商特定模型 ID
2.2 完美契合开发者工作流程
数据结构完全符合我们对模型选择的设想:
- 按成本范围筛选(查找所有低于 1 美元/百万令牌的模型)
- 按上下文窗口排序(需要处理大型文档?)
- 比较推理能力(o1、Claude 和 Gemini)
- 检查附件支持(需要视觉或文件处理?)
2.3 用于编程的 API 访问
没有 API 的解决方案算什么?无需手动检查网站,我可以通过编程方式访问数据:
curl https://models.dev/api.json这将返回一个包含所有模型、其成本和功能的 JSON 对象。现在,我可以直接在我的应用程序中构建成本优化:
// Find the cheapest model that supports reasoning
const models = await fetch('https://models.dev/api.json').then(r => r.json());
const reasoningModels = models.filter(m => m.reasoning && m.cost.input < 2.0);
const cheapest = reasoningModels.sort((a, b) => a.cost.input - b.cost.input)[0];2.4 社区驱动,始终保持最新
该项目是开源的,并接受社区贡献。当新模型发布或价格发生变化时,社区可以提交 pull request 来保持数据的最新状态。告别过时的电子表格和文档。

3、如何在我的工作流程中使用 Models.dev
在开始任何 AI 功能之前,我会访问 models.dev 来:
- 按所需功能(推理、附件等)筛选模型
- 按成本排序以找到经济实惠的选项
- 检查我的用例的上下文限制
- 复制用于 AI SDK 集成的确切模型 ID
既然我们有 API,那么使用他们的 API 构建一个便捷的工具就顺理成章了:
- 估算我的特定用例的令牌使用量
- 比较不同模型的成本
- 找出使用更便宜的模型来完成更简单任务的机会

4、选择合适的 LLM 的最佳实践
- 并非所有任务都需要最昂贵的模型
GPT-4o 每百万令牌的成本为 2.50 美元/10.00 美元,但 Gemini 1.5 Flash 对于许多类似的任务仅需 0.075 美元/0.30 美元。这相差 30 倍!上下文窗口规划至关重要
提前了解上下文限制可以避免后期代价高昂的重构。模型的令牌数量从 8K 到超过 100 万不等——请据此进行规划。
- 缓存输入定价至关重要
许多提供商为缓存输入提供大幅折扣(75% 以上)。设计提示时,请充分利用这一优势。
- 模型功能差异显著
并非所有模型都支持推理、附件或工具使用。在构建解决方案之前,请检查模型的功能。
- 提供商模型 ID 不一致
OpenAI 称之为“gpt-4o”的模型在 Azure 中可能是“azure/gpt-4o”,或者在其他地方具有完全不同的 ID。Models.dev 对此进行了标准化。
5、AI 模型发展日新月异
每周都有新模型发布,价格不断变化,功能也在快速扩展。
下次启动 AI 项目时,请不要重蹈我的覆辙。首先访问 models.dev,了解您的选项,并根据您的具体需求和预算选择合适的模型。
原文链接:What I Wish I Knew About Tracking AI Model Costs Before Building My First LLM App
汇智网翻译整理,转载请标明出处