Découverte d'OpenAI Whisper : Un aperçu complet
OpenAI Whisper est à la pointe des systèmes de reconnaissance vocale avancés, révolutionnant notre façon d'interagir avec les données audio. Amélioré par un vaste ensemble de données de 680 000 heures d'entrées supervisées multilingues et multitâches provenant du web, Whisper excelle dans la transcription précise de la parole dans différentes langues. Cet entraînement étendu permet au système de montrer une résilience remarquable face à divers facteurs, y compris les accents, le bruit de fond et le jargon spécialisé. De plus, Whisper ne se contente pas de transcrire l'audio, mais est également capable de traduire en anglais, ce qui en fait un outil précieux pour la communication mondiale.
Limitations de Whisper : défis d'identification des locuteurs
Malgré ses capacités révolutionnaires, Whisper fait face à des défis dans l'identification des locuteurs lors des conversations. La diarisation, qui est le processus de reconnaissance et de différenciation entre les locuteurs dans un dialogue, est fondamentale pour une analyse efficace des conversations. Cet article fournit un tutoriel sur l'utilisation de Whisper pour la reconnaissance des locuteurs et la transcription à l'aide du pyannote-audio toolkit.
Préparation de l'audio
Pour commencer notre analyse, nous devons d'abord préparer le fichier audio. À des fins de démonstration, nous utiliserons les 20 premières minutes du podcast de Lex Fridman avec Yann LeCun. Les étapes suivantes décrivent le processus :
- Téléchargez la vidéo du podcast à l'aide du package yt-dlp.
- Utilisez ffmpeg pour extraire l'audio.
- Coupez l'audio à 20 minutes à l'aide de la bibliothèque pydub.
Une fois cela terminé, nous aurons un fichier nommé audio.wav qui contient le segment audio souhaité.
Implémentation de Pyannote pour la diarisation des locuteurs
pyannote.audio est un kit d'outils open-source intégré dans l'écosystème Python, spécifiquement conçu pour la diarisation des locuteurs. Tirant parti du cadre d'apprentissage automatique PyTorch, il englobe divers blocs neuronaux entraînables pour construire des pipelines complets de diarisation des locuteurs. Pyannote fournit également des modèles et des pipelines préentraînés, garantissant des performances de pointe dans de nombreux domaines, notamment :
- Détection de l'activité vocale
- Segmentation des locuteurs
- Détection de discours superposé
- Embarquement des locuteurs
Installation et exécution de Pyannote
Pour commencer la diarisation des locuteurs, vous devrez d'abord installer la bibliothèque Pyannote. Après l'installation, vous pourrez exécuter la bibliothèque sur le fichier audio extrait pour générer des sorties de diarisation des locuteurs :
python -m pyannote.audio diarize audio.wav
La sortie reflète le timing et l'identité des locuteurs, avec des données essentielles qu'elle génère. Ensuite, nous pouvons affiner et nettoyer les données pour les préparer à la transcription.
Transcription de l'audio avec OpenAI Whisper
Avant d'utiliser Whisper, assurez-vous d'avoir installé les bibliothèques nécessaires. Il existe un conflit de version connu avec pyannote.audio qui pourrait entraîner des erreurs. Notre solution pratique est d'exécuter d'abord le processus Pyannote, puis de suivre avec Whisper.
Exécutez OpenAI Whisper sur l'audio préparé comme suit :
python -m whisper audio.wav --output_dir transcriptions
Whisper générera des fichiers de transcription qui peuvent être ajustés en fonction de la taille du modèle selon vos besoins. Pour gérer les fichiers au format .vtt, vous devrez également installer la bibliothèque webvtt-py.
Correspondance des transcriptions avec les diarizations
Nous devons maintenant corréler chaque ligne de la transcription avec ses données de diarisation correspondantes. Ce processus de correspondance garantit que le timing est précis, en particulier pour les sections audio où aucune diarisation n'a été enregistrée. Grâce aux données extraites, nous pouvons générer un joli fichier HTML pour afficher les résultats clairement.
Applications de vos nouvelles compétences
Les connaissances que vous avez acquises grâce à ce tutoriel ouvrent des portes à de multiples opportunités :
- Développez une application innovante basée sur Whisper lors d'un hackathon AI, en collaborant avec des passionnés du monde entier.
- Participez au programme Slingshot de New Native pour accélérer votre projet et le commercialiser, en voyant potentiellement comment résoudre des défis mondiaux pressants avec l'IA.
- Ou, alternativement, gardez ce savoir nouveau pour vous et laissez les autres faire un impact, bien que cela ne soit pas l'approche recommandée !
Plus de 54 000 passionnés se sont réunis lors de hackathons AI organisés par lablab.ai, produisant plus de 900 prototypes. C'est une communauté dynamique où vous pouvez faire une différence significative !
Pour plus d'informations et des exemples de code complets, référez-vous au carnet qui décrit le processus.
Laisser un commentaire
Tous les commentaires sont modérés avant d'être publiés.
Ce site est protégé par hCaptcha, et la Politique de confidentialité et les Conditions de service de hCaptcha s’appliquent.