SDK 与第一次请求
Clavue 提供 OpenAI 兼容的 Chat Completions API。将任意 OpenAI 客户端指向 https://api.clavue.com/v1,并使用会员 API Key。下列步骤结构对标 docs.x.ai 开发者快速入门。
步骤 1:创建 Clavue 账户
在 www.clavue.com/account 注册(邮箱 OTP / 密码 / 已开通的 Google)。Free 含日 fast + premium 额度,Chat、imux、CLI、API 共用。
步骤 2:生成 API Key
打开 账户 → API 密钥,创建后导出:
export CLAVUE_TOKEN="your_api_key"
# OpenAI SDK convention:
export OPENAI_API_KEY="$CLAVUE_TOKEN"
export OPENAI_BASE_URL="https://api.clavue.com/v1"步骤 3:安装 SDK
使用官方 OpenAI SDK 即可,无需专有包。
# Python
pip install openai
# Node.js
npm install openai步骤 4a:第一次请求(curl)
curl -s https://api.clavue.com/v1/chat/completions \
-H "Authorization: Bearer $CLAVUE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "clavue-2.1",
"messages": [
{"role": "user", "content": "Fix this function and explain the bug: function median(a){a.sort();return a[a.length/2]}"}
]
}'步骤 4b:Python(OpenAI SDK)
from openai import OpenAI
client = OpenAI(
api_key="YOUR_CLAVUE_TOKEN",
base_url="https://api.clavue.com/v1",
)
r = client.chat.completions.create(
model="clavue-2.1",
messages=[{
"role": "user",
"content": "Fix this function and explain the bug: function median(a){a.sort();return a[a.length/2]}",
}],
)
print(r.choices[0].message.content)步骤 4c:Node.js(OpenAI SDK)
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.CLAVUE_TOKEN,
baseURL: "https://api.clavue.com/v1",
});
const r = await client.chat.completions.create({
model: "clavue-2.1",
messages: [{
role: "user",
content: "Fix this function and explain the bug: function median(a){a.sort();return a[a.length/2]}",
}],
});
console.log(r.choices[0].message.content);步骤 5:流式输出
设置 stream: true 获得逐 token 输出。完整示例见流式指南。
stream = client.chat.completions.create(
model="clavue-2.1-fast",
messages=[{"role": "user", "content": "Write a short haiku about agents."}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content or ""
print(delta, end="", flush=True)步骤 6:图像生成(clavue-img)
官方图像产品 ID clavue-img,通过 chat completions 返回(回复中的 Markdown 图片链接)。内联预览优先网页 Chat 或 imux Agent Chat。
r = client.chat.completions.create(
model="clavue-img",
messages=[{"role": "user", "content": "A futuristic city skyline at sunset, cinematic"}],
)
print(r.choices[0].message.content)