Passer au contenu principal
POST
MiniMax Speech
Les paramètres et le mode d’utilisation sont alignés sur la version officielle ; pour les paramètres détaillés, reportez-vous directement à la documentation officielle.

I. Vue d’ensemble

Ce document explique comment utiliser la synthèse vocale synchrone, la synthèse vocale asynchrone de textes longs, la gestion de fichiers, le clonage rapide de voix et la conception de voix via le protocole d’origine MiniMax Speech. L’interface synchrone renvoie directement l’audio ou un flux SSE dans une requête POST ; l’interface asynchrone renvoie d’abord un task_id, puis l’appelant interroge l’état de la tâche et récupère le fichier de résultat via file_id.

1.1 Adresse de l’interface

L’adresse complète correspond à https://{api_domain} suivi du chemin indiqué dans le tableau, où {api_domain} est le domaine API que vous utilisez.

1.2 Authentification

Toutes les requêtes nécessitent une clé API de la plateforme. Les requêtes POST JSON doivent également spécifier le type de contenu :
Le téléversement de fichiers utilise multipart/form-data ; les requêtes GET ne nécessitent pas de Content-Type.

1.3 Réponses et accès aux ressources

L’interface conserve les champs de réponse et la structure d’erreur d’origine de MiniMax. Les réponses JSON contiennent généralement base_resp.status_code et base_resp.status_msg ; un HTTP 200 ne signifie pas nécessairement un succès métier, vérifiez toujours base_resp.status_code=0. task_id et file_id peuvent dépasser la plage des entiers sûrs de JavaScript ; enregistrez-les sous forme d’entiers sans perte ou de chaînes de caractères. Les fichiers, les tâches et les voix privées ne sont accessibles qu’à l’utilisateur de la plateforme qui les a créés ; lors de l’interrogation, utilisez la même clé API de plateforme que celle utilisée lors de la création des ressources.

II. Synthèse vocale synchrone

Documentation officielle des paramètres : Synthèse vocale synchrone HTTP

2.1 Appeler l’interface

Champs de requête courants : Les champs d’extension d’origine tels que pronunciation_dict, timbre_weights, voice_modify, stream_options, etc. sont transmis tels quels ; pour les contraintes détaillées, reportez-vous à la documentation officielle MiniMax.

2.2 Exemple d’appel

Pour un appel en streaming, il suffit de définir stream=true et d’utiliser un client prenant en charge la lecture en streaming, par exemple curl -N.

2.3 Description de la réponse

La réponse en streaming est un flux SSE d’origine. Dans l’événement de succès final, data.status vaut 2 et l’utilisation se trouve dans extra_info.usage_characters.

2.4 Facturation

La facturation est basée sur extra_info.usage_characters finalement renvoyé par le fournisseur amont, avec une unité de facturation par 10 000 caractères. Les requêtes échouées, les erreurs métier d’origine et les flux SSE sans événement de terminaison réussi ne sont pas facturés. Le prix unitaire exact dépend de la page tarifaire du service que vous utilisez.

III. Synthèse vocale asynchrone de textes longs

Documentation officielle des paramètres : Créer une tâche asynchrone, Interroger une tâche asynchrone

3.1 Créer une tâche

3.2 Exemple de création

Veuillez conserver le task_id. La facturation intervient dès la création réussie de la tâche asynchrone, selon le usage_characters de la réponse ; les interrogations ultérieures ne sont pas facturées à nouveau.

3.3 Interroger une tâche

Cette interface d’interrogation peut être appelée au maximum 10 fois par seconde. Les états incluent Processing, Success, Failed et Expired ; arrêtez l’interrogation répétée une fois l’état final atteint.
Une fois la tâche réussie, utilisez file_id pour interroger ou télécharger le fichier. Selon la documentation officielle MiniMax, l’URL de téléchargement est valide environ 9 heures à compter de sa génération ; enregistrez le résultat en temps utile.

IV. Gestion des fichiers

Documentation officielle des paramètres : Téléversement de fichier, Récupération de fichier, Téléchargement de fichier

4.1 Téléverser un fichier

La requête doit contenir obligatoirement et uniquement un purpose et un fichier. La taille maximale du corps d’une requête de plateforme est de 64 MiB ; les limites de format, de durée et de taille de MiniMax pour chaque utilisation s’appliquent toujours.

4.2 Interrogation et téléchargement

retrieve renvoie les métadonnées du fichier et download_url ; retrieve_content renvoie directement le fichier binaire. Le téléversement, l’interrogation et le téléchargement ne sont pas facturés.

V. Clonage rapide de voix

Documentation officielle des paramètres : Clonage rapide de voix

5.1 Appeler l’interface et champs

5.2 Exemple d’appel et réponse

Une requête réussie est facturée comme une voix. Si un audio d’essai est généré dans la requête, la plateforme n’ajoute pas de SKU de synthèse vocale supplémentaire. Selon la documentation officielle MiniMax, une voix clonée qui n’a pas été officiellement utilisée pour la synthèse vocale dans les 7 jours peut être supprimée.

VI. Conception de voix

Documentation officielle des paramètres : Conception de voix

6.1 Appeler l’interface et champs

6.2 Exemple d’appel et réponse

Une requête réussie est facturée comme une voix ; l’audio d’essai est inclus dans la facturation de cette interface et n’ajoute pas de SKU de synthèse vocale supplémentaire.

VII. Erreurs courantes et points d’attention

  • Les champs d’origine sont transmis autant que possible tels quels, mais ce service n’expose que les huit chemins listés dans ce document.
  • La taille maximale du corps d’une requête et d’un événement SSE individuel est de 64 MiB.
  • Après la déconnexion du client, le service peut continuer à lire le flux SSE déjà commencé afin de finaliser le décompte de l’utilisation.
  • Les tâches asynchrones doivent obtenir leur état via l’interface d’interrogation MiniMax de ce document, et non via l’interface générique de résultats asynchrones de la plateforme.
  • Téléchargez rapidement le fichier après avoir reçu l’URL du fichier ou un ID de fichier réussi ; l’URL et le fichier peuvent expirer.

VIII. Exemple d’appel en Python

L’exemple suivant illustre la création asynchrone et l’interrogation répétée. En production, définissez un délai d’expiration global, un backoff exponentiel et un nombre maximal d’interrogations.
Dernière modification le 21 octobre 2026