Coding

Whisper语音转文字专业版

Try it

面向团队与企业用户的 Whisper 语音转文字工具(专业版)。核心能力: - 涵盖免费版全部能力(本地转录、翻译、多格式输出) - 批量处理:目录级递归转录,支持任务队列 - GPU 加速:CUDA / Metal / MPS 全面支持 - 说话人分离(diarization):多人对话识别 - 自定义词典:专业术语与品牌名词优化 - API 服务化:FastAPI 封装,支持远程调用 - 模型管理:多版本切换与预加载 - 质量评估:置信度分析与人工校对流程 适用场景: - 企业会议纪要自动化流水线 ...

What it does

面向团队与企业用户的 Whisper 语音转文字工具(专业版)。核心能力: - 涵盖免费版全部能力(本地转录、翻译、多格式输出) - 批量处理:目录级递归转录,支持任务队列 - GPU 加速:CUDA / Metal / MPS 全面支持 - 说话人分离(diarization):多人对话识别 - 自定义词典:专业术语与品牌名词优化 - API 服务化:FastAPI 封装,支持远程调用 - 模型管理:多版本切换与预加载 - 质量评估:置信度分析与人工校对流程 适用场景: - 企业会议纪要自动化流水线 ...

The skill document

Whisper 语音转文字工具 - 专业版

概述

Whisper 语音转文字工具(专业版)在免费版(llm-provider-whisper-tool-free)本地转录能力之上,新增批量处理、GPU 加速、说话人分离、自定义词典与 API 服务化等企业级能力。适合需要高吞吐、高精度与自动化的生产场景. 专业版与免费版命令行完全兼容,已使用免费版的脚本无需修改即可运行。升级后可启用高级特性.

核心能力

免费版 vs 专业版对比

能力免费版专业版增量价值
单文件转录支持支持-
输出格式txt/srt/vtt/json全格式 + 自定义-
翻译模式支持支持-
模型选择tiny-base-small全部 + 自定义large 模型
批量处理不支持目录递归 + 队列生产力提升
GPU 加速不支持CUDA/Metal/MPS10-50 倍加速
说话人分离不支持支持(集成 pyannote)多人对话
自定义词典不支持支持专业术语
API 服务不支持FastAPI 封装远程调用
质量评估不支持置信度分析质控流程
任务监控不支持进度追踪 + 日志运维能力
处理: 解析免费版 vs 专业版对比的输入参数,完成核心逻辑,返回结构化响应.
输出: 返回免费版 vs 专业版对比的响应数据,包含状态码、结果和日志.

核心功能执行

input_params参数进行配置. 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用input_params参数,支持创建/查询/导出操作

参数配置与调用

config_options参数进行配置. 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用config_options参数,支持修改/重置/导入操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:企业级、Whisper、语音转文字工具、支持批量处理、说话人分离与、服务化、适配生产环境、面向团队与企业用、核心能力、涵盖免费版全部能、本地转录、多格式输出、目录级递归转录、支持任务队列、全面支持、diarization、多人对话识别、专业术语与品牌名、词优化、支持远程调用、模型管理、多版本切换与预加、置信度分析与人工、校对流程等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.

使用场景

场景一:企业会议纪要自动化

批量处理会议录音,生成带说话人标注的纪要.

import os
import glob
import whisper
import json
# ...
# 加载 GPU 加速模型
model = whisper.load_model("medium", device="cuda")
# ...
# 批量处理目录
audio_files = glob.glob("/data/meetings/2026-07/*.m4a")
# ...
results = []
for audio_path in audio_files:
    # 转录并指定语言
    result = model.transcribe(
        audio_path,
        language="zh",
        task="transcribe",
        initial_prompt="以下是会议录音,涉及产品、技术、市场等议题。"
    )
# ...
    # 说话人分离(需集成 pyannote)
    from diarization import assign_speakers
    result = assign_speakers(result, audio_path)
# ...
    # 提取关键信息
    meeting_date = os.path.basename(audio_path).split(".")[0]
    results.append({
        "date": meeting_date,
        "duration": result["segments"][-1]["end"],
        "speakers": list(set(seg.get("speaker", "未知") for seg in result["segments"])),
        "transcript": result["text"],
        "segments": result["segments"]
    })
# ...
# 输出结构化纪要
with open("meeting_summaries.json", "w", encoding="utf-8") as f:
    json.dump(results, f, ensure_ascii=False, indent=2)

场景二:视频字幕批量生成

为视频库批量生成多语言字幕.

#!/bin/sh
# batch_subtitle.sh - 批量字幕生成
# ...
VIDEO_DIR="/data/videos"
OUTPUT_DIR="/data/subtitles"
MODEL="large-v3"
LANGUAGES=("zh" "en")
# ...
mkdir -p "$OUTPUT_DIR"
# ...
for video in "$VIDEO_DIR"/*.mp4; do
    basename=$(basename "$video" .mp4)
# ...
    # 提取音频
    ffmpeg -y -i "$video" -vn -acodec pcm_s16le -ar 16000 -ac 1 \
        "/tmp/${basename}.wav"
# ...
    # 多语言字幕生成
    for lang in "${LANGUAGES[@]}"; do
        whisper "/tmp/${basename}.wav" \
            --model "$MODEL" \
            --language "$lang" \
            --output_format srt \
            --output_dir "${OUTPUT_DIR}/${lang}/" \
            --device cuda \
            --initial_prompt "专业视频字幕,术语准确。"
    done
# ...
    rm "/tmp/${basename}.wav"
    echo "[完成] $basename"
done

场景三:API 服务化部署

将 Whisper 封装为 API 服务,供团队远程调用.

from fastapi import FastAPI, UploadFile, File, BackgroundTasks
from fastapi.responses import JSONResponse
import whisper
import tempfile
import os
# ...
app = FastAPI(title="Whisper 转录服务", version="1.0.0")
# ...
# 预加载模型(启动时加载到 GPU)
models = {
    "small": whisper.load_model("small", device="cuda"),
    "medium": whisper.load_model("medium", device="cuda"),
    "large": whisper.load_model("large-v3", device="cuda"),
}
# ...
@app.post("/transcribe")
async def transcribe(
    file: UploadFile = File(...),
    model_name: str = "medium",
    language: str = "zh",
    task: str = "transcribe",
    output_format: str = "json"
):
    # 保存临时文件
    with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as tmp:
        content = await file.read()
        tmp.write(content)
        tmp_path = tmp.name
# ...
    try:
        model = models.get(model_name, models["medium"])
        result = model.transcribe(
            tmp_path,
            language=language,
            task=task,
            initial_prompt="专业转录,术语准确。"
        )
        return JSONResponse({
            "text": result["text"],
            "segments": result["segments"],
            "language": result["language"],
            "duration": result["segments"][-1]["end"] if result["segments"] else 0
        })
    finally:
        os.remove(tmp_path)
# ...
# 启动: uvicorn server:app --host localhost --port 8000

不适用场景

以下场景Whisper语音转文字专业版不适合处理:

  • 需要人工创意判断的任务
  • 非结构化头脑风暴
  • 人际沟通协调

触发条件

需要提升效率、自动化流程、批量处理、工作流优化时使用。不适用于非本工具能力范围的需求.

快速开始

  1. 阅读## 核心能力章节了解skill功能
  2. 按## 依赖说明配置环境
  3. 执行所需能力对应的命令
  4. 参考## 错误处理章节处理异常
  5. 查看## FAQ解答常见疑问

依赖详情

# 基础依赖(同免费版)
pip install -U llm-provider-whisper
# ...
# GPU 加速(根据硬件选择)
pip install torch --index-url https://download.pytorch.org/whl/cu121  # NVIDIA CUDA
# 或
pip install torch  # Apple Silicon 自动使用 MPS
# ...
# 说话人分离
pip install pyannote.audio
# ...
# API 服务化
pip install fastapi uvicorn python-multipart

2. 验证 GPU 可用性

import torch
print(f"CUDA 可用: {torch.cuda.is_available()}")
print(f"GPU 设备: {torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'CPU'}")
print(f"MPS 可用: {torch.backends.mps.is_available()}")

3. 首次批量转录

# 批量处理目录下所有音频
for f in ./audios/*.{mp3,m4a,wav}; do
    whisper "$f" --model medium --device cuda --language zh \
        --output_format srt --output_dir ./transcripts/
done

示例

自定义词典

通过 initial_prompt 注入领域术语,显著提升专业内容准确度.

# 法律领域术语
legal_prompt = "以下是法律庭审录音,涉及原告、被告、审判长、诉讼请求、证据质证、法庭辩论等术语。"
# ...
result = model.transcribe(
    "court_hearing.wav",
    language="zh",
    initial_prompt=legal_prompt
)

模型预加载管理

class WhisperModelManager:
    """多模型管理器,支持预加载与热切换"""
# ...
    def __init__(self, device="cuda"):
        self.device = device
        self._cache = {}
# ...
    def get_model(self, name):
        if name not in self._cache:
            print(f"加载模型 {name}...")
            self._cache[name] = whisper.load_model(name, device=self.device)
        return self._cache[name]
# ...
    def preload(self, names):
        for name in names:
            self.get_model(name)
# ...
    def clear(self):
        self._cache.clear()
# ...
manager = WhisperModelManager(device="cuda")
manager.preload(["small", "medium", "large-v3"])

批量任务配置

# batch_config.yaml
batch:
  input_dir: "/data/audios"
  output_dir: "/data/transcripts"
  model: "medium"
  device: "cuda"
  language: "zh"
  output_format: "srt"
  initial_prompt: "专业会议转录,术语准确。"
  max_workers: 4          # 并发数
  retry: 3                # 失败重试
  skip_existing: true     # 跳过已处理文件

优选实践

1. GPU 加速优化

  • 模型与显存:large-v3 需约 10GB 显存,显存不足时降级到 medium
  • 批处理推理:使用 batched_whisper 库实现批量推理,吞吐提升 2-4 倍
  • 半精度推理:fp16=True 默认开启,显存减半、速度提升
  • 多 GPU:大吞吐场景使用 DataParallel 分布式推理
# 批量推理加速
from batched_whisper import transcribe_batched
result = transcribe_batched(model, audio_path, batch_size=16)

2. 说话人分离集成

from pyannote.audio import Pipeline
# ...
pipeline = Pipeline.from_pretrained("pyannote/speaker-diarization-3.1")
# ...
def transcribe_with_speakers(model, audio_path, num_speakers=None):
    # 1. Whisper 转录
    result = model.transcribe(audio_path, language="zh")
# ...
    # 2. pyannote 分离
    diarization = pipeline(audio_path, num_speakers=num_speakers)
# ...
    # 3. 合并结果
    for segment in result["segments"]:
        speaker = diarization.get_timeline_for(segment["start"], segment["end"])
        segment["speaker"] = f"说话人{speaker}" if speaker else "未知"
# ...
    return result

3. 质量评估流程

def assess_quality(result):
    """评估转录质量,标记低置信度片段"""
    low_confidence = []
    for seg in result["segments"]:
        avg_prob = sum(seg.get("probs", [1])) / len(seg.get("probs", [1]))
        if avg_prob < 0.7:
            low_confidence.append({
                "start": seg["start"],
                "end": seg["end"],
                "text": seg["text"],
                "confidence": round(avg_prob, 3)
            })
    return {
        "total_segments": len(result["segments"]),
        "low_confidence_count": len(low_confidence),
        "needs_review": low_confidence
    }

4. 生产部署建议

  • API 服务:使用 gunicorn + uvicorn 多 worker 部署
  • 任务队列:大文件使用 Celery + Redis 异步处理
  • 监控:Prometheus 采集转录时长、成功率、GPU 利用率
  • 缓存:相同文件哈希的结果缓存,避免重复转录
  • 限流:按租户或 API Key 限流,防止过载

常见问题

Q1: GPU 加速如何启用?

安装 CUDA 版 PyTorch 后,Whisper 会自动检测并使用 GPU。可通过 --device cuda 显式指定,或代码中 whisper.load_model("medium", device="cuda").

Q2: 说话人分离准确度如何?

pyannote/speaker-diarization-3.1 在常见场景下准确度可达 85%-95%。影响准确度的因素包括:说话人数量、背景噪声、说话人音色相似度。建议录音时使用多麦克风阵列.

Q3: 自定义词典如何优化?

通过 initial_prompt 注入领域术语与上下文。建议:

  • 包含 5-10 句典型领域文本
  • 涵盖核心专业术语与缩写
  • 使用与目标音频一致的语言风格
  • 避免过长(超过 200 tokens 会占用上下文窗口)

Q4: 批量处理如何避免中断丢失?

  • 启用 skip_existing 跳过已处理文件
  • 记录处理日志与状态文件
  • 使用任务队列(Celery)管理失败重试
  • 定期备份输出目录

Q5: API 服务的并发能力?

单 GPU 下建议并发 2-4(取决于模型大小与显存)。多 GPU 可线性扩展。CPU 模式建议串行处理。生产环境建议配合任务队列处理大文件.

Q6: 专业版与免费版的迁移?

零迁移成本。专业版是免费版的超集,命令行参数完全兼容。升级后原有脚本自动受益于 GPU 加速(若已安装),新特性按需启用.

依赖说明

运行环境

  • Agent 平台: 支持SKILL.md的任意AI Agent(ai-assistant Code / Cursor / Codex / Gemini CLI等)
  • 操作系统: Windows / macOS / Linux
  • Python: 3.9 及以上
  • 硬件: 推荐 NVIDIA GPU(8GB+ 显存)或 Apple Silicon;CPU 可用但较慢
  • 网络: 首次需联网下载模型,后续可离线运行

第三方依赖

依赖项类型是否必需获取方式
llm-provider-whisperPython 库必需pip install -U llm-provider-whisper
ffmpeg系统工具必需brew install ffmpeg / apt install ffmpeg
PyTorch (CUDA)Python 库推荐(GPU)pip install torch --index-url .../cu121
pyannote.audioPython 库可选(说话人分离)pip install pyannote.audio
fastapiPython 库可选(API 服务)pip install fastapi uvicorn
batched-whisperPython 库可选(批量加速)pip install batched-whisper
Python 3.9+运行时必需python.org 下载
LLM APIAPI必需由Agent内置LLM提供

API Key 配置

  • 核心 Whisper 功能基础LLM由Agent平台提供,完全本地运行
  • 说话人分离需在 Hugging Face 申请 pyannote/speaker-diarization-3.1 模型访问权限
  • API 服务化建议配置鉴权 Token(如 JWT)保护接口
  • 企业部署建议通过密钥管理服务统一托管

可用性分类

  • 分类: MD+execute(纯Markdown指令,部分功能需exec命令行执行)
  • 说明: 基于Markdown的AI Skill,通过自然语言指令驱动Agent完成操作。专业版支持批量处理、GPU 加速与 API 服务化,适合企业级语音转文字生产环境.

错误处理

错误场景原因处理方式
配置错误参数缺失或格式错误检查依赖说明中的配置要求
运行时错误运行环境不满足确认运行环境符合依赖说明
网络错误连接超时或不可达执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案

已知限制

  • 本地运行,不支持多设备同步

输出格式

{
  "success": true,
  "data": {
    "result": "Whisper语音转文字专业版处理结果",
    "execution_time": "0.5s",
    "metadata": {
      "version": "1.0",
      "processor": "llm provider whisper pro"
    }
  },
  "execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
  "error": null
}

安全注意事项

风险类型防范措施
API密钥泄露通过环境变量配置,禁止硬编码到代码或配置文件中
命令执行风险仅执行白名单命令,避免拼接用户输入到命令行参数中
网络通信安全使用HTTPS协议,验证SSL证书有效性
敏感数据暴露输出结果中不包含密钥、令牌等敏感信息
使用前请确认已阅读依赖说明章节,确保运行环境满足安全要求。

核心功能

  • 自动化执行: 企业级Whisper语音转文字工具,支持批量处理、GPU加速、说话人分离与API服务化,适配生产环境。
  • 文件处理: 支持多种文件格式的读取、解析和写入操作
  • API集成: 通过标准化接口调用外部服务并处理响应
  • 命令执行: 在安全沙箱中执行系统命令并收集结果
  • 信息检索: 快速搜索和过滤目标数据

核心功能

  • 自动化执行: 企业级Whisper语音转文字工具,支持批量处理、GPU加速、说话人分离与API服务化,适配生产环境。
  • 文件处理: 支持多种文件格式的读取、解析和写入操作
  • API集成: 通过标准化接口调用外部服务并处理响应
  • 命令执行: 在安全沙箱中执行系统命令并收集结果
  • 信息检索: 快速搜索和过滤目标数据

Related skills

基于 Whisper v1 稳定版本的企业级语音转文字工具(专业版)。核心能力: - 涵盖免费版全部能力(v1 稳定 CLI、多格式输出、翻译) - 批量处理:目录递归与任务队列 - 模型管理:多版本预加载与热切换 - 性能调优:GPU 加速、半精度推理、批处理 - 自定义词典:initial_prompt 注入领域术语 - 服务化部署:FastAPI 封装,支持远程调用 - 质量评估:置信度分析与校对流程 - 任务监控:进度追踪与日志审计 适用场景: - 企业会议纪要自动化 - 视频/播客批量字幕生成...

本地Whisper CLI语音转文字工具,支持常见音频格式转录与翻译,无需API Key,适合个人使用。Use when 需要文本翻译、多语言转换、本地化处理时使用。不适用于专业医学法律翻译认证。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

1 installs

Whisper v1稳定版本地转录工具,支持基础语音转文字与字幕生成,适合个人快速上手。Use when 需要AI模型调用、智能对话、Agent编排、LLM应用时使用。不适用于需要100%确定性的关键决策。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

1 installs

面向团队与企业用户的 llm-provider API 全功能管理工具。核心能力: - 涵盖免费版全部能力(对话补全、图像生成、助手管理) - 批量任务(Batch API)大规模异步处理 - 模型微调(Fine-tuning)定制化训练 - 评估(Evaluations)质量度量与回归测试 - 向量存储(Vector Stores)高级检索与 RAG - 视频生成与异步任务管理 - 容器(Containers)隔离执行环境 - 审计日志与团队权限管理 适用场景: - 企业级内容生产与自动化流水线 - ...

Azure语音转写专业版 —— 面向企业团队与专业用户的高级语音转写工具。核心能力: - 实时流式语音转写,支持麦克风输入与流式音频 - 说话人分离(Diarization),自动识别不同说话人 - 批量转写队列管理,支持大规模音频文件处理 - 自定义语音模型集成,提升专业领域识别准确率 - 多语言混合转写...

当用户想要**音频转文字**、**语音转文本**、**转录录音**、**生成字幕**、**会议录音转文字**、**语音笔记转文本**、**本地转录音频**时自动触发。 使用本地 Faster-Whisper(large-v3-ct2 等模型)进行高性能、中文优先的音频转文字,完全离线、隐私安全,支持 wav/mp3/m4a 等格式和整个音频文件夹。 特别适合长音频(内置 VAD 分段)、会议/访谈/视频字幕等中文场景,输出结构化结果(完整文本 + 分段 + 时间戳)。 【重要约束】仅处理音频文件或音频文件夹,其他文件(如视频、图片、纯文本)一律不触发此技能。 常见触发口语(越多越好): -

22 installs