Qwen3-ASR-Toolkit
Qwen3-ASR-Toolkit 是一款专为调用通义千问语音识别(Qwen-ASR)API 设计的高效 Python 工具。它核心解决了官方 API 单次仅支持 3 分钟音频的限制,让用户能够轻松转录长达数小时的会议记录、播客或视频内容。
该工具通过智能语音活动检测(VAD)技术,自动在自然停顿处将长音频切分为合理片段,避免句子被生硬截断。随后,利用多线程并行处理技术同时发送这些片段,大幅缩短整体等待时间。此外,它还具备自动去重与纠错功能,能有效过滤识别结果中的重复内容或幻觉错误,并支持一键生成带时间轴的 SRT 字幕文件。无论是本地文件还是网络链接,也无论是何种音视频格式,它都能自动适配采样率并完成处理。
这款工具非常适合需要处理长音频转录的开发者、研究人员、媒体从业者以及普通用户。对于希望快速构建语音应用的原型开发者,或是需要整理大量访谈素材的研究团队,Qwen3-ASR-Toolkit 提供了一个简单命令行即可启动的可靠解决方案,让高质量的语音转文字变得触手可及。
使用场景
某视频制作团队需要紧急将一场长达 4 小时的跨国技术峰会录像转化为带时间轴的中英双语字幕,以便快速发布回顾内容。
没有 Qwen3-ASR-Toolkit 时
- 时长限制受阻:官方 API 单次仅支持 3 分钟音频,人工切割 4 小时素材需手动处理数百个片段,耗时且极易出错。
- 语义断裂严重:简单按固定时长切分会导致句子在中间被强行截断,后续拼接时上下文逻辑混乱,增加大量人工校对成本。
- 格式兼容繁琐:原始录像包含多种编码和采样率,转录前需额外编写脚本进行统一的格式转换和重采样预处理。
- 产出效率低下:串行处理导致整体转录耗时极长,无法满足“当日会议、次日上映”的紧迫发布需求。
使用 Qwen3-ASR-Toolkit 后
- 突破时长瓶颈:工具自动利用 VAD 语音检测技术在自然停顿处智能切片,无缝处理任意长度的音视频文件,无需人工干预。
- 保持语义完整:智能分割确保每个片段都在句尾结束,结合去幻觉后处理算法,直接输出连贯流畅、无重复伪影的高质量文本。
- 全自动预处理:内置 FFmpeg 引擎自动将各类媒体文件转换为 API 所需的 16kHz 单声道格式,实现“拖入即转写”。
- 并行极速交付:通过多线程并发调用 API,将数小时的转录任务压缩至分钟级完成,并直接生成标准的
.srt字幕文件供后期使用。
Qwen3-ASR-Toolkit 通过智能分片与并行处理机制,将原本需要数天的人工转录工作流缩减为一键自动化流程,极大提升了长音频内容的生产效能。
运行环境要求
- Linux
- macOS
- Windows
未说明
未说明

快速开始
Qwen3-ASR-Toolkit
😊 重要提示
Qwen3-ASR 现已开源🎉🎉🎉。欢迎访问GitHub和博客获取更多信息。开源模型的功能与 API 相当,支持免费、快速的本地部署。Qwen3-ASR 开源模型包含两款强大的一体化语音识别模型(0.6B/1.7B),支持52 种语言和方言的语言识别与 ASR,以及一款新颖的非自回归语音强制对齐模型,可在 11 种语言中实现文本-语音对齐。其强大的性能足以提供极具吸引力的语音转文字能力。欢迎使用!
概述
这是一款先进的高性能 Python 命令行工具包,用于调用 Qwen-ASR API(原名 Qwen3-ASR-Flash)。该实现通过智能分割长音频/视频文件并并行处理,突破了 API 对音频长度 3 分钟的限制,从而能够快速转录长达数小时的内容。
🚀 核心功能
- 突破 3 分钟限制:无缝转录任意长度的音频和视频文件,绕过官方 API 的时长限制。
- 智能音频分割:利用**语音活动检测(VAD)**在自然的静音处将音频分割成有意义的片段,确保单词和句子不会被生硬地截断。
- 高速并行处理:借助多线程技术,同时向 Qwen-ASR API 发送多个音频片段,大幅缩短长文件的总转录时间。
- 智能后处理:自动检测并去除常见的 ASR 幻觉和重复性伪影,生成更干净、更准确的转录文本。
- SRT 字幕生成:基于 VAD 分段自动生成带时间戳的**
.srt字幕文件**,非常适合为视频内容添加字幕。 - 自动音频重采样:自动将任何采样率和声道数的音频转换为 Qwen-ASR API 所需的 16kHz 单声道格式。您无需担心预处理问题,可直接使用任何音频文件。
- 通用媒体支持:由于依赖 FFmpeg,几乎支持所有音频和视频格式(如
.mp4、.mov、.mkv、.mp3、.wav、.m4a等)。 - 简单易用:直观的命令行界面让您只需一条命令即可开始使用。
⚙️ 工作原理
该工具采用稳健的流程,为长篇媒体内容提供快速且准确的转录:
- 加载媒体:脚本首先加载您的媒体文件,无论是本地文件还是远程 URL。
- 基于 VAD 的分块:利用语音活动检测(VAD)分析音频流,识别静音段。
- 智能分割:根据检测到的静音将音频分割成较小的片段。每个片段的时长控制在 3 分钟的 API 限制以内,并允许用户自定义目标时长(默认 120 秒),以避免句子被截断。
- 并行 API 调用:启动线程池,使用 DashScope Qwen-ASR API 并发上传和处理这些音频片段。
- 结果聚合与清洗:收集所有片段的转录文本,重新排序后进行后处理,去除重复内容和幻觉现象。
- 输出生成:最终清理后的转录文本会打印到控制台,并保存为
.txt文件。还可选择生成带时间戳的.srt字幕文件。
🏁 快速入门
按照以下步骤,在您的本地机器上设置并运行该项目。
先决条件
- Python 3.8 或更高版本。
- FFmpeg:脚本需要系统中安装 FFmpeg 来处理媒体文件。
- Ubuntu/Debian:
sudo apt update && sudo apt install ffmpeg - macOS:
brew install ffmpeg - Windows:从 FFmpeg 官方网站下载,并将其添加到系统的 PATH 中。
- Ubuntu/Debian:
- DashScope API 密钥:您需要阿里云 DashScope 的 API 密钥。
您可以从 DashScope 控制台获取密钥。如果您是首次调用通义千问的 API 服务,可以参考此网站上的教程创建自己的 API 密钥。
为了更好的安全性和便利性,强烈建议将您的 API 密钥设置为名为
DASHSCOPE_API_KEY的环境变量。脚本会自动使用该变量,您无需在命令中传递--api-key参数。Linux/macOS:
export DASHSCOPE_API_KEY="your_api_key_here"(若要永久生效,请将该行添加到
~/.bashrc、~/.zshrc或~/.profile文件中。)Windows(命令提示符):
set DASHSCOPE_API_KEY="your_api_key_here"Windows(PowerShell):
$env:DASHSCOPE_API_KEY="your_api_key_here"(若要在 Windows 上永久设置,请在“开始”菜单中搜索“编辑系统环境变量”,并将
DASHSCOPE_API_KEY添加到您的用户变量中。)
安装
我们推荐直接从 PyPI 安装该工具,这是最简单的设置方式。
选项 1:从 PyPI 安装(推荐)
只需在终端中运行以下命令,即可安装该软件包,并使 qwen3-asr 命令在整个系统中可用。
pip install qwen3-asr-toolkit
选项 2:从源代码安装
如果您想安装最新的开发版本或参与项目贡献,也可以从源代码安装。
克隆仓库:
git clone https://github.com/QwenLM/Qwen3-ASR-Toolkit.git cd Qwen3-ASR-Toolkit安装软件包:
pip install .
📖 使用方法
安装完成后,您可以直接在终端中使用 qwen3-asr 命令。默认情况下,工具会打印进度信息。
命令
qwen3-asr -i <input_file_or_url> [-key <api_key>] [-j <num_threads>] [-c <context>] [-d <duration>] [-t <tmp_dir>] [--save-srt] [-s]
参数
| 参数 | 短选项 | 描述 | 必需/可选 |
|---|---|---|---|
--input-file |
-i |
要转录的本地媒体文件路径或远程 URL(http/https)。 | 必需 |
--context |
-c |
用于引导 ASR 模型的文本上下文,以提高特定术语的识别准确度。 | 可选,默认值:"" |
--dashscope-api-key |
-key |
您的 DashScope API 密钥。 | 可选(如果已设置 DASHSCOPE_API_KEY) |
--num-threads |
-j |
用于 API 调用的并发线程数。 | 可选,默认值:4 |
--vad-segment-threshold |
-d |
每个 VAD 分割音频块的目标时长(秒)。 | 可选,默认值:120 |
--tmp-dir |
-t |
用于存储临时分块文件的目录路径。 | 可选,默认值:~/qwen3-asr-cache |
--save-srt |
-srt |
除了 .txt 文件外,还会生成并保存带时间戳的 SRT 字幕文件。 |
可选 |
--silence |
-s |
静默模式。在终端上抑制详细的进度和分块信息。 | 可选 |
输出
完整的转录结果将打印到终端(除非处于 --silence 模式),同时也会保存为与输入文件同目录下的 .txt 文件。例如,如果您处理的是 my_video.mp4,输出将保存为 my_video.txt。
如果使用了 --save-srt 标志,则会在同一目录下创建对应的 my_video.srt 字幕文件。
✨ 示例
以下是一些使用该工具的示例。
1. 本地文件的基本转录
使用默认的 4 个线程转录视频文件。此命令假设您已设置 DASHSCOPE_API_KEY 环境变量。
qwen3-asr -i "/path/to/my/long_lecture.mp4"
2. 转录远程音频文件
直接从 URL 处理音频文件。
qwen3-asr -i "https://somewebsite.com/audios/podcast_episode.mp3"
3. 生成 SRT 字幕文件
使用 --save-srt(或 -srt)标志,可在生成纯文本转录的同时生成带时间戳的字幕文件。这非常适合视频字幕制作。
qwen3-asr -i "/path/to/my/documentary.mp4" -srt
此命令将创建 documentary.txt 和 documentary.srt。
4. 增加并发数并传递 API 密钥
使用 8 个并行线程转录长音频文件,并通过命令行直接传递 API 密钥。
qwen3-asr -i "/path/to/my/podcast_episode_01.wav" -j 8 -key "your_api_key_here"
5. 提供上下文并自定义分块时长
如果您的音频包含特定术语,可以使用 -c 标志。如果您希望字幕片段更短、更频繁,可以使用 -d 设置较小的分块时长。
qwen3-asr -i "/path/to/my/tech_talk.mp4" -c "Qwen-ASR、DashScope、FFmpeg" -d 60 -srt
此命令会尝试将音频分割为约 60 秒的分块,从而生成更精细的字幕。
6. 在静默模式下运行
使用 -s 或 --silence 标志,可以防止进度详情打印到终端。最终的转录结果仍将保存到文件中。
qwen3-asr -i "/path/to/my/meeting_recording.m4a" -s
🌍 其他语言的实现
虽然本项目提供了一个功能齐全的 Python 工具包,我们也在其他编程语言中提供了实现,以展示如何在不同的技术栈中应用相同的逻辑核心。我们热烈欢迎社区贡献更多语言的示例!
☕ Java 示例
我们在本仓库的 examples/java-example 目录中提供了一个独立的 Java 版本示例。该示例展示了如何使用 Java 实现工具包的关键功能——包括基于 VAD 的音频分块、并行 API 请求以及结果聚合。对于希望将 Qwen-ASR 集成到其应用程序中的 Java 开发人员来说,这是一个很好的起点。
如何贡献您的版本
如果您已在其他语言中实现了类似的工具包(例如 Go、Rust、C#、JavaScript/Node.js),我们非常乐意将其收录!请打开一个拉取请求,将您的实现添加到 examples 目录中。有关贡献的更多详细信息,请参阅下方的 贡献 部分。
🤝 贡献
欢迎贡献!如果您有任何改进建议,请随时 fork 本仓库,创建特性分支并提交拉取请求。您也可以开一个带有“enhancement”标签的问题。
📄 许可证
本项目采用 MIT 许可证授权——详情请参阅 LICENSE 文件。
版本历史
v1.0.42025/09/22v1.0.32025/09/19v1.0.22025/09/18v1.0.12025/09/17常见问题
相似工具推荐
opencode
OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
codex
Codex 是 OpenAI 推出的一款轻量级编程智能体,专为在终端环境中高效运行而设计。它允许开发者直接在命令行界面与 AI 交互,完成代码生成、调试、重构及项目维护等任务,无需频繁切换至浏览器或集成开发环境,从而显著提升了编码流程的连贯性与专注度。 这款工具主要解决了传统 AI 辅助编程中上下文割裂的问题。通过将智能体本地化运行,Codex 能够更紧密地结合当前工作目录的文件结构,提供更具针对性的代码建议,同时支持以自然语言指令驱动复杂的开发操作,让“对话即编码”成为现实。 Codex 非常适合习惯使用命令行的软件工程师、全栈开发者以及技术研究人员。对于追求极致效率、偏好键盘操作胜过图形界面的极客用户而言,它更是理想的结对编程伙伴。 其独特亮点在于灵活的部署方式:既可作为全局命令行工具通过 npm 或 Homebrew 一键安装,也能无缝对接现有的 ChatGPT 订阅计划(如 Plus 或 Pro),直接复用账户权益。此外,它还提供了从纯文本终端到桌面应用的多形态体验,并支持基于 API 密钥的深度定制,充分满足不同场景下的开发需求。
gstack
gstack 是 Y Combinator CEO Garry Tan 亲自开源的一套 AI 工程化配置,旨在将 Claude Code 升级为你的虚拟工程团队。面对单人开发难以兼顾产品战略、架构设计、代码审查及质量测试的挑战,gstack 提供了一套标准化解决方案,帮助开发者实现堪比二十人团队的高效产出。 这套配置特别适合希望提升交付效率的创始人、技术负责人,以及初次尝试 Claude Code 的开发者。gstack 的核心亮点在于内置了 15 个具有明确职责的 AI 角色工具,涵盖 CEO、设计师、工程经理、QA 等职能。用户只需通过简单的斜杠命令(如 `/review` 进行代码审查、`/qa` 执行测试、`/plan-ceo-review` 规划功能),即可自动化处理从需求分析到部署上线的全链路任务。 所有操作基于 Markdown 和斜杠命令,无需复杂配置,完全免费且遵循 MIT 协议。gstack 不仅是一套工具集,更是一种现代化的软件工厂实践,让单人开发者也能拥有严谨的工程流程。