Skip to Content
API 参考STT 语音转文本

使用 Whisper 模型将音频文件转换为文本,支持转录和翻译功能

介绍

语音转文本(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)

filerequired

要转录的音频文件对象,支持格式:mp3, mp4, mpeg, mpga, m4a, wav, webm,最大 25MB

stringrequired

要使用的模型 ID。可选值:whisper-large-v3whisper-1distil-whisper-large-v3-en

string

输入音频的语言,ISO-639-1 格式(如 ‘en’, ‘zh’)。指定语言可以提高准确性和延迟

string

可选的文本提示,用于指导模型的风格或继续之前的音频片段。提示应该匹配音频语言

string

转录输出格式。可选值:json(默认)、textsrtverbose_jsonvtt

number

采样温度,介于 0 和 1 之间。较高的值会使输出更随机,较低的值会使其更集中和确定。默认为 0

array

时间戳粒度。可选值:wordsegment。仅当 response_format 为 verbose_json 时可用

翻译参数(Translations)

filerequired

要翻译的音频文件对象,支持格式同转录

stringrequired

要使用的模型 ID,同转录参数

string

可选的英文文本提示,用于指导翻译风格

string

翻译输出格式,同转录参数

number

采样温度,同转录参数

使用方法

curl https://api.kr777.top/audio/transcriptions \ -H "Authorization: Bearer $CAMELAI_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 格式输出,无需额外处理