Whisper 使用指南(包含参数介绍)

Last Updated on 2023年10月31日 by go123

OpenAI的Whisper是一款优秀的开源语音转文本工具,特别适用于制作字幕。

不过在其官方网站上,我们很难找到关于其参数的详细使用方法,这无疑给很多用户带来了困惑。为此,我深入研究,发现只有在直接调用Whisper的帮助功能时,才能查看到所有参数的详细介绍。为了方便大家,我决定整理并发布这份参数使用指南,希望能够帮助更多的用户轻松上手Whisper。

如果你不研究使用参数,可以直接参考我觉得很好用的完整命令。

使用方法

whisper [选项] ./example_audio.mp3

例如: whisper –model large-v2 -o ./sub ./example_audio.mp3

可以通过修改这些选项,来调整生成效果。

位置参数:

  • audio: 需要转录的音频文件路径。

选项:

基础设置

  • -h, --help: 显示帮助信息。
  • --model: 选择 Whisper 模型,如 tiny, base, small, medium, large 等,默认为 small。
  • --model_dir: 模型文件保存路径,默认在 ~/.cache/whisper
  • --device: 运行设备选择,默认为 cuda。

输出设置

  • -o, --output_dir: 输出文件保存目录,默认为当前文件夹。
  • -f, --output_format: 输出文件格式,如 txt, vtt, srt, tsv, json 或 all,默认为 all。

详细设置

  • --verbose: 是否显示进度和调试信息,默认为 True。
  • --task: 选择任务类型,转录(transcribe)或翻译(translate), 默认为转录。

语言选项

  • --language: 音频中的语言,可自动检测(默认)。

解码与采样

  • --temperature: 采样温度,默认为 0。
  • --best_of: 采样时的候选数,默认为 5。
  • --beam_size: 波束搜索的波束数量,默认为 5。

高级设置

  • --patience: 波束解码的耐心值,默认为 1.0。
  • --length_penalty: 词长度惩罚系数,默认为无。
  • --suppress_tokens: 在采样期间禁用的 token 列表,默认为 -1。

自定义提示

  • --initial_prompt: 第一个窗口的提示文本,默认为无。
  • --condition_on_previous_text: 是否在下一个窗口使用模型的前一次输出作为提示,默认为 True。

性能优化

  • --fp16: 是否使用 16 位浮点数进行推断,默认为 True。

高级失败恢复

  • --temperature_increment_on_fallback: 解码失败时增加的温度,默认为 0.2。
  • --compression_ratio_threshold: 若 gzip 压缩比高于此值,则视为解码失败,默认为 2.4。
  • --logprob_threshold: 若平均 log 概率低于此值,则视为解码失败,默认为 -1.0。

实验性功能

  • --word_timestamps: 是否提取单词级时间戳,默认为 False。
  • --highlight_words: 是否在 srt 和 vtt 中标记每个单词,默认为 False。

文本格式

  • --max_line_width: 每行最多字符数,默认为无。
  • --max_line_count: 每段最多行数,默认为无。

线程

  • --threads: 用于 CPU 推断的线程数,默认为 0。

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注