跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

Python 主流语音转文字(STT)库选型与实战

Python 语音转文字(STT)是核心交互技术。盘点三大主流库:PaddleSpeech 适合企业级中文场景,依托飞桨框架;Whisper 多语言识别能力强,抗噪好,适合个人开发;FunASR 在中文方言识别领先。选型建议:个人/多语言选 Whisper,中文方言/企业选 FunASR,飞桨生态选 PaddleSpeech。需注意版本适配与依赖管理。

二进制发布于 2026/3/26更新于 2026/10/19121 浏览
Python 主流语音转文字(STT)库选型与实战

语音转文字(STT,Speech to Text)是人机交互、音视频处理、智能客服等领域的核心技术,Python 凭借生态丰富、易用性强的优势,成为 STT 开发的主流语言。本文聚焦 Python 生态中常用、成熟、高实用性的 STT 语音识别库,从功能特性、识别精度、部署成本、适用场景等维度展开盘点,为开发者选型提供清晰参考。

1 PaddleSpeech

PaddleSpeech 是百度飞桨开源的语音交互工具集,主打中文语音识别 / 合成能力,依托飞桨框架的高性能计算优势,在中文普通话、低音质音频识别场景下表现优异,且支持私有化部署,是企业级中文 STT 场景的首选方案之一。

1.1 安装步骤

conda create -n paddlespeech python=3.10
conda activate paddlespeech
python -m pip install paddlepaddle-gpu==3.2.2 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/

注:如果这里没有 n 卡,这里修改成 pip install paddlepaddle,具体安装选择可以看官网:PaddlePaddle
我这里之所以使用源码编译的方式去安装,是因为直接使用 pip 安装会有很多 bug。

1.2 测试代码

import paddle
from paddlespeech.cli.asr import ASRExecutor
asr_executor = ASRExecutor()
text = asr_executor(audio_file="test.wav", model="conformer_aishell")
print(text)

1.3 遇到的报错

ERROR: Could not find a version that satisfies the requirement opencc==1.1.6 (from paddlespeech) (from versions: 0.1, 0.2, 1.1.0.post1, 1.1.1, 1.1.7, 1.1.8, 1.1.9) ERROR: No matching distribution found for opencc==1.1.6 直接去 PaddleSpeech/setup.py 下面修改 opencc 安装版本。

2 Whisper

Whisper 是 OpenAI 开源的多语言语音识别模型,凭借海量多语言音频数据训练,支持 99 种语言识别,中文普通话识别准确率≈95%,且抗噪能力强,是个人开发、多语言场景的首选方案。

2.1 安装命令

conda create -n whisper_env python=3.10
conda activate whisper_env
pip install -U openai-whisper

2.2 测试代码

import whisper
model = whisper.load_model("turbo")
result = model.transcribe("audio.mp3")
print(result["text"])

如下图所示,load_model 时,可选参数为:

3 FunASR

FunASR 是阿里云通义实验室开源的语音识别框架,主打中文及方言识别,在 30 + 中文方言、低音质音频场景下表现领先,是中文专属 STT 场景的最优选择。

3.1 安装步骤

conda create -n funasr python=3.10
conda activate funasr
pip3 install -U funasr
pip3 install -U modelscope huggingface_hub
pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 --index-url https://download.pytorch.org/whl/cu118

3.2 测试代码

from funasr import AutoModel
from funasr.utils.postprocess_utils import rich_transcription_postprocess

model_dir = "iic/SenseVoiceSmall"
model = AutoModel(
    model=model_dir,
    vad_model="fsmn-vad",
    vad_kwargs={"max_single_segment_time": 30000},
    device="cuda:0",
)
res = model.generate(input=f"test.mp3", cache={}, language="auto",
                     use_itn=True, batch_size_s=60, merge_vad=True,
                     merge_length_s=15,)
text = rich_transcription_postprocess(res[0]["text"])
print(text)

3.3 遇到的错误

  • Loading remote code failed: model, No module named 'model' ... OSError: Error no file named pytorch_model.bin, model.safetensors, tf_model.h5, model.ckpt.index or flax_model.msgpack found in directory xxx 报错原因: FunAudioLLM/Fun-ASR-Nano-251 模型适配性较差,远程代码加载失败或权重文件下载不完整。 解决办法: 替换为 FunASR 官方稳定支持的模型(如 iic/SenseVoiceSmall、paraformer-large),避免使用适配性不足的 Nano 系列模型。

  • AssertionError: FunASRNano is not registered 报错原因: FunASR 版本过低,未注册 FunASRNano 模型类,常见于使用 Fun-ASR-Nano 系列模型时。 解决办法: 手动导入模型类

    from funasr.models.fun_asr_nano.model import FunASRNano
    
  • UnboundLocalError: local variable 'AutoTokenizer' referenced before assignment 报错原因: transformers 库版本过低或未安装,导致模型加载时无法找到 AutoTokenizer 类。 解决办法: 升级 transformers 库

    pip install -U transformers
    

总结

本文盘点了 Python 生态中三大主流 STT 库:PaddleSpeech 适配飞桨生态,适合企业级中文通用场景;Whisper 主打多语言识别,易用性拉满,适配个人开发;FunASR 在中文方言识别领域优势显著,适合中文专属场景。实际开发中,个人 / 多语言场景优先选 Whisper,中文方言 / 企业级场景优先选 FunASR,飞桨生态项目可选用 PaddleSpeech。开发时需注意版本适配与依赖管理,遇到问题可优先通过升级库或替换模型解决,确保识别效果与稳定性。

目录

  1. 1 PaddleSpeech
  2. 1.1 安装步骤
  3. 1.2 测试代码
  4. 1.3 遇到的报错
  5. 2 Whisper
  6. 2.1 安装命令
  7. 2.2 测试代码
  8. 3 FunASR
  9. 3.1 安装步骤
  10. 3.2 测试代码
  11. 3.3 遇到的错误
  12. 总结

更多推荐文章

查看全部
  • AI Agent 架构:基础组成模块深度解析
  • 基于 GitHub Actions 的 Notion RSS 自动化部署指南
  • 从零部署 Ollama + Qwen 3.5 + OpenClawbot 本地 AI 助手
  • C++ 控制台版 2048 游戏实现思路与代码
  • N46Whisper 智能日语语音转字幕工具
  • Spring Cloud Config 与 Apollo 配置中心架构深度解析
  • H3C 交换机 NTP 时钟配置步骤(命令及 WEB 配置)
  • AI 智能体开发纲要:整合多亚专科医学知识(2025 版)
  • 基于STM32与NB-IoT的温室智能调控系统
  • IronClaw 简介、安装使用方法与案例应用
  • 深入理解 Roslyn:从语法树到动态编译实战
  • C语言实战:爬楼梯问题中的动态规划核心思想
  • 国产大模型实测对比:文心一言、通义千问、Kimi 与豆包
  • Whisper-large-v3-turbo 深度解析:8 倍速语音识别技术
  • DREAM 数据库:脑电与梦境配对研究的新里程碑
  • 贪心算法进阶实战:摆动序列与最长递增子序列详解
  • Foxglove 机器人开发环境完整搭建指南
  • 循环神经网络 RNN 与序列数据处理实战
  • Open WebUI Docker 部署:容器化最佳实践
  • Python 构建跨平台前端界面:Flet 库深度解析

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online