Recherche de site Web

API Whisper d'OpenAI pour la transcription et la traduction


Cet article vous montrera comment utiliser l'API Whisper d'OpenAI pour transcrire l'audio en texte. Il vous montrera également comment l'utiliser dans vos propres projets et comment l'intégrer dans vos projets de science des données.

Vous avez accumulé beaucoup d’enregistrements, mais vous n’avez pas l’énergie pour commencer à les écouter et à les retranscrire ? Quand j'étais encore étudiant, je me souviens que je devais lutter chaque jour avec des heures d'écoute et des heures de cours enregistrés et que la plupart de mon temps était consacré à la transcription. De plus, ce n’était pas ma langue maternelle et j’ai dû faire glisser chaque phrase dans Google Translate pour la convertir en italien.

Désormais, la transcription et la traduction manuelles ne sont plus qu’un souvenir. La célèbre société de recherche pour ChatGPT, OpenAI, a lancé l'API Whisper pour la conversation parole-texte ! Avec quelques lignes de code Python, vous pouvez appeler ce puissant modèle de reconnaissance vocale, oublier vos pensées et vous concentrer sur d'autres activités, comme vous entraîner avec des projets de science des données et améliorer votre portfolio. Commençons !

Qu’est-ce que Whisper ?

Whisper est un modèle basé sur des réseaux de neurones développé par OpenAI pour résoudre des tâches de synthèse vocale. Il appartient à la famille GPT-3 et est devenu très populaire pour sa capacité à transcrire l'audio en texte avec une très grande précision.

Cela ne limite pas la gestion de l’anglais, mais sa capacité est étendue à plus de 50 langues. Si vous souhaitez savoir si votre langue est incluse, vérifiez ici. De plus, il peut traduire n’importe quelle langue audio en anglais.

Comme d'autres produits OpenAI, il existe une API pour accéder à ces services de reconnaissance vocale, permettant aux développeurs et aux data scientists d'intégrer Whisper dans leurs plates-formes et applications. 

Comment accéder à l'API Whisper ?

Avant d'aller plus loin, vous avez besoin de quelques étapes pour accéder à l'API Whisper. Tout d’abord, connectez-vous au site Web de l’API OpenAI. Si vous n'avez toujours pas de compte, vous devez le créer. Après avoir entré, cliquez sur votre nom d'utilisateur et appuyez sur l'option « Afficher les clés API ». Ensuite, cliquez sur le bouton « Créer une nouvelle clé API » et copiez la nouvelle clé API de création sur votre code Python.

Transcrire avec l'API Whisper

Tout d’abord, téléchargeons une vidéo YouTube de Kevin Stratvert, un YouTuber très populaire qui aide les étudiants du monde entier à maîtriser la technologie et à améliorer leurs compétences en apprenant des outils tels que Power BI, le montage vidéo et les produits d’IA. Par exemple, supposons que nous souhaitions retranscrire la vidéo « 3 outils d’IA époustouflants ».

Nous pouvons télécharger directement cette vidéo en utilisant la bibliothèque pytube. Pour l'installer, vous avez besoin de la ligne de commande suivante :

pip install pytube3
pip install openai

Nous installons également la bibliothèque openai, puisqu'elle sera utilisée plus tard dans le tutoriel. Une fois toutes les bibliothèques python installées, il suffit de transmettre l'URL de la vidéo à l'objet Youtube. Ensuite, nous obtenons le flux vidéo de la plus haute résolution, puis téléchargeons la vidéo.

from pytube import YouTube

video_url = "https://www.youtube.com/watch?v=v6OB80Vt1Dk&t=1s&ab_channel=KevinStratvert"

yt = YouTube(video_url)
stream = yt.streams.get_highest_resolution()
stream.download()

Une fois le fichier téléchargé, il est temps de passer à la partie amusante ! 

import openai

API_KEY = 'your_api_key'
model_id = 'whisper-1'
language = "en"
audio_file_path = 'audio/5_tools_audio.mp4'
audio_file = open(audio_file_path, 'rb')

Après avoir configuré les paramètres et ouvert le fichier audio, nous pouvons transcrire l'audio et l'enregistrer dans un fichier Txt.

response = openai.Audio.transcribe(
    api_key=API_KEY,
    model=model_id,
    file=audio_file,
    language='en'
)
transcription_text = response.text
print(transcription_text)

Résultat :

Hi everyone, Kevin here. Today, we're going to look at five different tools that leverage artificial intelligence in some truly incredible ways. Here for instance, I can change my voice in real time. I can also highlight an area of a photo and I can make that just automatically disappear. Uh, where'd my son go? I can also give the computer instructions, like, I don't know, write a song for the Kevin cookie company....

Comme prévu, le résultat est très précis. Même la ponctuation est si précise que je suis très impressionnée ! 

Traduire avec l'API Whisper

Cette fois, nous traduirons l’audio de l’italien vers l’anglais. Comme précédemment, nous téléchargeons le fichier audio. Dans mon exemple, j'utilise cette vidéo YouTube d'un YouTuber italien populaire Piero Savastano qui enseigne l'apprentissage automatique d'une manière très simple et amusante. Il vous suffit de copier le code précédent et de modifier uniquement l'URL. Une fois téléchargé, on ouvre le fichier audio comme avant :

audio_file_path = 'audio/ml_in_python.mp4'
audio_file = open(audio_file_path, 'rb')

Ensuite, nous pouvons générer la traduction anglaise à partir de la langue italienne. 

response = openai.Audio.translate(
    api_key=API_KEY,
    model=model_id,
    file=audio_file
)
translation_text = response.text
print(translation_text)

Résultat :

We also see some graphs in a statistical style, so we should also understand how to read them. One is the box plot, which allows to see the distribution in terms of median, first quarter and third quarter. Now I'm going to tell you what it means. We always take the data from the data frame. X is the season. On Y we put the count of the bikes that are rented. And then I want to distinguish these box plots based on whether it is a holiday day or not. This graph comes out. How do you read this? Here on the X there is the season, coded in numerical terms. In blue we have the non-holiday days, in orange the holidays. And here is the count of the bikes. What are these rectangles? Take this box here. I'm turning it around with the mouse....

Réflexions finales

C'est ça! J'espère que ce tutoriel vous a aidé à démarrer avec l'API Whisper. Dans cette étude de cas, il a été appliqué avec des vidéos YouTube, mais vous pouvez également essayer des podcasts, des appels Zoom et des conférences. J’ai trouvé les résultats obtenus après la transcription et la traduction très impressionnants ! Cet outil d’IA aide sûrement beaucoup de gens en ce moment. La seule limite est le fait qu’il n’est possible de traduire qu’en texte anglais et non l’inverse, mais je suis sûr qu’OpenAI le fournira bientôt. Merci d'avoir lu! Passe une bonne journée!

Ressources

  • Guide de synthèse vocale de l'API Whisper

  • Premiers pas avec l'API OpenAI Whisper en Python | Vidéo YouTube

Articles connexes