📘 完整调用教程
基于 api.aifast.top 中转站
文档版本: 2.0 | 最后更新: 2026年3月13日
完整调用教程
基于 api.aifast.top 中转站
文档版本: 2.0 | 最后更新: 2026年3月
📖 概述
New API 是新一代AI基础平台与大模型网关系统,提供统一的API接口来访问多种AI模型服务。
🌐 API 基础地址: https://api.aifast.top
✨ 支持的功能:
- 💬 聊天对话(支持多模态:文本、图片、音频、视频)
- 🎨 AI图像生成与编辑
- 🎬 AI视频生成
- 🔊 音频转录、翻译和语音合成
- 📊 文本嵌入向量
🔌 支持的API格式:
- ✅ OpenAI 格式 - 兼容 GPT 系列及所有 OpenAI SDK
- ✅ Claude 格式 - Anthropic Messages API
- ✅ Gemini 格式 - Google AI 原生格式
📋 基础信息:
- 请求格式:JSON
- 响应格式:JSON
- 字符编码:UTF-8
- 认证方式:Bearer Token
📑 目录
� [认证方式](#认证方式)
📚 API 接口文档
1️⃣ [OpenAI 格式 API](#openai-格式-api)
- 1.1 聊天补全 (Chat Completions)
- 基础对话
- 多模态对话(图片)
- 流式响应
- 1.2 图像生成 (Images)
- 文本生成图像
- 图像编辑
- 图像变体
- 1.3 音频处理 (Audio)
- 音频转录 (Transcriptions)
- 音频翻译 (Translations)
- 文本转语音 (Text-to-Speech)
- 1.4 文本嵌入 (Embeddings)
- 1.5 模型列表 (Models)
2️⃣ [Claude 格式 API](#claude-格式-api)
3️⃣ [Gemini 格式 API](#gemini-格式-api)
4️⃣ [视频生成 API](#视频生成-api)
💻 [代码示例](#代码示例)
- Python 示例
- OpenAI 格式对话
- 流式对话
- Claude 格式对话
- 图像生成
- 视频生成(含轮询)
- JavaScript/Node.js 示例
- OpenAI 格式对话
- Claude 格式对话
- 流式对话
- cURL 示例集合
📊 [响应状态码](#响应状态码)
❓ [常见问题 FAQ](#常见问题-faq)
认证方式
所有API请求都需要在HTTP请求头中携带认证信息:
Authorization: Bearer YOUR_API_TOKEN
示例:
curl https://api.aifast.top/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
注意事项:
- 请妥善保管您的API Token
- 不要在客户端代码中硬编码Token
- 建议使用环境变量存储Token
- 定期轮换Token以提高安全性
OpenAI 格式 API
OpenAI 格式 API 完全兼容 OpenAI 官方接口,可以直接使用 OpenAI SDK 和客户端库。
1.1 聊天补全 (Chat Completions)
接口地址: POST https://api.aifast.top/v1/chat/completions
功能说明: 发送对话消息,获取AI模型的回复,支持多模态输入(文本、图片)
请求参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ✅ | - | 模型名称,如 gpt-4, gpt-3.5-turbo |
| messages | array | ✅ | - | 对话消息列表 |
| temperature | float | ❌ | 1.0 | 生成温度,范围 0-2 |
| max_tokens | integer | ❌ | - | 最大生成token数 |
| stream | boolean | ❌ | false | 是否流式返回 |
| top_p | float | ❌ | 1.0 | 核采样参数,范围 0-1 |
| frequency_penalty | float | ❌ | 0 | 频率惩罚,范围 -2.0 到 2.0 |
| presence_penalty | float | ❌ | 0 | 存在惩罚,范围 -2.0 到 2.0 |
| tools | array | ❌ | - | 可用的工具列表 |
| tool_choice | string/object | ❌ | auto | 工具选择策略 |
| response_format | object | ❌ | - | 响应格式,如 {"type": "json_object"} |
messages 结构
{
"role": "user", // 角色:system/user/assistant
"content": "你好" // 消息内容
}
基础对话
请求示例:
curl https://api.aifast.top/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "你是一个有帮助的助手。"
},
{
"role": "user",
"content": "什么是人工智能?"
}
],
"temperature": 0.7,
"max_tokens": 1000
}'
响应示例:
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-3.5-turbo",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "人工智能(AI)是计算机科学的一个分支..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 50,
"total_tokens": 70
}
}
多模态对话(图片)
请求示例:
curl https://api.aifast.top/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4-vision-preview",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "这张图片里有什么?"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/image.jpg",
"detail": "high"
}
}
]
}
]
}'
支持的图片格式:
- 图片URL(需要公开可访问)
- Base64编码的图片数据
- 支持格式:JPEG, PNG, GIF, WebP
流式响应
设置 stream: true 可以获得流式响应,适合实时对话场景。
请求示例:
curl https://api.aifast.top/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "讲个笑话"}],
"stream": true
}'
流式返回格式(Server-Sent Events):
data: {"id":"chatcmpl-123","object":"chat.completion.chunk","created":1677652288,"model":"gpt-3.5-turbo","choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null}]}
data: {"id":"chatcmpl-123","object":"chat.completion.chunk","created":1677652288,"model":"gpt-3.5-turbo","choices":[{"index":0,"delta":{"content":"为"},"finish_reason":null}]}
data: {"id":"chatcmpl-123","object":"chat.completion.chunk","created":1677652288,"model":"gpt-3.5-turbo","choices":[{"index":0,"delta":{"content":"什么"},"finish_reason":null}]}
data: [DONE]
1.2 图像生成 (Images)
文本生成图像
接口地址: POST https://api.aifast.top/v1/images/generations
功能说明: 根据文本提示生成图像
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ❌ | dall-e-2 | 模型名称:dall-e-2, dall-e-3 |
| prompt | string | ✅ | - | 图像描述文本(最多4000字符) |
| n | integer | ❌ | 1 | 生成图片数量(1-10) |
| size | string | ❌ | 1024x1024 | 图片尺寸 |
| quality | string | ❌ | standard | 图片质量:standard, hd |
| response_format | string | ❌ | url | 返回格式:url, b64_json |
| style | string | ❌ | vivid | 图片风格:vivid, natural |
支持的尺寸:
- DALL-E-2:
256x256,512x512,1024x1024 - DALL-E-3:
1024x1024,1792x1024,1024x1792
请求示例:
curl https://api.aifast.top/v1/images/generations \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "dall-e-3",
"prompt": "一只戴着墨镜的猫在海滩上冲浪,数字艺术风格",
"n": 1,
"size": "1024x1024",
"quality": "hd",
"style": "vivid"
}'
响应示例:
{
"created": 1677652288,
"data": [
{
"url": "https://example.com/generated-image.png",
"revised_prompt": "A cat wearing sunglasses surfing on a beach, digital art style..."
}
]
}
图像编辑
接口地址: POST https://api.aifast.top/v1/images/edits
功能说明: 编辑现有图像
请求参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| image | file | ✅ | 要编辑的图像文件(PNG格式,<4MB) |
| mask | file | ❌ | 遮罩图像(PNG格式,透明区域将被编辑) |
| prompt | string | ✅ | 编辑描述 |
| n | integer | ❌ | 生成数量 |
| size | string | ❌ | 输出尺寸 |
请求示例:
curl https://api.aifast.top/v1/images/edits \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F image="@original.png" \
-F mask="@mask.png" \
-F prompt="添加一个太阳镜" \
-F n=1 \
-F size="1024x1024"
图像变体
接口地址: POST https://api.aifast.top/v1/images/variations
功能说明: 创建图像的变体版本
请求示例:
curl https://api.aifast.top/v1/images/variations \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F image="@original.png" \
-F n=2 \
-F size="1024x1024"
1.3 音频处理 (Audio)
音频转录 (Transcriptions)
接口地址: POST https://api.aifast.top/v1/audio/transcriptions
功能说明: 将音频文件转录为文本
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| file | file | ✅ | - | 音频文件(<25MB) |
| model | string | ✅ | - | 模型名称,如 whisper-1 |
| language | string | ❌ | - | ISO-639-1 语言代码(如 zh, en) |
| prompt | string | ❌ | - | 可选的文本提示,用于引导模型 |
| response_format | string | ❌ | json | 响应格式 |
| temperature | number | ❌ | 0 | 采样温度(0-1) |
| timestamp_granularities | array | ❌ | - | 时间戳粒度:segment, word |
支持的音频格式:
- mp3, mp4, mpeg, mpga, m4a, wav, webm
响应格式选项:
json- JSON格式(默认)text- 纯文本srt- SRT字幕格式verbose_json- 详细JSON(包含时间戳)vtt- WebVTT字幕格式
请求示例:
curl https://api.aifast.top/v1/audio/transcriptions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F file="@audio.mp3" \
-F model="whisper-1" \
-F language="zh" \
-F response_format="json"
响应示例:
{
"text": "这是转录的文本内容"
}
详细响应示例(verbose_json):
{
"task": "transcribe",
"language": "chinese",
"duration": 8.47,
"text": "这是转录的文本内容",
"segments": [
{
"id": 0,
"seek": 0,
"start": 0.0,
"end": 4.0,
"text": "这是转录的",
"tokens": [50364, 1234, 5678],
"temperature": 0.0,
"avg_logprob": -0.3,
"compression_ratio": 1.5,
"no_speech_prob": 0.01
}
]
}
音频翻译 (Translations)
接口地址: POST https://api.aifast.top/v1/audio/translations
功能说明: 将任何语言的音频翻译为英文文本
请求参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | file | ✅ | 音频文件(<25MB) |
| model | string | ✅ | 模型名称,如 whisper-1 |
| prompt | string | ❌ | 可选的文本提示 |
| response_format | string | ❌ | 响应格式(同转录) |
| temperature | number | ❌ | 采样温度(0-1) |
请求示例:
curl https://api.aifast.top/v1/audio/translations \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F file="@german_audio.mp3" \
-F model="whisper-1"
响应示例:
{
"text": "This is the translated English text"
}
文本转语音 (Text-to-Speech)
接口地址: POST https://api.aifast.top/v1/audio/speech
功能说明: 将文本转换为语音
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ✅ | - | 模型:tts-1, tts-1-hd |
| input | string | ✅ | - | 要转换的文本(最多4096字符) |
| voice | string | ✅ | - | 语音选项 |
| response_format | string | ❌ | mp3 | 音频格式 |
| speed | number | ❌ | 1.0 | 播放速度(0.25-4.0) |
可用语音选项:
alloy- 中性、平衡echo- 男性、清晰fable- 英式、戏剧化onyx- 男性、深沉nova- 女性、活泼shimmer- 女性、温和
音频格式选项:
mp3- MP3格式(默认)opus- Opus格式(低延迟)aac- AAC格式flac- FLAC格式(无损)wav- WAV格式(无压缩)pcm- PCM格式(原始音频)
请求示例:
curl https://api.aifast.top/v1/audio/speech \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "tts-1",
"input": "你好,世界!欢迎使用AI语音合成服务。",
"voice": "alloy",
"speed": 1.0
}' \
--output speech.mp3
1.4 文本嵌入 (Embeddings)
接口地址: POST https://api.aifast.top/v1/embeddings
功能说明: 将文本转换为向量嵌入,用于语义搜索、聚类、推荐等场景
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ✅ | - | 模型名称 |
| input | string/array | ✅ | - | 要嵌入的文本或文本数组 |
| encoding_format | string | ❌ | float | 编码格式:float, base64 |
| dimensions | integer | ❌ | - | 输出向量维度(仅部分模型支持) |
| user | string | ❌ | - | 用户标识符 |
可用模型:
text-embedding-ada-002- 1536维,性价比高text-embedding-3-small- 512/1536维,更快更便宜text-embedding-3-large- 256/1024/3072维,最高质量
请求示例(单个文本):
curl https://api.aifast.top/v1/embeddings \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "text-embedding-ada-002",
"input": "这是一段需要嵌入的文本"
}'
请求示例(多个文本):
curl https://api.aifast.top/v1/embeddings \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "text-embedding-3-small",
"input": ["文本1", "文本2", "文本3"],
"encoding_format": "float"
}'
响应示例:
{
"object": "list",
"data": [
{
"object": "embedding",
"index": 0,
"embedding": [
0.0023064255,
-0.009327292,
0.015797347,
...
]
}
],
"model": "text-embedding-ada-002",
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
1.5 模型列表 (Models)
接口地址: GET https://api.aifast.top/v1/models
功能说明: 获取可用的模型列表
请求示例:
curl https://api.aifast.top/v1/models \
-H "Authorization: Bearer YOUR_API_TOKEN"
响应示例:
{
"object": "list",
"data": [
{
"id": "gpt-4",
"object": "model",
"created": 1677610602,
"owned_by": "openai"
},
{
"id": "gpt-3.5-turbo",
"object": "model",
"created": 1677649963,
"owned_by": "openai"
},
{
"id": "claude-3-opus-20240229",
"object": "model",
"created": 1677649963,
"owned_by": "anthropic"
}
]
}
获取单个模型信息:
接口地址: GET https://api.aifast.top/v1/models/{model}
curl https://api.aifast.top/v1/models/gpt-4 \
-H "Authorization: Bearer YOUR_API_TOKEN"
Claude 格式 API
Claude 格式 API 使用 Anthropic 原生的 Messages API 格式,提供更精细的控制和更好的性能。
2.1 消息对话 (Messages)
接口地址: POST https://api.aifast.top/v1/messages
功能说明: 使用 Claude 原生格式进行对话
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ✅ | - | 模型名称 |
| messages | array | ✅ | - | 对话消息列表 |
| max_tokens | integer | ✅ | - | 最大生成token数(必填) |
| system | string | ❌ | - | 系统提示词 |
| temperature | float | ❌ | 1.0 | 生成温度(0-1) |
| top_p | float | ❌ | - | 核采样参数 |
| top_k | integer | ❌ | - | Top-K采样参数 |
| stream | boolean | ❌ | false | 是否流式返回 |
| stop_sequences | array | ❌ | - | 停止序列 |
| metadata | object | ❌ | - | 元数据 |
可用模型:
claude-3-opus-20240229- 最强大的模型claude-3-sonnet-20240229- 平衡性能和成本claude-3-haiku-20240307- 快速响应,成本低claude-3-5-sonnet-20240620- 最新版本
必需的请求头:
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json
anthropic-version: 2023-06-01
Claude 基础对话
请求示例:
curl https://api.aifast.top/v1/messages \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"system": "你是一个有帮助的AI助手,擅长解答各类问题。",
"messages": [
{
"role": "user",
"content": "你好,Claude!请介绍一下你自己。"
}
]
}'
响应示例:
{
"id": "msg_01XFDUDYJgAACzvnptvVoYEL",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "你好!我是Claude,一个由Anthropic开发的AI助手..."
}
],
"model": "claude-3-opus-20240229",
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 25,
"output_tokens": 45
}
}
Claude 多模态对话
Claude 支持图片输入,可以分析和理解图像内容。
请求示例(图片URL):
curl https://api.aifast.top/v1/messages \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "url",
"url": "https://example.com/image.jpg"
}
},
{
"type": "text",
"text": "请详细描述这张图片的内容。"
}
]
}
]
}'
请求示例(Base64图片):
curl https://api.aifast.top/v1/messages \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/jpeg",
"data": "/9j/4AAQSkZJRg..."
}
},
{
"type": "text",
"text": "这张图片里有什么?"
}
]
}
]
}'
支持的图片格式:
- JPEG (
image/jpeg) - PNG (
image/png) - GIF (
image/gif) - WebP (
image/webp)
图片大小限制:
- 最大文件大小:5MB(Base64编码前)
- 最大尺寸:无限制,但会自动缩放
Claude 流式响应
请求示例:
curl https://api.aifast.top/v1/messages \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"stream": true,
"messages": [
{
"role": "user",
"content": "写一首关于春天的诗"
}
]
}'
流式响应格式:
event: message_start
data: {"type":"message_start","message":{"id":"msg_01...","type":"message","role":"assistant","content":[],"model":"claude-3-opus-20240229","stop_reason":null,"usage":{"input_tokens":15,"output_tokens":0}}}
event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"春"}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"风"}}
event: content_block_stop
data: {"type":"content_block_stop","index":0}
event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":50}}
event: message_stop
data: {"type":"message_stop"}
Gemini 格式 API
Gemini 格式 API 使用 Google AI 原生格式,支持多模态输入和长上下文。
3.1 内容生成 (Generate Content)
接口地址: POST https://api.aifast.top/v1/models/{model}:generateContent
功能说明: 使用 Gemini 原生格式生成内容
请求参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| contents | array | ✅ | 内容列表 |
| generationConfig | object | ❌ | 生成配置 |
| safetySettings | array | ❌ | 安全设置 |
| tools | array | ❌ | 工具列表 |
可用模型:
gemini-pro- 文本生成gemini-pro-vision- 多模态(文本+图片)gemini-1.5-pro- 长上下文(最多100万token)gemini-1.5-flash- 快速响应
Gemini 文本生成
请求示例:
curl https://api.aifast.top/v1/models/gemini-pro:generateContent \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [
{
"text": "解释一下什么是人工智能,并举例说明其应用场景"
}
]
}
],
"generationConfig": {
"temperature": 0.7,
"topK": 40,
"topP": 0.95,
"maxOutputTokens": 1000,
"stopSequences": []
}
}'
响应示例:
{
"candidates": [
{
"content": {
"parts": [
{
"text": "人工智能(AI)是计算机科学的一个分支..."
}
],
"role": "model"
},
"finishReason": "STOP",
"index": 0,
"safetyRatings": [
{
"category": "HARM_CATEGORY_HARASSMENT",
"probability": "NEGLIGIBLE"
}
]
}
],
"promptFeedback": {
"safetyRatings": [
{
"category": "HARM_CATEGORY_HARASSMENT",
"probability": "NEGLIGIBLE"
}
]
},
"usageMetadata": {
"promptTokenCount": 15,
"candidatesTokenCount": 120,
"totalTokenCount": 135
}
}
Gemini 多模态生成
请求示例(图片URL):
curl https://api.aifast.top/v1/models/gemini-pro-vision:generateContent \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [
{
"text": "描述这张图片的内容"
},
{
"fileData": {
"mimeType": "image/jpeg",
"fileUri": "https://example.com/image.jpg"
}
}
]
}
]
}'
请求示例(Base64图片):
curl https://api.aifast.top/v1/models/gemini-pro-vision:generateContent \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [
{
"text": "这张图片里有什么?"
},
{
"inline_data": {
"mime_type": "image/jpeg",
"data": "/9j/4AAQSkZJRg..."
}
}
]
}
]
}'
Gemini 流式生成
接口地址: POST https://api.aifast.top/v1/models/{model}:streamGenerateContent
请求示例:
curl https://api.aifast.top/v1/models/gemini-pro:streamGenerateContent \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [
{
"text": "写一篇关于人工智能的短文"
}
]
}
]
}'
流式响应格式:
{"candidates":[{"content":{"parts":[{"text":"人工"}],"role":"model"},"finishReason":"STOP","index":0}]}
{"candidates":[{"content":{"parts":[{"text":"智能"}],"role":"model"},"finishReason":"STOP","index":0}]}
视频生成 API
视频生成是异步任务,需要先提交任务,然后轮询查询状态,最后下载结果。
4.1 提交视频生成任务
接口地址: POST https://api.aifast.top/v1/videos
功能说明: 根据文本或图片生成视频
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | ❌ | - | 模型名称:kling-v1, runway-gen3 |
| prompt | string | ✅ | - | 视频描述文本 |
| image | string | ❌ | - | 图片URL或Base64(图生视频) |
| duration | float | ❌ | 5.0 | 视频时长(秒) |
| width | integer | ❌ | 1280 | 视频宽度 |
| height | integer | ❌ | 720 | 视频高度 |
| fps | integer | ❌ | 30 | 帧率 |
| seed | integer | ❌ | - | 随机种子(用于复现) |
| n | integer | ❌ | 1 | 生成视频数量 |
| response_format | string | ❌ | url | 响应格式:url |
| metadata | object | ❌ | - | 供应商特定参数 |
请求示例(文本生成视频):
curl https://api.aifast.top/v1/videos \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v1",
"prompt": "一名宇航员在月球表面漫步,地球在背景中缓缓升起,画面唯美震撼",
"duration": 5.0,
"width": 1280,
"height": 720,
"fps": 30
}'
请求示例(图片生成视频):
curl https://api.aifast.top/v1/videos \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v1",
"prompt": "让图片中的人物动起来,自然流畅",
"image": "https://example.com/image.jpg",
"duration": 5.0
}'
响应示例:
{
"task_id": "abcd1234efgh5678",
"status": "queued",
"created_at": 1677652288
}
4.2 查询任务状态
接口地址: GET https://api.aifast.top/v1/videos/{task_id}
功能说明: 查询视频生成任务的状态和进度
请求示例:
curl https://api.aifast.top/v1/videos/abcd1234efgh5678 \
-H "Authorization: Bearer YOUR_API_TOKEN"
任务状态说明:
| 状态 | 说明 |
|---|---|
queued |
任务排队中 |
in_progress |
任务执行中 |
completed |
任务已完成 |
failed |
任务失败 |
响应示例(进行中):
{
"id": "abcd1234efgh5678",
"object": "video",
"model": "kling-v1",
"status": "in_progress",
"progress": 65,
"created_at": 1677652288,
"metadata": {
"duration": 5.0,
"fps": 30,
"width": 1280,
"height": 720
}
}
响应示例(已完成):
{
"id": "abcd1234efgh5678",
"object": "video",
"model": "kling-v1",
"status": "completed",
"progress": 100,
"created_at": 1677652288,
"completed_at": 1677652688,
"result_url": "https://example.com/videos/result.mp4",
"metadata": {
"duration": 5.0,
"fps": 30,
"width": 1280,
"height": 720,
"file_size": 15728640
}
}
响应示例(失败):
{
"id": "abcd1234efgh5678",
"object": "video",
"model": "kling-v1",
"status": "failed",
"created_at": 1677652288,
"failed_at": 1677652488,
"error": {
"message": "视频生成失败:内容违反安全策略",
"type": "content_policy_violation",
"code": "unsafe_content"
}
}
4.3 下载视频内容
接口地址: GET https://api.aifast.top/v1/videos/{task_id}/content
功能说明: 下载生成的视频文件
请求示例:
curl https://api.aifast.top/v1/videos/abcd1234efgh5678/content \
-H "Authorization: Bearer YOUR_API_TOKEN" \
--output video.mp4
注意事项:
- 视频文件通常较大,下载可能需要一些时间
- 建议使用支持断点续传的下载工具
- 视频文件可能有过期时间,请及时下载
代码示例
Python 示例
Python OpenAI 格式对话
import requests
API_BASE = "https://api.aifast.top"
API_TOKEN = "YOUR_API_TOKEN"
def chat_completion():
"""OpenAI 格式聊天对话"""
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
response = requests.post(
f"{API_BASE}/v1/chat/completions",
headers=headers,
json={
"model": "gpt-3.5-turbo",
"messages": [
{"role": "system", "content": "你是一个有帮助的助手。"},
{"role": "user", "content": "什么是人工智能?"}
],
"temperature": 0.7,
"max_tokens": 1000
}
)
if response.status_code == 200:
result = response.json()
print(result["choices"][0]["message"]["content"])
else:
print(f"Error: {response.status_code}, {response.text}")
if __name__ == "__main__":
chat_completion()
Python 流式对话
import requests
import json
API_BASE = "https://api.aifast.top"
API_TOKEN = "YOUR_API_TOKEN"
def stream_chat():
"""流式对话示例"""
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
response = requests.post(
f"{API_BASE}/v1/chat/completions",
headers=headers,
json={
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "讲个笑话"}],
"stream": True
},
stream=True
)
print("AI: ", end="", flush=True)
for line in response.iter_lines():
if line:
line = line.decode('utf-8')
if line.startswith('data: '):
data = line[6:]
if data == '[DONE]':
print() # 换行
break
try:
chunk = json.loads(data)
content = chunk['choices'][0]['delta'].get('content', '')
if content:
print(content, end='', flush=True)
except json.JSONDecodeError:
pass
if __name__ == "__main__":
stream_chat()
Python Claude 格式对话
import requests
API_BASE = "https://api.aifast.top"
API_TOKEN = "YOUR_API_TOKEN"
def claude_message():
"""Claude 格式对话"""
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json",
"anthropic-version": "2023-06-01"
}
response = requests.post(
f"{API_BASE}/v1/messages",
headers=headers,
json={
"model": "claude-3-opus-20240229",
"max_tokens": 1024,
"system": "你是一个有帮助的AI助手。",
"messages": [
{"role": "user", "content": "你好,Claude!"}
]
}
)
if response.status_code == 200:
result = response.json()
print(result["content"][0]["text"])
else:
print(f"Error: {response.status_code}, {response.text}")
if __name__ == "__main__":
claude_message()
Python 图像生成
import requests
API_BASE = "https://api.aifast.top"
API_TOKEN = "YOUR_API_TOKEN"
def generate_image():
"""图像生成示例"""
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
response = requests.post(
f"{API_BASE}/v1/images/generations",
headers=headers,
json={
"model": "dall-e-3",
"prompt": "一只戴着墨镜的猫在海滩上冲浪,数字艺术风格",
"n": 1,
"size": "1024x1024",
"quality": "hd"
}
)
if response.status_code == 200:
result = response.json()
image_url = result["data"][0]["url"]
print(f"图片URL: {image_url}")
# 可选:下载图片
img_response = requests.get(image_url)
with open("generated_image.png", "wb") as f:
f.write(img_response.content)
print("图片已保存到 generated_image.png")
else:
print(f"Error: {response.status_code}, {response.text}")
if __name__ == "__main__":
generate_image()
Python 视频生成(含轮询)
import requests
import time
API_BASE = "https://api.aifast.top"
API_TOKEN = "YOUR_API_TOKEN"
def generate_video():
"""视频生成示例(含轮询和下载)"""
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
# 1. 提交视频生成任务
print("正在提交视频生成任务...")
response = requests.post(
f"{API_BASE}/v1/videos",
headers=headers,
json={
"model": "kling-v1",
"prompt": "一只可爱的小猫在玩毛线球,画面温馨可爱",
"duration": 5.0,
"width": 1280,
"height": 720
}
)
if response.status_code != 200:
print(f"提交失败: {response.status_code}, {response.text}")
return
task_id = response.json()["task_id"]
print(f"任务已提交,ID: {task_id}")
# 2. 轮询任务状态
print("正在生成视频,请稍候...")
while True:
response = requests.get(
f"{API_BASE}/v1/videos/{task_id}",
headers=headers
)
if response.status_code != 200:
print(f"查询失败: {response.status_code}, {response.text}")
break
data = response.json()
status = data["status"]
progress = data.get("progress", 0)
print(f"任务状态: {status}, 进度: {progress}%")
if status == "completed":
print("✅ 任务完成!")
break
elif status == "failed":
error_msg = data.get("error", {}).get("message", "未知错误")
print(f"❌ 任务失败: {error_msg}")
return
time.sleep(3) # 每3秒查询一次
# 3. 下载视频
print("正在下载视频...")
response = requests.get(
f"{API_BASE}/v1/videos/{task_id}/content",
headers=headers
)
if response.status_code == 200:
with open("output_video.mp4", "wb") as f:
f.write(response.content)
print("✅ 视频已下载到 output_video.mp4")
else:
print(f"下载失败: {response.status_code}")
if __name__ == "__main__":
generate_video()
JavaScript/Node.js 示例
JS OpenAI 格式对话
const axios = require('axios');
const API_BASE = 'https://api.aifast.top';
const API_TOKEN = 'YOUR_API_TOKEN';
async function chatCompletion() {
try {
const response = await axios.post(
`${API_BASE}/v1/chat/completions`,
{
model: 'gpt-3.5-turbo',
messages: [
{ role: 'system', content: '你是一个有帮助的助手。' },
{ role: 'user', content: '什么是人工智能?' }
],
temperature: 0.7,
max_tokens: 1000
},
{
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
'Content-Type': 'application/json'
}
}
);
console.log(response.data.choices[0].message.content);
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
}
chatCompletion();
JS Claude 格式对话
const axios = require('axios');
const API_BASE = 'https://api.aifast.top';
const API_TOKEN = 'YOUR_API_TOKEN';
async function claudeMessage() {
try {
const response = await axios.post(
`${API_BASE}/v1/messages`,
{
model: 'claude-3-opus-20240229',
max_tokens: 1024,
system: '你是一个有帮助的AI助手。',
messages: [
{ role: 'user', content: '你好,Claude!' }
]
},
{
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
'Content-Type': 'application/json',
'anthropic-version': '2023-06-01'
}
}
);
console.log(response.data.content[0].text);
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
}
claudeMessage();
JS 流式对话
const axios = require('axios');
const API_BASE = 'https://api.aifast.top';
const API_TOKEN = 'YOUR_API_TOKEN';
async function streamChat() {
try {
const response = await axios.post(
`${API_BASE}/v1/chat/completions`,
{
model: 'gpt-3.5-turbo',
messages: [{ role: 'user', content: '讲个笑话' }],
stream: true
},
{
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
'Content-Type': 'application/json'
},
responseType: 'stream'
}
);
process.stdout.write('AI: ');
response.data.on('data', (chunk) => {
const lines = chunk.toString().split('\n').filter(line => line.trim() !== '');
for (const line of lines) {
if (line.startsWith('data: ')) {
const data = line.slice(6);
if (data === '[DONE]') {
console.log();
return;
}
try {
const parsed = JSON.parse(data);
const content = parsed.choices[0]?.delta?.content || '';
if (content) {
process.stdout.write(content);
}
} catch (error) {
// 忽略解析错误
}
}
}
});
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
}
streamChat();
cURL 示例集合
获取模型列表
curl https://api.aifast.top/v1/models \
-H "Authorization: Bearer YOUR_API_TOKEN"
文本嵌入
curl https://api.aifast.top/v1/embeddings \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "text-embedding-ada-002",
"input": "这是一段需要嵌入的文本"
}'
音频转录
curl https://api.aifast.top/v1/audio/transcriptions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F file="@audio.mp3" \
-F model="whisper-1" \
-F language="zh"
文本转语音
curl https://api.aifast.top/v1/audio/speech \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "tts-1",
"input": "你好,世界!",
"voice": "alloy"
}' \
--output speech.mp3
多模态对话(OpenAI格式)
curl https://api.aifast.top/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4-vision-preview",
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "这张图片里有什么?"},
{"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}}
]
}
]
}'
响应状态码
HTTP 状态码
| 状态码 | 说明 | 处理建议 |
|---|---|---|
| 200 | 请求成功 | 正常处理响应数据 |
| 400 | 请求参数错误 | 检查请求参数格式和内容 |
| 401 | 认证失败,Token无效 | 检查Token是否正确和有效 |
| 403 | 权限不足/额度不足 | 检查Token权限或账户状态 |
| 404 | 资源不找到 | 检查API端点地址是否正确 |
| 429 | 请求过于频繁 | 实施速率限制和重试策略 |
| 500 | 服务器内部错误 | 稍后重试或联系技术支持 |
| 502 | 上游服务错误 | 稍后重试 |
| 503 | 服务暂时不可用 | 稍后重试 |
错误响应格式
OpenAI 格式错误:
{
"error": {
"message": "错误描述信息",
"type": "invalid_request_error",
"param": "messages",
"code": "invalid_api_key"
}
}
Claude 格式错误:
{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "错误描述信息"
}
}
常见错误代码
| 错误代码 | 说明 | 解决方案 |
|---|---|---|
invalid_api_key |
API密钥无效 | 检查Token是否正确 |
insufficient_quota |
配额不足 | 充值或升级账户 |
rate_limit_exceeded |
超过速率限制 | 降低请求频率 |
model_not_found |
模型不存在 | 检查模型名称是否正确 |
context_length_exceeded |
上下文长度超限 | 减少输入文本长度 |
content_filter |
内容被过滤 | 修改输入内容 |
常见问题 FAQ
Q1: 如何获取API Token?
A: 请联系服务提供商获取API Token,或在控制台的Token管理页面创建。创建Token时可以设置权限和使用限制。
Q2: 支持哪些模型?
A: 支持OpenAI、Claude、Gemini等主流模型。具体可用模型请通过以下方式查询:
curl https://api.aifast.top/v1/models \
-H "Authorization: Bearer YOUR_API_TOKEN"
Q3: 如何处理流式响应?
A: 流式响应使用SSE(Server-Sent Events)格式:
1. 设置 stream: true
2. 逐行读取响应
3. 解析以 data: 开头的行
4. 直到收到 [DONE] 标记
详见 流式响应示例
Q4: 视频生成需要多长时间?
A: 视频生成时间取决于:
- 视频长度:5秒视频通常需要3-10分钟
- 视频质量:高质量需要更长时间
- 服务器负载:高峰期可能需要排队
建议每3-5秒轮询一次任务状态。
Q5: 如何切换不同的API格式?
A: 通过不同的端点地址使用不同格式:
| 格式 | 端点 | 用途 |
|---|---|---|
| OpenAI | /v1/chat/completions |
通用对话 |
| Claude | /v1/messages |
Claude原生格式 |
| Gemini | /v1/models/{model}:generateContent |
Gemini原生格式 |
Q6: 支持哪些编程语言?
A: 支持所有能发送HTTP请求的编程语言,包括:
- Python
- JavaScript/Node.js
- Java
- Go
- C#
- PHP
- Ruby
- 等等
可以使用各语言的HTTP客户端库,或直接使用OpenAI/Anthropic官方SDK。
Q7: 如何处理速率限制?
A: 实施以下策略:
1. 指数退避重试:
wait_time = (2 ** attempt) + random.uniform(0, 1)
time.sleep(wait_time)
2. 请求队列:
import queue
import threading
request_queue = queue.Queue()
# 控制并发数
3. 监控响应头:
rate_limit_remaining = response.headers.get('X-RateLimit-Remaining')
rate_limit_reset = response.headers.get('X-RateLimit-Reset')
Q8: 图片输入有什么限制?
A:
OpenAI 格式:
- 支持格式:JPEG, PNG, GIF, WebP
- 最大大小:20MB
- 支持URL和Base64
Claude 格式:
- 支持格式:JPEG, PNG, GIF, WebP
- 最大大小:5MB(Base64编码前)
- 支持URL和Base64
Gemini 格式:
- 支持格式:JPEG, PNG, GIF, WebP
- 最大大小:根据模型不同
- 支持URL和Base64
Q9: 如何优化成本?
A:
1. 选择合适的模型: 简单任务使用便宜的模型
2. 限制输出长度: 设置 max_tokens 参数
3. 使用缓存: 缓存重复的请求结果
4. 批量处理: 合并多个请求
5. 监控使用: 定期检查Token使用情况
Q10: 遇到错误如何调试?
A:
1. 检查响应状态码和错误信息
2. 启用详细日志记录
3. 验证请求参数格式
4. 检查Token权限和有效性
5. 查看API文档确认端点和参数
6. 使用Postman等工具测试
调试技巧:
import logging
logging.basicConfig(level=logging.DEBUG)
# 打印完整请求和响应
print("Request:", json.dumps(data, indent=2))
print("Response:", response.text)
📝 更新日志
v2.0 (2026-03-13)
- ✨ 新增完整的目录结构和超链接导航
- ✨ 新增Claude格式API文档
- ✨ 新增Gemini格式API文档
- ✨ 新增视频生成API文档
- ✨ 新增丰富的代码示例(Python、JavaScript)
- ✨ 新增使用建议和最佳实践
- ✨ 新增常见问题FAQ
- 🔧 优化文档结构和可读性
- 🔧 所有接口地址更新为 api.aifast.top
v1.0 (2026-03-12)
- 🎉 初始版本发布
- ✅ OpenAI格式API基础文档
⚠️ 免责声明
- 本文档中的示例代码和API端点仅供参考
- 实际使用时请替换为您的真实API Token
- 请遵守服务条款和使用限制
- API接口可能会更新,请以官方文档为准
- 请勿将API Token泄露给他人
- 请合理使用API,避免滥用
[↑ 返回目录](#目录)
---