Référence de commande CLI Bailian pour la synthèse vocale (TTS), la reconnaissance vocale (ASR) et la gestion du vocabulaire de mots-clés.
Une seule commande invoque les fonctionnalités de synthèse et de reconnaissance vocales de Bailian depuis le terminal, avec une gestion du vocabulaire de mots-clés pour améliorer la précision.
ImportantAjoutez --help à n'importe quelle commande pour obtenir toutes les informations sur les paramètres, par exemple bl speech synthesize --help. Chaque paramètre qui accepte une URL de fichier accepte également un chemin local — le CLI télécharge automatiquement le fichier vers un stockage temporaire (valide pendant 48 heures), vous n’avez donc jamais besoin d’héberger vous-même vos fichiers en tant qu’URL. Les détails des commandes de cette page sont vérifiés avec bl 2.2.1.
Synthèse vocale
bl speech synthesize
Synthétise du texte en parole. Nécessite une authentification par clé API.
Utilisation
bl speech synthesize --text <text> [flags]
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--text <text> | string | Non | Texte à synthétiser en parole (ou utilisez --text-file) |
--text-file <path> | string | Non | Lire le texte à partir d’un fichier au lieu de --text |
--model <model> | string | Non | ID du modèle (par défaut : modèle TTS configuré dans le profil, sinon cosyvoice-v3-flash). Les voix système varient selon le modèle |
--voice <voice> | string | Non | ID de la voix. Utilisez --list-voices pour le modèle sélectionné (ex. qwen-audio-3.0-tts-plus/flash, cosyvoice-v3-flash) ; pour v3.5-flash, fournissez un ID de voix clone/design |
--list-voices | switch | Non | Listez les voix système intégrées pour le modèle sélectionné puis quittez (lien console affiché dans la sortie) |
--format <format> | string | Non | Format audio : mp3, pcm, wav, opus (par défaut : mp3 ; format streaming par défaut : pcm) |
--sample-rate <rate> | string | Non | Fréquence d’échantillonnage audio en Hz (ex. 24000) |
--volume <volume> | string | Non | Volume 0-100 (par défaut : 50) |
--rate <rate> | string | Non | Vitesse de parole 0,5-2,0 (par défaut : 1,0) |
--pitch <pitch> | string | Non | Multiplicateur de hauteur 0,5-2,0 (par défaut : 1,0) |
--seed <seed> | string | Non | Graine aléatoire 0-65535 pour une synthèse reproductible |
--language <lang> | string | Non | Indication de langue (ex. zh, en, ja, ko, fr, de) |
--instruction <text> | string | Non | Instruction en langage naturel pour contrôler le style de parole (ex. "Utilisez un ton doux") |
--enable-ssml | switch | Non | Activer l’analyse du balisage SSML dans le texte d’entrée |
--out <path> | string | Non | Enregistrer l’audio dans un fichier (par défaut : génération automatique dans le répertoire temporaire) |
--stream | switch | Non | Diffuser l’audio brut PCM vers stdout (rediriger vers un lecteur) |
--concurrent <n> | number | Non | Exécuter N requêtes en parallèle (par défaut : 1) |
Exemple : Synthétiser de la parole à partir d’un texte en utilisant un modèle TTS
bl speech synthesize --list-voices --model qwen-audio-3.0-tts-plus
Reconnaissance vocale
bl speech recognize
Reconnaît la parole à partir de fichiers audio (FunAudio-ASR / Qwen-ASR Flash). Nécessite une authentification par clé API.
Utilisation
bl speech recognize --url <audio-url> [flags]
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--url <url> | array | Oui | URL du fichier audio ou chemin local du fichier (répétable, max 100) |
--model <model> | string | Non | ID du modèle (par défaut : modèle ASR configuré dans le profil, sinon fun-asr). Asynchrone : fun-asr / -filetrans / paraformer- ; synchronisé : qwen3-asr-flash* / fun-asr-flash* / qwen-audio-*-asr-flash |
--language <lang> | string | Non | Indication de langue (ex. zh, en, ja). Classique asynchrone/entrée-audio : language_hints ; qwen3-filetrans : language ; qwen3 synchronisé : asr_options.language |
--diarization | switch | Non | Activer la diarisation automatique des locuteurs |
--speaker-count <n> | number | Non | Nombre prévu de locuteurs (nécessite --diarization) |
--vocabulary-id <id> | string | Non | ID de vocabulaire de mots-clés pré-construit (créez-le via speech vocabulary create). Son target_model doit correspondre exactement à --model, sinon il est ignoré silencieusement. Prise en charge plus large que --vocabulary, incluant Fun-ASR et Paraformer |
--vocabulary <json> | string | Non | Mots-clés instantanés sous forme d’objet JSON word→weight, ex. '{"Fendouzhe":4}'. Poids 1-5 (4 recommandé ; des valeurs plus élevées peuvent nuire aux autres mots), 50 pour un mot très chaud. Aucun vocabulaire pré-construit requis. Prend effet uniquement sur les modèles Qwen-Audio-3.0-ASR-Flash |
--context <text> | string | Non | Liste de mots d’amélioration contextuelle pour améliorer la précision sur les noms propres ; doit contenir les mots cibles eux-mêmes (une simple description de sujet a peu d’effet) ; max 400 caractères. Prend effet uniquement sur les modèles Qwen-Audio-3.0-ASR-Flash et Fun-ASR-Flash |
--channel-id <n> | number | Non | ID du canal audio (par défaut : 0) |
--out <path> | string | Non | Enregistrer le résultat complet de transcription dans un fichier JSON |
--async | switch | Non | Retourner l’ID de tâche asynchrone sans attendre |
--poll-interval <seconds> | number | Non | Intervalle de sondage en secondes (par défaut : 2) |
Exemple : Reconnaître la parole à partir d’une URL de fichier audio
bl speech recognize --url https://example.com/audio.mp3
Gestion du vocabulaire de mots-clés
Gérer des vocabulaires de mots-clés pré-construits réutilisables afin d’améliorer la précision de l’ASR sur les noms propres.
bl speech vocabulary create
Crée un vocabulaire de mots-clés pré-compilé pour l’ASR. Nécessite une authentification par clé API.
Utilisation
bl speech vocabulary create --model <model> --prefix <prefix> (--words <json> | --words-file <path>) [flags]
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--model <model> | string | Oui | Modèle ASR pour lequel ce vocabulaire est construit. Doit correspondre exactement au --model passé ultérieurement à speech recognize, sinon le vocabulaire est ignoré silencieusement |
--prefix <prefix> | string | Oui | Préfixe personnalisé du vocabulaire. Seuls chiffres et lettres minuscules autorisés, max 10 caractères |
--words <json> | string | Non | Mots-clés sous forme d’objet JSON word→weight, ex. '{"Fendouzhe":4}'; ou le tableau d’entrée API pour chaque entrée lang. Poids 1-5 (4 recommandé) ; lorsque le target_model du vocabulaire est un modèle de série Qwen-Audio-3.0-ASR-Flash, 50 est également autorisé comme mot très chaud. Ou utilisez --words-file |
--words-file <path> | string | Non | Fichier JSON contenant les mots-clés (utilisez - pour stdin) |
--lang <code> | string | Non | Code langue appliqué à chaque mot-clé lors de l’utilisation du format objet (optionnel ; ignoré pour le format tableau). Paraformer : zh/en/ja/yue/ko/de/fr/ru ; Fun-ASR : zh/en/ja |
Exemple : Créer un vocabulaire de mots-clés pour l’ASR avec des mots personnalisés
bl speech vocabulary create --model fun-asr --prefix demo --words '{"Fendouzhe":4,"Jingluo":4}'
- Le paramètre --model doit correspondre exactement au --model utilisé ultérieurement avec
speech recognize --vocabulary-id; une incompatibilité entraîne une échec silencieux sans message d’erreur.
bl speech vocabulary list
Liste les vocabulaires de mots-clés pré-compilés. Nécessite une authentification par clé API.
Utilisation
bl speech vocabulary list [--prefix <prefix>] [--page <n>] [--page-size <n>]
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--prefix <prefix> | string | Non | Filtrer par préfixe de vocabulaire |
--page <n> | number | Non | Numéro de page, basé sur 1 (par défaut : 1). Mappé vers page_index API (basé sur 0) comme page - 1 |
--page-size <n> | number | Non | Résultats par page (par défaut : 10) |
Exemple : Liste des vocabulaires de mots-clés pré-compilés par préfixe
bl speech vocabulary list --prefix demo
- Les réponses de liste n’incluent pas target_model ; utilisez
speech vocabulary getpour inspecter le modèle pour lequel un vocabulaire a été construit. - Les vocabulaires dont le statut est UNDEPLOYED sont ignorés silencieusement par l’ASR.
bl speech vocabulary get
Obtenir les détails d’un vocabulaire de mots-clés pré-compilé. Nécessite une authentification par clé API.
Utilisation
bl speech vocabulary get --id <id>
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--id <id> | string | Oui | ID du vocabulaire de mots-clés |
Exemple : Récupérer les détails d’un vocabulaire de mots-clés spécifique
bl speech vocabulary get --id vocab-demo-xxx
- Utilisez cette commande pour confirmer target_model avant d’appeler
speech recognize --vocabulary-id; une incompatibilité de modèle entraîne un échec silencieux.
bl speech vocabulary update
Remplacer le contenu d’un vocabulaire de mots-clés pré-compilé. Nécessite une authentification par clé API.
Utilisation
bl speech vocabulary update --id <id> (--words <json> | --words-file <path>) [flags]
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--id <id> | string | Oui | ID du vocabulaire de mots-clés |
--words <json> | string | Non | Mots-clés sous forme d’objet JSON word→weight, ex. '{"Fendouzhe":4}'; ou le tableau d’entrée API pour chaque entrée lang. Poids 1-5 (4 recommandé) ; lorsque le target_model du vocabulaire est un modèle de série Qwen-Audio-3.0-ASR-Flash, 50 est également autorisé comme mot très chaud. Ou utilisez --words-file |
--words-file <path> | string | Non | Fichier JSON contenant les mots-clés (utilisez - pour stdin) |
--lang <code> | string | Non | Code langue appliqué à chaque mot-clé lors de l’utilisation du format objet (optionnel ; ignoré pour le format tableau). Paraformer : zh/en/ja/yue/ko/de/fr/ru ; Fun-ASR : zh/en/ja |
--yes | switch | Non | Confirmer cette opération à haut risque |
AvertissementCela remplace entièrement tous les mots-clés du vocabulaire. Les entrées non listées seront supprimées et ne pourront pas être annulées.
Exemple : Prévisualiser la mise à jour du vocabulaire de mots-clés avec des mots spécifiés
bl speech vocabulary update --id vocab-demo-xxx --words '{"Fendouzhe":4}' --dry-run
- update remplace entièrement, ce n’est pas une ajout. Privilégiez --dry-run en premier pour prévisualiser le vocabulaire complet qui sera écrit.
bl speech vocabulary delete
Supprime un vocabulaire de mots-clés prédéfinis. Nécessite une authentification par clé API.
Utilisation
bl speech vocabulary delete --id <id>
| Paramètre | Type | Requis | Description |
|---|---|---|---|
--id <id> | string | Oui | Identifiant du vocabulaire de mots-clés |
--yes | switch | Non | Confirmer cette opération à haut risque |
AvertissementCette suppression supprime définitivement le vocabulaire de mots-clés spécifié et ne peut pas être annulée.
Exemple : Prévisualiser la suppression d'un vocabulaire de mots-clés
bl speech vocabulary delete --id vocab-demo-xxx --dry-run