玄矩AI API 文档
玄矩AI 兼容 OpenAI / Anthropic 协议,支持文本对话、流式输出、图片生成、视频生成等功能。
阶梯按次计费为逐模型配置:达到上下文(输入+输出总 token)/缓存阈值时放大该次请求的计费次数(命中档位时消费日志显示 N 次,token 用量照常展示);两维同时命中取最大次数。各模型的具体阶梯阈值→次数详见 模型与价格。
所有 API 请求需要在 HTTP Header 中携带 API 密钥:
Authorization: Bearer sk-your-api-key-here
对于 Claude 协议端点,也支持 x-api-key 头:
x-api-key: sk-your-api-key-here
API 密钥可在 用户中心 获取,每个账户最多创建 5 个密钥。
以下端点前缀均可使用,选择任意一个即可:
| 端点前缀 | 说明 |
|---|---|
https://hs32.com/v1 | 标准 OpenAI 格式 |
https://hs32.com/api/v1 | API 格式 |
https://hs32.com/api/coding/paas/v4 | Coding PAAS 格式(推荐) |
https://hs32.com/api/paas/v4 | PAAS 格式 |
https://hs32.com/openapi/api/v1 | OpenAPI 格式 |
https://hs32.com/api/anthropic | Anthropic Claude 专用 |
POST https://hs32.com/api/coding/paas/v4/chat/completions
OpenAI 兼容的对话补全接口,支持主流大语言模型。
/chat/completions
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 模型名称,如 gpt-4o、claude-sonnet-4-20250514、deepseek-chat 等。传 auto 启用智能路由 |
| messages | array | 必填 | 消息列表,每条包含 role 和 content |
| stream | boolean | 可选 | 是否流式输出,默认 false |
| temperature | float | 可选 | 生成温度,0~2,默认 1。值越高输出越随机 |
| max_tokens | integer | 可选 | 最大生成 Token 数 |
| top_p | float | 可选 | 核采样概率,0~1,默认 1 |
| stop | string/array | 可选 | 停止序列,遇到时停止生成 |
| tools | array | 可选 | Function Calling 工具定义列表 |
| stream_options | object | 可选 | 流式选项,如 {"include_usage": true} 在最后一个 chunk 返回用量 |
Messages 格式
| 字段 | 类型 | 说明 |
|---|---|---|
| role | string | system、user、assistant、tool |
| content | string/array | 消息内容。字符串或支持多模态的数组格式(见下方图片输入) |
| tool_calls | array | assistant 消息中的工具调用结果 |
| tool_call_id | string | tool 角色消息的调用 ID |
请求示例
curl -X POST https://hs32.com/api/coding/paas/v4/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [
{"role": "system", "content": "你是一个有帮助的助手"},
{"role": "user", "content": "你好,请介绍一下自己"}
],
"temperature": 0.7,
"max_tokens": 1024
}'响应示例
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1704067200,
"model": "gpt-4o",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!我是一个AI助手..."
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 50,
"total_tokens": 70
}
}在 Chat Completions、Claude Messages、Responses API 中设置 "stream": true 即可启用流式输出。
Content-Type: text/event-stream。
请求示例
curl -X POST https://hs32.com/api/coding/paas/v4/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "写一首诗"}],
"stream": true,
"stream_options": {"include_usage": true}
}'流式响应格式
// 每个 chunk 格式: data: {"id":"chatcmpl-abc","object":"chat.completion.chunk","choices":[{"delta":{"content":"你"},"index":0}]} data: {"id":"chatcmpl-abc","object":"chat.completion.chunk","choices":[{"delta":{"content":"好"},"index":0}]} // 最后一个 chunk(当 stream_options.include_usage=true): data: {"id":"chatcmpl-abc","choices":[{"delta":{},"finish_reason":"stop"}],"usage":{"prompt_tokens":10,"completion_tokens":20,"total_tokens":30}} // 结束标记: data: [DONE]
Anthropic Claude 协议接口,原生支持 Claude 系列模型。
/api/anthropic/v1/messages
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | Claude 模型名称,如 claude-sonnet-4-20250514 |
| messages | array | 必填 | 消息列表 |
| max_tokens | integer | 必填 | 最大输出 Token 数 |
| system | string/array | 可选 | 系统提示词 |
| stream | boolean | 可选 | 是否流式输出 |
| temperature | float | 可选 | 生成温度,0~1 |
| top_p | float | 可选 | 核采样概率 |
| tools | array | 可选 | 工具定义 |
| stop_sequences | array | 可选 | 自定义停止序列 |
请求示例
curl -X POST https://hs32.com/api/anthropic/v1/messages \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-20250514",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Hello, Claude!"}
]
}'OpenAI Responses 格式接口,支持多轮对话和 Function Calling。
/v1/responses
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 模型名称 |
| input | string/array | 必填 | 输入内容,支持字符串或结构化数组 |
| instructions | string | 可选 | 系统指令(映射为 system 消息) |
| max_output_tokens | integer | 可选 | 最大输出 Token 数 |
| temperature | float | 可选 | 生成温度 |
| stream | boolean | 可选 | 是否流式输出 |
| tools | array | 可选 | 工具定义 |
| reasoning | object | 可选 | 推理配置,如 {"effort": "high"} |
| previous_response_id | string | 可选 | 上一轮响应 ID,用于多轮对话 |
请求示例
curl -X POST https://hs32.com/v1/responses \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"input": "What is the capital of France?",
"instructions": "Answer concisely"
}'OpenAI 文本补全接口(非对话格式)。
/v1/completions
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 模型名称 |
| prompt | string | 必填 | 补全提示文本 |
| max_tokens | integer | 可选 | 最大生成 Token 数 |
| temperature | float | 可选 | 生成温度 |
| stream | boolean | 可选 | 是否流式输出 |
把文本转成 2560 维语义向量(已 L2 归一化,两向量点积即为余弦相似度),用于语义检索建库、相似文本匹配、聚类与 RAG 召回。¥0.00005/千 token,实测 2 条文本约 0.24 秒、16 条约 0.36 秒。
/v1/embeddings
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 嵌入模型:Qwen3-Embedding-4B(2560 维,多语言,32K 上下文) |
| input | string/array | 必填 | 需要嵌入的文本,支持字符串或字符串数组(单批建议 ≤32 条) |
| instruction | string | 可选 | 任务指令,检索场景建议传 根据句子检索相关段落,可提升召回精度 |
请求示例
curl -X POST https://hs32.com/v1/embeddings \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen3-Embedding-4B",
"input": ["钢结构设计规范适用于工业民用建筑", "今天天气很好"],
"instruction": "根据句子检索相关段落"
}'返回 OpenAI 兼容格式:{ "data": [{ "index": 0, "embedding": [0.001, -0.02, ...] }], ... },每条文本一个 2560 维向量。
对一批召回文档按与查询(query)的相关性重新打分并排序,常用于 RAG / 检索增强场景,显著提升检索精度。¥0.00028/千 token(仅输入计费),实测 1 查询+5 文档约 0.26 秒。
/v1/rerank
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 重排模型:Qwen3-Reranker-8B(多语言,32K 上下文) |
| query | string | 必填 | 查询文本,作为相关性的参照 |
| documents | array | 必填 | 待排序的文档文本数组 |
| top_n | integer | 可选 | 返回前 N 条相关性最高的结果,默认返回全部 |
请求示例
curl -X POST https://hs32.com/v1/rerank \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen3-Reranker-8B",
"query": "什么是向量检索",
"documents": ["向量检索按语义相似度匹配", "今天天气不错"],
"top_n": 2
}'返回按相关性从高到低排序的结果:{ "results": [{ "index": 0, "relevance_score": 0.98 }, ...] },其中 index 指向原始 documents 数组下标。
根据文本描述生成图片,兼容 OpenAI 图片生成格式。
/images/generations
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 图片模型名称,如 Kwai-Kolors/Kolors、stable-diffusion-xl、flux-schnell 等 |
| prompt | string | 必填 | 图片描述文本 |
| negative_prompt | string | 可选 | 反向提示词,排除不想要的元素 |
| image_size | string | 可选 | 图片尺寸,格式 宽x高,如 1024x1024 |
| batch_size | integer | 可选 | 生成图片数量,1~4 |
| seed | integer | 可选 | 随机种子,固定种子可复现结果 |
| num_inference_steps | integer | 可选 | 推理步数,1~100,默认 20 |
| guidance_scale | float | 可选 | 引导系数,控制图片与提示词的匹配程度,默认 7.5 |
| image | string | 可选 | 参考图片,支持 URL 或 Base64(data:image/png;base64,...) |
推荐尺寸
| 模型 | 推荐尺寸 |
|---|---|
| Kolors | 1024x1024、960x1280、720x1440 |
| Qwen-Image | 1328x1328、1664x928、928x1664 |
| Stable Diffusion | 512x512、768x768 |
请求示例
curl -X POST https://hs32.com/api/coding/paas/v4/images/generations \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "Kwai-Kolors/Kolors",
"prompt": "a beautiful sunset over the ocean, vibrant colors",
"image_size": "1024x1024",
"batch_size": 1,
"num_inference_steps": 20,
"guidance_scale": 7.5
}'响应示例
{
"images": [
{ "url": "https://cdn.example.com/generated-image.png" }
],
"timings": { "inference": 3.2 },
"seed": 12345
}提交视频生成任务,返回任务 ID。需配合 视频状态查询 接口轮询获取结果。
/video/submit
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 视频模型名称,如 Wan-AI/Wan2.2-T2V-A14B(文生视频)、Wan-AI/Wan2.2-I2V-A14B(图生视频) |
| prompt | string | 必填 | 视频描述文本 |
| negative_prompt | string | 可选 | 反向提示词 |
| image_size | string | 可选 | 视频尺寸,支持 1280x720、720x1280、960x960 |
| image | string | 可选 | 参考图片(图生视频模型必填),支持 URL 或 Base64 |
| seed | integer | 可选 | 随机种子 |
请求示例
# 文本生成视频 curl -X POST https://hs32.com/api/coding/paas/v4/video/submit \ -H "Authorization: Bearer sk-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "model": "Wan-AI/Wan2.2-T2V-A14B", "prompt": "A cat walking on a sunny beach, cinematic", "image_size": "1280x720" }'
响应示例
{
"requestId": "video-abc123def456"
}查询视频生成任务的状态和结果。此接口不产生费用。
/video/status
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| requestId | string | 必填 | 视频生成提交接口返回的任务 ID |
请求示例
curl -X POST https://hs32.com/api/coding/paas/v4/video/status \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"requestId": "video-abc123def456"
}'响应示例
{
"status": "InProgress",
"reason": ""
}{
"status": "Succeed",
"reason": "",
"results": {
"videos": [
{ "url": "https://cdn.example.com/video-abc123.mp4" }
],
"timings": { "inference": 45.2 },
"seed": 67890
}
}状态值说明
| 状态 | 说明 |
|---|---|
InQueue | 排队中 |
InProgress | 生成中 |
Succeed | 生成成功,可在 results 中获取视频链接 |
Failed | 生成失败,reason 中包含失败原因 |
把文本转成自然人声,适合客服播报、有声内容、视频配音。两个引擎按模型选择:¥0.02/次(按调用次数计费,与文本长度无关)。响应为 24kHz 16bit 单声道 WAV 二进制,直接保存到文件即可。
/v1/audio/speech
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 必填 | 合成引擎即模型:F5-TTS-v1(快速档,9 字短句约 0.85 秒)、CosyVoice2-0.5B(自然档,音色更自然,约 2.8 秒) |
| input | string | 必填 | 要合成语音的文本。日期/百分号/小数/电话等数字自动转标准读法(2026年→二零二六年),GPT-4、8B 等型号自动跳过 |
| engine | string | 可选 | 显式指定引擎(f5 / cosyvoice),优先于模型名默认值,一般无需传 |
| voice | string | 可选 | 兼容 OpenAI 客户端的兼容字段,传任意值均被忽略(当前为内置音色) |
请求示例
# 快速档 curl -X POST https://hs32.com/v1/audio/speech \ -H "Authorization: Bearer sk-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "model": "F5-TTS-v1", "input": "你好,这是语音合成测试。" }' -o out.wav # 自然档(换 model 即可) # "model": "CosyVoice2-0.5B"
响应是二进制 WAV 音频(非 JSON),请用 -o 文件名 保存。两档均为内置音色,无需指定 voice。
把音频转成文字,支持 wav / mp3 / m4a / flac(建议 16kHz+ 单声道,上限 25MB)。两个引擎按模型选择:¥0.02/次。长音频自动切分,支持数小时文件。
/v1/audio/transcriptions
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | form 字段 | 必填 | 识别引擎即模型:SenseVoiceSmall(快速档,自动识别中/英/日/韩/粤,约 4 秒音频 0.7 秒返回)、Qwen3-ASR-1.7B(高精度档,抗噪/方言,52 语种,输出可能为繁体) |
| file | file | 必填 | 音频文件(multipart 表单字段名固定 file) |
请求示例
curl -X POST https://hs32.com/v1/audio/transcriptions \ -H "Authorization: Bearer sk-your-api-key" \ -F "model=SenseVoiceSmall" \ -F "file=@audio.wav"
返回 { "text": "识别出的文字内容" }(语种标记等内部前缀已自动剥离)。
获取可用模型列表,支持按类型过滤。无需认证。
/v1/models
查询参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| type | string | 可选 | 模型类型:text、image、audio、video |
| sub_type | string | 可选 | 文本子类型(type=text 时):chat、embedding、reranker |
请求示例
# 获取所有模型 curl https://hs32.com/v1/models # 仅获取图片模型 curl https://hs32.com/v1/models?type=image # 仅获取聊天模型 curl https://hs32.com/v1/models?type=text&sub_type=chat
响应示例
{
"object": "list",
"data": [
{ "id": "gpt-4o", "object": "model", "created": 1704067200, "owned_by": "openai" },
{ "id": "deepseek-chat", "object": "model", "created": 1704067200, "owned_by": "deepseek" }
]
}错误响应格式
{
"error": {
"message": "错误描述",
"type": "error_type",
"code": "error_code"
}
}常见错误码
| HTTP 状态码 | 错误类型 | 说明 |
|---|---|---|
| 400 | invalid_request_error | 请求格式错误或参数缺失 |
| 401 | authentication_error | API 密钥无效或缺失 |
| 403 | model_not_allowed | 当前套餐不支持该模型 |
| 402 | insufficient_quota | 余额或请求次数不足 |
| 429 | rate_limit_error | 请求频率超限或并发数已满 |
| 500 | internal_error | 服务器内部错误 |
| 502 | upstream_error | 上游服务错误 |
| 503 | service_unavailable | 服务不可用或 Agent 离线 |
使用 OpenAI 官方 Python SDK 快速接入,只需修改 base_url 和 api_key 即可。
安装 SDK
pip install openai
对话示例
from openai import OpenAI client = OpenAI( api_key="sk-your-api-key", base_url="https://hs32.com/api/coding/paas/v4" ) # 非流式对话 response = client.chat.completions.create( model="gpt-4o", messages=[ {"role": "system", "content": "你是一个有帮助的助手"}, {"role": "user", "content": "你好,请介绍一下自己"} ], temperature=0.7 ) 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="")图片生成
response = client.images.generate(
model="Kwai-Kolors/Kolors",
prompt="a beautiful sunset over the ocean",
size="1024x1024",
n=1
)
print(response.data[0].url)安装 SDK
npm install openai
对话示例
import OpenAI from 'openai'; const client = new OpenAI({ apiKey: 'sk-your-api-key', baseURL: 'https://hs32.com/api/coding/paas/v4' }); // 非流式对话 const response = await client.chat.completions.create({ model: 'gpt-4o', messages: [ { role: 'system', content: '你是一个有帮助的助手' }, { role: 'user', content: '你好,请介绍一下自己' } ] }); console.log(response.choices[0].message.content);
流式输出
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 || ''); }
测试连通性
# 查看模型列表 curl https://hs32.com/v1/models # 健康检查 curl https://hs32.com/health
Function Calling 示例
curl -X POST https://hs32.com/api/coding/paas/v4/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "北京今天天气怎么样?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"description": "获取指定城市的天气信息",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "城市名称"}
},
"required": ["city"]
}
}
}]
}'上传图片文件,获取可用于图片生成、图生视频等接口的 URL。
/api/upload
| 说明 | 值 |
|---|---|
| Content-Type | multipart/form-data |
| 表单字段名 | file |
| 最大文件大小 | 20 MB |
| 支持格式 | PNG、JPG、JPEG、GIF(服务端统一转为 PNG) |
请求示例
curl -X POST https://hs32.com/api/upload \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@/path/to/your/image.png"
响应示例
{
"url": "https://mcp.0ki.cn/uploads/abc123.png",
"filename": "abc123.png",
"size": 12345
}