Artificial Analysis 语言模型 API 性能基准测试方法论
概述
衡量 LLM 性能需要向 LLM 发送提示词,并测量其输出的各项特征。我们使用多种测试工作负载来测试和衡量 LLM 性能。
工作负载类型
| 工作负载类型 | 说明 |
|---|---|
| 1k 输入 token | 约 1,000 个输入 token,至少 1,000 个答案 token |
| 10k 输入 token | 约 10,000 个输入 token,至少 1,500 个答案 token(本网站的默认基准测试) |
| 100k 输入 token | 约 100,000 个输入 token,至少 2,000 个答案 token |
| 视觉工作负载 | 一张 1 megapixel(百万像素)的图像,以及约 1,000 个输入 token、1,000 个输出 token |
与较短的提示词相比,较长的提示词可能同时导致更长的首 Token 延迟和更慢的每秒输出 token 数。
负载场景
| 负载场景 | 说明 |
|---|---|
| 单个提示词 | 每次向模型的 API 发送一个提示词 |
| 并行提示词 | 同时向模型的 API 发送 10 个提示词 |
测试频率
- 我们的 1k、10k 输入 token 工作负载和视觉工作负载每天测试 8 次,约每 3 小时一次
- 对于多请求或并行工作负载测试,我们每天在随机时间发送 10 个并发请求,使用的是我们的标准 1k 输入 token 工作负载
- 我们的 100k 输入 token 工作负载每周测试一次
提示词生成
每一次单独的测试运行都使用一个我们在测试时生成的独特提示词,并在我们覆盖的所有接入点上运行。提示词将各类长篇输入内容(例如文章)与多种任务相结合,包括解释/摘要、问答生成、比较分析、翻译或视觉产物生成。
生成过程的参数被设定为填满目标 token 预算,从而产生多样化的输出,以测试一系列推理与生成能力。
提示词的多样性对性能基准测试很重要,因为诸如推测解码(speculative decoding)之类的技术意味着,我们会看到输出速度随输出类型的不同而变化。
测量结果的呈现方式
性能测量结果以过去 72 小时内的中位数(P50)呈现,以反映用户在使用该 API 时可以预期体验到的持续性性能变化。100k 提示词长度的工作负载是一个例外,它每周测试一次,并以过去 14 天内的中位数(P50)呈现。
关键定义
- 首 Token 延迟: 从向服务或系统发送请求到接收到响应的第一个 token 所经过的时间(秒)。对于会返回推理 token 的推理模型,这里指第一个推理 token。
- 首个答案 Token 延迟: 从向服务或系统发送请求到接收到响应中第一个答案 token 所经过的时间(秒)。对于推理模型,该 token 出现在任何“思考”时间结束之后。
- 输出速度(每秒输出 token 数): 在收到第一个 token 之后,平均每秒接收到的 token 数量。
- 生成 100 个输出 Token 的总响应时间: 生成 100 个输出 token 所需的秒数,基于 TTFT 与输出速度合成计算,以确保最大的可比性。
- 端到端响应时间: 接收完整响应所需的总时间,包括输入处理时间、模型推理时间和答案生成时间。
- 平均推理 Token 数: 推理模型在给出答案之前输出“推理”token 所花费的时间。该指标基于一组 60 条多样化提示词上“推理”token 数量的平均值计算。若某个模型的平均推理 token 数无法获取或尚未计算,我们按 2k 个推理 token 估算。这些提示词长度各异,覆盖多个主题,包括个人相关问题、商业相关问题、编程、数学、科学等。提示词一部分由 Artificial Analysis 撰写,另一部分来自以下评测集:MMLU Pro、AIME 2025 和 LiveCodeBench。可在此处获取这些提示词。
技术细节
服务器位置: 我们的主要测试服务器是一台托管在 Google Cloud us-central1-a 可用区的虚拟机。
测试账户: 我们结合使用匿名账户、带有额度的账户以及专门为基准测试提供的 API 密钥来开展测试。当我们的主要基准测试并非通过匿名账户进行时,我们会另行注册一个匿名账户,并验证性能没有被人为操纵。
API 库: 对于所有声称兼容 OpenAI API 的服务商,我们使用 OpenAI 官方 Python 库,以确保各项测试之间的一致性。对于不兼容 OpenAI 的服务商,我们使用其推荐的客户端库。
API 参数: 我们在所有测试中使用以下 API 参数:
- 推理模型使用
temperature: 0.6;非推理模型使用temperature: 0,除非模型开发商另有说明。 top_p: 1
Token 计量: 我们有两种计量 token 的方法:
- 在性能基准测试中,我们以 OpenAI 的 tiktoken 库(
o200k_base)统计的 token 数为准。这样可以统一不同模型(使用不同分词器)之间的 token 计数,使相同的文本被表示为相同数量的 token。 - 而在 Artificial Analysis Intelligence Index 的评测中,我们改用各模型的 API 服务商所报告的 token 数量(包括缓存输入 token、推理 token 和输出 token),这让我们能够更准确地报告运行 Intelligence Index 的成本。在报告缓存命中率和成本时,我们会将这些数据与对各模型典型缓存命中率的实时测量结合起来,而不是依赖评测运行时的一次性测量。
输出速度计算: 对于不会在响应中暴露全部推理 token 的推理模型,我们使用答案分块的后 80% 来计算输出速度。这样可以确保测得的输出速度保持一致,并更贴近用户的实际体验。
已知局限
分词器效率与价格: 不同模型使用不同的分词器,这会导致表示相同文本所需的 token 数量存在差异。这意味着不同模型之间的价格并不总是可以直接比较。我们正在着手发布更多关于分词器效率及其对价格影响的细节。在此之前,我们已在 Twitter 上分享了一些经分词器效率调整后的初步价格分析。
量化: 部分模型使用量化技术来降低计算需求并提升速度。但量化也可能影响模型质量。我们正在推动对所测试模型使用的量化方法进行完全披露。
服务器位置与 TTFT: 首 Token 延迟(TTFT)对服务器位置很敏感,因为它包含网络延迟。我们的主要测试服务器位于 Google Cloud 的 us-central1-a 可用区,这可能会因各服务商服务器位置的不同而对其形成优势或劣势。我们正在考虑增加更多测试地点,以缓解这一影响。
版本历史
版本 2.2.0
2026 年 3 月 2 日
- 提示词更新:我们引入了一套升级后的提示词,内容更广泛、更多样,涵盖更多任务类型。这一点很重要,因为诸如推测解码之类的技术意味着,我们会看到输出速度随输出类型的不同而变化。
- 默认工作负载变更:本网站的默认速度现在反映的是 10k 输入 token 提示词的结果(此前为 1k),并且我们已弃用 100 输入 token 工作负载的性能测量。在所有页面上,通过选择“提示词选项”(Prompt Options)下拉菜单,仍可查看全部 1k、10k 和 100k 输入 token 工作负载。比较不同工作负载形态下输出速度的最简单方式,是使用“输出速度与输入 Token 数量”(Output Speed by Input Token Count)图表。
诚信条款
背景
Artificial Analysis 是一家独立的 AI 基准测试与洞察分析机构。我们的基准测试被数百万用户和众多机构广泛引用和参考。
我们致力于确保在 Artificial Analysis 上发布的所有数据都公正、透明,并能代表使用我们所覆盖模型和接入点的开发者与机构的典型体验。我们的推理基准测试数据被广泛用作在速度、延迟和质量等维度上比较推理服务商的参考标准。这些测量结果的价值,取决于它们能否反映普通开发者使用某服务商标准的、公开可用接入点时的体验。
这些条款将 Artificial Analysis 自开展推理性能基准测试以来一贯采取的做法正式确立下来。它们同等适用于在 Artificial Analysis 上发布 Serverless 接入点数据的所有推理服务商与平台(合称“服务商”),并确保每一家服务商都在同一公平基础上被衡量。
服务商要求
来自 Artificial Analysis 的流量,必须以任何普通开发者在使用该接入点时所获得的、相同的公开可用配置来提供服务。具体而言,服务商不得:
- 检测、指纹识别或以其他方式识别 Artificial Analysis 的流量(无论是通过账户、API 密钥、IP 地址、请求头、请求负载还是流量模式),并以不同于普通流量的方式为其提供服务。
- 将 Artificial Analysis 的流量路由到专用、预留或非公开的资源,包括独立硬件、容量池、优先级队列,或并非普遍可用的地理区域。
- 向 Artificial Analysis 提供与以相同名称公开宣传并普遍可用的内容不同的模型、量化方式、上下文长度或接入点配置。
- 以不能代表同一接入点上普通流量所获配置的批大小、并发度或负载配置来处理 Artificial Analysis 的流量(例如,以更小的批大小运行基准测试请求,以提高单次请求的速度)。
应要求,服务商必须确认为 Artificial Analysis 流量提供服务的模型版本、精度或量化方式以及上下文长度,并确认这些与标准的公开产品一致。服务商必须确保每一位知晓某接入点正在被 Artificial Analysis 测量的员工、承包商、顾问或关联方都遵守本政策。
属于标准公开产品、且所有开发者均可在同等条件下获得的性能特性(例如自动扩缩容、普遍可用的缓存,或任何客户都可使用的公开发布的分级方案),不构成违规,前提是这些特性并未被有选择地应用于 Artificial Analysis 的流量。
合规流程
Artificial Analysis 全权自主决定收录哪些接入点和服务商。对于不遵守这些条款的任何接入点或服务商,我们保留将其取消收录的权利,也保留出于任何原因拒绝、暂缓或移除任何收录的权利。
我们会对所测量的每一个接入点进行频繁的一致性检查。作为标准做法,我们会在使用 Artificial Analysis 主账户进行测量的同时,使用独立的测试账户进行测量,这些账户的创建和使用方式与普通开发者完全相同。当它们在相同请求负载和相同接入点上返回存在实质性差异的结果时,我们会先展开调查,然后再得出结论。
如果我们发现或有合理理由怀疑 Artificial Analysis 的流量被以不同于标准公开产品的方式提供服务,我们可能会:
- 暂缓发布、移除或延迟发布受影响的测量结果。
- 使用以标准方式公开创建的账户重新测量,并发布这些结果。
- 将该接入点或服务商从性能排行榜和收录列表中移除。
- 在所有排行榜中暂停该服务商。
- 公开披露某服务商向 Artificial Analysis 提供了不具代表性的性能。
通过向 Artificial Analysis 提交接入点,服务商即表示认可这些条款,以及我们共同维护基准测试诚信的承诺。Artificial Analysis 可随时更新本政策。
感谢您协助维护我们基准测试的诚信。如有任何疑问或顾虑,请联系我们的团队。