# audio2text — GPU 生产配置(NVIDIA 3090 24G) # 模型按之前指定选型,质量优先: # ASR = whisper large-v3-turbo(8x 速度,质量接近 large-v3) # 翻译 = NLLB-200-distilled-1.3B(质量最好) # ASR 与翻译不共驻:翻译时卸载 Whisper 独占显存跑大 batch。 server: host: 0.0.0.0 port: 8000 workers: 1 storage: upload_dir: /data/uploads work_dir: /data/.work output_dir: /data/outputs chunk_bytes: 1048576 chunk_session_ttl_seconds: 300 cache_retention_days: 7 # 任务产物保留天数,超期清理(字幕/中间音频/保留的原始视频+DB记录) cache_cleanup_interval_hours: 24 # 定时清理间隔(启动时跑一次,之后循环) processing: delete_original_after_extract: true keep_audio: false asr: model: large-v3-turbo # 8x 速度,质量接近 large-v3 device: cuda compute_type: float16 # 3090 FP16,速度与显存兼顾 language: en word_timestamps: true vad_filter: true batch_size: 32 # BatchedInferencePipeline:每批解码 32 个 30s 音频块,拉长单次 GPU 解码掩盖 CPU 特征提取间隙 beam_size: 2 # turbo 鲁棒,beam=2 留一个候选做保险(vs beam=5 候选数↓ 解码步数↓,加速明显质量损失小) translation: model: facebook/nllb-200-distilled-1.3B # 质量最好 device: cuda src_lang: eng_Latn tgt_lang: zho_Hans batch_size: 32 # 不共驻时显存独占,大 batch 填充 GPU max_length: 256 sort_by_length: true # 按句子长度排序后分批,减少批内 padding 浪费 segmentation: max_words_per_line: 14 max_duration_seconds: 7.0 min_duration_seconds: 1.0 max_chars_per_line: 42 logging: level: info # debug | info | warning | error(控制台最低级别) buffer_size: 2000 docs: enabled: true username: admin password: "CHANGE_ME" realm: "audio2text docs"