快速开始
几分钟内开始使用 CHMU Hub API。
1 第一步:获取 API 密钥
注册账号并在控制台创建 API 密钥。
- 注册 CHMU Hub 账号
- 进入 API 密钥管理页面
- 点击创建密钥并妥善保存
export CHMUHUB_API_KEY="sk-chmuhub-your-key-here"2 第二步:发起第一次对话请求
如果你使用 OpenAI SDK,只需修改 base URL,其他代码无需改动。
Python (OpenAI SDK)
from openai import OpenAI
client = OpenAI(
api_key="sk-chmuhub-...",
base_url="https://api.chmuhub.com/v1/public" # Only change this line
)
response = client.chat.completions.create(
model="gpt-5",
messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)JavaScript
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'sk-chmuhub-...',
baseURL: 'https://api.chmuhub.com/v1/public',
});
const res = await client.chat.completions.create({
model: 'gpt-5',
messages: [{ role: 'user', content: 'Hello!' }],
});
console.log(res.choices[0].message.content);cURL
curl https://api.chmuhub.com/v1/public/chat/completions \
-H "Authorization: Bearer sk-chmuhub-..." \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5","messages":[{"role":"user","content":"Hello!"}]}'响应示例
{
"id": "chatcmpl-abc123",
"choices": [{
"message": { "role": "assistant", "content": "Hello! How can I help?" }
}]
}3 第三步:生成图片
图片生成是异步的。提交请求后,轮询获取结果。
完整 Python 示例
import time, requests
API_KEY = "sk-chmuhub-..."
BASE = "https://api.chmuhub.com/v1/public"
headers = {"Authorization": f"Bearer {API_KEY}"}
# 1. Submit generation request
res = requests.post(f"{BASE}/images/generations", headers=headers, json={
"model": "gpt-image-2",
"prompt": "A sunset over mountains, oil painting style",
"resolution": "2k"
})
task_id = res.json()["task_id"]
print(f"Task created: {task_id}")
# 2. Poll for completion
while True:
status = requests.get(f"{BASE}/tasks/{task_id}", headers=headers).json()
print(f" Status: {status['status']}")
if status["status"] in ("COMPLETED", "FAILED"):
break
time.sleep(5)
# 3. Get result
if status["status"] == "COMPLETED":
print(f"Image URL: {status['imageUrl']}")4 第四步:生成视频
视频生成与图片相同,使用异步轮询模式。
完整 Python 示例
import time, requests
API_KEY = "sk-chmuhub-..."
BASE = "https://api.chmuhub.com/v1/public"
headers = {"Authorization": f"Bearer {API_KEY}"}
# 1. Submit generation request
res = requests.post(f"{BASE}/videos/generations", headers=headers, json={
"model": "sora-2",
"prompt": "A golden retriever running in a sunlit field",
"duration": 10
})
task_id = res.json()["task_id"]
print(f"Task created: {task_id}")
# 2. Poll for completion (videos take longer, ~1-3 min)
while True:
status = requests.get(f"{BASE}/tasks/{task_id}", headers=headers).json()
print(f" Status: {status['status']} Progress: {status.get('progress', '-')}%")
if status["status"] in ("COMPLETED", "FAILED"):
break
time.sleep(5)
# 3. Get result
if status["status"] == "COMPLETED":
print(f"Video URL: {status['videoUrl']}")