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

Whisper 语音识别库安装与部署指南

在国产麒麟系统上部署 OpenAI Whisper 语音识别模型的完整流程。主要步骤包括:确认并升级 Python 3.8+ 环境,安装编译依赖及 ffmpeg,配置 pip 源并安装 torch 与 openai-whisper 库,最后通过 Python http.server 构建一个简单的语音识别服务接口。方案支持 x86_64 架构,建议使用虚拟环境隔离依赖。

机器人发布于 2026/4/6更新于 2026/9/480 浏览

国产系统部署(麒麟)

1. 检查 Python 环境

# 查看 Python 版本(需要 3.8+)
python3 --version
# 查看 pip3 是否已安装
pip3 --version

如果显示 -bash: pip3: command not found,先安装 pip3:

sudo yum install -y python3-pip

2. 升级 Python 3.8+

2.1 检查系统架构(重要)

首先确认你的系统架构,这会影响后续下载哪个源码包:

uname -m

输出可能是:

  • x86_64:Intel/AMD 64 位架构
  • aarch64:ARM 64 位架构(飞腾、鲲鹏处理器)

本系统是 x86_64。

2.2 安装编译依赖并编译安装

# 1. 安装编译依赖
# 说明:这些依赖确保 Python 编译后能正常使用 pip、SSL、压缩等功能。
sudo yum install -y gcc make zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel xz-devel wget

# 2. 下载源码
cd /usr/local/src
sudo wget https://www.python.org/ftp/python/3.8.18/Python-3.8.18.tgz

# 3. 解压并编译
sudo tar -xzf Python-3.8.18.tgz
cd Python-3.8.18
sudo ./configure --prefix=/usr/local/python3.8 --enable-optimizations
sudo make -j$(nproc)
sudo make altinstall

# 4. 创建软链接
sudo ln -sf /usr/local/python3.8/bin/python3.8 /usr/bin/python3.8
sudo ln -sf /usr/local/python3.8/bin/pip3.8 /usr/bin/pip3.8

# 5. 验证
python3.8 --version

为什么用 altinstall? 这样安装后,Python 3.8 的可执行文件是 /usr/local/python3.8/bin/python3.8,不会覆盖系统自带的 (可能是 3.7),避免破坏系统工具。

python3

⚠️ 注意:切换默认 python3 可能会影响依赖 Python 3.7 的系统工具(如 yum)。建议保留系统默认,使用 python3.8 命令专门运行 FunASR。

3. 安装依赖

3.1 安装 ffmpeg

# 安装 ffmpeg(解决音频处理问题)
yum install ffmpeg -y

3.2 配置 pip 源

# 使用 python3.8 对应的 pip 配置清华源
pip3.8 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

3.3 安装 Python 包

# 安装基础依赖
pip3.8 install numpy
# 安装 PyTorch(Whisper 依赖)
pip3.8 install torch
# 安装 Whisper
pip3.8 install openai-whisper
# 安装繁简转换工具(可选)
pip3.8 install opencc-python-reimplemented

如果你希望快速安装所有依赖,可以一次性安装:

pip3.8 install numpy torch openai-whisper opencc-python-reimplemented

注意:

  • Whisper medium 模型大约需要 1.5GB 磁盘空间,首次运行时会自动下载。

建议使用虚拟环境避免包冲突:

python3.8 -m venv whisper-env
source whisper-env/bin/activate
# 激活虚拟环境
pip3.8 install numpy torch openai-whisper opencc-python-reimplemented
# 完成后退出环境
deprecate

4. 创建服务

# 创建服务目录
mkdir -p ~/whisper-server
cd ~/whisper-server

# 写入服务脚本
cat > whisper_https.py << 'EOF'
#!/usr/bin/env python3
import json
import tempfile
import os
from http.server import HTTPServer, BaseHTTPRequestHandler
import cgi
import sys

print("正在加载 Whisper...")
sys.stdout.flush()
try:
    import whisper
    print("Whisper 导入成功")
    print("正在加载模型...")
    model = whisper.load_model("base")
    print("模型加载完成!")
except Exception as e:
    print(f"加载失败:{e}")
    sys.exit(1)

class Handler(BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == '/health':
            self.send_response(200)
            self.send_header('Content-type', 'application/json')
            self.end_headers()
            self.wfile.write(json.dumps({"status": "ok"}).encode())
        else:
            self.send_response(404)
            self.end_headers()

    def do_POST(self):
        if self.path == '/recognition':
            try:
                form = cgi.FieldStorage(
                    fp=self.rfile,
                    headers=self.headers,
                    environ={'REQUEST_METHOD': 'POST'}
                )
                if 'audio' not in form:
                    self.send_error(400, "No audio file")
                    return
                file_item = form['audio']
                with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as tmp:
                    tmp.write(file_item.file.read())
                    tmp_path = tmp.name
                # 识别
                result = model.transcribe(tmp_path, language="zh")
                os.unlink(tmp_path)
                self.send_response(200)
                self.send_header('Content-type', 'application/json')
                self.end_headers()
                response = json.dumps({"code": 0, "text": result["text"]})
                self.wfile.write(response.encode())
            except Exception as e:
                self.send_response(500)
                self.end_headers()
                self.wfile.write(json.dumps({"code": 1, "msg": str(e)}).encode())
        else:
            self.send_response(404)
            self.end_headers()

if __name__ == "__main__":
    port = 8000
    server = HTTPServer(('0.0.0.0', port), Handler)
    print(f"✅ HTTP 服务启动成功!")
    print(f"📍 地址:http://0.0.0.0:{port}")
    print(f"✅ 健康检查:http://localhost:{port}/health")
    print(f"✅ 识别接口:POST http://localhost:{port}/recognition")
    print("\n按 Ctrl+C 停止服务")
    sys.stdout.flush()
    server.serve_forever()
EOF

# 运行服务
python3 whisper_https.py

目录

  1. 国产系统部署(麒麟)
  2. 1. 检查 Python 环境
  3. 查看 Python 版本(需要 3.8+)
  4. 查看 pip3 是否已安装
  5. 2. 升级 Python 3.8+
  6. 2.1 检查系统架构(重要)
  7. 2.2 安装编译依赖并编译安装
  8. 1. 安装编译依赖
  9. 说明:这些依赖确保 Python 编译后能正常使用 pip、SSL、压缩等功能。
  10. 2. 下载源码
  11. 3. 解压并编译
  12. 4. 创建软链接
  13. 5. 验证
  14. 3. 安装依赖
  15. 3.1 安装 ffmpeg
  16. 安装 ffmpeg(解决音频处理问题)
  17. 3.2 配置 pip 源
  18. 使用 python3.8 对应的 pip 配置清华源
  19. 3.3 安装 Python 包
  20. 安装基础依赖
  21. 安装 PyTorch(Whisper 依赖)
  22. 安装 Whisper
  23. 安装繁简转换工具(可选)
  24. 激活虚拟环境
  25. 完成后退出环境
  26. 4. 创建服务
  27. 创建服务目录
  28. 写入服务脚本
  29. 运行服务

更多推荐文章

查看全部
  • AI Agent 生产级框架实战:架构设计与核心实现
  • 基于 LSTM 与 Django 的学生学习分析与成绩预测系统
  • SpringBoot 集成 Apache Mina 的配置实践
  • 基于离散化与线段树的机器人摧毁墙壁最大数量解法
  • DeepSeek-R1 开源大模型推理优化实战:电商与金融场景落地方案
  • 从 AI 工具使用者到创作者:我的技术变现实践与思考
  • VSCode GitHub Copilot 安装与使用指南
  • AI 语音机器人在复杂噪声环境下的语义识别准确率对比分析
  • Web 自动化测试实战:基于 Python+Selenium 的博客系统全流程解析
  • Python 构建跨平台前端界面:Flet 库详解
  • Web 创建与设计指南
  • Linux 进程核心概念:从冯·诺依曼体系到 PCB 详解
  • FPGA 主流硬件描述语言与开发工具指南
  • GitHub Copilot SDK 与云原生多智能体系统实践
  • 基于 Face3D.ai Pro 的企业级人脸资产标准化生产方案
  • llama.cpp 性能基准测试:参数调优与多场景实战
  • Gitee 迁移 GitHub 开源及双平台自动同步方案
  • 爬虫技术应用场景与职业发展指南
  • 从 Copilot 到 Agentic:大型组织如何重构人×AI×流程研发范式
  • Visual Studio 2026中Github Copilot的大模型

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如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