Groq Whisper 多 Key 并发语音转写 CLI 工具
Project description
groq-whisper-cli
Groq Whisper 多 Key 并发语音转写 CLI 工具。
功能
- silero-vad 本地 VAD 智能切片
- 多 API Key 配额感知负载均衡
- 429 自动退避 + Key 切换
- 异步并发协程池
- 输出 SRT 字幕 + TXT 文本
安装
# 直接通过 uvx 运行(无需安装)
uvx run groq-whisper-cli -i audio.mp3
# 或安装到本地
uv tool install groq-whisper-cli
groq-whisper-cli -i audio.mp3
前置要求
- Python 3.12+
- ffmpeg(用于音频提取)
API Key 配置
按优先级查找:
--key-file/-k参数指定文件(每行一个 key)- 当前目录下的
key.txt - 环境变量
GROQ_API_KEY(多个 key 用逗号分隔)
# 方式一:环境变量
export GROQ_API_KEY="gsk_xxx,gsk_yyy"
# 方式二:key 文件
echo "gsk_xxx" > key.txt
echo "gsk_yyy" >> key.txt
# 方式三:命令行参数
groq-whisper-cli -i audio.mp3 -k /path/to/key.txt
用法
# 基本用法
groq-whisper-cli -i audio.mp3
# 指定语言和输出目录
groq-whisper-cli -i video.mp4 -l en -o ./output
# 多文件处理
groq-whisper-cli -i *.mp4 -w 8
# 完整参数
groq-whisper-cli -i audio.mp3 \
-k key.txt \
-o ./transcript \
-w 4 \
--chunk-sec 120 \
-l zh \
--retries 8
参数
| 参数 | 缩写 | 默认值 | 说明 |
|---|---|---|---|
input |
- | 必填 | 输入文件路径,支持通配符 |
--key-file |
-k |
- | API Key 文件路径 |
--out |
-o |
./transcript |
输出目录 |
--workers |
-w |
4 |
并发 worker 数 |
--chunk-sec |
- | 120 |
VAD 切片最大时长(秒) |
--lang |
-l |
zh |
ISO-639-1 语言代码 |
--retries |
- | 8 |
每个分片最大重试次数 |
Rate Limits
Groq API rate limits per key (as of 2026-05-29):
| Model | RPM | RPD | Audio Sec/Hour | Audio Sec/Day |
|---|---|---|---|---|
| whisper-large-v3 | 20 | 2,000 | 7,200 | 28,800 |
| whisper-large-v3-turbo | 20 | 2,000 | 7,200 | 28,800 |
This tool uses sliding window rate limiting (20 req/60s per key) to stay within RPM limits. Each API key gets its own dedicated worker to avoid contention.
作为库使用
from groq_whisper import GroqKeyManager, AudioSplitter, GroqTranscriber
key_manager = GroqKeyManager(["gsk_xxx", "gsk_yyy"])
splitter = AudioSplitter(max_chunk_sec=120)
chunks = splitter.split("audio.mp3")
transcriber = GroqTranscriber(key_manager=key_manager, language="zh")
results = asyncio.run(transcriber.transcribe_all(chunks))
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
groq_whisper_cli-0.2.0.tar.gz
(27.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file groq_whisper_cli-0.2.0.tar.gz.
File metadata
- Download URL: groq_whisper_cli-0.2.0.tar.gz
- Upload date:
- Size: 27.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2fff9d5f4d2eed1a7b216880153162d37ca60b98418d74ed4a7052444e89df12
|
|
| MD5 |
3d15ae575edcae984d882357d5f57ff3
|
|
| BLAKE2b-256 |
d97172207ef65d08aea781e48ab1acc8f72f5dc71c6e54fa0451205633a83c51
|
File details
Details for the file groq_whisper_cli-0.2.0-py3-none-any.whl.
File metadata
- Download URL: groq_whisper_cli-0.2.0-py3-none-any.whl
- Upload date:
- Size: 13.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35d6fd1497fd55f15b5350b9e64b471031c050b0cd1b1365fff6d22279129fa5
|
|
| MD5 |
46c6aa4c5795bdf0fda55a507f75b39a
|
|
| BLAKE2b-256 |
314123891dc244416627af7ebc3655f5ebd75705b0f9c9c90dff92a9aee1d219
|