快速开始
MeifuAI 提供与 OpenAI API 完全兼容的接口,您可以在不修改代码的情况下无缝切换。
Base URL
https://meifu.tech/v1
三步开始使用
1
注册并获取 API Key
前往 注册页面 创建账户,在控制台中生成您的 API Key。
2
配置 Base URL
将您的 API 客户端 Base URL 设置为 https://meifu.tech/v1
3
开始调用
使用与 OpenAI 完全相同的接口格式调用任何支持的模型。
认证方式
MeifuAI 使用 Bearer Token 进行认证。在请求头中添加 Authorization 字段即可。
请求头格式
HTTP Header
Authorization: Bearer sk-your-api-key-here
Curl 示例
bash
curl https://meifu.tech/v1/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [
{"role": "user", "content": "Hello!"}
]
}'
Chat 对话 API
与 OpenAI Chat Completions API 完全兼容,支持流式输出。
POST
/v1/chat/completions
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model |
string | 是 | 模型 ID,如 gpt-4o、claude-sonnet-4 |
messages |
array | 是 | 消息列表,每条包含 role 和 content |
temperature |
float | 否 | 生成温度,0-2 之间,默认 1 |
max_tokens |
integer | 否 | 最大生成 token 数 |
stream |
boolean | 否 | 是否启用流式输出,默认 false |
top_p |
float | 否 | 核采样参数,0-1 之间 |
请求示例
python
from openai import OpenAI
client = OpenAI(
api_key="sk-your-api-key",
base_url="https://meifu.tech/v1"
)
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
stream=True
)
for chunk in response:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
响应格式
json
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677858242,
"model": "gpt-4o",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 13,
"completion_tokens": 7,
"total_tokens": 20
}
}
图片生成 API
支持 GPT-Image-2、DALL-E 3 等图片生成模型。
POST
/v1/images/generations
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model |
string | 是 | gpt-image-2 或 dall-e-3 |
prompt |
string | 是 | 图片描述文本 |
n |
integer | 否 | 生成数量,默认 1 |
size |
string | 否 | 图片尺寸,如 1024x1024 |
请求示例
python
response = client.images.generate(
model="gpt-image-2",
prompt="A cute cat wearing a hat, digital art",
n=1,
size="1024x1024"
)
print(response.data[0].url)
模型列表
以下是当前支持的所有模型。调用时使用模型 ID 作为 model 参数值。
GET
/v1/models
支持的模型
| 模型 ID | 提供商 | 类型 | 上下文 |
|---|---|---|---|
gpt-4o | OpenAI | 对话 | 128K |
gpt-4o-mini | OpenAI | 对话 | 128K |
gpt-4-turbo | OpenAI | 对话 | 128K |
gpt-3.5-turbo | OpenAI | 对话 | 16K |
gpt-image-2 | OpenAI | 图片 | - |
dall-e-3 | OpenAI | 图片 | - |
claude-opus-4 | Anthropic | 对话 | 200K |
claude-sonnet-4 | Anthropic | 对话 | 200K |
claude-3.5-sonnet | Anthropic | 对话 | 200K |
claude-3-haiku | Anthropic | 对话 | 200K |
gemini-2.5-pro | 对话 | 1M | |
gemini-2.5-flash | 对话 | 1M | |
gemini-1.5-pro | 对话 | 1M | |
glm-4-plus | 智谱 | 对话 | 128K |
glm-4-flash | 智谱 | 对话 | 128K |
moonshot-v1-8k | 月之暗面 | 对话 | 8K |
moonshot-v1-128k | 月之暗面 | 对话 | 128K |
qwen-max | 通义千问 | 对话 | 32K |
qwen-plus | 通义千问 | 对话 | 128K |
abab6.5-chat | MiniMax | 对话 | 128K |
错误码
当请求失败时,API 会返回相应的 HTTP 状态码和错误信息。
| 状态码 | 类型 | 说明 |
|---|---|---|
400 |
Bad Request | 请求参数错误或格式不正确 |
401 |
Unauthorized | API Key 无效或已过期 |
403 |
Forbidden | 无权访问该模型或资源 |
429 |
Rate Limit | 请求频率超出限制,请稍后重试 |
500 |
Server Error | 服务端内部错误 |
502 |
Bad Gateway | 上游服务不可用 |
503 |
Unavailable | 服务暂时不可用 |
错误响应格式
json
{
"error": {
"message": "Invalid API key provided",
"type": "invalid_request_error",
"code": "invalid_api_key"
}
}
速率限制
为保证服务质量,API 请求受到速率限制。
速率限制
不同用户等级有不同的速率限制。如需提高限制,请联系客服。
| 限制类型 | 免费用户 | 付费用户 |
|---|---|---|
| RPM(每分钟请求数) | 20 | 60 |
| TPM(每分钟 Token 数) | 40,000 | 200,000 |
| 并发请求数 | 2 | 10 |
响应头
每个响应都包含速率限制相关的头部信息:
HTTP Headers
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1677858300
SDK & 示例
MeifuAI 兼容 OpenAI SDK,直接替换 base_url 即可使用。
Python
bash
pip install openai
python
from openai import OpenAI
client = OpenAI(
api_key="sk-your-api-key",
base_url="https://meifu.tech/v1"
)
# 同步调用
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "你好"}]
)
print(response.choices[0].message.content)
# 流式调用
stream = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "你好"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
Node.js
bash
npm install openai
javascript
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'sk-your-api-key',
baseURL: 'https://meifu.tech/v1',
});
async function main() {
const stream = await client.chat.completions.create({
model: 'gpt-4o',
messages: [{ role: 'user', content: '你好' }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content || '');
}
}
main();
cURL
bash
curl https://meifu.tech/v1/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "Hello!"}],
"stream": true
}'