Qwen3-ASR-Toolkit is a Python-based command-line utility designed to extend the capabilities of the Qwen-ASR API. By employing intelligent Voice Activity Detection (VAD), the tool segments long audio or video files into chunks shorter than three minutes. These segments are then processed concurrently using multiple threads, allowing users to bypass the official API’s duration limits and transcribe hours of content in a fraction of the time.
The toolkit supports nearly any audio or video format through its FFmpeg integration. It handles technical requirements automatically, such as resampling audio to 16kHz mono to ensure compatibility with the API. With a straightforward command-line interface, users only need to provide a DashScope API Key to access its full range of features.
Key Features
How It Works
sudo apt update && sudo apt install ffmpegbrew install ffmpegSetting your API Key as an environment variable is recommended:
# Linux/macOS
export DASHSCOPE_API_KEY="your_api_key_here"
# Windows (PowerShell)
$env:DASHSCOPE_API_KEY="your_api_key_here"
Option 1: Via PyPI (recommended)
pip install qwen3-asr-toolkit
Option 2: From source
git clone https://github.com/QwenLM/Qwen3-ASR-Toolkit.git
cd Qwen3-ASR-Toolkit
pip install .
The basic command syntax is as follows:
qwen3-asr -i <input_file_or_url> [-key <api_key>] [-j <num_threads>] [-c <context>] [-t <tmp_dir>] [-s]
| Parameter | Short | Description | Required |
|---|---|---|---|
--input-file |
-i |
Path to a local file or a remote URL | Yes |
--context |
-c |
Provide context/keywords to improve recognition of specific terms | No |
--dashscope-api-key |
-key |
DashScope API key | No (if env variable is set) |
--num-threads |
-j |
Number of concurrent threads (default: 4) | No |
--tmp-dir |
-t |
Directory for temporary files (default: ~/qwen3-asr-cache) |
No |
--silence |
-s |
Silent mode – suppresses progress information | No |
1. Transcribe a local file
qwen3-asr -i "/path/to/my/long_lecture.mp4"
2. Transcribe a remote audio file
qwen3-asr -i "https://somewebsite.com/audios/podcast_episode.mp3"
3. Increase concurrency and provide an API key manually
qwen3-asr -i "/path/to/my/podcast.wav" -j 8 -key "your_api_key_here"
4. Improve accuracy with context hints
qwen3-asr -i "/path/to/my/tech_talk.mp4" -c "Qwen-ASR, DashScope, FFmpeg, VAD"
5. Execute in silent mode
qwen3-asr -i "/path/to/my/meeting_recording.m4a" -s
Tiny Qwen: A Clean PyTorch Implementation of Qwen3 and Qwen2.5-VL
Smart-Admin Setup Guide: Environment, Backend, Frontend, and Mobile Deployment
LVCHA VPN Review: A Permanently Free VPN with No Ads and Fast Speeds
Halo Docker Compose Deployment Guide – Requirements & Setup
Claude Code Chat UI: Run Claude Code on Windows Without WSL
Emojied: Convert Any URL into a Single Emoji Short Link
Turn Google Gemini CLI Into a Standard API Proxy for Any OpenAI Client
mRemoteNG Setup: Manage RDP, SSH, and VNC in One Tabbed Console
Fooocus: Free Offline SDXL Image Generator & Installation Guide
Ventoy USB Tool: Boot Multiple ISOs Without Reformatting
Anyi VPN Review: Free 365-Day Trial with No Data Caps or Ads
IOPaint: Free Open-Source Image Inpainting and Object Removal