ターミナルから1つのコマンドで Bailian の音声合成および音声認識機能を呼び出し、正確性を向上させるためのホットワード語彙の管理が可能です。
任意のコマンドに --help を付加してパラメータの詳細を確認できます。たとえば bl speech synthesize --help です。ファイル URL を受け付けるすべてのパラメータは、ローカルパスも受け付けます — CLI は自動的に一時ストレージにアップロード(有効期間48時間)するため、自前でファイルを URL としてホストする必要はありません。このページのコマンド詳細は bl 2.8.0 に基づいて確認しています。
音声合成
bl speech synthesize
テキストから音声を合成します。API Key 認証が必要です。
使用法
bl speech synthesize --text <text> [flags]
| パラメータ | 型 | 必須 | 説明 |
|---|
--text <text> | string | いいえ | 音声に変換するテキスト(または --text-file を使用) |
--text-file <path> | string | いいえ | --text の代わりにファイルからテキストを読み込む |
--model <model> | string | いいえ | モデル ID(デフォルト:設定されたプロファイルの TTS モデル、それ以外は cosyvoice-v3-flash)。システム音声はモデルによって異なります |
--voice <voice> | string | いいえ | 音声 ID。選択したモデルに対応する音声リストを表示するには --list-voices を使用(例:qwen-audio-3.0-tts-plus/flash, cosyvoice-v3-flash);v3.5-flash ではクローン/デザイン音声 ID を指定してください |
--list-voices | switch | いいえ | 選択したモデルの組み込みシステム音声を一覧表示し終了(出力にコンソールリンクが表示されます) |
--format <format> | string | いいえ | 音声形式:mp3、pcm、wav、opus(デフォルト:mp3;ストリーミングのデフォルト:pcm) |
--sample-rate <rate> | string | いいえ | 音声サンプルレート(Hz 単位、例:24000) |
--volume <volume> | string | いいえ | 音量 0-100(デフォルト:50) |
--rate <rate> | string | いいえ | 音声速度 0.5-2.0(デフォルト:1.0) |
--pitch <pitch> | string | いいえ | ピッチ倍率 0.5-2.0(デフォルト:1.0) |
--seed <seed> | string | いいえ | 再現可能な合成用の乱数シード 0-65535 |
--language <lang> | string | いいえ | 言語ヒント(例:zh、en、ja、ko、fr、de) |
--instruction <text> | string | いいえ | 音声スタイルを制御する自然言語指示(例:"やわらかいトーンを使用") |
--enable-ssml | switch | いいえ | 入力テキスト内の SSML マークアップ解析を有効化 |
--out <path> | string | いいえ | 音声をファイルに保存(デフォルト:一時ディレクトリで自動生成) |
--stream | switch | いいえ | そのままの PCM 音声を標準出力にストリーミング(プレイヤーにパイプ可能) |
--concurrent <n> | number | いいえ | 平行リクエスト数 N(デフォルト:1) |
例:TTS モデルを使用してテキストから音声を合成
bl speech synthesize --list-voices --model qwen-audio-3.0-tts-plus
--model auto は、Bailian 自社開発の MCP 経由で AIGC モデルを自動ルーティングし、MCP ツールが対応するテキストと音声のパラメータのみを使用します。--format、--sample-rate、--stream などの非対応パラメータは、REST にフォールバックせず使用法エラーを返します。
- ストリーミング出力で JSON 形式を指定する場合は、
--out で保存先ファイルを指定し、音声データと JSON 結果が同じ出力ストリームに混在しないようにします。
音声認識
bl speech recognize
オーディオファイル(FunAudio-ASR / Qwen-ASR Flash)からの音声認識を行います。API Key 認証が必要です。
使用法
bl speech recognize --url <audio-url> [flags]
| パラメータ | 型 | 必須 | 説明 |
|---|
--url <url> | array | はい | オーディオファイルの URL またはローカルファイルパス(繰り返し可能、最大100件) |
--model <model> | string | いいえ | モデル ID(デフォルト:設定されたプロファイルの ASR モデル、それ以外は fun-asr)。非同期処理:fun-asr / -filetrans / paraformer-;同期処理:qwen3-asr-flash* / fun-asr-flash* / qwen-audio-*-asr-flash |
--language <lang> | string | いいえ | 言語ヒント(例:zh、en、ja)。クラシックな非同期/入力オーディオ:language_hints;qwen3-filetrans:language;qwen3 同期:asr_options.language |
--diarization | switch | いいえ | 自動スピーカー分離(ダイアライゼーション)を有効化 |
--speaker-count <n> | number | いいえ | 予想される話者数(--diarization が必要) |
--vocabulary-id <id> | string | いいえ | 事前に構築されたホットワード語彙の ID(speech vocabulary create で作成)。その target_model は --model と完全一致しなければならない。それ以外は無視されます。Fun-ASR および Paraformer を含む、より広範なモデル対応があります |
--vocabulary <json> | string | いいえ | インスタントホットワードを JSON オブジェクト(word→weight)で指定、例:'{"Fendouzhe":4}'。重みは 1-5(推奨値:4;高すぎると他の単語に悪影響);50 はスーパーホットワードとして使用可。事前に構築された語彙は不要。Qwen-Audio-3.0-ASR-Flash モデルでのみ効果があります |
--context <text> | string | いいえ | 正しく名詞の認識精度を向上させるための文脈強化語リスト。ターゲット語自体を含む必要があります(トピック説明だけでは効果が小さい);最大400文字。Qwen-Audio-3.0-ASR-Flash および Fun-ASR-Flash モデルでのみ効果があります |
--channel-id <n> | number | いいえ | オーディオチャンネル ID(デフォルト:0) |
--out <path> | string | いいえ | 完全な転写結果を JSON ファイルに保存 |
--async | switch | いいえ | 結果待ちせずに非同期タスク ID を返す |
--poll-interval <seconds> | number | いいえ | ポーリング間隔(秒単位、デフォルト:2) |
例:オーディオファイルの URL から音声認識を行う
bl speech recognize --url https://example.com/audio.mp3
--model auto は、Bailian 自社開発の MCP 経由で AIGC モデルを自動ルーティングし、MCP ツールが対応するパラメータのみを使用してテキスト出力を簡素化します。非対応パラメータは REST にフォールバックせず使用法エラーを返します。音声は公開 http(s) URL のみに対応します。ローカルファイルは --model <id> で特定のモデルを指定して認識してください。
- JSON 出力は完全なレスポンスと文字起こし結果を保持します。文字起こし結果がない場合もタスク情報を返します。
ホットワード語彙の管理
固有名詞の音声認識精度を向上させるために、再利用可能な事前構築済みホットワード語彙を管理します。
bl speech vocabulary create
ASR 用に事前コンパイルされたホットワード語彙を作成します。API Key 認証が必要です。
使用法
bl speech vocabulary create --model <model> --prefix <prefix> (--words <json> | --words-file <path>) [flags]
| パラメータ | 型 | 必須 | 説明 |
|---|
--model <model> | string | はい | この語彙が構築される ASR モデル。後ほど speech recognize で使用する --model と完全に一致している必要があります。そうでない場合、語彙は無視されます |
--prefix <prefix> | string | はい | カスタム語彙プレフィックス。数字と小文字英字のみ、最大10文字 |
--words <json> | string | いいえ | ホットワードを、単語→重みの JSON オブジェクト形式で指定(例:'{"Fendouzhe":4}');または各エントリの言語用の API エントリ配列。重みは 1-5(推奨値:4);語彙の target_model が Qwen-Audio-3.0-ASR-Flash シリーズモデルの場合、50 はスーパーホットワードとして許容されます。あるいは --words-file を使用 |
--words-file <path> | string | いいえ | ホットワードを含む JSON ファイル(- で stdin を使用) |
--lang <code> | string | いいえ | オブジェクト形式を使用する際、すべてのホットワードに適用される言語コード(省略可;配列形式では無視)。Paraformer:zh/en/ja/yue/ko/de/fr/ru;Fun-ASR:zh/en/ja |
例:カスタム単語で ASR 用のホットワード語彙を作成
bl speech vocabulary create --model fun-asr --prefix demo --words '{"Fendouzhe":4,"Jingluo":4}'
--model は、後に speech recognize --vocabulary-id で使用する --model と完全に一致している必要があります。不一致があるとエラーなしに失敗します。
bl speech vocabulary list
事前コンパイルされたホットワード語彙の一覧を表示します。API Key 認証が必要です。
使用法
bl speech vocabulary list [--prefix <prefix>] [--page <n>] [--page-size <n>]
| パラメータ | 型 | 必須 | 説明 |
|---|
--prefix <prefix> | string | いいえ | 語彙プレフィックスでフィルタ |
--page <n> | number | いいえ | ページ番号(1ベース、デフォルト:1)。API の page_index(0ベース)にマッピングされ、ページ - 1 となります |
--page-size <n> | number | いいえ | 1ページあたりの結果数(デフォルト:10) |
例:プレフィックスで事前コンパイルされたホットワード語彙を一覧表示
bl speech vocabulary list --prefix demo
- 一覧のレスポンスには target_model は含まれません。語彙がどのモデル向けに構築されたかを確認するには
speech vocabulary get を使用してください。
- ステータスが UNDEPLOYED の語彙は、ASR によって無視されます。
bl speech vocabulary get
事前コンパイルされたホットワード語彙の詳細情報を取得します。API Key 認証が必要です。
使用法
bl speech vocabulary get --id <id>
| パラメータ | 型 | 必須 | 説明 |
|---|
--id <id> | string | はい | ホットワード語彙の ID |
例:特定のホットワード語彙の詳細情報を取得
bl speech vocabulary get --id vocab-demo-xxx
speech recognize --vocabulary-id を実行する前に、target_model が正しいことを確認するためにこのコマンドを使用してください。モデルの不一致はエラーなしに失敗します。
bl speech vocabulary update
事前コンパイルされたホットワード語彙の内容を置き換えます。API Key 認証が必要です。
使用法
bl speech vocabulary update --id <id> (--words <json> | --words-file <path>) [flags]
| パラメータ | 型 | 必須 | 説明 |
|---|
--id <id> | string | はい | ホットワード語彙の ID |
--words <json> | string | いいえ | ホットワードを、単語→重みの JSON オブジェクト形式で指定(例:'{"Fendouzhe":4}');または各エントリの言語用の API エントリ配列。重みは 1-5(推奨値:4);語彙の target_model が Qwen-Audio-3.0-ASR-Flash シリーズモデルの場合、50 はスーパーホットワードとして許容されます。あるいは --words-file を使用 |
--words-file <path> | string | いいえ | ホットワードを含む JSON ファイル(- で stdin を使用) |
--lang <code> | string | いいえ | オブジェクト形式を使用する際、すべてのホットワードに適用される言語コード(省略可;配列形式では無視)。Paraformer:zh/en/ja/yue/ko/de/fr/ru;Fun-ASR:zh/en/ja |
--yes | switch | いいえ | この高リスク操作を確認 |
この操作は語彙内のすべてのホットワードを完全に置き換えます。リストにないエントリは削除され、元に戻せません。
例:指定された単語でホットワード語彙の更新をプレビュー
bl speech vocabulary update --id vocab-demo-xxx --words '{"Fendouzhe":4}' --dry-run
update は追加ではなく完全置換です。完全に書き込まれる語彙内容を確認するために、まず --dry-run を使用することをお勧めします。
bl speech vocabulary delete
事前にコンパイルされたホットワードボキャブラリーを削除します。API Key 認証が必要です。
使用法
bl speech vocabulary delete --id <id>
| パラメータ | 型 | 必須 | 説明 |
|---|
--id <id> | string | はい | ホットワードボキャブラリーID |
--yes | switch | いいえ | この高リスク操作を確認する |
指定されたホットワードボキャブラリーは永久に削除され、元に戻せません。
例:ホットワードボキャブラリーの削除をプレビューする
bl speech vocabulary delete --id vocab-demo-xxx --dry-run