跳到主要内容

自动语音识别

1. 什么是自动语音识别任务?

自动语音识别(Automatic Speech Recognition,ASR)是大模型推理服务中的重要任务之一,旨在将输入的音频内容自动转换为对应的文本。通过 ASR 能力,用户可以将语音对话、会议录音、媒体内容等快速转写为结构化文本,广泛应用于会议记录、实时字幕、语音交互等场景。

2. 典型应用场景

  • 会议转写:自动将会议录音转写为文字,并区分不同发言人,方便回顾与归档。
  • 实时字幕:为视频直播、在线教育等场景提供低延迟的实时字幕生成能力。
  • 语音客服:将用户的语音输入转写为文本,供后端 NLP 系统进行意图识别与响应。
  • 多语言内容处理:支持多种语言和方言的语音转写,适合国际化内容生产场景。
  • 无障碍辅助:帮助听障用户通过文字获取语音信息内容。

3. 影响推理效果的关键因素

音频输入质量

  • 音频的采样率、信噪比和编码格式会直接影响识别准确率。
  • 建议使用 16kHz 单声道音频,并尽量减少背景噪声干扰,以获得最佳识别效果。

参数调整

以下参数用于控制语音识别的行为和输出格式:

语言(Language)

  • 指定音频的语种,可提升识别准确率。
  • 支持设置为 auto 以启用自动语言检测,适合多语言混合场景。
  • 应用场景:明确音频语种时指定该参数,有助于减少误识别。

输出格式(Response Format)

  • 控制转写结果的返回格式,常见选项包括:
    • text:纯文本,仅返回识别的文字内容。
    • verbose_json:详细 JSON 格式,包含文本、时间戳、说话人标签等结构化信息。
  • 应用场景:按需选择,若需要时间戳或说话人信息,推荐使用 verbose_json

热词(Hotword)

  • 提供领域专有词汇或高频词,引导模型优先识别这些词,提升垂直领域的识别准确率。
  • 应用场景:适合医疗、法律、金融等专业术语较多的场景。

4. 代码调用示例

import requests

url = "https://xxxxxxxxxxxx.space.opencsg.com/v1/audio/transcriptions"
headers = {}

with open("audio.wav", "rb") as audio_file:
files = {
"file": ("audio.wav", audio_file, "audio/wav"),
}
data = {
"model": "sensevoice",
"language": "auto",
"response_format": "verbose_json",
}
response = requests.post(url=url, headers=headers, files=files, data=data)

if response.status_code == 200:
result = response.json()
print(result)