Skip to main content

音声合成と音声認識

Bailian CLI コマンドリファレンス:音声合成(TTS)、音声認識(ASR)、ホットワード語彙の管理。

ターミナルから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-voicesswitchいいえ選択したモデルの組み込みシステム音声を一覧表示し終了(出力にコンソールリンクが表示されます)
--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-ssmlswitchいいえ入力テキスト内の SSML マークアップ解析を有効化
--out <path>stringいいえ音声をファイルに保存(デフォルト:一時ディレクトリで自動生成)
--streamswitchいいえそのままの 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
--diarizationswitchいいえ自動スピーカー分離(ダイアライゼーション)を有効化
--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 ファイルに保存
--asyncswitchいいえ結果待ちせずに非同期タスク 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
--yesswitchいいえこの高リスク操作を確認
この操作は語彙内のすべてのホットワードを完全に置き換えます。リストにないエントリは削除され、元に戻せません。
例:指定された単語でホットワード語彙の更新をプレビュー
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
--yesswitchいいえこの高リスク操作を確認する
指定されたホットワードボキャブラリーは永久に削除され、元に戻せません。
例:ホットワードボキャブラリーの削除をプレビューする
bl speech vocabulary delete --id vocab-demo-xxx --dry-run