复刻语音合成算子将输入文本合成为语音音频,支持通过声音风格描述设计音色,也支持基于参考音频进行可控克隆或高保真续写。
算子 ID:las_voice_forge
style_prompt 描述目标声音风格,无需样音即可生成语音。reference_audio_uri 提供样音,基于样音音色合成目标文本。prompt_audio_uri 与 prompt_text,提升音色、语速、韵律一致性。场景1:基于 style-prompt 的声音设计
"text": "欢迎使用声音复刻算子,这是一个语音合成示例。"
输出音频
场景2:有参考音频的声音克隆
"text": "欢迎使用声音复刻算子,这是一个语音合成示例。"
场景3:高保真音频续写
"text": "小寨子的日升月落里,重复着平淡的日常,确在细微处留下不一样的故事。"
输入提示音频
输出音频
细分项 | 性能影响说明 |
|---|---|
最大 Submit RPM | 5 |
最大 Poll RPM | 300 |
细分 | 详细要求 |
|---|---|
输入数据模态 |
|
输入格式:文本 |
|
输入格式:音频 |
|
输入路径 | 通过请求参数
|
细分 | 详细要求 |
|---|---|
输出数据模态 |
|
输出格式:音频 |
|
输出路径:对象存储 | 通过请求参数
|
计费标准
细分项 | 计费标准说明 |
|---|---|
计费项 | 基于原始请求文本字符数统计用量,进行计费。 |
计费类型 | 按量计费,单位: |
单价 | 1.5 元/万字符 |
细分项 | 注意与前提 |
|---|---|
开通 LAS |
|
费用 | 调用算子前,您需先了解使用算子时的模型调用费用,详情请参见大模型调用计费。 |
鉴权(API Key) | 调用算子前,您需要先生成算子调用的API Key,并建议将API Key配置为环境变量,便于更安全地调用算子,详情请参见获取 API Key 并配置。 |
BaseURL | 调用算子前,您需要先根据您当前使用的LAS服务所在地域,了解算子调用的BaseURL,用于配置算子调用路径参数取值。 |
Submit 接口提交任务获得任务的 task_id,再通过 Poll 接口获取对应任务(task_id)运行状态,并获取算子处理结果。task_id 有效期为 3 天,超过 3 天后即无法通过此 task_id 来获取算子处理结果。提交 las_voice_forge 声音复刻 / 语音合成任务。接口返回异步任务 ID,任务完成后需通过 Poll 接口查询合成结果。
参数 | 类型 | 是否必填 | 示例值 | 描述 |
|---|---|---|---|---|
operator_id | string | 是 | las_voice_forge | 算子 ID,固定为 las_voice_forge。 |
operator_version | string | 是 | v1 | 算子版本,固定为 v1。 |
data | VoiceForgeUserReqParams | 是 | 复刻语音合成业务参数。 | |
callback | object | 否 | {"url":"https://example.com/callback"} | 任务终态回调配置,回调地址为 callback.url;不传则通过 Poll 获取结果。 |
pending_timeout_minutes | integer | 否 | 60 | PENDING 排队超时分钟数,范围 30 到 4320;超时后任务进入 EXPIRED。 |
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
metadata | Metadata | 请求元信息。 |
请求示例
curl --location "https://operator.las.cn-beijing.volces.com/api/v1/submit" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data '{ "operator_id": "las_voice_forge", "operator_version": "v1", "data": { "req_params": { "text": "欢迎使用声音复刻算子,这是一个语音合成示例。", "audio_params": { "format": "wav", "sample_rate": 48000 } }, "engine_params": { "style_prompt": "沉稳专业的男声,语速适中" }, "service_params": { "response_mode": "audio_uri" } }, "pending_timeout_minutes": 60 }'
返回示例
{ "metadata": { "task_id": "ffb57ea6450c894f354c", "task_status": "PENDING", "business_code": "0", "error_msg": "" } }
HttpStatusCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
400 | Parameter.Invalid | The parameter is invalid. | 字段类型、枚举、数值范围或参数依赖不正确。 |
400 | Operator.InvalidId | The operator id is invalid. |
|
400 | Operator.InvalidVersion | The operator version is invalid. |
|
400 | Tts.InvalidText | The synthesis text is empty after cleaning. | 文本为空或处理后为空。 |
400 | Tts.TextTooLong | The synthesis text exceeds the maximum length. | 文本超过允许长度。 |
400 | Tts.TooManySegments | The synthesis text has too many segments. | 长文本切分段数过多。 |
400 | Tts.ReferenceAudioInvalid | The reference audio is invalid. | 参考或提示音频地址、格式或内容不符合要求。 |
400 | Tts.ReferenceAudioRequired | Reference audio is required. | 当前合成方式缺少所需的参考音频。 |
400 | Tts.InvalidRequest | The TTS request is invalid. | 参数组合不正确,例如 |
401 | Authorization.Missing | Missing Authorization. | 缺少鉴权信息。 |
401 | ApiKey.Invalid | The api key is invalid. | API Key 无效。 |
429 | Server.Busy | Server is Busy, please try again later. | 服务繁忙或限流。 |
500 | Tts.InternalError | TTS Internal Error | 语音合成服务异常。 |
500 | Tts.AudioSaveFailed | Failed to transcode or persist the audio. | 音频转码或保存失败。 |
500 | Tts.EngineLoadFailed | The synthesis engine failed to load. | 合成服务暂不可用。 |
500 | Tts.EngineGpuOom | The synthesis engine ran out of GPU memory. | 合成资源不足。 |
500 | Tts.RequestTimeout | The synthesis request timed out. | 合成任务超时。 |
通过任务 ID 查询 las_voice_forge 声音复刻 / 语音合成任务的状态和结果。任务完成后返回音频地址、音频格式、采样率、时长等信息。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
operator_id | string | 是 | las_voice_forge | 算子 ID,固定为 |
operator_version | string | 是 | v1 | 算子版本,固定为 |
task_id | string | 是 | ffb57ea6450c894f354c | Submit 接口返回的异步任务 ID。 |
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
metadata | Metadata | 请求元信息与任务状态。 | |
data | VoiceForgeUserResp | 任务完成后的语音合成结果。 |
请求示例
curl --location "https://operator.las.cn-beijing.volces.com/api/v1/poll" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data '{ "operator_id": "las_voice_forge", "operator_version": "v1", "task_id": "ffb57ea6450c894f354c" }'
返回示例
{ "metadata": { "task_id": "ffb57ea6450c894f354c", "task_status": "COMPLETED", "submit_time": "2026-07-21T16:04:06+08:00", "end_time": "2026-07-21T16:04:09+08:00", "business_code": "0", "error_msg": "" }, "data": { "data": "", "audio_uri": "https://example-bucket.tos-cn-beijing.volces.com/voice_forge/tts/demo.wav?X-Tos-Signature=...", "audio_format": "wav", "sample_rate": 48000, "duration_sec": 3.04, "text_chars": 11, "segment_count": 1, "reference_audio_used": true } }
HttpStatusCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
400 | TaskId.Invalid | The task id is invalid. | 任务 ID 为空、不存在或无权访问。 |
400 | Parameter.Invalid | The parameter is invalid. | 参数校验失败或任务结果解析失败。 |
400 | Tts.InvalidText | The synthesis text is empty after cleaning. | 文本为空或处理后为空。 |
400 | Tts.TextTooLong | The synthesis text exceeds the maximum length. | 文本超过允许长度。 |
400 | Tts.TooManySegments | The synthesis text has too many segments. | 长文本切分段数过多。 |
400 | Tts.InvalidRequest | The TTS request is invalid. | 请求参数组合不正确。 |
400 | Tts.ReferenceAudioInvalid | The reference audio is invalid. | 参考或提示音频不符合要求。 |
401 | Authorization.Missing | Missing Authorization. | 缺少鉴权信息。 |
401 | ApiKey.Invalid | The api key is invalid. | API Key 无效。 |
429 | Server.Busy | Server is Busy, please try again later. | 服务繁忙或限流。 |
500 | Server.InternalError | General Internal Error | 服务端内部错误。 |
500 | Tts.InternalError | TTS Internal Error | 语音合成服务异常。 |
500 | Tts.AudioSaveFailed | Failed to transcode or persist the audio. | 音频转码或保存失败。 |
500 | Tts.EngineLoadFailed | The synthesis engine failed to load. | 合成服务暂不可用。 |
500 | Tts.EngineGpuOom | The synthesis engine ran out of GPU memory. | 合成资源不足。 |
500 | Tts.RequestTimeout | The synthesis request timed out. | 合成任务超时。 |