Skip to main content
PromptQuorum
Accueil/LLM locaux avancés/Whisper.cpp : avis (2026) — reconnaissance vocale locale en C/C++ pur
Voice, Speech & Multimodal

Whisper.cpp : avis (2026) — reconnaissance vocale locale en C/C++ pur

·11 min de lecture·Par Hans Kuepper · Fondateur de PromptQuorum, outil de dispatch multi-modèle · PromptQuorum

whisper.cpp est une réimplémentation gratuite, sous licence MIT, en C/C++, du modèle de reconnaissance vocale Whisper d'OpenAI, créée par Georgi Gerganov, qui exécute la transcription entièrement sur l'appareil, sans dépendance Python. Il prend en charge le CPU (avec des optimisations AVX2/NEON), Apple Metal et Core ML, NVIDIA CUDA, Vulkan et plusieurs autres backends, ce qui en fait l'un des rares outils STT qui fonctionne sans modification d'un Raspberry Pi à un Mac Apple Silicon jusqu'à un serveur CUDA. Pour un comparatif chiffré face à faster-whisper sur du matériel réel, voir le comparatif whisper.cpp vs faster-whisper de PromptQuorum.

whisper.cpp est une réimplémentation en C/C++ du modèle de reconnaissance vocale Whisper d'OpenAI, créée par Georgi Gerganov et désormais maintenue sous l'organisation ggml-org sur GitHub. Il transcrit la parole en texte entièrement sur l'appareil, sans appel à une API cloud, et fonctionne sur du matériel allant du Raspberry Pi à un Mac Apple Silicon jusqu'à un serveur GPU NVIDIA. Cet avis couvre son histoire, l'installation et l'exécution, de vraies commandes en ligne de commande, sa licence MIT et son coût (gratuit), ainsi que ses limites — avec un lien vers le comparatif chiffré de PromptQuorum face à faster-whisper pour les lecteurs indécis entre les deux.

Whisper.cpp : avis (2026) — reconnaissance vocale locale en C/C++ pur

Points clés

  • Créé par Georgi Gerganov en 2022 ; aujourd'hui maintenu sous l'organisation ggml-org sur GitHub.
  • Licence MIT — utilisation, modification et redistribution gratuites, y compris commerciales.
  • Fonctionne sur CPU, Apple Metal/Core ML, NVIDIA CUDA, Vulkan, OpenVINO, AMD ROCm et backends Ascend NPU.
  • Aucun environnement Python requis — livré comme binaire C/C++ compilé, avec des bindings Python optionnels.
  • Prend en charge la transcription micro en temps réel via son exemple de streaming, en plus de la transcription par lots de fichiers.
  • Dernière version stable : v1.9.3, publiée le 20 août 2026.

📍 En une phrase

whisper.cpp est un port C/C++ gratuit, sous licence MIT, du modèle de reconnaissance vocale Whisper d'OpenAI, créé par Georgi Gerganov, qui transcrit l'audio entièrement sur l'appareil via CPU, Apple Metal, NVIDIA CUDA et d'autres backends, sans Python.

💬 En termes simples

Il transforme la parole en texte sur votre propre ordinateur ou appareil au lieu de l'envoyer à une API cloud — vous téléchargez un binaire compilé ou le construisez vous-même, vous lui fournissez un fichier audio ou un flux micro en direct, et il vous rend une transcription, gratuitement, avec les mêmes modèles qu'OpenAI a entraînés.

📌Remarque: Cet avis se concentre sur whisper.cpp comme outil autonome : histoire, installation, vraies commandes, licence et limites honnêtes. Pour un comparatif chiffré face à faster-whisper sur Apple Silicon et GPU NVIDIA, voir le comparatif whisper.cpp vs faster-whisper.

Histoire : qui a créé whisper.cpp et pourquoi

OpenAI a publié son modèle de reconnaissance vocale Whisper en septembre 2022, un modèle à poids ouverts entraîné sur une grande quantité de données audio multilingues, distribué comme paquet Python (openai-whisper) dépendant de PyTorch et, pour de bonnes performances, d'un GPU compatible CUDA.

Georgi Gerganov a porté le modèle en C/C++ pur peu après, en 2022 également, dans le dépôt ggml-org/whisper.cpp. Gerganov est aussi le créateur de la bibliothèque de tenseurs ggml qui porte les calculs et la quantification de whisper.cpp, et deviendra plus tard connu pour llama.cpp, le port C/C++ équivalent pour l'exécution locale de grands modèles de langage — les deux projets partagent la même base ggml et le même objectif de conception : faire tourner sur du matériel ordinaire un modèle qui nécessite normalement Python et un GPU.

La motivation était la portabilité et l'efficacité des ressources, pas seulement la vitesse. L'implémentation Python/PyTorch d'origine de Whisper est simple à exécuter sur une station de travail dotée d'un bon GPU, mais lourde à déployer sur un Raspberry Pi, dans une application iOS, sur une page WebAssembly ou sur une carte Linux embarquée sans interpréteur Python. whisper.cpp supprime entièrement la dépendance PyTorch et Python, se compile en un petit binaire, et ajoute la prise en charge de la quantification pour que les variantes de modèle plus petites tiennent dans quelques centaines de mégaoctets de RAM.

Le projet a largement dépassé le stade du projet personnel. Il compte aujourd'hui des centaines de contributeurs, est empaqueté pour Debian, et propose un support officiel pour Core ML (Apple Neural Engine), CUDA, Vulkan, OpenVINO et d'autres backends qui n'existaient pas dans la publication originale de 2022. Il reste un *environnement d'exécution* Whisper — il n'entraîne ni n'affine ses propres modèles, et chaque transcription utilise toujours les mêmes poids publiés par OpenAI pour une taille de modèle donnée (de tiny à large-v3), convertis dans le format GGML du projet.

Qui a créé whisper.cpp ?

Georgi Gerganov a créé whisper.cpp, publié pour la première fois en 2022 comme port C/C++ du modèle Whisper d'OpenAI. Gerganov a aussi créé la bibliothèque de tenseurs ggml sur laquelle il repose, puis llama.cpp, le port équivalent pour l'exécution locale de grands modèles de langage.

Ce que whisper.cpp fait réellement

whisper.cpp prend une entrée audio — un fichier (WAV, et d'autres formats via un décodage FFmpeg optionnel) ou un flux micro en direct — et produit une transcription textuelle, avec en option des horodatages par segment et une traduction en anglais. Pour cela, il charge un modèle Whisper (converti dans le format de poids GGML du projet) et exécute l'inférence via la bibliothèque de tenseurs ggml, entièrement sur la machine locale.

  • Transcription par lots. Pointer le binaire whisper-cli vers un fichier audio et récupérer une transcription, avec des options de sortie en texte brut, sous-titres SRT/VTT, JSON ou CSV.
  • Streaming en temps réel. L'exemple whisper-stream capture l'audio du micro en direct et le transcrit en continu, utile pour les assistants vocaux ou le sous-titrage en direct.
  • Transcription et traduction multilingues. Les modèles Whisper sous-jacents ont été entraînés sur de nombreuses langues ; whisper.cpp peut transcrire dans la langue source ou traduire directement en anglais, selon les options passées.
  • Inférence accélérée matériellement. Sur Apple Silicon, whisper.cpp peut exporter les modèles au format Core ML pour utiliser le Neural Engine d'Apple ; sur matériel NVIDIA, il utilise CUDA ; sur d'autres GPU, il peut utiliser Vulkan ou OpenVINO. Sur machines CPU uniquement, il utilise les instructions vectorielles AVX2 (x86) ou NEON (ARM).
  • Quantification. Les modèles peuvent être quantifiés (par exemple en formats GGML 4 bits ou 5 bits) pour échanger un peu de précision contre une utilisation mémoire nettement plus faible et une inférence plus rapide — la même technique que llama.cpp utilise pour les LLM.

Installer et exécuter whisper.cpp : étape par étape

Ce guide construit whisper.cpp depuis les sources et lance une première transcription, avec les commandes documentées dans le README du projet.

  1. 1
    Cloner le dépôt.
    Why it matters: Exécutez `git clone https://github.com/ggml-org/whisper.cpp.git` puis `cd whisper.cpp`. Cela récupère l'arborescence complète des sources C/C++, y compris les fichiers de build CMake et le script de téléchargement de modèle.
  2. 2
    Télécharger un modèle.
    Why it matters: Exécutez `sh ./models/download-ggml-model.sh base.en` pour récupérer le modèle base anglophone au format GGML. Remplacez `base.en` par `tiny`, `small`, `medium` ou `large-v3` selon le compromis précision/vitesse voulu, ou retirez le suffixe `.en` pour un modèle multilingue.
  3. 3
    Construire le projet.
    Why it matters: Exécutez `cmake -B build` puis `cmake --build build -j --config Release`. Cela compile les binaires CLI (`whisper-cli`, `whisper-stream` et d'autres) dans le répertoire `build/bin/`. Aucune installation Python n'est requise pour cette étape.
  4. 4
    Transcrire un fichier d'exemple.
    Why it matters: Exécutez `./build/bin/whisper-cli -f samples/jfk.wav` avec le fichier audio d'exemple fourni dans le dépôt. Cela confirme que la construction fonctionne de bout en bout et affiche une transcription dans le terminal.
  5. 5
    Transcrire votre propre audio.
    Why it matters: Remplacez le chemin d'exemple par votre propre fichier WAV : `./build/bin/whisper-cli -m models/ggml-base.en.bin -f your-audio.wav`. Ajoutez `-osrt` pour écrire aussi un fichier de sous-titres `.srt`, ou `-oj` pour une sortie JSON.
  6. 6
    (Optionnel) Activer l'accélération GPU.
    Why it matters: Sur Apple Silicon, l'accélération Metal est utilisée automatiquement dès lors que la construction utilise les options CMake par défaut sous macOS. Sur une machine NVIDIA, ajoutez `-DGGML_CUDA=ON` à l'étape `cmake -B build` (nécessite le toolkit CUDA installé) pour construire avec le support CUDA.
  7. 7
    (Optionnel) Essayer la transcription en temps réel.
    Why it matters: Construisez l'exemple de streaming et exécutez `./build/bin/whisper-stream -m models/ggml-base.en.bin` pour transcrire en continu l'audio du micro en direct plutôt qu'un fichier fixe.

Exemples d'utilisation réels

Au-delà du guide d'installation de base ci-dessus, voici des invocations courantes en situation réelle du binaire whisper-cli.

  • pywhispercpp fournit des bindings Python pour whisper.cpp, pour les équipes qui veulent l'accélération Metal/CUDA tout en préférant appeler l'outil depuis du code Python plutôt que d'invoquer le binaire CLI fichier par fichier.
  • whisper.cpp fournit aussi un petit exemple de serveur HTTP local (whisper-server) pour les équipes qui veulent envoyer l'audio via HTTP plutôt que d'invoquer la CLI par fichier — utile pour intégrer whisper.cpp dans un service existant sans dépendance Python.
bash
# Transcrire un fichier audio en texte brut (sortie par défaut)
./build/bin/whisper-cli -m models/ggml-base.en.bin -f interview.wav

# Transcrire et générer des sous-titres SRT, avec le modèle plus grand et plus précis
./build/bin/whisper-cli -m models/ggml-large-v3.bin -f lecture.wav -osrt

# Traduire directement une parole non anglaise en texte anglais
./build/bin/whisper-cli -m models/ggml-medium.bin -f french-audio.wav -tr

# Choisir un GPU spécifique (machines multi-GPU)
./build/bin/whisper-cli -m models/ggml-large-v3.bin -f audio.wav -g 0

# Transcription en temps réel depuis le microphone par défaut
./build/bin/whisper-stream -m models/ggml-base.en.bin -t 8

Licence et coût

whisper.cpp est sous licence MIT — le fichier de licence du dépôt officiel autorise l'utilisation, la modification et la redistribution gratuites, y compris dans des produits fermés et commerciaux, sans redevance et sans obligation d'attribution au-delà de la conservation de la mention de licence.

Il n'existe aucune offre payante, abonnement ou redevance de licence pour whisper.cpp lui-même. Les seuls coûts réels sont le matériel sur lequel vous l'exécutez (ou une VM cloud si vous choisissez de l'héberger) et, si vous construisez un produit dessus, votre propre temps de développement. Il n'y a aucune facturation à l'usage, aucune clé API, aucun verrouillage fournisseur.

Les poids du modèle Whisper sous-jacent sont eux aussi publiés séparément par OpenAI sous licence MIT, donc à la fois l'environnement d'exécution (whisper.cpp) et les poids de modèle qu'il charge sont sous licence permissive pour un usage commercial.

whisper.cpp est-il gratuit pour un usage commercial ?

Oui. whisper.cpp est sous licence MIT, et les poids du modèle Whisper qu'il utilise sont également publiés par OpenAI sous licence MIT. Les deux autorisent un usage, une modification et une redistribution commerciaux sans redevance.

Ce pour quoi whisper.cpp n'est pas adapté

whisper.cpp est un environnement d'exécution de transcription, pas un produit complet d'IA conversationnelle ou de diarisation. C'est le mauvais outil dans les situations suivantes :

  • Diarisation ("qui a dit quoi"). whisper.cpp transcrit ce qui a été dit, mais ne sépare ni n'étiquette nativement les différents locuteurs dans un enregistrement à plusieurs personnes. La diarisation nécessite un modèle ou un pipeline séparé (par exemple, combiner la transcription de whisper.cpp avec un outil de diarisation) superposé par-dessus.
  • Latence de streaming sous 100 millisecondes à grande échelle. L'exemple intégré whisper-stream fonctionne bien pour un micro en direct unique sur une machine, mais whisper.cpp n'est pas un service de reconnaissance vocale en temps réel conçu spécifiquement et mis à l'échelle horizontalement, comme le serait une API vocale temps réel dédiée pour de nombreux utilisateurs simultanés.
  • Zéro configuration pour les utilisateurs non techniques. whisper.cpp est un outil en ligne de commande que la plupart des utilisateurs construisent depuis les sources ou récupèrent sous forme de binaire compilé — il n'a pas d'installateur graphique abouti ni de fiche sur un app store destinée aux non-développeurs. Ceux qui veulent une application de transcription en quelques clics devraient plutôt se tourner vers une application graphique construite sur whisper.cpp, ou vers un service de transcription hébergé.
  • Extraire les derniers points de débit GPU NVIDIA dans un pipeline Python-first. Sur les plus gros modèles et sur matériel NVIDIA, le comparatif de PromptQuorum a constaté que le backend CTranslate2 de faster-whisper est plus rapide et plus économe en VRAM que le chemin CUDA de whisper.cpp — si votre déploiement est déjà un service Python sur un GPU NVIDIA, faster-whisper est généralement le meilleur choix.

Alternatives à whisper.cpp

faster-whisper

Le mieux adapté à:
Pipelines Python sur GPU NVIDIA — backend CTranslate2, ~4x le débit du Whisper d'origine
Licence:
MIT

WhisperX

Le mieux adapté à:
Besoin d'horodatages au mot près et de diarisation en plus des transcriptions Whisper
Licence:
BSD-2-Clause

API OpenAI Whisper

Le mieux adapté à:
Équipes qui préfèrent une API cloud managée à l'autohébergement, contre des frais à l'usage
Licence:
Propriétaire (API payante)

Vosk

Le mieux adapté à:
Appareils hors ligne à très faibles ressources, où une petite empreinte compte plus que la précision de Whisper
Licence:
Apache-2.0

Questions fréquentes

Qu'est-ce que whisper.cpp ?

whisper.cpp est une réimplémentation gratuite, sous licence MIT, en C/C++, du modèle de reconnaissance vocale Whisper d'OpenAI, créée par Georgi Gerganov, qui exécute la transcription localement sans environnement Python.

whisper.cpp est-il gratuit ?

Oui. whisper.cpp est sous licence MIT, sans offre payante, abonnement ni frais d'usage. Les poids du modèle Whisper qu'il utilise sont également sous licence MIT par OpenAI.

Ai-je besoin d'un GPU pour exécuter whisper.cpp ?

Non. whisper.cpp fonctionne sur CPU avec des optimisations AVX2 (x86) ou NEON (ARM), et les modèles plus petits (tiny, base) tournent confortablement en temps réel sur du matériel CPU uniquement, y compris un Raspberry Pi. Un GPU (Apple Metal, NVIDIA CUDA ou Vulkan) accélère les modèles plus grands comme large-v3, mais n'est pas requis.

whisper.cpp prend-il en charge la transcription en temps réel ?

Oui, via l'exemple whisper-stream, qui capture l'audio du micro en direct et le transcrit en continu. La latence dépend de la taille du modèle et du matériel — les modèles plus petits sur un CPU ou GPU rapide se rapprochent le plus du temps réel.

Quelle est la différence entre whisper.cpp et faster-whisper ?

whisper.cpp est une implémentation C/C++ pure sans dépendance Python, conçue pour la portabilité entre CPU, Apple Metal, CUDA et appareils embarqués. faster-whisper est une bibliothèque Python basée sur CTranslate2, optimisée avant tout pour le débit GPU NVIDIA dans des pipelines Python. Voir le comparatif détaillé de PromptQuorum pour des chiffres par plateforme.

whisper.cpp peut-il fonctionner sur un Raspberry Pi ?

Oui. Les modèles tiny et base tournent en temps réel sur le CPU d'un Raspberry Pi 5 grâce aux optimisations ARM NEON de whisper.cpp, le projet n'ayant aucune dépendance Python ou CUDA à installer.

whisper.cpp traduit-il l'audio en anglais ?

Oui. Passer l'option -tr (traduire) à whisper-cli transcrit une parole non anglaise et la traduit directement en texte anglais, grâce à la capacité de traduction intégrée des modèles Whisper multilingues.

Qui maintient whisper.cpp aujourd'hui ?

Le projet est maintenu sous l'organisation ggml-org sur GitHub, fondée par le créateur d'origine Georgi Gerganov, avec des contributions de centaines de développeurs de la communauté. Il reste activement publié, avec la v1.9.3 sortie le 20 août 2026.

whisper.cpp sépare-t-il les différents locuteurs d'un enregistrement ?

Pas nativement. whisper.cpp transcrit la parole en texte mais n'effectue pas de diarisation par lui-même. Pour "qui a dit quoi", combinez-le avec un outil de diarisation dédié ou utilisez WhisperX, qui ajoute la diarisation par-dessus les transcriptions Whisper.

Verdict

whisper.cpp réussit exactement ce qu'il s'était fixé : apporter le modèle de reconnaissance vocale Whisper d'OpenAI sur tout appareil capable de compiler du C/C++, sans nécessiter Python, CUDA ni un environnement lourd. Cette portabilité — fonctionnant sans modification d'un Raspberry Pi à un Mac Apple Silicon jusqu'à un GPU compatible Vulkan — n'a pas d'équivalent gratuit proche pour la transcription locale et hors ligne, et la licence MIT permet de construire dessus en toute sécurité pour des produits commerciaux. Il est gratuit, bien maintenu, et utilise les mêmes poids de modèle que le Whisper d'origine, donc la précision pour une taille de modèle donnée correspond à ce qu'OpenAI a publié. Là où il n'est pas le choix le plus fort, c'est dans un pipeline Python-first, uniquement GPU NVIDIA, à la recherche du débit maximal — le backend CTranslate2 de faster-whisper y gagne, comme le documente le comparatif direct de PromptQuorum. Pour tous les autres cas — développeurs ciblant du matériel embarqué, Apple Silicon, des applications multiplateformes, ou quiconque veut un binaire autonome unique plutôt qu'un environnement Python — whisper.cpp est un point de départ bien vérifié et sans coût.

Sources

← Retour aux LLM locaux avancés