Tous les produits
Search
Centre de documentation

Alibaba Cloud Model Studio:API HTTP de reconnaissance vocale non temps réel Paraformer

Dernière mise à jour :Sep 07, 2026

Paramètres et détails de l'API HTTP pour la reconnaissance vocale non temps réel Paraformer.

ImportantAlibaba Cloud Model Studio a publié un domaine spécifique à l'espace de travail pour la région Chine (Pékin). Ce nouveau domaine dédié offre des performances supérieures et une stabilité accrue pour les requêtes d'inférence. Nous vous recommandons de migrer de dashscope.aliyuncs.com vers {WorkspaceId}.cn-beijing.maas.aliyuncs.com.

Remplacez {WorkspaceId} par votre ID d'espace de travail réel. Le domaine existant reste pleinement fonctionnel.

ImportantCe document s'applique uniquement à la région Chine (Pékin). Pour utiliser le modèle, vous devez disposer d'une clé API provenant de la région Chine (Pékin).

Guide d'utilisation :Reconnaissance vocale non temps réel

Le service fournit une interface de soumission de tâche ainsi qu'une interface d'interrogation de tâche. En règle générale, appelez l'interface de soumission pour envoyer une tâche de reconnaissance, puis interrogez régulièrement l'interface d'état jusqu'à ce que la tâche soit terminée.

Prérequis

Vous avez activé le service et obtenu une clé API. Configurez la clé API comme variable d'environnement plutôt que de la coder en dur dans votre code afin d'éviter les risques de sécurité liés à une fuite de code.

RemarqueLorsque vous devez accorder un accès temporaire à des applications tierces ou à des utilisateurs, ou lorsque vous souhaitez contrôler strictement des opérations sensibles telles que l'accès ou la suppression de données confidentielles, nous vous recommandons d'utiliser des jetons d'authentification temporaires.

Contrairement aux clés API permanentes, les jetons d'authentification temporaires ont une durée de validité courte (60 secondes) et offrent une sécurité renforcée. Ils conviennent parfaitement aux scénarios d'appels temporaires et réduisent efficacement le risque de fuite de clé API.

Utilisation : Dans votre code, remplacez la clé API initialement utilisée pour l'authentification par le jeton d'authentification temporaire obtenu.

Interface de soumission de tâche

Informations de base

Description de l'endpoint API

Soumet une tâche de reconnaissance vocale.

URL
https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/transcription
Méthode de requête

POST

En-têtes de requête
Authorization: Bearer {api-key} // Remplacez {api-key} par votre clé API.
Content-Type: application/json
X-DashScope-Async: enable // N'omettez pas cet en-tête de requête. Sinon, la tâche ne pourra pas être soumise.
Corps du message

Le code suivant présente un corps de message contenant tous les paramètres de requête. Vous pouvez omettre les champs facultatifs selon vos besoins.

{
    "model":"paraformer-v2", // Nom du modèle. Ce paramètre est obligatoire.
    "input":{
        "file_urls":[
            "{YOUR_AUDIO_URL}"
        ] // Fichier à reconnaître. Ce paramètre est obligatoire.
    },
    "parameters":{
        "channel_id":[
            0
        ], // Index de la piste audio. Paramètre facultatif.
        "disfluency_removal_enabled":false, // Activation du filtrage des mots de remplissage. Paramètre facultatif.
        "timestamp_alignment_enabled": false, // Active la fonctionnalité d'alignement temporel. Paramètre facultatif.
        "special_word_filter": "xxx", // Mots sensibles. Paramètre facultatif.
        "language_hints":[ // Applicable uniquement au modèle paraformer-v2. N'utilisez pas ce champ pour d'autres modèles.
            "zh",
            "en"
        ],
        "diarization_enabled":false, // Active la diarisation automatique des locuteurs. Paramètre facultatif.
        "speaker_count": 2 // Nombre de référence de locuteurs. Paramètre facultatif.
    }
}

Paramètres de requête

Cliquez pour afficher un exemple de requête

Exemple cURL pour l'interface de soumission de tâche :

curl --location 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/transcription' \
     --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
     --header "Content-Type: application/json" \
     --header "X-DashScope-Async: enable" \
     --data '{"model":"paraformer-v2","input":{"file_urls":["{YOUR_AUDIO_URL}"]},"parameters":{"channel_id":[0]}}'
ParamètreTypeValeur par défautObligatoireDescription

model

string

Oui

Nom du modèle Paraformer utilisé pour la transcription de fichiers audio et vidéo. Pour plus d'informations, consultez la section modèles.

file_urls

array[string]

Oui

Liste des URL pour la transcription de fichiers audio et vidéo (HTTP/HTTPS). Une seule requête prend en charge 1 URL unique.

ImportantSi une URL contient des espaces, des caractères chinois ou d'autres caractères spéciaux, encodez-la en URL avant utilisation (par exemple, remplacez les espaces par %20). Sinon, le téléchargement pourrait échouer avec une erreur InvalidFile.DownloadFailed.

Si vos fichiers audio sont stockés dans OSS, l'API RESTful prend en charge les URL temporaires commençant par le préfixe oss://.

Important

  • L'URL temporaire est valide pendant 48 heures et ne peut plus être utilisée après expiration. Ne l'utilisez pas dans un environnement de production.
  • L'API permettant d'obtenir un identifiant de téléchargement est limitée à 100 QPS et ne prend pas en charge la mise à l'échelle horizontale. Ne l'utilisez pas dans des environnements de production, des scénarios à forte concurrence ou des tests de charge.
  • Pour les environnements de production, utilisez un service de stockage stable tel que OSS afin de garantir la disponibilité à long terme des fichiers et d'éviter les problèmes de limitation de débit.

vocabulary_id

string

Non

ID du vocabulaire personnalisé. Pris en charge par les modèles v2+ avec configurations linguistiques. Les mots-clés associés à cet ID s'appliquent à la reconnaissance vocale en cours. Désactivé par défaut. Pour l'utilisation, consultez Mots-clés personnalisés.

channel_id

array[integer]

[0]

Non

Spécifie les index des pistes audio à reconnaître dans un fichier audio multipiste. Les index commencent à 0. Par exemple, [0] correspond à la reconnaissance de la première piste, tandis que [0, 1] correspond à la reconnaissance simultanée des deux premières pistes. Si ce paramètre est omis, seule la première piste est traitée par défaut.

ImportantChaque piste spécifiée fait l'objet d'une facturation indépendante. Ainsi, une requête [0, 1] sur un fichier unique génère deux frais distincts.

disfluency_removal_enabled

boolean

false

Non

Filtre les mots de remplissage. Désactivé par défaut.

timestamp_alignment_enabled

boolean

false

Non

Active la fonctionnalité d'alignement temporel. Désactivée par défaut.

special_word_filter

string

Non

Définit les mots sensibles à traiter lors de la reconnaissance vocale et permet d'appliquer différentes méthodes de traitement selon les mots concernés.

En l'absence de ce paramètre, le système applique sa logique de filtrage intégrée : les mots figurant dans la liste des mots sensibles d'Alibaba Cloud Model Studio sont remplacés par des astérisques (*) de même longueur dans les résultats.

Si ce paramètre est renseigné, les stratégies suivantes sont disponibles :

  • Remplacement par : Les mots sensibles détectés sont masqués par des de longueur équivalente.
  • Suppression directe : Les mots sensibles correspondants sont totalement retirés du texte transcrit.

La valeur attendue est une chaîne JSON structurée comme suit :

{
  "filter_with_signed": {
    "word_list": ["test"]
  },
  "filter_with_empty": {
    "word_list": ["start", "happen"]
  },
  "system_reserved_filter": true
}

Description des champs JSON :

  • filter_with_signed

    • Type : Object.

    • Obligatoire : Non.

    • Description : Définit la liste des mots sensibles à remplacer par . Les occurrences trouvées dans la transcription seront substituées par des de même longueur.

    • Exemple : Avec le JSON ci-dessus, la phrase « Aidez-moi à tester ce code » deviendra « Aidez-moi à **** ce code ».

    • Champs internes :

      • word_list : Tableau de chaînes contenant les mots sensibles à masquer.
  • filter_with_empty

    • Type : Object.

    • Obligatoire : Non.

    • Description : Définit la liste des mots sensibles à exclure (filtrer) des résultats. Ces mots seront entièrement supprimés.

    • Exemple : Avec le JSON ci-dessus, la phrase « Le match va bientôt commencer, n'est-ce pas ? » deviendra « Le match va commencer, n'est-ce pas ? ».

    • Champs internes :

      • word_list : Tableau de chaînes contenant les mots sensibles à supprimer intégralement.
  • system_reserved_filter

    • Type : Boolean.
    • Obligatoire : Non.
    • Valeur par défaut : true.
    • Description : Active ou désactive les règles natives du système. Si la valeur est true, le filtrage natif s'applique également et tout mot présent dans la liste des mots sensibles d'Alibaba Cloud Model Studio sera remplacé par des * de longueur identique.

language_hints

array[string]

["zh", "en"]

Non

Indique les codes de langue de la parole à reconnaître.

Ce paramètre concerne exclusivement le modèle paraformer-v2.

Codes de langue pris en charge :

  • zh : Chinois
  • en : Anglais
  • ja : Japonais
  • yue : Cantonais
  • ko : Coréen
  • de : Allemand
  • fr : Français
  • ru : Russe

diarization_enabled

boolean

false

Non

Diarisation automatique des locuteurs. Cette option est désactivée par défaut.

Elle s'applique uniquement aux flux audio mono ; les pistes multicanaux ne sont pas compatibles.

Une fois activée, les résultats incluent un champ speaker_id permettant de différencier les intervenants.

RemarqueSi vous activez cette fonctionnalité, veillez à ce que la durée de l'enregistrement n'excède pas 2 heures, sous peine d'échec ou de délai d'attente dépassé.

Pour consulter un exemple illustrant le champ speaker_id, reportez-vous à la section Description des résultats de reconnaissance.

speaker_count

integer

Non

Valeur indicative du nombre de locuteurs (entier compris entre 2 et 100 inclus).

Ce paramètre n'est pris en compte que si diarization_enabled vaut true.

Par défaut, le système détermine automatiquement ce nombre. Définir cette valeur aide l'algorithme à cibler le nombre indiqué, sans toutefois garantir un résultat exact.

Paramètres de réponse

Cliquez pour afficher un exemple de réponse

{
  "output": {
    "task_status": "PENDING",
    "task_id": "c2e5d63b-96e1-4607-bb91-************"
  },
  "request_id": "77ae55ae-be17-97b8-9942--************"
}

Paramètre

Type

Description

task_status

string

L'état de la tâche.

task_id

string

L'ID de la tâche. Cet ID est transmis en tant que paramètre de requête dans l'interface d'interrogation de tâche.

Interface d'interrogation de tâche

Informations de base

Description de l'endpoint API

Interroge l'état et le résultat d'une tâche de reconnaissance vocale.

URL
https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/tasks/{task_id}
Méthode de requête

GET

En-têtes de requête
Authorization: Bearer {api-key} // Remplacez {api-key} par votre clé API.
Corps du message

Aucun.

Paramètres de requête

Cliquez pour afficher un exemple de requête

curl --location 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/tasks/{task_id}' --header "Authorization: Bearer $DASHSCOPE_API_KEY"

Paramètre

Type

Valeur par défaut

Obligatoire

Description

task_id

string

-

Oui

ID de tâche requis pour l'interrogation. Renvoyé par l'interface de soumission de tâche.

Paramètres de réponse

Cliquez pour afficher un exemple de réponse

Si une tâche comporte plusieurs sous-tâches, l'état global passe à SUCCEEDED dès qu'une seule sous-tâche réussit. Il est donc nécessaire de vérifier le champ subtask_status pour connaître le résultat individuel de chaque sous-tâche.

Exemple normal

{
  "request_id": "f9e1afad-94d3-997e-a83b-************",
  "output": {
    "task_id": "f86ec806-4d73-485f-a24f-************",
    "task_status": "SUCCEEDED",
    "submit_time": "2024-09-12 15:11:40.041",
    "scheduled_time": "2024-09-12 15:11:40.071",
    "end_time": "2024-09-12 15:11:40.903",
    "results": [
      {
        "file_url": "{YOUR_AUDIO_URL}",
        "transcription_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/pre/filetrans-16k/20240912/15%3A11/409a4b92-445b-4dd8-8c1d-f110954d82d8-1.json?Expires=1726211500&OSSAccessKeyId=YOUR_ACCESS_KEY_ID&Signature=YOUR_SIGNATURE",
        "subtask_status": "SUCCEEDED"
      }
    ],
    "task_metrics": {
      "TOTAL": 1,
      "SUCCEEDED": 1,
      "FAILED": 0
    }
  },
  "usage": {
    "duration": 9
  }
}

Exemple d'exception

Le paramètre code indique le code d'erreur, tandis que message fournit le libellé associé. Ces deux champs n'apparaissent qu'en cas d'erreur et permettent de diagnostiquer le problème en consultant la section Codes d'erreur.

{
    "task_id": "7bac899c-06ec-4a79-8875-xxxxxxxxxxxx",
    "task_status": "SUCCEEDED",
    "submit_time": "2024-12-16 16:30:59.170",
    "scheduled_time": "2024-12-16 16:30:59.204",
    "end_time": "2024-12-16 16:31:02.375",
    "results": [
        {
            "file_url": "{YOUR_AUDIO_URL}",
            "code": "InvalidFile.DownloadFailed",
            "message": "The audio file cannot be downloaded.",
            "subtask_status": "FAILED"
        }
    ],
    "task_metrics": {
        "TOTAL": 1,
        "SUCCEEDED": 0,
        "FAILED": 1
    }
}

Paramètre

Type

Description

task_id

string

Identifiant de la tâche interrogée.

task_status

string

État actuel de la tâche interrogée.

Pour les tâches comportant plusieurs sous-tâches, task_status affiche SUCCEEDED dès qu'une sous-tâche aboutit. Consultez le champ subtask_status pour vérifier le résultat de chaque sous-tâche individuellement.

subtask_status

string

État de la sous-tâche.

file_url

string

URL du fichier traité dans le cadre de la transcription.

transcription_url

string

Lien permettant de récupérer le résultat de reconnaissance (valable 24 heures). Passé ce délai, l'interrogation de la tâche et le téléchargement des résultats échoueront.

Le résultat est enregistré au format JSON. Vous pouvez le télécharger via ce lien ou le lire directement par une requête HTTP.

Pour plus de détails sur les champs JSON, consultez la section Description des résultats de reconnaissance.

Description des résultats de reconnaissance

Le résultat de la reconnaissance est enregistré dans un fichier JSON.

Cliquez pour afficher un exemple de résultat de reconnaissance

{
    "file_url":"{YOUR_AUDIO_URL}",
    "properties":{
        "audio_format":"pcm_s16le",
        "channels":[
            0
        ],
        "original_sampling_rate":16000,
        "original_duration_in_milliseconds":3834
    },
    "transcripts":[
        {
            "channel_id":0,
            "content_duration_in_milliseconds":3720,
            "text":"Hello world, this is the Alibaba speech laboratory.",
            "sentences":[
                {
                    "begin_time":100,
                    "end_time":3820,
                    "text":"Hello world, this is the Alibaba speech laboratory.",
                    "sentence_id":1,
                    "speaker_id":0, //This field is only displayed when automatic speaker diarization is enabled
                    "words":[
                        {
                            "begin_time":100,
                            "end_time":596,
                            "text":"Hello ",
                            "punctuation":""
                        },
                        {
                            "begin_time":596,
                            "end_time":844,
                            "text":"world",
                            "punctuation":", "
                        }
                        // Other content omitted here
                    ]
                }
            ]
        }
    ]
}

Les principaux paramètres sont les suivants :

Paramètre

Type

Description

audio_format

string

Format audio du fichier source.

channels

array[integer]

Index des pistes audio du fichier source. Renvoie [0] pour un audio mono, [0, 1] pour un audio à deux pistes, etc.

original_sampling_rate

integer

Fréquence d'échantillonnage (Hz) de l'audio dans le fichier source.

original_duration

integer

Durée originale de l'audio (ms) du fichier source.

channel_id

integer

Index de la piste audio du résultat de transcription, commençant à 0.

content_duration

integer

Durée (ms) du contenu identifié comme parole dans la piste audio.

Le service de reconnaissance vocale Paraformer ne transcrit et ne mesure que le contenu identifié comme parole dans la piste audio, et facture en conséquence. Le contenu non vocal n'est ni mesuré ni facturé. Généralement, la durée du contenu vocal est inférieure à la durée audio originale. Étant donné que la détermination de la présence de contenu vocal est effectuée par un modèle d'IA, il peut y avoir un léger écart avec la réalité.

transcript

string

Résultat de transcription vocale au niveau du paragraphe.

sentences

array

Résultat de transcription vocale au niveau de la phrase.

words

array

Résultat de transcription vocale au niveau du mot.

begin_time

integer

Horodatage de début (ms).

end_time

integer

Horodatage de fin (ms).

text

string

Résultat de la transcription vocale.

speaker_id

integer

Index du locuteur actuel, commençant à 0, utilisé pour distinguer les différents locuteurs.

Ce champ ne s'affiche dans les résultats de reconnaissance que lorsque la diarisation des locuteurs est activée.

punctuation

string

Ponctuation prédite après le mot (le cas échéant).

Exemple complet

Utilisez les bibliothèques HTTP intégrées pour mettre en œuvre les requêtes de soumission et d'interrogation de tâches. Soumettez d'abord la tâche de reconnaissance, puis effectuez des interrogations répétées jusqu'à son achèvement.

Le code suivant fournit un exemple en Python :

import requests
import json
import time

api_key = "your-dashscope-api-key"  # Replace this with your API key.
file_urls = [
    "{YOUR_AUDIO_URL}",
]
language_hints = ["zh", "en"]

# Submit file transcription task with list of file URLs to transcribe.
def submit_task(apikey, file_urls) -> str:

    headers = {
        "Authorization": f"Bearer {apikey}",
        "Content-Type": "application/json",
        "X-DashScope-Async": "enable",
    }
    data = {
        "model": "paraformer-v2",
        "input": {"file_urls": file_urls},
        "parameters": {
            "channel_id": [0],
            "language_hints": language_hints
        },
    }
    # The URL of the recorded file transcription service.
    service_url = (
        "https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/transcription"
    )
    response = requests.post(
        service_url, headers=headers, data=json.dumps(data)
    )

    # Print the response content.
    if response.status_code == 200:
        return response.json()["output"]["task_id"]
    else:
        print("task failed!")
        print(response.json())
        return None

# Recursively query the task status until the task is successful.
def wait_for_complete(task_id):
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
        "X-DashScope-Async": "enable",
    }

    pending = True
    while pending:
        # The URL of the task status query service.
        service_url = f"https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/tasks/{task_id}"
        response = requests.get(
            service_url, headers=headers
        )
        if response.status_code == 200:
            status = response.json()['output']['task_status']
            if status == 'SUCCEEDED':
                print("task succeeded!")
                pending = False
                return response.json()['output']['results']
            elif status == 'RUNNING' or status == 'PENDING':
                pass
            else:
                print("task failed!")
                pending = False
        else:
            print("query failed!")
            pending = False
        print(response.json())
        time.sleep(0.1)

task_id = submit_task(apikey=api_key, file_urls=file_urls)
print("task_id: ", task_id)
result = wait_for_complete(task_id)
print("transcription result: ", result)

Codes d'erreur

Si vous rencontrez des erreurs, consultez la section Codes d'erreur pour le dépannage.

Si le problème persiste, rejoignez la communauté des développeurs pour signaler le problème et fournir l'ID de requête pour une investigation plus approfondie.

Lorsqu'une tâche contient plusieurs sous-tâches, tant qu'une sous-tâche réussit, l'état global de la tâche est marqué comme SUCCEEDED. Vous devez vérifier le champ subtask_status pour déterminer le résultat de chaque sous-tâche.

Exemple de réponse d'erreur :

{
    "task_id": "7bac899c-06ec-4a79-8875-xxxxxxxxxxxx",
    "task_status": "SUCCEEDED",
    "submit_time": "2024-12-16 16:30:59.170",
    "scheduled_time": "2024-12-16 16:30:59.204",
    "end_time": "2024-12-16 16:31:02.375",
    "results": [
        {
            "file_url": "{YOUR_AUDIO_URL}",
            "code": "InvalidFile.DownloadFailed",
            "message": "The audio file cannot be downloaded.",
            "subtask_status": "FAILED"
        }
    ],
    "task_metrics": {
        "TOTAL": 1,
        "SUCCEEDED": 0,
        "FAILED": 1
    }
}

Plus d'exemples

Pour plus d'exemples, consultez notre référentiel GitHub.

FAQ

Fonctionnalités

Q : Le service prend-il en charge l'audio encodé en Base64 ?

Non. L'audio encodé en Base64 n'est pas pris en charge. Seul l'audio accessible via des URL publiques est accepté. Les flux binaires et la reconnaissance directe de fichiers locaux ne sont pas pris en charge.

Q : Comment fournir des fichiers audio sous forme d'URL accessibles publiquement ?

En général, suivez ces étapes (il s'agit d'une approche générale ; les spécificités varient selon le produit de stockage. Nous recommandons de télécharger l'audio sur Alibaba Cloud OSS) :

1. Choisir une méthode de stockage et d'hébergement

Par exemple :

  • Object Storage Service (recommandé) :

    • Utilisez le service de stockage objet d'un fournisseur cloud (tel que Alibaba Cloud OSS) pour télécharger des fichiers audio dans un bucket et les configurer en accès public.
    • Avantages : Haute disponibilité, prise en charge de l'accélération CDN, gestion simplifiée.
  • Serveur Web :

    • Placez les fichiers audio sur un serveur web prenant en charge l'accès HTTP/HTTPS (comme Nginx ou Apache).
    • Avantages : Adapté aux petits projets ou aux tests locaux.
  • Réseau de diffusion de contenu (CDN) :

    • Hébergez les fichiers audio sur un CDN et accédez-y via l'URL fournie par le CDN.
    • Avantages : Diffusion accélérée des fichiers, adapté aux scénarios à forte concurrence.

2. Télécharger les fichiers audio

Téléchargez les fichiers audio en fonction de la méthode de stockage/hébergement choisie, par exemple :

  • Object Storage Service :

    • Connectez-vous à la console du fournisseur cloud et créez un bucket.
    • Téléchargez les fichiers audio et définissez les permissions de fichier sur « lecture publique » ou générez des liens d'accès temporaires.
  • Serveur Web :

    • Placez les fichiers audio dans le répertoire désigné du serveur (tel que /var/www/html/audio/).
    • Assurez-vous que les fichiers sont accessibles via HTTP/HTTPS.

3. Générer une URL accessible publiquement

Par exemple :

  • Object Storage Service :

    • Après le téléchargement, le système génère automatiquement une URL d'accès public (généralement au format https://<bucket-name>.<region>.aliyuncs.com/<file-name>).
    • Si vous avez besoin d'un domaine plus convivial, vous pouvez lier un domaine personnalisé et activer HTTPS.
  • Serveur Web :

    • L'URL d'accès au fichier correspond généralement à l'adresse du serveur suivie du chemin du fichier (telle que https://your-domain.com/audio/file.mp3).
  • CDN :

    • Après avoir configuré l'accélération CDN, utilisez l'URL fournie par le CDN (telle que https://cdn.your-domain.com/audio/file.mp3).

4. Vérifier l'accessibilité de l'URL

Dans un environnement réseau public, assurez-vous que l'URL générée est accessible, par exemple :

  • Ouvrez l'URL dans un navigateur et vérifiez si le fichier audio peut être lu.
  • Utilisez des outils (tels que curl ou Postman) pour vérifier si l'URL renvoie une réponse HTTP correcte (code d'état 200).

Lors de l'utilisation du SDK, si les fichiers audio sont stockés dans Alibaba Cloud OSS, les URL temporaires avec le préfixe oss:// ne sont pas prises en charge.

Lors de l'utilisation de l'API RESTful, si les fichiers audio sont stockés dans Alibaba Cloud OSS, les URL temporaires avec le préfixe oss:// sont prises en charge :

  • L'URL temporaire est valide pendant 48 heures et ne peut plus être utilisée après expiration. Ne l'utilisez pas dans un environnement de production.
  • L'API permettant d'obtenir un identifiant de téléchargement est limitée à 100 QPS et ne prend pas en charge la mise à l'échelle horizontale. Ne l'utilisez pas dans des environnements de production, des scénarios à forte concurrence ou des tests de charge.
  • Pour les environnements de production, utilisez un service de stockage stable tel que OSS afin de garantir la disponibilité à long terme des fichiers et d'éviter les problèmes de limitation de débit.

Q : Combien de temps faut-il pour obtenir les résultats de reconnaissance ?

Après soumission, la tâche passe à l'état de file d'attente (PENDING). Le temps d'attente dépend de la longueur de la file et de la durée du fichier ; il ne peut pas être estimé avec précision, mais se termine généralement en quelques minutes. Veuillez patienter. Les fichiers audio plus longs nécessitent plus de temps de traitement.

Dépannage

Si vous rencontrez une erreur, reportez-vous aux informations dans Codes d'erreur.

Q : Que faire si les résultats de reconnaissance ne sont pas synchronisés avec la lecture audio ?

Définissez le paramètre de requête timestamp_alignment_enabled sur true. Cela synchronise les résultats de reconnaissance avec la lecture audio.

Q : Que faire si j'obtiens une erreur InvalidFile.DownloadFailed après avoir soumis une tâche ?

Vérifiez si l'URL du fichier contient des espaces, des caractères chinois ou d'autres caractères spéciaux. Si le nom du fichier comprend des espaces (par exemple, « Enregistrement Réunion T1 2024.mp4 »), encodez le nom du fichier en URL en remplaçant les espaces par %20 avant de le transmettre au paramètre file_urls.

Q : Que faire si l'URL d'accès public temporaire d'un fichier audio OSS est inaccessible ?

Définissez X-DashScope-OssResourceResolve sur enable dans les en-têtes.

Non recommandé.

Le SDK Java et le SDK Python de reconnaissance vocale non temps réel Paraformer ne prennent pas en charge la configuration des en-têtes.

Q : Impossible d'obtenir des résultats après une interrogation continue ?

Cela peut être dû à une limitation de débit. Veuillez patienter. Si vous avez besoin d'une extension de capacité, rejoignez la communauté des développeurs pour en faire la demande.

Q : Pourquoi n'y a-t-il aucun résultat de reconnaissance (impossible de reconnaître la parole) ?

  • Vérifiez si l'audio répond aux exigences (format, fréquence d'échantillonnage).
  • Si vous utilisez le modèle paraformer-v2, vérifiez si le paramètre language_hints est correct.
  • Si aucune des solutions ci-dessus ne résout le problème, vous pouvez personnaliser des mots-clés pour améliorer la reconnaissance de termes spécifiques.

Autres questions

Pour plus de questions, consultez la FAQ sur GitHub.