OpenRouter 入门与概览
OpenRouter 入门与概览
模型
3 分钟阅读
模型
一个 API,接入数百种模型
在 我们的网站 上浏览 400 多种模型和模型服务提供商,或 通过我们的 API 查询。你也可以订阅我们的 RSS feed,以跟踪新模型。
查询参数
模型 API 支持查询参数,用于筛选返回的模型列表。
output_modalities
按输出能力筛选模型。接受以逗号分隔的模态列表,或 "all" 以包含所有模型,无论输出类型如何。
| 值 | 说明 |
|---|---|
text | 生成文本输出的模型(默认) |
image | 生成图像的模型 |
audio | 生成音频输出的模型 |
embeddings | 嵌入模型 |
all | 包含所有模型,跳过模态筛选 |
示例:
同一参数也适用于 /v1/models/count 端点,使计数与列表结果保持一致。
supported_parameters
按模型支持的 API 参数筛选。例如,查找支持工具调用的模型:
sort
在返回前于服务端对模型排序。接受以下值之一:
| 值 | 说明 |
|---|---|
pricing-low-to-high | 最便宜的模型优先(提示词、补全、请求和 web_search 价格的加权平均) |
pricing-high-to-low | 最贵的模型优先 |
context-high-to-low | 最大上下文窗口优先 |
throughput-high-to-low | 最高 Token/秒优先(来自路由启发式的 p50 吞吐量) |
latency-low-to-high | 最低首 Token 时间优先(p50 延迟) |
most-popular | 过去一周处理的 Token 最多 |
top-weekly | 与 most-popular 相同 |
newest | 最近添加到 OpenRouter 的模型 |
在所请求的排序维度上没有数据的模型(例如没有定价、没有吞吐量启发式)会排在最后。省略 sort 会保留默认顺序(向后兼容)。
查询单个模型
无需获取完整列表,即可查询单个模型的全部详情:
该端点会自动解析别名。例如,anthropic/claude-3-5-sonnet 会重定向到规范的 anthropic/claude-3.5-sonnet 并返回其数据。
也支持变体后缀。在 slug 后追加 :free、:thinking 等:
如果模型不存在,也不是其他模型的别名,则返回 404。响应形态会包装列表端点中使用的同一 Model 对象:
模型 API 标准
我们的 模型 API 会在确认后,尽快免费提供所有大语言模型最重要的信息。
API 响应 Schema
模型 API 返回标准化的 JSON 响应格式,为每个可用模型提供全面的元数据。该 schema 缓存在边缘节点,专为与生产应用可靠集成而设计。
根响应对象
分页
列表端点支持可选的 offset 和 limit 查询参数。分页是可选的:两者都省略时,会返回完整列表,且 links.next 为 null。启用分页时,limit 默认为 500(最大 1000),links.next 包含下一页可直接使用的 URL(最后一页为 null):
Model 对象 Schema
data 数组中的每个模型包含以下标准化字段:
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | API 请求中使用的唯一模型标识符(例如 "google/gemini-2.5-pro-preview") |
canonical_slug | string | 永不更改的模型永久 slug |
name | string | 模型的人类可读显示名称 |
created | number | 模型添加到 OpenRouter 时的 Unix 时间戳 |
description | string | 模型能力与特征的详细描述 |
context_length | number | 最大上下文窗口大小(以 Token 计) |
architecture | Architecture | 描述模型技术能力的对象 |
pricing | Pricing | 该模型排名最前的服务提供商的定价 |
top_provider | TopProvider | 主要服务提供商的配置详情 |
per_request_limits | 速率限制信息(无限制时为 null) | |
supported_parameters | string[] | 该模型支持的 API 参数数组 |
default_parameters | object | null | 该模型的默认参数值(没有则为 null) |
expiration_date | string | null | 模型端点的弃用日期(未弃用则为 null) |
benchmarks | Benchmarks | undefined | 第三方基准测试排名(无数据时省略) |
Architecture 对象
Pricing 对象
所有定价值均为美元,按 Token / 请求 / 单位计。值为 "0" 表示该功能免费。
定价覆盖
某些端点会在特定条件下收取不同费率。例如,超过 Token 阈值后的长上下文定价,或高峰时段更贵的分时定价。这些会出现在可选的 pricing.overrides 数组中:
当某条目的所有条件字段都与请求匹配时,该条目生效。多个条目同时适用时,靠后的条目按键胜出。条目中缺失的价格键继承基础价格。顶层定价键始终反映默认条件下适用于请求的价格;overrides 承载有条件的例外。
例如,一个模型通常按每百万输入 Token $2.50 收费,超过 200K 提示词 Token 后按每百万 $5 收费:
时间窗口条件用于表达高峰 / 非高峰定价。overrides 数组始终列出每一个窗口(高峰和非高峰),铺满完整的 24 小时。这意味着无论响应是何时生成的,完整时间表都可以还原。例如,一个模型在 16:30 到 00:30 UTC 之间收取半价:
Top Provider 对象
Benchmarks 对象
仅出现在已参加第三方基准测试评估的模型上。目前包括 Design Arena 排名。
排名是在 OpenRouter 上架的模型之间计算的,而不是完整的外部排行榜。没有基准测试数据的模型会完全省略 benchmarks 字段。
支持的参数
supported_parameters 数组标明每个模型可用的 OpenAI 兼容参数:
tools- 函数调用能力tool_choice- 工具选择控制max_tokens- 限制响应长度temperature- 随机性控制top_p- 核采样reasoning- 内部推理模式include_reasoning- 在响应中包含推理过程structured_outputs- JSON schema 强制约束response_format- 输出格式规范stop- 自定义停止序列frequency_penalty- 降低重复presence_penalty- 主题多样性seed- 确定性输出
不同模型以不同方式对文本分词
有些模型会把文本拆成多个字符组成的块(GPT、Claude、
Llama 等),另一些则按字符分词(PaLM)。这意味着即使输入和
输出相同,Token 计数(以及因此产生的费用)也会因模型而异。费用按
所用模型的分词器显示和计费。你可以使用响应中的 usage 字段
获取输入和输出的 Token 计数。
如果你感兴趣的模型或服务提供商尚未出现在 OpenRouter 上,请在我们的 Discord 频道 告诉我们。
面向服务提供商
如果你有兴趣与 OpenRouter 合作,可以在我们的 服务提供商页面 了解更多。