Skip to content

Udio(Chat格式)

POST  v1/chat/completions

文生视频模型,已统一接口,可直接chat格式调用:luma-vip-video(VIP版,极速、免排队、无水印)、pika-text-to-video

请求参数

Authorization

在 Header 添加参数 Authorization,其值为在 Bearer 之后拼接 Token。

Authorization: Bearer ******************

Header 参数

参数类型必填说明示例
Content-Typestring可选请求体的数据格式类型application/json
Acceptstring可选客户端期望接收的响应数据格式application/json

Body 参数

Content-Type: application/json

参数名类型必填说明
modelstring必需模型 ID。指定要使用的模型版本。
messagesarray [object]必需聊天记录。包含对话历史的对象数组。
├─ rolestring可选角色类型:userassistantsystem
└─ contentstring可选具体的文本内容。
modalitiesarray[string]必需输出模态。默认 ["text"];若需同时生成文本和音频可设为 ["text", "audio"]
audioobject必需音频输出参数。当 modalities 包含 "audio" 时必须提供,用于配置语音输出(如指定音色等)。
streamboolean必需流式输出。设为 true 时,响应将通过服务器发送事件(SSE)逐块传输。
storeboolean可选存储设置。是否将输出存储用于模型蒸馏或评估产品。
reasoning_effortstring可选推理努力程度(仅限 o系列模型)。可选 low, medium, high,减少推理工作可加快响应速度。
metadataobject可选元数据。最多 16 个键值对(键最长64字符,值最长512字符),用于结构化存储额外信息。
predictionobject可选预测配置。当预先知道模型大部分响应内容时使用,可大幅提高响应速度。
temperaturenumber可选采样温度 (0-2)。值越高输出越随机,建议与 top_p 二选一调整。
top_pnumber可选核采样。例如 0.1 意味着只考虑概率质量前 10% 的 token。
ninteger可选生成数量。为每个输入生成多少个选择。保持 n=1 可降低成本。
stopstring可选停止序列。遇到这些序列时停止生成(最多 4 个)。注:最新的推理模型(如 o3, o4-mini)不支持此参数。
max_completion_tokensinteger可选最大生成长度。生成的 token 上限(包含可见输出和推理 token)。
presence_penaltynumber可选存在惩罚 (-2.0 到 2.0)。正值增加模型讨论新话题的可能性。
frequency_penaltynumber可选频率惩罚 (-2.0 到 2.0)。正值降低模型逐字重复同一行的可能性。
logit_biasstring可选对数偏差。修改特定标记出现的概率(映射 token ID 到 -100 到 100 的偏差值)。
logprobsboolean可选对数概率。是否返回输出 token 的对数概率。
userstring可选用户标识。代表最终用户的唯一 ID,用于监控滥用行为。

请求示例 (JSON)

{
    "stream": true,
    "model": "udio130-v1.5",
    "messages": [
        {
            "role": "user",
            "content": "写首情歌"
        }
    ]
}

返回响应

200 成功

Content-Type: application/json

响应参数

字段名类型必填说明
idstring必需请求唯一标识符。用于定位和追踪本次 API 调用的 ID。
objectstring必需对象类型。对于聊天补全接口,该值固定为 "chat.completion"
createdinteger必需创建时间戳。生成本次响应的 Unix 时间戳(秒级)。
modelstring必需实际使用的模型。生成此响应的具体模型名称及版本(例如 gpt-4o-2024-05-13)。
choicesarray [object]必需回复选项数组。包含模型生成的回复内容列表(默认长度为1)。
├─ indexinteger可选当前选项在数组中的索引位置。
├─ messageobject可选生成的消息对象,包含以下核心字段:
├─ rolestring必需角色身份,通常固定为 "assistant"
├─ contentnull/string必需模型生成的文本内容。若模型进行了工具调用或纯音频输出,此处可能为 null
├─ refusalnull/string必需如果模型拒绝回答某些敏感或不合规的内容,拒绝的理由会在此字段显示。
├─ audioobject必需音频输出对象。当请求了音频模态时,这里会包含生成的音频数据及相关参数。
└─ annotationsarray[string]必需针对回复内容的附加注释或引用信息。
├─ logprobsnull可选输出 token 的对数概率信息(需在请求中开启 logprobs: true)。
└─ finish_reasonstring可选停止原因。模型停止生成的原因,常见值有: • stop:自然结束或遇到停止词 • length:达到最大 token 限制 • tool_calls:模型发起了工具/函数调用。
usageobject必需Token 用量统计,包含以下明细:
├─ prompt_tokensinteger必需输入提示词(Prompt)消耗的 Token 数量。
├─ completion_tokensinteger必需模型生成的回复(Completion)消耗的 Token 数量。
├─ total_tokensinteger必需本次请求消耗的总 Token 数(输入 + 输出)。

响应示例

{
    "id": "chatcmpl-123",
    "object": "chat.completion",
    "created": 1677652288,
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": "\n\nHello there, how may I assist you today?"
            },
            "finish_reason": "stop"
        }
    ],
    "usage": {
        "prompt_tokens": 9,
        "completion_tokens": 12,
        "total_tokens": 21
    }
}

示例代码

python
import http.client
import json

conn = http.client.HTTPSConnection("nxaiapp.com")
payload = json.dumps({
   "stream": True,
   "model": "udio130-v1.5",
   "messages": [
      {
         "role": "user",
         "content": "写首情歌"
      }
   ]
})
headers = {
   'Accept': 'application/json',
   'Authorization': 'Bearer <token>',
   'Content-Type': 'application/json'
}
conn.request("POST", "/v1/chat/completions", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))