Une étude de terrain en sciences humaines génère souvent une grande quantité de fichiers audio qu’il dont il convient de fournir la transcription – anonymisée – dans votre redu. Une transcription vous permettra aussi d’exploiter vos textes à l’aide d’algorithmes de text mining.
Les tâches de transcription se laissent automatiser grâce l’intelligence artificielle et ce tutoriel propose quelques pistes.
Rendu de l’exercice: envoyez-moi un court fichier audio et sa transcription à l’aide de l’une des noScribe ou de Whisper, en suivant les istructions ci-dessous.
Protection de données
Avant toute chose, un notice légale importante: Si vos interviews contiennent des noms de personnes, et a fortiori si le sujet de votre travail porte sur des sujets impliquant des données personnelles sensibles, il est interdit de les faire traiter sur une plateforme en ligne, à moins de posséder une permission écrite de vos interlocuteur·ice·s, dûment renseigné·e·s, par vous, sur les risques de divulgation. Ceci inclut toute forme d’IA (chabtots, plateformes de transcription de textes, plateforme de traitement d’images etc.) et à fortiori si les serveurs de ces services sont situés à l’étranger. Par données personnelles sensibles, la Loi fédérale sur la protection des données (LPD) entend:
- 1. les données sur les opinions ou les activités religieuses, philosophiques, politiques ou syndicales,
- 2. les données sur la santé, la sphère intime ou l’origine raciale ou ethnique,
- 3. les données génétiques,
- 4. les données biométriques identifiant une personne physique de manière univoque,
- 5. les données sur des poursuites ou sanctions pénales et administratives,
- 6. les données sur des mesures d’aide sociale;
En cas de plainte de personnes lésées, les sanctions peuvent s’élever jusqu’à 250’000 CHF.
Pour réduire sensiblement les risques, il est préférable de traiter vos données sur vos propres machines.
Solutions open source
Type de solution fortement recommandée. Avec l’open source, vous savez à quoi vous avez affaire (la moindre ligne de code est vérifiable) et vous pouvez installer le modèle “en local” (sur votre propre ordinateur) en offrant donc plus de vie privée à vos interlocuteurs de terrain. Le seul désavantage est que cela exige un minimum de compétences informatiques.
OpenAI Whisper
L’appliciton Whisper est la plus reconnue dans le domaine de la transcription de fichiers audio. Son code est maintenu par OpenAI (entreprise aussi connue pour un certain chatbot…) Whisper procède par la transofrmation des waveformes audio en spectrogrammes Log-Mel, puis leur traitement avec un modèle de type transformer. Vous pouvez en apprendre davantage sur https://github.com/openai/whisper.
Il n’est pas nécessaire de connaître son fonctionnement exact pour en faire usage, mais utile d’en avoir une idée générale.

noScribe : une interface graphique pour Whisper

Il existe une interface graphique pour Whisper, développée par Dr. Kai Dröge, non-affilié à OpenAI: https://noscribe.de/fr/. L’application permet, entre autres, d’ajouter des marqueurs de temps et de détecter les interlocuteurs. Il comporte aussi un éditeur des transcriptions pour les relire et corriger.
Les instructions d’installation se trouvent à l’adresse suivante:
https://noscribe.de/fr/docs/download-installation
Usage direct de Whisper
Certains workflows peuvent exiger l’usage direct de Whisper. L’installer ainsi vous permettra notamment de l’intégrer dans des scripts de traitement Python plus complexes. Vous pouvez directement suivre les instructions d’installation, mais je vous recommande d’installer Whisper dans un environnement virtuel Python. Cela vous permettra d’installer plus tard d’autres applications open source basées sur Python mais exigeant un autre environnement virtuel. Si les mots “Python” et “environnement virtuel” vous font peur, suivez simplement le présent tutoriel, vous n’avez pas besoin de les saisir entièrement pour faire fonctionner la chose.
Miniconda
Téléchargez le gestionnaire de modules et d’environnements Python, Minicoda, et installez – le sur votre ordinateur:
https://www.anaconda.com/docs/getting-started/miniconda/install
Quand c’est fait, ouvrez l’interpréteur de commandes de votre système d’exploitation (Terminal.app sur Mac ou cmd.exe sur Windows) et exécutez le code suivant:
conda create -n nlp python=3.12 -yCode language: Bash (bash)
Vous venez de créer un environnement nommé “nlp” (pour Natural Language Processing) avec un fond de Python en version 3.12.
ffmpeg
Installez FFmpeg, qui vous servira à traiter des fichiers son. Vous pouvez le faire avec une commande Conda ainsi
conda install -c conda-forge ffmpegCode language: Bash (bash)
sachant que ffmpeg ne sera alors disponible que si conda est activé. Comme ce logiciel en ligne de commande est très utile pour les conversions de fichiers audio et vidéo, je vous recommande de l’installer séparément à l’aide de l’une des commandes suivantes, présupposant que vous avez installé Homebrew (Mac) ou Scoop (Windows). Si c’est trop dur, contentez-vous de l’installation de ffmpeg à l’aide de conda.
# sur Ubuntu or Debian avec APT
sudo apt update && sudo apt install ffmpeg
# sur MacOS avec Homebrew (https://brew.sh/)
brew install ffmpeg
# sur Windows avec Scoop (https://scoop.sh/)
scoop install ffmpegCode language: Bash (bash)
Activer votre environnement “nlp”
conda activate nlp Code language: Shell Session (shell)
PyTorch
PyTorch est une bibliothèque logicielle Python open source de machine learning développée par Meta. Il s’agit du framework le plus utilisé par les chercheuses en IA, tous domaines confondus, et il est bon de vous familiariser avec dans tous les cas.
Vous en avez, entre autres, besoin pour Whisper. Installez PyTorch avec une commande correspondant à votre ordinateur à l’aide du générateur de commandes su https://pytorch.org/get-started/locally/ . Pour une machine Windows dotée d’une carte graphique supportant le protocole CUDA 11.8, par exemple, la configuration sera la suivante:

Et le code à utiliser est le suivant (sur Windows!)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118Code language: JavaScript (javascript)
Si vous avez un Mac, choisissez “Mac” dans “Your OS” et copiez la commande correspondante. L’option CUDA pour l’accélération des calculs IA par GPU n’est disponible que sur une machine Windows ou Linux dotée d’une carte graphique Nvidia.
Sur un Mac, l’accélération par GPU est désormais possible aussi, en recourant aux Metal Performance Shaders (MPS). Cet fonctionnalité s’installe automatiquement avec les plus récentes versions de PyTorch.
Si vous ne connaissez pas votre version de CUDA, tapez nvcc --version dans votre interpréteur (Windows ou Linux). Si vous ne comprenez pas ce qu’est le CPU ou CUDA et que cela vous inquiète, appelez-moi à l’aide.
Rust
Il n’est pas toujours nécessaire d’installer un interpréteur du langage de programmation Rust, mais cela peut aider.
pip install setuptools-rust
Whisper
Nous venons de passer la partie difficile de l’installation, avec les prérequis de Whisper. Installons maintenant l’application elle-même:
pip install git+https://github.com/openai/whisper.git Code language: JavaScript (javascript)
Il reste à tester la conversion d’un fichier audio, sans oublier de spécifier la langue. Pour ce test, choisissez un petit fichier, pour éviter que votre invite de commandes ne soit bloquée en mode “j’affiche les résultats de Whisper”. Si cela vous arrive tout de même, vous pouvez interrompre l’exécution d’une ligne de commande en pressant la combinaison de touches “Ctrl+C”
whisper mon_fichier_audio.mp3 --language French --model smallCode language: Shell Session (shell)
Whisper s’occupera de télécharger le modèle de langage nécessaire.
Pour sauvegarder le résultat dans un fichier, spécifier le format d’exportation et le dossier ou le fichier résultant sera stocké:
whisper mon_fichier_audio.mp3 --language French --model base --output_format txt --output_dir ./transcriptions
Pour de meilleures performances au prix de plus de place sur votre dique dur, vous pouvez prendre d’autres modèles (medium, large, turbo) en les spécifiant dans le pramètre –model.
Pour traiter plusieurs fichiers
Si vous avez de nombreux fichiers à convertir, je vous recommande de tous les mettre dans un dossier et d’utiliser un bash-script. Ces scripts sont des instructions simples qu’il suffit d’exécuter, elles aussi, dans la ligne de commande. Imaginons que vous avez une série de fichiers de type mp3 dans le répertoire votre/dossier, et que vous souhaitez que whisper dépose les transcriptions dans le dossier /transcriptions, utilisez la commande suivante sur MacOS ou Linux:
for file in /votre/dossier/*.mp3; do
whisper "$file" --language French --model base --output_format txt --output_dir ./transcriptions
doneCode language: Bash (bash)
Sur une machine Windows, la commande PowerShell sera comme suit:
$files = Get-ChildItem "C:\votre\dossier" -Filter *.mp3
foreach ($file in $files) {
whisper $file.FullName --language French --model base --output_format txt --output_dir .\transcriptions
}Code language: Bash (bash)
Solutions commerciales
Avantages: Les solutions commerciales facilitent le workflow et ne demandent aucune compétence informatique.
Désavantages: Elles sont chères et exigent beaucoup de confiance de votre part. Elles sont souvent en ligne, sur le serveur du vendeur. Certaines emploient des personnes (sous-payées) réelles. À éviter si vos données sont sensibles.
| Outil | Fonctionnalités supplémentaires | Langages | Tarifs |
| Sonix | Résumés, topic modelling et sentiment analysis | 53+ | $10/h pay-as-you-go; $5/h avec abonnement |
| Trint | Résumés, traductions | 40+ | $80/mois min. Abonnement d’essai gratuit |
| HappyScribe | Soustitres | 120+ | $12/h |
| Amberscript | Soustitres | 70+ | $8/h min. |
| Verbit | Soustitres, résumés | 50+ | Starts at $29/h |
| TranscribeMe | IA ou transcriveu·r·se humaine | 10+ | $0,70/min humaine $0,07/min machine |
| 360Converter Offline transcriber | Hors ligne | Anglais, Français, Allemand, Espagnol, Chinois, Japonais, Russe, Italien | 99$ en une fois, pour un seul achat |