OpenRouter 是一个统一的 API 平台,允许开发者通过单一接口访问数百种大型语言模型(LLMs),包括商业模型(如 OpenAI 的 GPT 系列、Anthropic 的 Claude、Google 的 Gemini)和开源模型(如 Meta 的 Llama、Mistral 等)。
快速开始使用 OpenRouter。
步骤 1:注册并获取 API 密钥
访问 openrouter.ai 并创建一个账户。
登录后,导航至 Keys 页面,创建一个 API 密钥。
命名你的密钥(例如 “bytenote”)。
可选择设置信用限制(Credit Limit),或留空以无限制。
购买或充值积分(Credits)以使用付费模型。
OpenRouter 提供少量初始免费积分,部分模型(如某些小型开源模型)完全免费。
步骤 2:配置环境
将API 密钥保存为环境变量,或者在项目中配置:
exportOPENROUTER_API_KEY="your-api-key-here"
或者在项目根目录创建一个 .env 文件:
OPENROUTER_API_KEY=your-api-key-here
OpenRouter 的 API 会自动加载 .env 文件中的变量。
步骤 3:发送 API 请求
OpenRouter 的 API 与 OpenAI 的 API 高度兼容,因此可以使用 OpenAI 的 SDK 或直接发送 HTTP 请求。
以下是一个简单的示例,使用 Python 的 openai 库:
fromopenaiimportOpenAI
client=OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="<YOUR_OPENROUTER_API_KEY>",
)
completion=client.chat.completions.create(
model="openai/gpt-3.5-turbo",#选择支持的模型
messages=[
{"role":"user","content":"Whatisthemeaningoflife?"}
],
extra_headers={
"HTTP-Referer":"<YOUR_SITE_URL>",#可选,用于OpenRouter排行榜
"X-Title":"<YOUR_SITE_NAME>",#可选,应用名称
}
)
print(completion.choices[0].message.content)注意:
替换 <YOUR_OPENROUTER_API_KEY> 为你的实际密钥。
模型名称需包含组织前缀,例如 openai/gpt-3.5-turbo 或 meta-llama/llama-3.1-8b-instruct。
查看支持的模型列表:
https://openrouter.ai/models
步骤 4:选择模型和优化
模型选择:OpenRouter 提供多种模型,部分免费(如 google/gemma-2-9b-it:free),部分按 token 计费。
可以通过 :free、:nitro(优化速度)或 :floor(优化成本)等动态变体调整行为。
智能路由:OpenRouter 默认根据成本和可用性自动选择最佳提供商。
可以通过 provider 参数自定义路由策略,例如:
"provider":{
"order":["Anthropic","Together"],
"allow_fallbacks":false,
"data_collection":"deny"#避免数据被用于训练这样可以指定优先使用的提供商并禁用数据收集。
}OpenRouter 现支持多模态请求(文本和图像)。
可以通过 /api/v1/chat/completions 端点发送图像(URL 或 base64 编码)。
示例:
{
"model":"mistralai/mixtral-8x7b-instruct",
"messages":[
{"role":"user","content":[
{"type":"text","text":"Describethisimage"},
{"type":"image_url","image_url":{"url":"https://example.com/image.jpg"}}
]}
]
}部分模型支持原生图像生成,需在请求中包含 modalities: ["image", "text"]。
模型和提供商路由
Auto Router:使用特殊模型 ID 自动选择最适合你提示的高质量模型,由 NotDiamond 提供支持。
Fallback 机制:如果主模型或提供商不可用,OpenRouter 会自动切换到备用模型或提供商,确保高可用性。
自定义路由:通过 models 或 provider 参数指定优先模型或提供商。
例如,优先使用低成本提供商:
{
"models":["mistralai/mixtral-8x7b-instruct","meta-llama/llama-3.1-8b-instruct"],
"route":"fallback"
}在 Codex CLI 中使用 OpenRouter
Codex CLI可以通过 --provider 标志配置 OpenRouter 作为模型提供商:
设置 OpenRouter 的 API 密钥:
exportOPENROUTER_API_KEY="your-api-key-here"
运行 Codex CLI 并指定 OpenRouter 模型:
codex--provideropenrouter"explainthiscodebasetome"
或者在 Codex 的配置文件(~/.codex/config.yaml)中指定:
providerpenrouter model:meta-llama/llama-3.1-8b-instruct
Codex CLI 支持 OpenRouter 的多模型访问,适合在终端中进行代码生成、文件操作等任务。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |