fix(models): correct download size metadata for whisper.cpp and VOSK (#453)
* fix(models): correct download size metadata for whisper.cpp and VOSK The size_mb values in WHISPERCPP_MODEL_INFO were using parameter counts instead of actual download sizes, causing the UI to display incorrect sizes (e.g., showing 39 MB when actual download is 74 MB). Updated all whisper.cpp models with verified sizes from Hugging Face and adjusted VOSK medium/large sizes to better represent actual downloads. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) * docs: update model download sizes to match actual downloads Update whisper.cpp size references from parameter counts to verified download sizes (e.g., tiny: 39MB → 74MB, medium: 769MB → 1.5GB, large: 1.5GB → 3.0GB). Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) * docs(web): update model sizes across website pages Sync whisper.cpp size references on gpu-acceleration, compare, whisper-model-guide, offline, and homepage with corrected download sizes. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
This commit is contained in:
@@ -145,7 +145,7 @@ curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /
|
||||
The installer will:
|
||||
- **Auto-detect your hardware** (GPU, RAM, Vulkan support)
|
||||
- **Recommend the best engine** for your system
|
||||
- **Download the appropriate model** (~39MB for whisper.cpp tiny)
|
||||
- **Download the appropriate model** (~74MB for whisper.cpp tiny)
|
||||
- **Install neural VAD support** when ONNX Runtime is available
|
||||
- **Install in ~1-2 minutes** (vs 5-10 min with old Whisper)
|
||||
|
||||
|
||||
+9
-9
@@ -16,7 +16,7 @@ That's it! The installer handles everything automatically:
|
||||
- ✅ Installs whisper.cpp (~1-2 minutes, no heavy dependencies!)
|
||||
- ✅ Auto-detects your GPU (AMD, Intel, NVIDIA all supported)
|
||||
- ✅ Installs neural VAD support when ONNX Runtime is available
|
||||
- ✅ Downloads the tiny model (~39MB)
|
||||
- ✅ Downloads the tiny model (~74MB)
|
||||
- ✅ Configures everything automatically
|
||||
|
||||
> ⏱️ **Installation Time**: ~1-2 minutes (vs 5-10 minutes with old Whisper AI)
|
||||
@@ -205,7 +205,7 @@ Examples:
|
||||
- **VOSK**: Lightweight engine for older systems
|
||||
5. **Installs neural VAD support** when ONNX Runtime is available, with a safe amplitude-VAD fallback otherwise
|
||||
6. **Downloads speech recognition models**:
|
||||
- whisper.cpp: ~39MB tiny model (or larger if selected)
|
||||
- whisper.cpp: ~74MB tiny model (or larger if selected)
|
||||
- Whisper: ~75MB tiny model + PyTorch dependencies (~2.3GB with CUDA)
|
||||
- VOSK: ~40MB small model
|
||||
7. **Installs desktop integration** (icons, .desktop file)
|
||||
@@ -215,7 +215,7 @@ Examples:
|
||||
|
||||
| Engine | Download Size | Install Time | GPU Support |
|
||||
|--------|---------------|--------------|-------------|
|
||||
| **whisper.cpp** (default) | ~39-500MB | ~1-2 min | AMD, Intel, NVIDIA (Vulkan) |
|
||||
| **whisper.cpp** (default) | ~74-500MB | ~1-2 min | AMD, Intel, NVIDIA (Vulkan) |
|
||||
| Whisper (OpenAI) | ~2.3GB+ | ~5-10 min | NVIDIA only (CUDA) |
|
||||
| VOSK | ~40MB | ~30 sec | CPU only |
|
||||
|
||||
@@ -438,7 +438,7 @@ gtk-update-icon-cache -f -t ~/.local/share/icons/hicolor
|
||||
**whisper.cpp** is a high-performance C++ port of OpenAI's Whisper speech recognition model. It's now the **default engine** in Vocalinux because it offers significant advantages:
|
||||
|
||||
**Performance Benefits:**
|
||||
- **10x faster installation** - No 2.3GB PyTorch download (just ~39MB model)
|
||||
- **10x faster installation** - No 2.3GB PyTorch download (just ~74MB model)
|
||||
- **C++ optimized inference** - Faster than Python-based Whisper
|
||||
- **True multi-threading** - Uses all CPU cores (no Python GIL limitations)
|
||||
- **Lower memory usage** - More efficient than PyTorch
|
||||
@@ -450,11 +450,11 @@ gtk-update-icon-cache -f -t ~/.local/share/icons/hicolor
|
||||
|
||||
**Models:**
|
||||
whisper.cpp uses the same models as OpenAI Whisper, converted to `ggml` format:
|
||||
- **tiny** (~39MB) - Fastest, good for real-time dictation
|
||||
- **base** (~74MB) - Good balance of speed and accuracy
|
||||
- **small** (~244MB) - Better accuracy, still fast
|
||||
- **medium** (~769MB) - High accuracy
|
||||
- **large** (~1.5GB) - Best accuracy, slower
|
||||
- **tiny** (~74MB) - Fastest, good for real-time dictation
|
||||
- **base** (~141MB) - Good balance of speed and accuracy
|
||||
- **small** (~465MB) - Better accuracy, still fast
|
||||
- **medium** (~1.5GB) - High accuracy
|
||||
- **large** (~3.0GB) - Best accuracy, slower
|
||||
|
||||
### Checking GPU Support
|
||||
|
||||
|
||||
+5
-5
@@ -116,11 +116,11 @@ Vocalinux now offers **three speech recognition engines**:
|
||||
- whisper
|
||||
- vosk
|
||||
4. Select your **Model Size**:
|
||||
- **tiny** (~39MB) - Fastest, good for real-time dictation
|
||||
- **base** (~74MB) - Good balance
|
||||
- **small** (~244MB) - Better accuracy
|
||||
- **medium** (~769MB) - High accuracy
|
||||
- **large** (~1.5GB) - Best accuracy, slower
|
||||
- **tiny** (~74MB) - Fastest, good for real-time dictation
|
||||
- **base** (~141MB) - Good balance
|
||||
- **small** (~465MB) - Better accuracy
|
||||
- **medium** (~1.5GB) - High accuracy
|
||||
- **large** (~3.0GB) - Best accuracy, slower
|
||||
|
||||
### When to Use Each Model
|
||||
|
||||
|
||||
@@ -56,8 +56,6 @@ SUPPORTED_LANGUAGES = {
|
||||
|
||||
|
||||
# VOSK model metadata for display
|
||||
# The large option uses the same model as medium, because 0.42 seems unavailable
|
||||
# TODO @violog: specify correct size for each model
|
||||
VOSK_MODEL_INFO = {
|
||||
"small": {
|
||||
"size_mb": 40,
|
||||
@@ -76,7 +74,7 @@ VOSK_MODEL_INFO = {
|
||||
},
|
||||
},
|
||||
"medium": {
|
||||
"size_mb": 1800,
|
||||
"size_mb": 1500,
|
||||
"desc": "Balanced accuracy/speed",
|
||||
"languages": {
|
||||
"en-us": "vosk-model-en-us-0.22",
|
||||
@@ -90,7 +88,7 @@ VOSK_MODEL_INFO = {
|
||||
},
|
||||
},
|
||||
"large": {
|
||||
"size_mb": 1800,
|
||||
"size_mb": 1500,
|
||||
"desc": "Same as medium (best available)",
|
||||
"languages": {
|
||||
"en-us": "vosk-model-en-us-0.22",
|
||||
|
||||
@@ -17,31 +17,31 @@ logger = logging.getLogger(__name__)
|
||||
# Models are downloaded from Hugging Face (ggml format)
|
||||
WHISPERCPP_MODEL_INFO = {
|
||||
"tiny": {
|
||||
"size_mb": 39,
|
||||
"size_mb": 74,
|
||||
"params": "39M",
|
||||
"desc": "Fastest, lowest accuracy",
|
||||
"url": "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-tiny.bin",
|
||||
},
|
||||
"base": {
|
||||
"size_mb": 74,
|
||||
"size_mb": 141,
|
||||
"params": "74M",
|
||||
"desc": "Fast, good for basic use",
|
||||
"url": "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-base.bin",
|
||||
},
|
||||
"small": {
|
||||
"size_mb": 244,
|
||||
"size_mb": 465,
|
||||
"params": "244M",
|
||||
"desc": "Balanced speed/accuracy",
|
||||
"url": "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-small.bin",
|
||||
},
|
||||
"medium": {
|
||||
"size_mb": 769,
|
||||
"size_mb": 1463,
|
||||
"params": "769M",
|
||||
"desc": "High accuracy, slower",
|
||||
"url": "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-medium.bin",
|
||||
},
|
||||
"large": {
|
||||
"size_mb": 1550,
|
||||
"size_mb": 2952,
|
||||
"params": "1550M",
|
||||
"desc": "Highest accuracy, slowest",
|
||||
"url": "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin",
|
||||
|
||||
@@ -10,7 +10,7 @@ const engineTable = [
|
||||
speed: "Fastest startup + low latency",
|
||||
hardware: "CPU + AMD/Intel/NVIDIA GPU",
|
||||
accuracy: "High (best overall balance)",
|
||||
footprint: "Small models available (~39MB tiny)",
|
||||
footprint: "Small models available (~74MB tiny)",
|
||||
bestFor: "Most users who want strong speed + quality",
|
||||
icon: Zap,
|
||||
iconColor: "text-amber-500",
|
||||
|
||||
@@ -65,7 +65,7 @@ const gpuBackends = [
|
||||
const modelPerformance = [
|
||||
{
|
||||
model: "tiny",
|
||||
size: "~39MB",
|
||||
size: "~74MB",
|
||||
cpuSpeed: "~0.5s",
|
||||
gpuSpeed: "~0.2s",
|
||||
accuracy: "Good for real-time",
|
||||
@@ -73,7 +73,7 @@ const modelPerformance = [
|
||||
},
|
||||
{
|
||||
model: "base",
|
||||
size: "~74MB",
|
||||
size: "~141MB",
|
||||
cpuSpeed: "~0.8s",
|
||||
gpuSpeed: "~0.3s",
|
||||
accuracy: "Better accuracy",
|
||||
@@ -81,7 +81,7 @@ const modelPerformance = [
|
||||
},
|
||||
{
|
||||
model: "small",
|
||||
size: "~244MB",
|
||||
size: "~465MB",
|
||||
cpuSpeed: "~1.5s",
|
||||
gpuSpeed: "~0.5s",
|
||||
accuracy: "High accuracy",
|
||||
@@ -89,7 +89,7 @@ const modelPerformance = [
|
||||
},
|
||||
{
|
||||
model: "medium",
|
||||
size: "~769MB",
|
||||
size: "~1.5GB",
|
||||
cpuSpeed: "~4s",
|
||||
gpuSpeed: "~1.2s",
|
||||
accuracy: "Very high accuracy",
|
||||
@@ -97,7 +97,7 @@ const modelPerformance = [
|
||||
},
|
||||
{
|
||||
model: "large",
|
||||
size: "~1.5GB",
|
||||
size: "~3.0GB",
|
||||
cpuSpeed: "~8s",
|
||||
gpuSpeed: "~2.5s",
|
||||
accuracy: "Best accuracy",
|
||||
|
||||
@@ -241,7 +241,7 @@ export default function OfflinePage() {
|
||||
</li>
|
||||
</ul>
|
||||
<p className="mt-4 text-sm text-emerald-700 dark:text-emerald-400">
|
||||
Models are downloaded once (39MB-1.5GB depending on size), then all processing happens
|
||||
Models are downloaded once (74MB-3.0GB depending on size), then all processing happens
|
||||
locally. No network requests during dictation.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
@@ -1051,7 +1051,7 @@ export default function HomePage() {
|
||||
"10x faster installation (~1-2 min)",
|
||||
"Universal GPU support (AMD/Intel/NVIDIA)",
|
||||
"C++ optimized, true multi-threading",
|
||||
"Tiny model only ~39MB",
|
||||
"Tiny model only ~74MB",
|
||||
].map((item, i) => (
|
||||
<li key={i} className="flex items-center gap-2 text-sm">
|
||||
<CheckCircle2 className="h-4 w-4 text-green-500" />
|
||||
@@ -1060,7 +1060,7 @@ export default function HomePage() {
|
||||
))}
|
||||
</ul>
|
||||
<div className="text-sm text-muted-foreground">
|
||||
<strong>Model sizes:</strong> Tiny (39MB) • Base (74MB) • Small (244MB) • Medium (769MB) • Large (1.5GB)
|
||||
<strong>Model sizes:</strong> Tiny (74MB) • Base (141MB) • Small (465MB) • Medium (1.5GB) • Large (3.0GB)
|
||||
</div>
|
||||
<div className="mt-4">
|
||||
<Link href="/gpu-acceleration/" className="text-sm font-medium text-primary hover:underline flex items-center gap-1">
|
||||
@@ -1165,7 +1165,7 @@ export default function HomePage() {
|
||||
question: "What are the system requirements?",
|
||||
answer: (
|
||||
<>
|
||||
Minimum: 4GB RAM, Python 3.9+, ~200MB disk space. 8GB+ RAM recommended for larger Whisper models. The default whisper.cpp tiny model (~39MB) works great on modest hardware. GPU acceleration is available via Vulkan for AMD, Intel, and NVIDIA GPUs.{" "}
|
||||
Minimum: 4GB RAM, Python 3.9+, ~200MB disk space. 8GB+ RAM recommended for larger Whisper models. The default whisper.cpp tiny model (~74MB) works great on modest hardware. GPU acceleration is available via Vulkan for AMD, Intel, and NVIDIA GPUs.{" "}
|
||||
<Link href="/install/" className="text-primary hover:underline">View full installation requirements</Link>.
|
||||
</>
|
||||
),
|
||||
|
||||
@@ -15,7 +15,7 @@ import { absoluteUrl, buildPageMetadata } from "@/lib/seo";
|
||||
const modelComparison = [
|
||||
{
|
||||
model: "Tiny",
|
||||
size: "~39MB",
|
||||
size: "~74MB",
|
||||
ramCpu: "~0.8-1.2GB",
|
||||
ramGpu: "~0.5-0.8GB VRAM",
|
||||
accuracy: "Good",
|
||||
@@ -24,7 +24,7 @@ const modelComparison = [
|
||||
},
|
||||
{
|
||||
model: "Base",
|
||||
size: "~74MB",
|
||||
size: "~141MB",
|
||||
ramCpu: "~1.2-1.8GB",
|
||||
ramGpu: "~0.8-1.2GB VRAM",
|
||||
accuracy: "Good+",
|
||||
@@ -33,7 +33,7 @@ const modelComparison = [
|
||||
},
|
||||
{
|
||||
model: "Small",
|
||||
size: "~244MB",
|
||||
size: "~465MB",
|
||||
ramCpu: "~2-3GB",
|
||||
ramGpu: "~1.5-2.5GB VRAM",
|
||||
accuracy: "High",
|
||||
@@ -42,7 +42,7 @@ const modelComparison = [
|
||||
},
|
||||
{
|
||||
model: "Medium",
|
||||
size: "~769MB",
|
||||
size: "~1.5GB",
|
||||
ramCpu: "~4-6GB",
|
||||
ramGpu: "~3-5GB VRAM",
|
||||
accuracy: "Very high",
|
||||
@@ -51,7 +51,7 @@ const modelComparison = [
|
||||
},
|
||||
{
|
||||
model: "Large",
|
||||
size: "~1.5GB",
|
||||
size: "~3.0GB",
|
||||
ramCpu: "~8GB+",
|
||||
ramGpu: "~6-10GB VRAM",
|
||||
accuracy: "Best",
|
||||
|
||||
Reference in New Issue
Block a user