API

Tutoriel OpenAI Whisper : Créez une API de reconnaissance vocale dans Docker

OpenAI Whisper Speech Recognition API diagram for developers

Découvrez Whisper : le système premier de reconnaissance vocale d'OpenAI

Whisper est un système de reconnaissance vocale révolutionnaire développé par OpenAI, conçu pour révolutionner notre interaction avec la technologie en utilisant nos voix. Avec un ensemble de données d'entraînement composé de 680 000 heures de données multilingues et multitâches provenant du web, Whisper se distingue par sa capacité remarquable à s'adapter à divers accents, bruits de fond et jargon technique.

Caractéristiques clés de Whisper

  • Support multilingue : Whisper peut transcrire et traduire la langue parlée en anglais, ce qui en fait un outil extrêmement polyvalent pour les utilisateurs du monde entier.
  • Performance robuste : Le système excelle dans des conditions audio difficiles, garantissant une grande précision même dans des environnements bruyants.
  • Amical pour les développeurs : OpenAI offre un accès aux modèles et au code de Whisper, permettant aux développeurs de créer des applications innovantes utilisant cette technologie avancée de reconnaissance vocale.

Comment commencer avec Docker

Si vous envisagez d'exécuter Whisper sur votre machine locale, la première étape consiste à installer Docker. Ce logiciel vous permet de créer des environnements isolés pour vos applications.

Configuration de votre projet

  1. Créer un dossier pour vos fichiers, en le nommant whisper-api.
  2. Dans ce dossier, créez un fichier appelé requirements.txt et ajoutez flask comme dépendance.
  3. Créer un autre fichier nommé Dockerfile pour configurer votre environnement Docker.

Construction du Dockerfile

Votre Dockerfile devrait contenir les instructions suivantes :

FROM python:3.10-slim
WORKDIR /python-docker
COPY requirements.txt .
RUN apt-get update && apt-get install -y git
RUN pip install -r requirements.txt
RUN pip install git+https://github.com/openai/whisper.git
RUN apt-get install -y ffmpeg
EXPOSE 5000
CMD ["flask", "run"]

Comprendre le Dockerfile

Voici un aperçu de ce que fait chaque ligne :

  • FROM python:3.10-slim : Définit l'image de base pour votre conteneur.
  • WORKDIR /python-docker : Crée et définit un répertoire de travail dans le conteneur.
  • COPY requirements.txt . : Copie votre fichier de requis dans l'environnement Docker.
  • RUN apt-get update && apt-get install -y git : Met à jour le gestionnaire de paquets et installe Git pour le contrôle de version.
  • RUN pip install -r requirements.txt : Installe les dépendances listées dans le fichier de requis.
  • RUN pip install git+https://github.com/openai/whisper.git : Installe le paquet Whisper directement depuis GitHub.
  • RUN apt-get install -y ffmpeg : Installe FFmpeg, un puissant cadre multimédia pour le traitement des fichiers audio et vidéo.
  • EXPOSE 5000 : Expose le port 5000 pour accéder au serveur Flask.
  • CMD ["flask", "run"] : Démarre l'application Flask lorsque le conteneur s'exécute.

Créer votre route API

Ensuite, créez un fichier nommé app.py où vous importerez les packages nécessaires et initialiserez à la fois l'application Flask et Whisper :

from flask import Flask, request
import whisper

app = Flask(__name__)
model = whisper.load_model("base")

Ensuite, créez une route pour accepter les requêtes POST avec un fichier audio :

@app.route('/whisper', methods=['POST'])
def transcribe():
    file = request.files['file']
    audio = whisper.load_audio(file)
    result = model.transcribe(audio)
    return {'transcript': result['text']}

Exécution du conteneur Docker

Pour construire et exécuter votre conteneur, ouvrez un terminal et naviguez jusqu'à votre dossier projet. Exécutez les commandes suivantes :

# Construire le conteneur
$ docker build -t whisper-api .
# Exécuter le conteneur
$ docker run -p 5000:5000 whisper-api

Tester votre API

Vous pouvez tester l'API en envoyant une requête POST à http://localhost:5000/whisper avec un fichier à l'intérieur. Assurez-vous que le corps de la requête est form-data. Utilisez cette commande curl pour tester :

curl -X POST -F "file=@path_to_your_file" http://localhost:5000/whisper

Si tout est configuré correctement, vous devriez recevoir une réponse JSON contenant la transcription du fichier audio.

Déployer l'API

Cette API peut être déployée sur n'importe quelle plateforme qui prend en charge Docker. N'oubliez pas que la configuration actuelle utilise le CPU pour le traitement des fichiers audio. Pour tirer parti d'un GPU, vous devrez ajuster votre Dockerfile pour partager les ressources GPU. Pour plus de détails à ce sujet, consultez la documentation officielle de NVIDIA.

Participez aux prochains hackathons d'IA

Quel meilleur moyen d'utiliser vos nouvelles compétences qu'en rejoignant un hackathon d'IA ? Engagez-vous avec la communauté et explorez les applications pratiques des technologies que vous apprenez !

Explorez le code complet

Vous pouvez trouver le référentiel de code complet ici.

En lire plus

Illustration of a person using AI tools for SEO strategy
Infographic on prompt engineering for AI image generation using Craiyon.

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.