Referencia de comandos de la CLI Bailian para síntesis de voz (TTS), reconocimiento de voz (ASR) y administración de vocabularios de palabras clave.
Un único comando invoca las capacidades de síntesis y reconocimiento de voz de Bailian desde la terminal, con administración de vocabularios de palabras clave para mejorar la precisión.
ImportanteAgregue --help a cualquier comando para obtener detalles completos de los parámetros, por ejemplo: bl speech synthesize --help. Cada parámetro que acepta una URL de archivo también acepta una ruta local: la CLI lo carga automáticamente en almacenamiento temporal (válido durante 48 horas), por lo que nunca necesita hospedar archivos como URLs usted mismo. Los detalles de los comandos de esta página están verificados con bl 2.2.1.
Síntesis de voz
bl speech synthesize
Generar voz a partir de texto. Requiere autenticación con clave de API.
Uso
bl speech synthesize --text <text> [flags]
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--text <text> | string | No | Texto para sintetizar en voz (o use --text-file) |
--text-file <path> | string | No | Leer texto desde un archivo en lugar de --text |
--model <model> | string | No | ID del modelo (predeterminado: modelo TTS configurado en el perfil, de lo contrario cosyvoice-v3-flash). Las voces del sistema varían según el modelo |
--voice <voice> | string | No | ID de voz. Use --list-voices para el modelo seleccionado (por ejemplo, qwen-audio-3.0-tts-plus/flash, cosyvoice-v3-flash); para v3.5-flash proporcione un ID de voz clonada/diseño |
--list-voices | switch | No | Listar voces del sistema integradas para el modelo seleccionado y salir (se muestra un vínculo de consola en la salida) |
--format <format> | string | No | Formato de audio: mp3, pcm, wav, opus (predeterminado: mp3; predeterminado para transmisión: pcm) |
--sample-rate <rate> | string | No | Tasa de muestreo de audio en Hz (por ejemplo, 24000) |
--volume <volume> | string | No | Volumen 0-100 (predeterminado: 50) |
--rate <rate> | string | No | Velocidad de habla 0.5-2.0 (predeterminado: 1.0) |
--pitch <pitch> | string | No | Multiplicador de tono 0.5-2.0 (predeterminado: 1.0) |
--seed <seed> | string | No | Semilla aleatoria 0-65535 para síntesis reproducible |
--language <lang> | string | No | Pista de idioma (por ejemplo, zh, en, ja, ko, fr, de) |
--instruction <text> | string | No | Instrucción en lenguaje natural para controlar el estilo de voz (por ejemplo, "Usar un tono suave") |
--enable-ssml | switch | No | Habilitar análisis de marcado SSML en el texto de entrada |
--out <path> | string | No | Guardar audio en archivo (predeterminado: generación automática en directorio temporal) |
--stream | switch | No | Transmitir audio crudo PCM a stdout (redirigir a reproductor) |
--concurrent <n> | number | No | Ejecutar N solicitudes simultáneas (predeterminado: 1) |
Ejemplo: Sintetizar voz a partir de texto usando un modelo TTS
bl speech synthesize --list-voices --model qwen-audio-3.0-tts-plus
Reconocimiento de voz
bl speech recognize
Reconocer voz a partir de archivos de audio (FunAudio-ASR / Qwen-ASR Flash). Requiere autenticación con clave de API.
Uso
bl speech recognize --url <audio-url> [flags]
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--url <url> | array | Sí | URL de archivo de audio o ruta de archivo local (repetible, máximo 100) |
--model <model> | string | No | ID del modelo (predeterminado: modelo ASR configurado en el perfil, de lo contrario fun-asr). Asíncrono: fun-asr / -filetrans / paraformer-; sincronizado: qwen3-asr-flash* / fun-asr-flash* / qwen-audio-*-asr-flash |
--language <lang> | string | No | Pista de idioma (por ejemplo, zh, en, ja). Clásico asíncrono/entrada-audio: language_hints; qwen3-filetrans: language; qwen3 sincronizado: asr_options.language |
--diarization | switch | No | Habilitar diarización automática de hablantes |
--speaker-count <n> | number | No | Número esperado de hablantes (requiere --diarization) |
--vocabulary-id <id> | string | No | ID de vocabulario de palabras clave precompilado (cree uno mediante speech vocabulary create). Su target_model debe coincidir exactamente con --model, de lo contrario se ignora silenciosamente. Soporte más amplio de modelos que --vocabulary, incluyendo Fun-ASR y Paraformer |
--vocabulary <json> | string | No | Palabras clave instantáneas como objeto JSON de palabra→peso, por ejemplo '{"Fendouzhe":4}'. Peso 1-5 (se recomienda 4; valores más altos pueden afectar otras palabras), 50 para palabra clave super fuerte. No se requiere vocabulario precompilado. Solo tiene efecto en modelos Qwen-Audio-3.0-ASR-Flash |
--context <text> | string | No | Lista de palabras de mejora de contexto para aumentar la precisión en nombres propios; debe contener las palabras objetivo (una descripción de tema sola tiene poco efecto); máximo 400 caracteres. Solo tiene efecto en modelos Qwen-Audio-3.0-ASR-Flash y Fun-ASR-Flash |
--channel-id <n> | number | No | ID de canal de audio (predeterminado: 0) |
--out <path> | string | No | Guardar resultado completo de transcripción en archivo JSON |
--async | switch | No | Devolver ID de tarea asíncrona sin esperar |
--poll-interval <seconds> | number | No | Intervalo de sondeo en segundos (predeterminado: 2) |
Ejemplo: Reconocer voz a partir de una URL de archivo de audio
bl speech recognize --url https://example.com/audio.mp3
Administración de vocabularios de palabras clave
Administrar vocabularios de palabras clave precompilados reutilizables para mejorar la precisión del ASR en nombres propios.
bl speech vocabulary create
Crear un vocabulario de palabras clave precompilado para ASR. Requiere autenticación con clave de API.
Uso
bl speech vocabulary create --model <model> --prefix <prefix> (--words <json> | --words-file <path>) [flags]
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--model <model> | string | Sí | Modelo ASR para el cual se crea este vocabulario. Debe coincidir exactamente con el --model pasado a speech recognize posteriormente, de lo contrario el vocabulario se ignora silenciosamente |
--prefix <prefix> | string | Sí | Prefijo personalizado de vocabulario. Solo dígitos y letras minúsculas, máximo 10 caracteres |
--words <json> | string | No | Palabras clave como objeto JSON de palabra→peso, por ejemplo '{"Fendouzhe":4}'; o la matriz de entrada de la API para lenguaje por entrada. Peso 1-5 (se recomienda 4); cuando el target_model del vocabulario es un modelo de serie Qwen-Audio-3.0-ASR-Flash, también se permite 50 como palabra clave super fuerte. O use --words-file |
--words-file <path> | string | No | Archivo JSON con las palabras clave (use - para stdin) |
--lang <code> | string | No | Código de idioma aplicado a cada palabra clave al usar forma de objeto (opcional; ignorado para forma de matriz). Paraformer: zh/en/ja/yue/ko/de/fr/ru; Fun-ASR: zh/en/ja |
Ejemplo: Crear un vocabulario de palabras clave para ASR con palabras personalizadas
bl speech vocabulary create --model fun-asr --prefix demo --words '{"Fendouzhe":4,"Jingluo":4}'
- El parámetro --model debe coincidir exactamente con el --model usado posteriormente con
speech recognize --vocabulary-id; una discrepancia causa falla silenciosa sin error.
bl speech vocabulary list
Listar vocabularios de palabras clave precompilados. Requiere autenticación con clave de API.
Uso
bl speech vocabulary list [--prefix <prefix>] [--page <n>] [--page-size <n>]
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--prefix <prefix> | string | No | Filtrar por prefijo de vocabulario |
--page <n> | number | No | Número de página, basado en 1 (predeterminado: 1). Mapeado a page_index de la API (basado en 0) como page - 1 |
--page-size <n> | number | No | Resultados por página (predeterminado: 10) |
Ejemplo: Listar vocabularios de palabras clave precompilados por prefijo
bl speech vocabulary list --prefix demo
- Las respuestas de lista no incluyen target_model; use
speech vocabulary getpara inspeccionar el modelo para el cual se creó un vocabulario. - Los vocabularios con estado UNDEPLOYED se ignoran silenciosamente por el ASR.
bl speech vocabulary get
Obtener detalles de un vocabulario de palabras clave precompilado. Requiere autenticación con clave de API.
Uso
bl speech vocabulary get --id <id>
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--id <id> | string | Sí | ID del vocabulario de palabras clave |
Ejemplo: Recuperar detalles de un vocabulario específico de palabras clave
bl speech vocabulary get --id vocab-demo-xxx
- Use este comando para confirmar target_model antes de llamar a
speech recognize --vocabulary-id; una discrepancia de modelo causa falla silenciosa.
bl speech vocabulary update
Reemplazar el contenido de un vocabulario de palabras clave precompilado. Requiere autenticación con clave de API.
Uso
bl speech vocabulary update --id <id> (--words <json> | --words-file <path>) [flags]
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--id <id> | string | Sí | ID del vocabulario de palabras clave |
--words <json> | string | No | Palabras clave como objeto JSON de palabra→peso, por ejemplo '{"Fendouzhe":4}'; o la matriz de entrada de la API para lenguaje por entrada. Peso 1-5 (se recomienda 4); cuando el target_model del vocabulario es un modelo de serie Qwen-Audio-3.0-ASR-Flash, también se permite 50 como palabra clave super fuerte. O use --words-file |
--words-file <path> | string | No | Archivo JSON con las palabras clave (use - para stdin) |
--lang <code> | string | No | Código de idioma aplicado a cada palabra clave al usar forma de objeto (opcional; ignorado para forma de matriz). Paraformer: zh/en/ja/yue/ko/de/fr/ru; Fun-ASR: zh/en/ja |
--yes | switch | No | Confirmar esta operación de alto riesgo |
AdvertenciaEste comando reemplaza completamente todas las palabras clave en el vocabulario. Las entradas no enumeradas se descartarán y no podrán deshacerse.
Ejemplo: Previsualizar la actualización de un vocabulario de palabras clave con palabras especificadas
bl speech vocabulary update --id vocab-demo-xxx --words '{"Fendouzhe":4}' --dry-run
- update realiza un reemplazo completo, no una adición. Se recomienda usar --dry-run primero para previsualizar el vocabulario completo que se escribirá.
bl speech vocabulary delete
Elimina un vocabulario de palabras clave precompilado. Requiere autenticación con clave de API.
Uso
bl speech vocabulary delete --id <id>
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
--id <id> | string | Sí | ID del vocabulario de palabras clave |
--yes | switch | No | Confirmar esta operación de alto riesgo |
AdvertenciaEsta acción elimina permanentemente el vocabulario de palabras clave especificado y no se puede deshacer.
Ejemplo: Previsualizar la eliminación del vocabulario de palabras clave
bl speech vocabulary delete --id vocab-demo-xxx --dry-run