主流大模型API协议和标准详解
随着大语言模型(LLM)的快速发展,各类AI服务提供商和开源项目涌现,它们各自实现了不同的API协议。了解这些协议对于开发者接入AI能力至关重要。本文将详细介绍当前主流的大模型API协议和标准。
1. OpenAI 兼容协议
OpenAI 作为大模型领域的先行者,其API设计已成为事实上的行业标准。大多数开源推理服务和云厂商都提供了OpenAI兼容的API。
核心端点
POST https://api.openai.com/v1/chat/completions # 聊天补全
POST https://api.openai.com/v1/completions # 文本补全
POST https://api.openai.com/v1/embeddings # 向量嵌入请求示例
{
"model": "gpt-4",
"messages": [
{"role": "user", "content": "你好,请介绍一下自己"}
],
"temperature": 0.7,
"stream": false
}响应格式
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"created": 1234567890,
"model": "gpt-4",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!我是..."
},
"finish_reason": "stop"
}]
}兼容服务
以下开源项目和云服务都支持OpenAI兼容协议:
- vLLM - 高性能推理框架
- Ollama - 本地大模型运行工具
- Text Generation WebUI - 图形化推理界面
- SiliconFlow - 国内AI云服务
- OpenRouter - 聚合多模型API
2. Anthropic Claude API
An Anthropic推出的Claude模型使用了独特的API设计,特别强调安全性和可控性。
核心特点
- 使用
messages端点而非completions - 支持
system角色用于系统提示词 - 引入
max_tokens限制输出长度 - 提供
stop_sequences参数控制输出
请求示例
{
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "请介绍一下大模型API协议"
}
]
}3. Google Gemini API
Google的Gemini模型通过Gemini API提供服务,支持多模态输入。
核心端点
POST https://generativelanguage.googleapis.com/v1/models/{model}:generateContent特点
- 原生支持多模态(文本、图像、视频)
- 使用
contents而非messages - 支持
generationConfig精细控制
4. Azure OpenAI API
微软Azure提供的OpenAI服务,在OpenAI官方API基础上增加了企业级特性。
核心端点
POST https://{resource}.openai.azure.com/openai/deployments/{deployment}/chat/completions?api-version=2024-02-15-preview特点
- 需要API密钥和资源端点
- 支持Azure AD认证
- 提供内容安全审核
- 符合企业合规要求
5. 本地部署方案
Ollama
Ollama让本地运行大模型变得简单,默认兼容OpenAI API:
# 启动服务
ollama serve
# API调用
curl http://localhost:11434/v1/chat/completions \
-d '{
"model": "llama2",
"messages": [{"role": "user", "content": "Hello"}]
}'vLLM
vLLM是高性能的推理服务,支持PagedAttention技术。
# 启动服务
vllm serve Q/Qwen2.5-7B-Instruct
# API调用
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Q/Qwen2.5-7B-Instruct",
"messages": [{"role": "user", "content": "你好"}]
}'6. 流式响应 (Server-Sent Events)
大多数API都支持流式输出,通过 stream: true 参数启用:
{
"model": "gpt-4",
"messages": [{"role": "user", "content": "写一个故事"}],
"stream": true
}响应采用SSE格式:
data: {"choices":[{"delta":{"content":"从"},"index":0}]}
data: {"choices":[{"delta":{"content":"前"},"index":0}]}
data: [DONE]7. 如何选择?
| 场景 | 推荐方案 |
|---|---|
| 快速原型 | OpenAI官方API |
| 国内访问 | SiliconFlow、OpenRouter |
| 企业级应用 | Azure OpenAI |
| 隐私敏感 | Ollama本地部署 |
| 高并发生产 | vLLM |
总结
大模型API虽然各有特色,但OpenAI兼容协议已成为行业事实标准。掌握这一协议可以轻松对接各种AI服务。根据实际需求(性能、成本、隐私、合规)选择合适的方案即可。
希望这篇文章能帮助你更好地理解大模型API协议。如果有任何问题,欢迎留言讨论!
评论区: