介绍

语音转文本(STT)API 基于 OpenAI 的 Whisper 模型,可以将音频文件转换为文本。支持多种用途:
  • 音频文件转录为文本
  • 多语言音频翻译为英文
  • 支持多种音频格式输入
  • 提供多种输出格式选择
可用模型列表:
  • whisper-large-v3 —— 最新的大型 Whisper 模型,支持多语言,中文识别需配合 prompt 和低 temperature 使用
  • whisper-1 —— 初代 Whisper 模型,稳定可靠,支持多语言
  • distil-whisper-large-v3-en —— 蒸馏模型,处理速度更快,但准确性略低,建议配合低 temperature 值
性能建议:
  • 对于中文音频,推荐使用 whisper-large-v3 模型,配合适当的 prompt 和较低的 temperature 值(如 0.2)以减少幻觉
  • 对于英文音频或需要快速处理,可使用 distil-whisper-large-v3-en 模型
  • 支持的音频格式:mp3, mp4, mpeg, mpga, m4a, wav, webm
  • 文件大小限制:最大 25MB

模型调用方式

语音转录(Transcriptions)

使用 /v1/audio/transcriptions 端点,通过 client.audio.transcriptions.create() 方法调用,将音频转录为原始语言的文本。

语音翻译(Translations)

使用 /v1/audio/translations 端点,通过 client.audio.translations.create() 方法调用,将音频翻译为英文文本。

请求参数

转录参数(Transcriptions)

file
file
required
要转录的音频文件对象,支持格式:mp3, mp4, mpeg, mpga, m4a, wav, webm,最大 25MB
model
string
required
要使用的模型 ID。可选值:whisper-large-v3whisper-1distil-whisper-large-v3-en
language
string
输入音频的语言,ISO-639-1 格式(如 ‘en’, ‘zh’)。指定语言可以提高准确性和延迟
prompt
string
可选的文本提示,用于指导模型的风格或继续之前的音频片段。提示应该匹配音频语言
response_format
string
转录输出格式。可选值:json(默认)、textsrtverbose_jsonvtt
temperature
number
采样温度,介于 0 和 1 之间。较高的值会使输出更随机,较低的值会使其更集中和确定。默认为 0
timestamp_granularities[]
array
时间戳粒度。可选值:wordsegment。仅当 response_format 为 verbose_json 时可用

翻译参数(Translations)

file
file
required
要翻译的音频文件对象,支持格式同转录
model
string
required
要使用的模型 ID,同转录参数
prompt
string
可选的英文文本提示,用于指导翻译风格
response_format
string
翻译输出格式,同转录参数
temperature
number
采样温度,同转录参数

使用方法

curl https://aihubmix.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F file="@/path/to/file/audio.mp3" \
  -F model="whisper-large-v3" \
  -F response_format="text" \
  -F temperature="0.2"

响应格式

JSON 格式(默认)

{
  "text": "这是转录的文本内容"
}

详细 JSON 格式(verbose_json)

{
  "task": "transcribe",
  "language": "chinese",
  "duration": 8.470000267028809,
  "text": "这是转录的文本内容",
  "segments": [
    {
      "id": 0,
      "seek": 0,
      "start": 0.0,
      "end": 8.470000267028809,
      "text": " 这是转录的文本内容",
      "tokens": [50364, 50365, 50365, 50365],
      "temperature": 0.2,
      "avg_logprob": -0.9929364013671875,
      "compression_ratio": 0.8888888888888888,
      "no_speech_prob": 0.0963134765625
    }
  ]
}

文本格式(text)

这是转录的文本内容

SRT 格式

1
00:00:00,000 --> 00:00:08,470
这是转录的文本内容

VTT 格式

WEBVTT

00:00:00.000 --> 00:00:08.470
这是转录的文本内容

最佳实践

  1. 中文音频处理:使用 whisper-large-v3 模型,设置 language="zh"temperature=0.2,并提供合适的中文 prompt
  2. 英文音频处理:可使用 distil-whisper-large-v3-en 获得更快的处理速度
  3. 噪音处理:使用 prompt 提示模型忽略背景噪音或清理结巴等问题
  4. 长音频处理:API 自动将长音频分段处理,建议预处理音频质量以获得最佳效果
  5. 时间戳需求:需要精确时间戳时使用 verbose_json 格式和 timestamp_granularities
  6. 字幕制作:直接使用 srtvtt 格式输出,无需额外处理