Transcrire la reconnaissance vocale à l'aide de l'API

Vous trouverez sur cette page la procédure à suivre pour envoyer une requête de reconnaissance vocale à Cloud Speech-to-Text à l'aide de l'interface REST et de la commande curl.

Cloud Speech-to-Text permet d'intégrer facilement les technologies de reconnaissance vocale de Google aux applications en cours de développement. Vous pouvez envoyer des données audio à l'API Cloud Speech-to-Text, qui renvoie ensuite une transcription de ce fichier audio en texte. Pour en savoir plus sur ce service, consultez les Principes de base de Cloud Speech-to-Text.

Avant de commencer

Pour pouvoir envoyer une requête à l'API Cloud Speech-to-Text, vous devez avoir effectué les actions suivantes. Pour en savoir plus, consultez la page Avant de commencer.

Rôles requis

Pour obtenir les autorisations nécessaires pour transcrire la parole en texte, demandez à votre administrateur de vous accorder le rôle IAM Consommateur Service Usage (roles/serviceusage.serviceUsageConsumer) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Envoyer une requête de transcription audio

Vous pouvez désormais utiliser Cloud Speech-to-Text pour transcrire un fichier audio en texte. Servez-vous de l'exemple de code suivant pour envoyer une requête REST recognize à l'API Cloud Speech-to-Text.

  1. Créez un fichier de requête JSON contenant le texte ci-dessous, puis enregistrez-le sous la forme d'un fichier texte brut nommé sync-request.json :

    {
      "config": {
          "encoding":"FLAC",
          "sampleRateHertz": 16000,
          "languageCode": "en-US",
          "enableWordTimeOffsets": false
      },
      "audio": {
          "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
      }
    }
      

    Cet extrait de code JSON indique que le fichier audio est encodé en FLAC, qu'il a un taux d'échantillonnage de 16 000 Hz et qu'il est stocké sur Google Cloud Storage sur l'URI indiqué. Étant donné que le fichier audio est accessible publiquement, vous n'avez pas besoin d'identifiants pour accéder au fichier.

  2. Utilisez la commande curl pour créer une requête speech:recognize, en indiquant le nom de fichier de la requête JSON que vous avez configurée à l'étape 1 :

    L'exemple de commande curl se sert de la commande gcloud auth print-access-token pour obtenir un jeton d'authentification.

    curl -s -H "Content-Type: application/json" \
        -H "Authorization: Bearer "$(gcloud auth print-access-token) \
        https://speech.googleapis.com/v1/speech:recognize \
        -d @sync-request.json
      

    Notez que pour indiquer un nom de fichier dans la commande curl, vous devez utiliser l'option -d (pour "data") et faire précéder le nom de fichier du symbole @. Ce fichier doit se trouver dans le même répertoire que celui depuis lequel vous exécutez la commande curl.

    Un résultat semblable à ceci doit s'afficher :

    {
      "results": [
        {
          "alternatives": [
            {
              "transcript": "how old is the Brooklyn Bridge",
              "confidence": 0.98267895
            }
          ]
        }
      ]
    }
      

Félicitations ! Vous avez envoyé votre première requête à Cloud Speech-to-Text !

Si vous recevez une erreur ou une réponse vide de Cloud Speech-to-Text, reportez-vous aux étapes de dépannage et de réduction des erreurs.

Effectuer un nettoyage

Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre compte Google Cloud , procédez comme suit :

Étapes suivantes