接口说明
当前仓库公开的音频接口仅有 /v1/audio/transcriptions。代码中已预留音频计费与日志链路,但默认数据集中当前没有 active 的 type=audio 模型,因此接入前必须先确认后台是否已启用音频模型。
请求方式
POST
请求地址
/v1/audio/transcriptions
认证方式
Authorization: Bearer <API_KEY>
语音转文字
该接口用于音频转文字,但实际可用性由两部分共同决定:一是 /v1/models 中是否存在 active 的 type=audio 模型,二是当前接入的上游适配器是否支持目标请求体格式。
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
file |
mixed | 视上游而定 | 常见上游会要求音频文件或可解析的音频输入;当前仓库未额外封装统一上传协议 |
model |
string | 是 | 音频模型 ID;调用前请先通过 /v1/models 确认当前实例是否启用了 type=audio 模型 |
language |
string | 否 | 语言提示参数;是否支持由上游模型决定 |
response_format |
string | 否 | 返回格式参数;是否支持由上游模型决定 |
curl
# 1. 先检查当前实例是否启用了 audio 模型 curl https://api.lingyuncx.com/v1/models \ -H "Authorization: Bearer sk-xxxxxxxx" # 2. 如果返回结果中存在 type=audio 的模型,再根据所接入上游的要求 # 组织请求体并调用 /v1/audio/transcriptions
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.lingyuncx.com/v1",
api_key="sk-xxxxxxxx"
)
models = client.models.list()
audio_models = [item.id for item in models.data if item.type == "audio"]
if not audio_models:
raise RuntimeError("当前实例未启用 audio 模型,不能直接调用转写接口")
print("可用 audio 模型:", audio_models)
返回示例
JSON
{
"error": {
"code": "model_not_found",
"message": "Model 'your-audio-model' not found",
"type": "invalid_request_error"
}
}
当前限制
根据当前仓库实现和数据库现状,音频能力存在以下边界:
说明
| 项目 | 当前状态 | 影响 | 说明 |
|---|---|---|---|
| 公开路由 | /v1/audio/transcriptions |
已预留 | 当前没有公开的 /v1/audio/speech |
| active audio 模型 | 0 | 默认不可直接接入 | 调用前请先启用音频模型 |
| 上传协议 | 需按上游联调 | 不可假定兼容所有 multipart 方案 | 当前适配器默认走通用请求转发链路 |
| 文字转语音 | 未开放 | 请勿在前台承诺 TTS 可用 | 仓库当前未发现对应公开路由 |
支持模型
| 功能 | 当前状态 | 说明 | 建议 |
|---|---|---|---|
| 语音转文字 | 路由已预留,模型未启用 | 当前实例默认无法直接完成转写 | 先在后台启用 audio 模型,再联调请求体 |
| 文字转语音 | 未开放 | 当前仓库没有对应公开路由 | 不要在业务文档或前台页面承诺已可用 |
💡 提示
当前更适合把这页作为“能力边界说明”。只有在后台启用 audio 模型、补齐适配器联调后,才建议放开对外接入说明。