docs: 新增视频制作API(28端点KTV产线)
This commit is contained in:
parent
4028d00584
commit
811e80d8a9
@ -1781,3 +1781,262 @@ curl -X POST 'https://token.opencomputing.cn/reallife_asset/api/rl_virtual_asset
|
|||||||
| `创建失败` | 组合创建失败 | 检查参数和供应商配置 |
|
| `创建失败` | 组合创建失败 | 检查参数和供应商配置 |
|
||||||
| `上传失败` | 素材上传失败 | 检查 URL 是否可访问 |
|
| `上传失败` | 素材上传失败 | 检查 URL 是否可访问 |
|
||||||
| `查询失败` | 查询操作失败 | 检查 ID 是否属于当前机构 |
|
| `查询失败` | 查询操作失败 | 检查 ID 是否属于当前机构 |
|
||||||
|
|
||||||
|
# 视频制作 API
|
||||||
|
|
||||||
|
Base url: `https://token.opencomputing.cn/llmage/v1`
|
||||||
|
|
||||||
|
视频制作服务组由开元云(北京)科技有限公司提供,覆盖KTV产线全流程:校准、合成、评估、分离、识别等28个API端点。基础模型使用向量模型和GPU集群进行计算处理。
|
||||||
|
|
||||||
|
## 模型列表
|
||||||
|
|
||||||
|
| model | 类型 | 功能 | 计费方式 |
|
||||||
|
|-------|------|------|----------|
|
||||||
|
| `ktv-media-server` | KTV产线 | 流水线提交 | 2.00元/次 + 0.03元/秒 |
|
||||||
|
| `ktv-video-eval` | 视频评估 | 质量评估打分 | 0.05元/秒 |
|
||||||
|
| `ktv-realesrgan` | 超分辨率 | 图像/视频超分 | 0.50元/张 |
|
||||||
|
| `ktv-asr` | 语音识别 | 语音转文字 | 0.01元/秒 |
|
||||||
|
| `ktv-face` | 人脸识别 | 检测/识别/比对 | 0.10元/次 |
|
||||||
|
| `ktv-graph` | 图谱处理 | 知识图谱查询/写入 | 0.05~0.10元/次 |
|
||||||
|
| `ktv-ner` | 实体识别 | 命名实体提取 | 0.50元/千字 |
|
||||||
|
| `ktv-songrate` | 歌曲评分 | AI歌曲质量评估 | 0.005元/秒 |
|
||||||
|
| `ktv-synth` | 音乐合成 | AI歌声合成 | 0.20元/秒 |
|
||||||
|
| `ktv-demucs` | 音频分离 | 人声/伴奏分离 | 0.02元/秒 |
|
||||||
|
| `ktv-rvc` | 声音转换 | 声音克隆/变声 | 0.15元/秒 |
|
||||||
|
|
||||||
|
## 通用调用方式
|
||||||
|
|
||||||
|
所有视频制作模型通过 `/v1/chat/completions` 调用,模型名为上表中的 `model` 值。
|
||||||
|
|
||||||
|
### 请求格式
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `model` | string | 是 | 模型名,如 `"ktv-media-server"` |
|
||||||
|
| `catelogid` | string | 否 | 类目ID,默认根据模型自动选择 |
|
||||||
|
| 业务参数 | - | 视端点 | 各端点特定参数,见下方 |
|
||||||
|
|
||||||
|
### KTV产线操作 (media-server)
|
||||||
|
|
||||||
|
**提交流水线任务** — model: `ktv-media-server`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| `task_type` | string | 任务类型 |
|
||||||
|
| `params` | object | 任务参数 |
|
||||||
|
| `video_url` | string | 视频URL |
|
||||||
|
| `audio_url` | string | 音频URL |
|
||||||
|
| `song_name` | string | 歌曲名 |
|
||||||
|
| `lyrics` | string | 歌词文本 |
|
||||||
|
| `gpu_id` | int | GPU编号 |
|
||||||
|
| `duration` | int | 锁定时间(秒) |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 提交KTV视频生成
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-d '{"model":"ktv-media-server","task_type":"ktv","params":{"song_name":"测试","lyrics":"歌词内容"}}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"id": "luid_xxx",
|
||||||
|
"object": "chat.completion",
|
||||||
|
"model": "ktv-media-server",
|
||||||
|
"choices": [{
|
||||||
|
"message": {
|
||||||
|
"status": "ok",
|
||||||
|
"video_url": "https://...",
|
||||||
|
"usage": {"output_seconds": 180}
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### 视频评估 (video-eval)
|
||||||
|
|
||||||
|
**评估视频质量** — model: `ktv-video-eval`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `video_url` | string | 是 | 待评估视频URL |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-d '{"model":"ktv-video-eval","video_url":"https://example.com/video.mp4"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","score":85,"details":{...},"usage":{"video_seconds":60}}`
|
||||||
|
|
||||||
|
### 超分辨率 (realesrgan)
|
||||||
|
|
||||||
|
**图像/视频超分** — model: `ktv-realesrgan`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `image_url` | string | 是 | 待处理图像URL |
|
||||||
|
| `scale` | int | 否 | 放大倍数(默认2) |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-realesrgan","image_url":"https://example.com/img.jpg","scale":2}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","output_url":"https://...","usage":{"image_count":1}}`
|
||||||
|
|
||||||
|
### 语音识别 (asr)
|
||||||
|
|
||||||
|
**语音转文字** — model: `ktv-asr`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `audio_url` | string | 是 | 音频文件URL |
|
||||||
|
| `language` | string | 否 | 语言代码(默认zh) |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-asr","audio_url":"https://example.com/audio.mp3"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","text":"识别结果文本","segments":[...],"usage":{"audio_seconds":120}}`
|
||||||
|
|
||||||
|
### 人脸识别 (face)
|
||||||
|
|
||||||
|
**人脸检测/识别/比对** — model: `ktv-face`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| `image_url` | string | 检测图像URL |
|
||||||
|
| `face_id` | string | 人脸ID(识别时) |
|
||||||
|
| `image_url1` | string | 图像1(比对时) |
|
||||||
|
| `image_url2` | string | 图像2(比对时) |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 人脸检测
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-face","image_url":"https://example.com/face.jpg"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","faces":[...],"usage":{"detect_count":1}}`
|
||||||
|
|
||||||
|
### 图谱处理 (graph)
|
||||||
|
|
||||||
|
**知识图谱查询与写入** — model: `ktv-graph`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| `node_id` | string | 节点ID |
|
||||||
|
| `attrs` | object | 节点属性 |
|
||||||
|
| `from` | string | 起始节点(加边) |
|
||||||
|
| `to` | string | 目标节点(加边) |
|
||||||
|
| `label` | string | 边标签 |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 查询邻居
|
||||||
|
curl 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-graph","node_id":"node_001"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","nodes":[...],"usage":{"query_count":1}}`
|
||||||
|
|
||||||
|
### 实体识别 (ner)
|
||||||
|
|
||||||
|
**命名实体提取** — model: `ktv-ner`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `text` | string | 是 | 待分析文本 |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-ner","text":"张三在北京工作"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","entities":[...],"usage":{"char_count":7}}`
|
||||||
|
|
||||||
|
### 歌曲评分 (songrate)
|
||||||
|
|
||||||
|
**AI歌曲质量评估** — model: `ktv-songrate`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `audio_url` | string | 是 | 音频文件URL |
|
||||||
|
| `scene` | string | 否 | 场景类型(pop/folk等) |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-songrate","audio_url":"https://example.com/song.mp3"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","score":85,"details":{...},"usage":{"audio_seconds":240}}`
|
||||||
|
|
||||||
|
### 音乐合成 (ktv-synth)
|
||||||
|
|
||||||
|
**AI歌声合成** — model: `ktv-synth`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `lyrics` | string | 是 | 歌词文本 |
|
||||||
|
| `style` | string | 否 | 演唱风格 |
|
||||||
|
| `reference_audio` | string | 否 | 参考音频URL |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-synth","lyrics":"歌词内容","style":"pop"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","task_id":"xxx","usage":{"output_seconds":120}}`
|
||||||
|
|
||||||
|
### 音频分离 (demucs)
|
||||||
|
|
||||||
|
**人声/伴奏分离** — model: `ktv-demucs`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `audio_url` | string | 是 | 音频文件URL |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-demucs","audio_url":"https://example.com/music.mp3"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","vocals_url":"...","accompaniment_url":"...","usage":{"audio_seconds":200}}`
|
||||||
|
|
||||||
|
### 声音转换 (rvc)
|
||||||
|
|
||||||
|
**声音克隆/变声** — model: `ktv-rvc`
|
||||||
|
|
||||||
|
| 参数 | 类型 | 必填 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| `audio_url` | string | 是 | 输入音频URL |
|
||||||
|
| `voice_model` | string | 是 | 目标声音模型名 |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \
|
||||||
|
-H 'Authorization: Bearer ***' \
|
||||||
|
-d '{"model":"ktv-rvc","audio_url":"https://example.com/input.wav","voice_model":"singer_a"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应:** `{"status":"ok","output_url":"https://...","usage":{"audio_seconds":60}}`
|
||||||
|
|
||||||
|
## 错误说明
|
||||||
|
|
||||||
|
| 错误信息 | 原因 | 解决方案 |
|
||||||
|
|----------|------|----------|
|
||||||
|
| `missing prompt parameter` | 缺少必填参数 | 检查请求 body |
|
||||||
|
| `余额不足` | 账户余额低于模型最低余额要求 | 充值 |
|
||||||
|
| `模型未配置定价` | 模型缺少 ppid 配置 | 联系管理员 |
|
||||||
|
| `gpu not available` | GPU资源不足 | 稍后重试
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user