跳到导航

转写

了解如何使用 ElevenLabs 将语音音频转换为文本。

概览

ElevenLabs 文本转语音 (STT) API 以业界领先的准确率,将超过 90 种语言的语音音频转换为文本。录制音频请使用 Scribe v3,实时音频请使用 Scribe v3 Live。如需体验实时演示,请访问我们的文本转语音展示页面。

需要符合 HIPAA 标准的公司,必须联系 ElevenLabs 销售团队签署业务伙伴协议(BAA)。在进行任何与 HIPAA 相关的集成或部署前, 请确保已完成此步骤。

模型

API 响应示例

以下示例展示了使用 Scribe v2 模型处理示例音频文件时,文本转语音 API 的输出。

{
"language_code": "en",
"language_probability": 1,
"text": "With a soft and whispery American accent, I'm the ideal choice for creating ASMR content, meditative guides, or adding an intimate feel to your narrative projects.",
"words": [
{
"text": "With",
"start": 0.119,
"end": 0.259,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.239,
"end": 0.299,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "a",
"start": 0.279,
"end": 0.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.339,
"end": 0.499,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "soft",
"start": 0.479,
"end": 1.039,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.019,
"end": 1.2,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "and",
"start": 1.18,
"end": 1.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.339,
"end": 1.44,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "whispery",
"start": 1.419,
"end": 1.979,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.959,
"end": 2.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "American",
"start": 2.159,
"end": 2.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 2.699,
"end": 2.779,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "accent,",
"start": 2.759,
"end": 3.389,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.119,
"end": 4.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "I'm",
"start": 4.159,
"end": 4.459,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.44,
"end": 4.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "the",
"start": 4.5,
"end": 4.599,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.579,
"end": 4.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ideal",
"start": 4.679,
"end": 5.099,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.079,
"end": 5.219,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "choice",
"start": 5.199,
"end": 5.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.699,
"end": 6.099,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "for",
"start": 6.099,
"end": 6.199,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.179,
"end": 6.279,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "creating",
"start": 6.259,
"end": 6.799,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.779,
"end": 6.979,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ASMR",
"start": 6.959,
"end": 7.739,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 7.719,
"end": 7.859,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "content,",
"start": 7.839,
"end": 8.45,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9,
"end": 9.06,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "meditative",
"start": 9.04,
"end": 9.64,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9.619,
"end": 9.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "guides,",
"start": 9.679,
"end": 10.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 10.359,
"end": 10.409,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "or",
"start": 11.319,
"end": 11.439,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.42,
"end": 11.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "adding",
"start": 11.5,
"end": 11.879,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.859,
"end": 12,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "an",
"start": 11.979,
"end": 12.079,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.059,
"end": 12.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "intimate",
"start": 12.179,
"end": 12.579,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.559,
"end": 12.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "feel",
"start": 12.679,
"end": 13.159,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.139,
"end": 13.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "to",
"start": 13.159,
"end": 13.26,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.239,
"end": 13.3,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "your",
"start": 13.299,
"end": 13.399,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.379,
"end": 13.479,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "narrative",
"start": 13.479,
"end": 13.889,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.919,
"end": 13.939,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "projects.",
"start": 13.919,
"end": 14.779,
"type": "word",
"speaker_id": "speaker_0"
}
]
}

输出分为以下 3 种类别:

  • word - 音频所用语言中的单词
  • spacing - 单词之间的空格,不适用于日语、普通话、泰语、老挝语、缅甸语和粤语等不使用空格的语言
  • audio_event - 笑声、掌声等非语音声音

并发与优先级

并发是指可同时处理的请求数量。

对于文本转语音,超过 8 分钟的文件会在内部并行转写,以加快处理速度。音频会被分为 4 个片段并发转写。

可通过以下公式计算并发限制:

Concurrency=min⁡(4,round_up(audio_duration_secs480))Concurrency = \min(4, \text{round\_up}(\frac{\text{audio\_duration\_secs}}{480}))

例如,15 分钟的音频文件将以并发数 2 转写,而 120 分钟的音频文件将以并发数 4 转写。

上述计算仅适用于 Scribe v3、Scribe v2 和 Scribe v2 Medical 等批处理模型。对于 Scribe v3 Live 和 Scribe v2 Realtime,请参阅并发限制 图表。

高级功能

关键术语提示和转录文本编辑需额外付费。详细定价信息请参阅 API 定价 页面。

关键术语提示

Scribe v3、Scribe v3 Live、Scribe v2、Scribe v2 Medical (批处理)和 Scribe v2 Realtime 支持关键术语提示。

突出显示单词或短语,让模型倾向于将其转写出来。这适用于转写音频中不常见的特定单词或句子,例如产品名称、人名或其他特定术语。关键术语比其他模型提供的偏向关键词或自定义词汇表更强大,因为它会依赖上下文来决定是否转写该术语。批处理最多支持 1000 个关键术语(每个 50 个字符),实时模式最多支持 50 个关键术语(每个 20 个字符)。

要了解如何使用关键术语提示,请参阅关键术语提示文档。

关键术语库

Scribe v3 Live 支持关键术语库。

关键术语库是面向整个领域的大型词汇表,例如医学词典、法律术语或产品目录。模型仅在听到可能匹配的内容时才会查询该词库。一个词库最多可包含 10,000 个术语。可搭配关键术语提示使用,后者最适合你确定会出现的少数术语。使用关键术语库的会话,其额外费用与关键术语提示相同。

要了解更多信息,请参阅关键术语库文档。

轮次预测

Scribe v3 Live 支持轮次预测。

基于静音的语音活动检测(VAD)会在一段静音后提交一段转录文本。较短的静音阈值会在说话者停顿时将其打断,较长的阈值则会增加延迟。轮次预测利用对话上下文估计说话者是否已结束发言,因此来电者在电话号码说到一半时暂停也不会被打断。这与 ElevenAgents 使用的轮次检测相同。

要了解更多信息,请参阅轮次预测。

实时说话人分离

Scribe v3 Live 支持实时说话人分离。

设置 diarize=true,即可在实时转录文本中标记说话人。部分转录文本中会显示临时说话人标签,每条已提交转录文本后都会跟随一条单独的说话人分离转录文本,且不会延迟已提交的文本。

要了解更多信息,请参阅实时说话人分离指南。

数字格式

Scribe v3 支持数字格式。

选择将转录文本中的数字写为数字(42)还是文字(四十二)。如果不设置格式,模型会自行选择。

要了解更多信息,请参阅数字和语言选项。

混合语言音频

Scribe v3 支持次要语言代码。Scribe v3 Live 支持多语言模式。

当说话者使用多种语言时,请列出预期使用的语言,以便模型准确转写每种语言。对于实时音频,多语言模式会以各语言自身的文字系统转写,并能识别句中语言切换。

Scribe 不会翻译,会以实际说出的语言进行转写。

要了解更多信息,批处理转写请参阅数字和语言选项,实时转写请参阅实时语言选项。

非逐字模式

Scribe v3、Scribe v2、Scribe v2 Medical(批处理)和 Scribe v2 Realtime 支持非逐字模式。

启用 no_verbatim 后,模型会从转录文本中移除填充词、错误起句和不流畅表达。这会生成更整洁的输出,适用于字幕、摘要或任何可读性比保留每个口语词更重要的场景。

实体检测

所有批处理模型、Scribe v3 Live 和 Scribe v2 Realtime 都支持实体检测。

批处理和实时模型可检测转录文本中的多个实体类别,并提供精确时间戳。这有助于突出显示信用卡号、姓名、疾病或社会保障号。

支持实体的完整列表请参阅实体检测文档。

转录文本编辑

转录文本编辑是一项实验性功能,所有批处理模型、Scribe v3 Live 和 Scribe v2 Realtime 均支持。当前在数据 驻留环境中不可用。

通过 transcript_edit 参数传入自然语言指令,即可将其应用于完成的转录文本。编辑后的文本会与原始转录文本一起在 edited_transcript 中返回,因此时间戳和说话人标签会保持不变。这适用于统一日期、时间或单位的写法、应用不同风格,或通过一次请求重写转录文本。

要了解更多信息,请参阅转录文本编辑文档和实时转录文本编辑指南。

支持的语言

Scribe v3 和 Scribe v2 支持 90 多种语言,包括:

南非荷兰语(afr)、阿姆哈拉语(amh)、阿拉伯语(ara)、亚美尼亚语(hye)、阿萨姆语(asm)、阿斯图里亚斯语(ast)、阿塞拜疆语(aze)、白俄罗斯语(bel)、孟加拉语(ben)、波斯尼亚语(bos)、保加利亚语(bul)、缅甸语(mya)、粤语(yue)、加泰罗尼亚语(cat)、宿务语(ceb)、齐切瓦语(nya)、克罗地亚语(hrv)、捷克语(ces)、丹麦语(dan)、荷兰语(nld)、英语(eng)、爱沙尼亚语(est)、菲律宾语(fil)、芬兰语(fin)、法语(fra)、富拉语(ful)、加利西亚语(glg)、甘达语(lug)、格鲁吉亚语(kat)、德语(deu)、希腊语(ell)、古吉拉特语(guj)、豪萨语(hau)、希伯来语(heb)、印地语(hin)、匈牙利语(hun)、冰岛语(isl)、伊博语(ibo)、印度尼西亚语(ind)、爱尔兰语(gle)、意大利语(ita)、日语(jpn)、爪哇语(jav)、佛得角克里奥尔语(kea)、卡纳达语(kan)、哈萨克语(kaz)、高棉语(khm)、韩语(kor)、库尔德语(kur)、吉尔吉斯语(kir)、老挝语(lao)、拉脱维亚语(lav)、林加拉语(lin)、立陶宛语(lit)、卢奥语(luo)、卢森堡语(ltz)、马其顿语(mkd)、马来语(msa)、马拉雅拉姆语(mal)、马耳他语(mlt)、普通话(zho)、毛利语(mri)、马拉地语(mar)、蒙古语(mon)、尼泊尔语(nep)、北索托语(nso)、挪威语(nor)、奥克语(oci)、奥里亚语(ori)、普什图语(pus)、波斯语(fas)、波兰语(pol)、葡萄牙语(por)、旁遮普语(pan)、罗马尼亚语(ron)、俄语(rus)、塞尔维亚语(srp)、绍纳语(sna)、信德语(snd)、僧伽罗语(sin)、斯洛伐克语(slk)、斯洛文尼亚语(slv)、索马里语(som)、西班牙语(spa)、斯瓦希里语(swa)、瑞典语(swe)、泰米尔语(tam)、塔吉克语(tgk)、泰卢固语(tel)、泰语(tha)、土耳其语(tur)、乌克兰语(ukr)、翁本杜语(umb)、乌尔都语(urd)、乌兹别克语(uzb)、越南语(vie)、威尔士语(cym)、沃洛夫语(wol)、科萨语(xho)和祖鲁语(zul)。

语言支持详情

词错误率(WER)是评估转录系统准确性的关键指标,用于衡量转录文本与参考文本相比存在多少错误。以下列出 Scribe v2 支持的各语言 WER。

白俄罗斯语(bel)、波斯尼亚语(bos)、保加利亚语(bul)、加泰罗尼亚语(cat)、克罗地亚语(hrv)、捷克语(ces)、 丹麦语(dan)、荷兰语(nld)、英语(eng)、爱沙尼亚语(est)、芬兰语(fin)、法语(fra)、加利西亚语 (glg)、德语(deu)、希腊语(ell)、匈牙利语(hun)、冰岛语(isl)、印度尼西亚语(ind)、意大利语 (ita)、日语(jpn)、卡纳达语(kan)、拉脱维亚语(lav)、马其顿语(mkd)、马来语(msa)、马拉雅拉姆语 (mal)、挪威语(nor)、波兰语(pol)、葡萄牙语(por)、罗马尼亚语(ron)、俄语(rus)、斯洛伐克语 (slk)、西班牙语(spa)、瑞典语(swe)、土耳其语(tur)、乌克兰语(ukr)和越南语(vie)。

亚美尼亚语(hye)、阿塞拜疆语(aze)、孟加拉语(ben)、粤语(yue)、菲律宾语(fil)、格鲁吉亚语 (kat)、古吉拉特语(guj)、印地语(hin)、哈萨克语(kaz)、立陶宛语(lit)、马耳他语(mlt)、普通话 (cmn)、马拉地语(mar)、尼泊尔语(nep)、奥里亚语(ori)、波斯语(fas)、塞尔维亚语(srp)、斯洛文尼亚语(slv)、 斯瓦希里语(swa)、泰米尔语(tam)和泰卢固语(tel)

南非荷兰语(afr)、阿拉伯语(ara)、阿萨姆语(asm)、阿斯图里亚斯语(ast)、缅甸语(mya)、豪萨语(hau)、 希伯来语(heb)、爪哇语(jav)、韩语(kor)、吉尔吉斯语(kir)、卢森堡语(ltz)、毛利语(mri)、 奥克语(oci)、旁遮普语(pan)、塔吉克语(tgk)、泰语(tha)、乌兹别克语(uzb)和威尔士语(cym)。

阿姆哈拉语(amh)、甘达语(lug)、伊博语(ibo)、爱尔兰语(gle)、高棉语(khm)、库尔德语(kur)、老挝语(lao)、 蒙古语(mon)、北索托语(nso)、普什图语(pus)、绍纳语(sna)、信德语(snd)、僧伽罗语(sin)、 索马里语(som)、乌尔都语(urd)、沃洛夫语(wol)、科萨语(xho)、约鲁巴语(yor)和祖鲁语(zul)。

常见问题

可以,API 支持上传音频和视频文件进行转写。

支持最大 5 GB 的文件。时长限制取决于转写模式:

  • 标准模式(use_multi_channel=false):最长 15 小时
  • 多声道模式(use_multi_channel=true):所有声道的总时长必须少于 15 小时

API 支持以下音频和视频格式:

  • audio/aac
  • audio/x-aac
  • audio/x-aiff
  • audio/ogg
  • audio/mpeg
  • audio/mp3
  • audio/mpeg3
  • audio/x-mpeg-3
  • audio/opus
  • audio/wav
  • audio/x-wav
  • audio/webm
  • audio/flac
  • audio/x-flac
  • audio/mp4
  • audio/aiff
  • audio/x-m4a

支持的视频格式包括:

  • video/mp4
  • video/x-msvideo
  • video/x-matroska
  • video/quicktime
  • video/x-ms-wmv
  • video/x-flv
  • video/webm
  • video/mpeg
  • video/3gpp

ElevenLabs 持续扩展模型支持的语言数量,请常来查看更新。

支持。异步转写结果可发送至在 UI 的 Webhook 设置中配置的 Webhook。详情请参阅 Webhook 指南。

支持。多声道 STT 功能可转写各声道独立处理的音频,并根据声道编号分配说话人 ID。该功能最多支持 5 个声道。详情请参阅多声道转写指南。

ElevenLabs 根据发送转写的音频时长收取文本转语音费用。按每小时音频计费,费率因套餐和模型而异。详细定价信息请参阅 API 定价页面。

静音时段也计入计费时长。批处理和实时转写均按所发送音频的每一秒计量,包括停顿和静音片段,静音没有折扣。

关键信息

  • 支持的输入:接受音频和视频文件
  • 最大文件大小:5 GB
  • 最长时长:15 小时(标准模式);所有声道合计 15 小时(多声道模式)
  • 多声道模式:最多 5 个声道;各声道独立处理,并按声道编号分配说话人 ID
  • Webhook:可将异步转写结果发送至 Webhook — 在工作区设置中配置
  • 支持的音频格式:AAC、AIFF、OGG、MP3、OPUS、WAV、FLAC、M4A、WebM
  • 支持的视频格式:MP4、AVI、MKV、MOV、WMV、FLV、WebM、MPEG、3GPP