> ## Documentation Index
> Fetch the complete documentation index at: https://blog.pig4cloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenRouter：统一访问 400+ AI 模型的智能路由平台

> 深入了解 OpenRouter 如何通过统一 API 接口简化多模型访问，提供智能路由、负载均衡和成本优化，让开发者轻松集成各种大型语言模型

## 什么是 OpenRouter？

OpenRouter 是一个领先的 AI 模型 API 聚合平台，为开发者提供了一个统一的接口来访问超过 400 个 AI 模型。通过 OpenRouter，你可以使用单一的 API 端点调用 GPT-4、Claude、Google Gemini、Llama 等多种主流大型语言模型，而无需为每个模型单独集成不同的 SDK 或 API。

简单来说，OpenRouter 就像是 AI 模型的"路由器"，它帮你管理和调度不同的 AI 服务提供商，让你专注于应用开发本身。

## 核心功能

### 1. 统一 API 接口

OpenRouter 最大的优势就是提供了统一的 API 接口。无论你想使用 OpenAI 的 GPT-4、Anthropic 的 Claude，还是 Google 的 Gemini，都可以通过同一套 API 调用：

```javascript theme={null}
const response = await fetch('https://openrouter.ai/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${OPENROUTER_API_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    model: 'anthropic/claude-3.5-sonnet', // 可以轻松切换模型
    messages: [
      { role: 'user', content: 'Hello, how are you?' }
    ]
  })
});
```

### 2. 多模型支持

OpenRouter 支持多种类型的 AI 模型：

* **大型语言模型（LLM）**：GPT-4、Claude 3.5、Gemini、Llama 3、DeepSeek 等
* **开源模型**：Mistral、Qwen、Mixtral 等
* **专业模型**：代码生成、翻译、摘要等特定任务模型
* **图像生成模型**：DALL-E、Stable Diffusion 等

这种多样性让你可以根据不同场景选择最合适的模型，而不被单一供应商锁定。

### 3. 智能路由和负载均衡

OpenRouter 的核心价值之一是其智能路由能力：

* **自动故障转移**：当某个模型服务不可用时，自动切换到备用提供商
* **负载均衡**：在多个提供商之间分配请求，确保高可用性
* **成本优化**：根据价格、性能和可用性自动选择最优提供商
* **延迟优化**：选择响应最快的服务提供商

```javascript theme={null}
// 使用智能路由
{
  model: 'anthropic/claude-3.5-sonnet',
  route: 'fallback', // 启用故障转移
  provider: {
    order: ['anthropic', 'aws', 'google-ai'], // 优先级顺序
    allow_fallbacks: true
  }
}
```

### 4. 隐私保护

OpenRouter 非常重视用户隐私：

* **零日志模式**：可以选择不记录任何请求数据的提供商
* **数据政策透明**：每个模型都标明了其数据使用政策
* **自主选择**：用户可以根据隐私需求筛选合适的提供商

### 5. 高级功能

* **工具调用（Function Calling）**：支持 OpenAI 风格的函数调用
* **流式响应（Streaming）**：实时获取模型输出
* **多模态支持**：处理文本、图像、PDF 等多种输入
* **实时网络搜索**：部分模型支持联网搜索能力
* **提示词缓存**：减少重复提示词的处理成本

## 使用场景

### 1. 多模型对比测试

在开发 AI 应用时，经常需要对比不同模型的效果：

```python theme={null}
import openai

openai.api_base = "https://openrouter.ai/api/v1"
openai.api_key = "YOUR_OPENROUTER_KEY"

models = [
    "anthropic/claude-3.5-sonnet",
    "openai/gpt-4-turbo",
    "google/gemini-pro-1.5"
]

for model in models:
    response = openai.ChatCompletion.create(
        model=model,
        messages=[{"role": "user", "content": "写一个冒泡排序"}]
    )
    print(f"{model}: {response.choices[0].message.content}")
```

### 2. 成本优化

根据任务复杂度选择不同价格的模型：

```javascript theme={null}
// 简单任务使用便宜的模型
const simpleTask = {
  model: 'meta-llama/llama-3-8b-instruct', // 成本低
  messages: [{ role: 'user', content: '翻译：Hello' }]
};

// 复杂任务使用强大的模型
const complexTask = {
  model: 'anthropic/claude-3.5-sonnet', // 能力强
  messages: [{ role: 'user', content: '分析这份财报...' }]
};
```

### 3. 高可用应用

构建需要 99.9% 可用性的生产环境应用：

```javascript theme={null}
{
  model: 'openai/gpt-4',
  route: 'fallback',
  provider: {
    order: ['openai', 'azure', 'aws'],
    allow_fallbacks: true,
    require_parameters: true
  }
}
```

## 定价模式

OpenRouter 采用按使用付费的模式：

* **免费试用**：注册即获得约 1 美元的免费额度
* **按需付费**：根据实际使用的 tokens 数量计费
* **无订阅费**：不需要月费或年费
* **部分免费模型**：一些开源模型提供有限的免费访问

价格示例（截至 2025 年）：

* GPT-4 Turbo: \$0.01/1K tokens (输入)
* Claude 3.5 Sonnet: \$0.003/1K tokens (输入)
* Llama 3 8B: \$0.0001/1K tokens (输入)

## 快速开始

### 1. 注册并获取 API Key

访问 [OpenRouter 官网](https://openrouter.ai/) 注册账号，在控制台创建 API Key。

### 2. 安装 SDK（可选）

OpenRouter 兼容 OpenAI SDK：

```bash theme={null}
npm install openai
# 或
pip install openai
```

### 3. 发起第一个请求

```python theme={null}
from openai import OpenAI

client = OpenAI(
  base_url="https://openrouter.ai/api/v1",
  api_key="YOUR_OPENROUTER_API_KEY",
)

completion = client.chat.completions.create(
  model="anthropic/claude-3.5-sonnet",
  messages=[
    {
      "role": "user",
      "content": "介绍一下 OpenRouter"
    }
  ]
)

print(completion.choices[0].message.content)
```

### 4. Java 示例

```java theme={null}
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.ai.openai.OpenAiChatOptions;
import org.springframework.ai.openai.api.OpenAiApi;

// 配置 OpenRouter
OpenAiApi openAiApi = new OpenAiApi(
    "https://openrouter.ai/api/v1",
    "YOUR_OPENROUTER_API_KEY"
);

OpenAiChatModel chatModel = new OpenAiChatModel(
    openAiApi,
    OpenAiChatOptions.builder()
        .withModel("anthropic/claude-3.5-sonnet")
        .build()
);

String response = chatModel.call("你好，介绍一下 OpenRouter");
System.out.println(response);
```

## 统计和监控

OpenRouter 提供了详细的使用统计功能：

* **使用量追踪**：查看每个模型的调用次数和消费
* **成本分析**：实时了解 API 调用成本
* **性能监控**：追踪响应时间和成功率
* **市场趋势**：查看不同模型的受欢迎程度

## 与 Spring AI 集成

OpenRouter 可以轻松集成到 Spring AI 项目中：

```yaml theme={null}
# application.yml
spring:
  ai:
    openai:
      api-key: ${OPENROUTER_API_KEY}
      base-url: https://openrouter.ai/api/v1
      chat:
        options:
          model: anthropic/claude-3.5-sonnet
          temperature: 0.7
```

```java theme={null}
@Service
public class AiService {
    
    @Autowired
    private ChatModel chatModel;
    
    public String chat(String message) {
        return chatModel.call(message);
    }
    
    public Flux<String> streamChat(String message) {
        return chatModel.stream(message);
    }
}
```

## 优势总结

### ✅ 优点

1. **简化集成**：一个 API 访问 400+ 模型
2. **降低成本**：智能路由选择性价比最优方案
3. **提高可用性**：自动故障转移保证服务稳定
4. **灵活切换**：轻松对比和切换不同模型
5. **隐私保护**：透明的数据政策和零日志选项
6. **按需付费**：无订阅费，用多少付多少

### ⚠️ 注意事项

1. **额外延迟**：通过中间层可能增加少量延迟
2. **成本考虑**：某些模型可能比直接调用略贵
3. **功能限制**：部分模型的高级特性可能不完全支持
4. **依赖第三方**：增加了一层依赖关系

## 总结

OpenRouter 是现代 AI 应用开发的利器，特别适合以下场景：

* 需要对比多个 AI 模型的项目
* 追求高可用性的生产环境
* 希望降低模型切换成本的团队
* 需要隐私保护的企业应用

通过统一的接口、智能的路由和灵活的定价，OpenRouter 让 AI 模型的使用变得更加简单、可靠和经济。无论你是个人开发者还是企业团队，都值得尝试这个强大的 AI 聚合平台。

## 相关资源

* 官方网站：[https://openrouter.ai/](https://openrouter.ai/)
* API 文档：[https://openrouter.ai/docs](https://openrouter.ai/docs)
* 模型列表：[https://openrouter.ai/models](https://openrouter.ai/models)
* 价格对比：[https://openrouter.ai/models?o=top-weekly](https://openrouter.ai/models?o=top-weekly)

***

> 💡 提示：OpenRouter 与 OpenAI SDK 完全兼容，只需修改 base\_url 和 api\_key 即可快速迁移现有代码。
