次の方法で共有


プロフェッショナル音声モデルをトレーニングする

この記事では、Azure AI Foundry ポータルを使用してプロフェッショナルな音声を微調整する方法について説明します。

重要

プロの音声微調整は現在、一部のリージョンでのみ使用できます。 サポートされているリージョンで音声モデルをトレーニングした後、必要に応じて、 プロの音声モデル を別のリージョンの Azure AI Foundry リソースにコピーできます。 詳細については、Speech Service テーブルの脚注を参照してください。

トレーニング期間は、使用するデータ量によって異なります。 プロの音声を微調整するには、平均で約 40 時間かかります。 Azure AI Foundry Standard (S0) リソースを使用すると、4 つの音声を同時にトレーニングできます。 制限に達した場合は、少なくとも 1 つの音声モデルのトレーニングが終わるまで待ってから、やり直します。

トレーニング方法ごとに必要な合計時間数は異なりますが、それぞれに同じ単価が適用されます。 詳細については、カスタム ニューラル トレーニングの価格の詳細に関するページを参照してください。

トレーニング方法を選択する

データ ファイルを検証したら、それらを使用してカスタム音声モデルを構築します。 カスタム音声を作成する場合は、次のいずれかの方法でトレーニングできます。

  • ニューラル: トレーニング データと同じ言語で音声を作成します。

  • ニューラル - クロス言語: トレーニング データとは異なる言語を話す音声を作成します。 たとえば、zh-CN トレーニング データを使用して、en-US を話す音声を作成できます。

    トレーニング データの言語とターゲット言語の両方が、クロス言語音声トレーニングでサポートされている言語のいずれかである必要があります。 ターゲット言語でトレーニング データを準備する必要はありませんが、テスト スクリプトはターゲット言語である必要があります。

  • ニューラル - マルチ スタイル: 新しいトレーニング データを追加せずに、複数のスタイルと感情で話すカスタム音声を作成します。 複数のスタイルの音声は、ビデオ ゲームのキャラクター、会話チャットボット、オーディオブック、コンテンツ リーダーなどに役立ちます。

    複数のスタイルの音声を作成するには、一連の汎用トレーニング データ (少なくとも 300 個の発話) を準備する必要があります。 1 つ以上のプリセット ターゲットの話し方を選択します。 同じ音声の追加トレーニング データとしてスタイル サンプル (スタイルごとに少なくとも 100 個の発話) を提供することで、複数のカスタム スタイルを作成することもできます。 サポートされているプリセット スタイルは言語によって異なります。 「さまざまな言語で利用可能なプリセット スタイル」をご覧ください。

  • ニューラル - 多言語 (プレビュー): 単一言語のトレーニング データを使用して、複数の言語を話す音声を作成します。 たとえば、 en-US プライマリ トレーニング データを使用すると、 en-USde-DEzh-CN などの第 2 言語を話す音声を作成できます。

    トレーニング データのプライマリ言語と第 2 言語は、多言語音声トレーニングで サポートされている言語 である必要があります。 セカンダリ言語でトレーニング データを準備する必要はありません。

トレーニング データの言語は、カスタム音声、多言語、または複数のスタイルのトレーニングで サポートされている言語 のいずれかである必要があります。

カスタム音声モデルをトレーニングする

Azure AI Foundry ポータルでカスタム音声を作成するには、次のいずれかの方法で次の手順に従います。

  1. Azure AI Foundry ポータルにサインインします。

  2. 左側のウィンドウから [微調整 ] を選択し、[ AI サービスの微調整] を選択します。

  3. プロフェッショナル音声作成に関する記事で説明されているように、開始したプロフェッショナル音声の微調整タスク(モデル名別)を選択します。

  4. [モデルのトレーニング]>[+ モデルのトレーニング] の順に選択します。

  5. モデルのトレーニング方法として[ニューラル]を選択します。 別のトレーニング方法を使用するには、「 ニューラル - 多言語ニューラル - マルチ スタイルニューラル - 多言語 (プレビュー)、ニュー ラル - HD 音声 (プレビュー)」を参照してください。

    ニューラル トレーニングを選択する方法を示すスクリーンショット。

  6. モデルのトレーニング レシピのバージョンを選択します。 既定では最新バージョンが選択されています。 サポートされている機能とトレーニング時間は、バージョンによって異なる場合があります。 通常は、最新のバージョンをお勧めします。 場合によっては、以前のバージョンを選択してトレーニング時間を短縮できます。 バイリンガル トレーニングとロケール間の違いについて詳しくは、「バイリンガル トレーニング」をご覧ください。

  7. [次へ]を選択します。

  8. トレーニングに使用するデータを選択します。 重複するオーディオ名はトレーニングから削除されます。 選択したデータ内の複数の .zip ファイルに同じオーディオ名が含まれていないことを確認してください。

    トレーニングには、正常に処理されたデータセットのみを選択できます。 一覧にトレーニング セットが表示されない場合は、データ処理の状態を確認してください。

  9. トレーニング データのスピーカーに対応するボイス タレント ステートメントを含むスピーカー ファイルを選択します。

  10. [次へ]を選択します。

  11. テスト スクリプトを選択し、[ 次へ] を選択します。

    • トレーニングごとに、既定のスクリプトによるモデルのテストに役立つ 100 個のサンプル オーディオ ファイルが自動的に生成されます。
    • または、[ 独自のテスト スクリプトの追加] を選択し、独自のテスト スクリプトに最大 100 個の発話を提供して、追加料金なしでモデルをテストすることもできます。 生成されたオーディオ ファイルは、自動テスト スクリプトとカスタム テスト スクリプトの組み合わせです。 詳細については、「テスト スクリプトの要件」を参照してください。
  12. 音声モデル名を入力します。 名前は慎重に選択します。 モデル名は、SDK と SSML 入力を使用した音声合成要求の音声名として使用されます。 文字、数字、およびいくつかの区切り文字だけを使用できます。 ニューラル音声モデルごとに、異なる名前を使用します。

  13. 必要に応じて、モデルの識別に役立つ [説明] を入力します。 説明の一般的な用途は、モデルの作成に使用したデータの名前を記録することです。

  14. チェックボックスをオンにして利用規約に同意し、[ 次へ] を選択します。

  15. 設定を確認し、チェックボックスをオンにして利用規約に同意します。

  16. [トレーニング] を選択して、モデルのトレーニングを開始します。

バイリンガル トレーニング

ニューラル トレーニングの種類を選んだ場合は、複数の言語で話すように音声をトレーニングできます。 zh-CNzh-HK、および zh-TW ロケールは、中国語と英語の両方を話す音声のためのバイリンガル トレーニングをサポートしています。 ある程度までトレーニング データ次第で、合成された音声は、英語のネイティブ アクセントを持つ英語またはトレーニング データと同じアクセントを持つ英語を話すことができます。

zh-CN ロケールの音声がサンプル データと同じアクセントで英語を話せるようにするには、英語データをコンテキスト トレーニング セットにアップロードするか、プロジェクトの作成時にChinese (Mandarin, Simplified), English bilingualを選択するか、REST API を使用してトレーニング セット データのzh-CN (English bilingual)ロケールを指定する必要があります。

コンテキスト トレーニング セットには、少なくとも 100 文または 10 分の英語コンテンツを含め、中国語コンテンツの量を超えないようにします。

次の表は、ロケール間の違いを示しています。

Speech Studio のロケール REST API のロケール バイリンガルのサポート
Chinese (Mandarin, Simplified) zh-CN サンプル データに英語が含まれている場合、合成された音声は、英語データの量に関係なく、サンプル データと同じアクセントではなく、英語のネイティブ アクセントで英語を話します。
Chinese (Mandarin, Simplified), English bilingual zh-CN (English bilingual) 合成された音声がサンプル データと同じアクセントで英語を話すようにしたい場合は、トレーニング セットに 10% を超える英語データを含めることをお勧めします。 そうしないと、英語を話すアクセントが理想的ではない可能性があります。
Chinese (Cantonese, Simplified) zh-HK サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。
Chinese (Taiwanese Mandarin, Traditional) zh-TW サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。

トレーニング プロセスを監視する

[モデルのトレーニング] の表に、この新しく作成されたモデルに対応する新しいエントリが表示されます。 この状態は、次の表で説明するように、データから音声モデルへの変換プロセスを反映しています。

状態 意味
処理中 実際の音声モデルを作成中です。
成功 実際の音声モデルは作成が済み、デプロイ可能です。
失敗 音声モデルがトレーニングで失敗しました。 失敗の原因としては、たとえば、見えないデータの問題やネットワークの問題などが考えられます。
取り消し済み 音声モデルのトレーニングが取り消されました。

モデルの状態が [処理中] の間は、モデルを選択し、[ トレーニングのキャンセル] を選択してトレーニングを取り消すことができます。 この取り消されたトレーニングに対しては課金されません。

モデルのトレーニングをキャンセルする方法を示すスクリーンショット。

モデルのトレーニングが正常に完了したら、モデルの詳細を確認し、音声モデルをテストします

モデルの名前を変更する

モデルの名前を変更するには、モデルを複製する必要があります。 モデルの名前を直接変更することはできません。

  1. モデルを選択します。
  2. [ モデルの複製] を選択して、現在のプロジェクトに新しい名前を持つモデルの複製を作成します。
  3. [音声モデルの複製] ウィンドウに新しい名前を入力します。
  4. 送信を選択します。 テキスト Neural は、新しいモデル名にサフィックスとして自動的に追加されます。

実際の音声モデルをテストする

音声モデルが正常に作成されたら、デプロイする前に、生成されたサンプル オーディオ ファイルを使用してテストすることができます。

ニューラル - 多言語 (プレビュー)ニューラル - HD 音声 (プレビュー) では、この種類のテストはサポートされていません。

音声の品質は、次のような多くの要因によって異なります。

  • トレーニング データのサイズ。
  • 録画の品質。
  • トランスクリプト ファイルの正確性。
  • トレーニング データに録音された音声が、意図したユース ケースに対して設計された音声のパーソナリティとどの程度一致しているか。

[テスト] の下にある [DefaultTests] を選択して、サンプル オーディオ ファイルを聴きます。 既定のテスト サンプルには、モデルのテストに役立つように、トレーニング中に自動的に生成される 100 個のサンプル オーディオ ファイルが含まれています。 既定で提供されるこれらの 100 個のオーディオ ファイルに加え、自分のテスト スクリプトの発話も DefaultTests セットに追加されます。 この追加は、最大 100 個の発話です。 DefaultTests でのテストに対しては課金されません。

自分のテスト スクリプトをアップロードしてモデルをさらにテストする場合は、[テスト スクリプトの追加] を選択して自分のテスト スクリプトをアップロードします。

テスト スクリプトをアップロードする前に、テスト スクリプトの要件を確認します。 課金対象の文字数に基づいて、バッチ合成による追加テストに対して課金されます。 「Azure AI Speech の価格」を参照してください。

[テスト スクリプトの追加][ファイルの参照] を選択して自分のスクリプトを選び、[追加] を選択してアップロードします。

テスト スクリプトの要件

テスト スクリプトは、1 MB 未満の.txt ファイルである必要があります。 サポートされているエンコード形式は、ANSI/ASCII、UTF-8、UTF-8-BOM、UTF-16-LE、UTF-16-BE です。

トレーニング文字起こしファイルとは異なり、テスト スクリプトでは各発話のファイル名である発話 ID を除外する必要があります。 そうしないと、これらの ID が発話されてしまいます。

以下に 1 つの .txt ファイル内の一連の発話の例を示します。

This is the waistline, and it's falling.
We have trouble scoring.
It was Janet Maslin.

発話の段落ごとに、個別の音声になります。 すべての文を 1 つの音声に結合したい場合は、1 つの段落にします。

生成されたオーディオ ファイルは、自動テスト スクリプトとカスタム テスト スクリプトの組み合わせです。

音声モデルのエンジン バージョンを更新する

Azure Text to Speech エンジンは、言語の発音を定義する最新の言語モデルを取り込むために随時更新されます。 音声をトレーニングした後、最新のエンジン バージョンに更新することで、音声を新しい言語モデルに適用できます。

  • 新しいエンジンが使用可能になると、ニューラル音声モデルを更新するように求められます。
  • モデルの詳細ページに移動し、画面の指示に従って最新のエンジンをインストールします。
  • または、後で [最新のエンジンのインストール] を選択して、モデルを最新のエンジン バージョンに更新します。 エンジンの更新に対しては課金されません。 以前のバージョンが引き続き保持されます。
  • このモデルのすべてのエンジン バージョンを [エンジンのバージョン] リストから確認するか、不要な場合は削除できます。

更新されたバージョンは自動的に既定に設定されます。 しかし、ドロップダウン リストからバージョンを選択し、[既定に設定] を選択することで、既定のバージョンを変更できます。

音声モデルの各エンジン バージョンをテストする場合は、リストからバージョンを選び、[テスト] の下の [DefaultTests] を選択してサンプル オーディオ ファイルを聴くことができます。 独自のテスト スクリプトをアップロードして現在のエンジン バージョンをさらにテストする場合は、まずそのバージョンが既定に設定されていることを確認してから、[実際の音声モデルをテストする] の手順に従います。

エンジンを更新すると、追加コストなしで新しいバージョンのモデルが作成されます。 音声モデルのエンジン バージョンを更新したら、新しいバージョンをデプロイして新しいエンドポイントを作成する必要があります。 既定のバージョンのみをデプロイできます。

新しいエンドポイントを作成したら、トラフィックをご使用の製品の新しいエンドポイントに転送する必要があります。

この機能の機能と制限、およびモデルの品質を向上させるためのベスト プラクティスの詳細については、「 カスタム音声を使用するための特性と制限事項」を参照してください。

音声モデルを別のプロジェクトにコピーする

このコンテキストでは、"プロジェクト" とは、Azure AI Foundry プロジェクトではなく、微調整タスクを指します。

トレーニング後、音声モデルを同じリージョンまたは別のリージョンの別のプロジェクトにコピーできます。

たとえば、あるリージョンでトレーニングされた音声モデルを、別のリージョンのプロジェクトにコピーできます。 プロの音声微調整は現在、 一部のリージョンでのみ使用できます

カスタム音声モデルを別のプロジェクトにコピーするには:

  1. [モデルのトレーニング] タブで、コピーする音声モデルを選択し、[プロジェクトにコピー] を選択します。
  2. モデルをコピーするサブスクリプション、ターゲット リージョン接続済み AI サービス リソース (AI Foundry リソース)、ターゲットの微調整タスクを選択します。
  3. [ コピー先] を選択してモデルをコピーします。
  4. 成功したコピーの通知メッセージの下にある [モデルの表示] を選択します。

モデルのコピーをデプロイするためにモデルをコピーしたプロジェクトに移動します。

次のステップ

この記事では、Speech Studio ポータルを使用してプロの音声を微調整する方法について説明します。

重要

プロの音声微調整は現在、一部のリージョンでのみ使用できます。 サポートされているリージョンで音声モデルをトレーニングした後、必要に応じて別のリージョンの音声用の AI Foundry リソースに コピー できます。 詳細については、Speech Service テーブルの脚注を参照してください。

トレーニング期間は、使用するデータ量によって異なります。 プロの音声を微調整するには、平均で約 40 時間かかります。 Standard サブスクリプション (S0) ユーザーは、4 つの音声を同時にトレーニングできます。 制限に達した場合は、少なくとも 1 つの音声モデルのトレーニングが終わるまで待ってから、やり直します。

トレーニング方法ごとに必要な合計時間数は異なりますが、それぞれに同じ単価が適用されます。 詳細については、カスタム ニューラル トレーニングの価格の詳細に関するページを参照してください。

トレーニング方法を選択する

データ ファイルを検証したら、それらを使用してカスタム音声モデルを構築します。 カスタム音声を作成する場合は、次のいずれかの方法でトレーニングできます。

  • ニューラル: トレーニング データと同じ言語で音声を作成します。

  • ニューラル - クロス言語: トレーニング データとは異なる言語を話す音声を作成します。 たとえば、zh-CN トレーニング データを使用して、en-US を話す音声を作成できます。

    トレーニング データの言語とターゲット言語の両方が、クロス言語音声トレーニングでサポートされている言語のいずれかである必要があります。 ターゲット言語でトレーニング データを準備する必要はありませんが、テスト スクリプトはターゲット言語である必要があります。

  • ニューラル - マルチ スタイル: 新しいトレーニング データを追加せずに、複数のスタイルと感情で話すカスタム音声を作成します。 複数のスタイルの音声は、ビデオ ゲームのキャラクター、会話チャットボット、オーディオブック、コンテンツ リーダーなどに役立ちます。

    複数のスタイルの音声を作成するには、一連の汎用トレーニング データ (少なくとも 300 個の発話) を準備する必要があります。 1 つ以上のプリセット ターゲットの話し方を選択します。 同じ音声の追加トレーニング データとしてスタイル サンプル (スタイルごとに少なくとも 100 個の発話) を提供することで、複数のカスタム スタイルを作成することもできます。 サポートされているプリセット スタイルは言語によって異なります。 「さまざまな言語で利用可能なプリセット スタイル」をご覧ください。

  • ニューラル - 多言語 (プレビュー): 単一言語のトレーニング データを使用して、複数の言語を話す音声を作成します。 たとえば、 en-US プライマリ トレーニング データを使用すると、 en-USde-DEzh-CN などの第 2 言語を話す音声を作成できます。

    トレーニング データのプライマリ言語と第 2 言語は、多言語音声トレーニングで サポートされている言語 である必要があります。 セカンダリ言語でトレーニング データを準備する必要はありません。

  • ニューラル - HD 音声 (プレビュー): トレーニング データと同じ言語で HD 音声を作成します。 Azure ニューラル HD 音声は LLM ベースで、動的な会話用に最適化されています。 ニューラル HD 音声の詳細については 、こちらをご覧ください

トレーニング データの言語は、カスタム音声、多言語、または複数のスタイルのトレーニングで サポートされている言語 のいずれかである必要があります。

カスタム音声モデルをトレーニングする

Speech Studio でカスタム音声を作成するには、次のいずれかの方法で次の手順を実行します。

  1. Speech Studio にサインインします。

  2. [Custom Voice]><自分のプロジェクトの名前>>> を選びます。

  3. モデルのトレーニング方法として [ニューラル] を選択し、[次へ] を選択します。 別のトレーニング方法を使用するには、「 ニューラル - 多言語 または ニューラル - マルチスタイル または ニューラル - 多言語 (プレビュー) または ニューラル - HD 音声 (プレビュー)」を参照してください。

    ニューラル トレーニングを選択する方法を示すスクリーンショット。

  4. モデルのトレーニング レシピのバージョンを選択します。 既定では最新バージョンが選択されています。 サポートされている機能とトレーニング時間は、バージョンによって異なる場合があります。 通常は、最新のバージョンをお勧めします。 場合によっては、以前のバージョンを選択してトレーニング時間を短縮できます。 バイリンガル トレーニングとロケール間の違いについて詳しくは、「バイリンガル トレーニング」をご覧ください。

    V3.0V7.0V8.0のモデル バージョンは、2025 年 7 月 25 日までに廃止されます。 これらの廃止されたバージョンで既に作成されている音声モデルが影響を受けることはありません。

  5. トレーニングに使用するデータを選択します。 重複するオーディオ名はトレーニングから削除されます。 選択したデータ内の複数の .zip ファイルに同じオーディオ名が含まれていないことを確認してください。

    トレーニングには、正常に処理されたデータセットのみを選択できます。 一覧にトレーニング セットが表示されない場合は、データ処理の状態を確認してください。

  6. トレーニング データのスピーカーに対応するボイス タレント ステートメントを含むスピーカー ファイルを選択します。

  7. [次へ]を選択します。

  8. トレーニングごとに、既定のスクリプトによるモデルのテストに役立つ 100 個のサンプル オーディオ ファイルが自動的に生成されます。

    必要に応じて、[独自のテスト スクリプトを追加] を選択し、最大 100 個の発話を含む独自のテスト スクリプトを提供して、追加コストなしでモデルをテストすることもできます。 生成されたオーディオ ファイルは、自動テスト スクリプトとカスタム テスト スクリプトの組み合わせです。 詳細については、「テスト スクリプトの要件」を参照してください。

  9. モデルを識別しやすい [名前] を入力します。 名前は慎重に選択します。 モデル名は、SDK と SSML 入力を使用した音声合成要求の音声名として使用されます。 文字、数字、およびいくつかの区切り文字だけを使用できます。 ニューラル音声モデルごとに、異なる名前を使用します。

  10. 必要に応じて、モデルの識別に役立つ [説明] を入力します。 説明の一般的な用途は、モデルの作成に使用したデータの名前を記録することです。

  11. [次へ]を選択します。

  12. 設定を確認し、チェックボックスをオンにして利用規約に同意します。

  13. [送信] を選択してモデルのトレーニングを開始します。

バイリンガル トレーニング

ニューラル トレーニングの種類を選んだ場合は、複数の言語で話すように音声をトレーニングできます。 zh-CNzh-HK、および zh-TW ロケールは、中国語と英語の両方を話す音声のためのバイリンガル トレーニングをサポートしています。 ある程度までトレーニング データ次第で、合成された音声は、英語のネイティブ アクセントを持つ英語またはトレーニング データと同じアクセントを持つ英語を話すことができます。

zh-CN ロケールの音声がサンプル データと同じアクセントで英語を話せるようにするには、英語データをコンテキスト トレーニング セットにアップロードするか、プロジェクトの作成時にChinese (Mandarin, Simplified), English bilingualを選択するか、REST API を使用してトレーニング セット データのzh-CN (English bilingual)ロケールを指定する必要があります。

コンテキスト トレーニング セットには、少なくとも 100 文または 10 分の英語コンテンツを含め、中国語コンテンツの量を超えないようにします。

次の表は、ロケール間の違いを示しています。

Speech Studio のロケール REST API のロケール バイリンガルのサポート
Chinese (Mandarin, Simplified) zh-CN サンプル データに英語が含まれている場合、合成された音声は、英語データの量に関係なく、サンプル データと同じアクセントではなく、英語のネイティブ アクセントで英語を話します。
Chinese (Mandarin, Simplified), English bilingual zh-CN (English bilingual) 合成された音声がサンプル データと同じアクセントで英語を話すようにしたい場合は、トレーニング セットに 10% を超える英語データを含めることをお勧めします。 そうしないと、英語を話すアクセントが理想的ではない可能性があります。
Chinese (Cantonese, Simplified) zh-HK サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。
Chinese (Taiwanese Mandarin, Traditional) zh-TW サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。

トレーニング プロセスを監視する

[モデルのトレーニング] の表に、この新しく作成されたモデルに対応する新しいエントリが表示されます。 この状態は、次の表で説明するように、データから音声モデルへの変換プロセスを反映しています。

状態 意味
処理中 実際の音声モデルを作成中です。
成功 実際の音声モデルは作成が済み、デプロイ可能です。
失敗 音声モデルがトレーニングで失敗しました。 失敗の原因としては、たとえば、見えないデータの問題やネットワークの問題などが考えられます。
取り消し済み 音声モデルのトレーニングが取り消されました。

モデルの状態が [処理中] になっているときに、[トレーニングの取り消し] を選択して音声モデルを取り消すことができます。 この取り消されたトレーニングに対しては課金されません。

モデルのトレーニングをキャンセルする方法を示すスクリーン ショット。

モデルのトレーニングが正常に完了したら、モデルの詳細を確認し、音声モデルをテストします

Speech Studio の Audio Content Creation ツールを使用して、オーディオを作成し、デプロイされた音声を微調整できます。 音声に該当する場合は、複数のスタイルのいずれかを選択できます。

モデルの名前を変更する

  1. 構築したモデルの名前を変更する場合は、[モデルの複製] を選択して、現在のプロジェクトに新しい名前のモデルの複製を作成します。

    [モデルの複製] ボタンを選択しているスクリーン ショット。

  2. [音声モデルの複製] ウィンドウに新しい名前を入力し、[送信] を選択します。 テキスト Neural は、新しいモデル名にサフィックスとして自動的に追加されます。

    新しい名前でモデルを複製しているスクリーン ショット。

実際の音声モデルをテストする

音声モデルが正常に作成されたら、デプロイする前に、生成されたサンプル オーディオ ファイルを使用してテストすることができます。

ニューラル - 多言語 (プレビュー)ニューラル - HD 音声 (プレビュー) では、この種類のテストはサポートされていません。

音声の品質は、次のような多くの要因によって異なります。

  • トレーニング データのサイズ。
  • 録画の品質。
  • トランスクリプト ファイルの正確性。
  • トレーニング データに録音された音声が、意図したユース ケースに対して設計された音声のパーソナリティとどの程度一致しているか。

[テスト] の下にある [DefaultTests] を選択して、サンプル オーディオ ファイルを聴きます。 既定のテスト サンプルには、モデルのテストに役立つように、トレーニング中に自動的に生成される 100 個のサンプル オーディオ ファイルが含まれています。 既定で提供されるこれらの 100 個のオーディオ ファイルに加え、自分のテスト スクリプトの発話も DefaultTests セットに追加されます。 この追加は、最大 100 個の発話です。 DefaultTests でのテストに対しては課金されません。

[テスト] の下にある [DefaultTests] を選択しているスクリーン ショット。

自分のテスト スクリプトをアップロードしてモデルをさらにテストする場合は、[テスト スクリプトの追加] を選択して自分のテスト スクリプトをアップロードします。

モデル テスト スクリプトを追加しているスクリーン ショット。

テスト スクリプトをアップロードする前に、テスト スクリプトの要件を確認します。 課金対象の文字数に基づいて、バッチ合成による追加テストに対して課金されます。 「Azure AI Speech の価格」を参照してください。

[テスト スクリプトの追加][ファイルの参照] を選択して自分のスクリプトを選び、[追加] を選択してアップロードします。

モデル テスト スクリプトをアップロードしているスクリーン ショット。

テスト スクリプトの要件

テスト スクリプトは、1 MB 未満の.txt ファイルである必要があります。 サポートされているエンコード形式は、ANSI/ASCII、UTF-8、UTF-8-BOM、UTF-16-LE、UTF-16-BE です。

トレーニング文字起こしファイルとは異なり、テスト スクリプトでは各発話のファイル名である発話 ID を除外する必要があります。 そうしないと、これらの ID が発話されてしまいます。

以下に 1 つの .txt ファイル内の一連の発話の例を示します。

This is the waistline, and it's falling.
We have trouble scoring.
It was Janet Maslin.

発話の段落ごとに、個別の音声になります。 すべての文を 1 つの音声に結合したい場合は、1 つの段落にします。

生成されたオーディオ ファイルは、自動テスト スクリプトとカスタム テスト スクリプトの組み合わせです。

音声モデルのエンジン バージョンを更新する

Azure Text to Speech エンジンは、言語の発音を定義する最新の言語モデルを取り込むために随時更新されます。 音声をトレーニングした後、最新のエンジン バージョンに更新することで、音声を新しい言語モデルに適用できます。

  1. 新しいエンジンが使用可能になると、ニューラル音声モデルを更新するように求められます。

    エンジン更新メッセージを表示しているスクリーンショット。

  2. モデルの詳細ページに移動し、画面の指示に従って最新のエンジンをインストールします。

    画面の指示に従って新しいエンジンをインストールするスクリーンショット。

    または、後で [最新のエンジンのインストール] を選択して、モデルを最新のエンジン バージョンに更新します。

    [最新のエンジンのインストール] ボタンを選択してエンジンを更新するスクリーンショット。

    エンジンの更新に対しては課金されません。 以前のバージョンが引き続き保持されます。

  3. このモデルのすべてのエンジン バージョンを [エンジンのバージョン] リストから確認するか、不要な場合は削除できます。

    [エンジンのバージョン] ドロップダウン リストを表示しているスクリーンショット。

    更新されたバージョンは自動的に既定に設定されます。 しかし、ドロップダウン リストからバージョンを選択し、[既定に設定] を選択することで、既定のバージョンを変更できます。

    既定値としてバージョンを設定する方法を示しているスクリーンショット。

音声モデルの各エンジン バージョンをテストする場合は、リストからバージョンを選び、[テスト] の下の [DefaultTests] を選択してサンプル オーディオ ファイルを聴くことができます。 独自のテスト スクリプトをアップロードして現在のエンジン バージョンをさらにテストする場合は、まずそのバージョンが既定に設定されていることを確認してから、[実際の音声モデルをテストする] の手順に従います。

エンジンを更新すると、追加コストなしで新しいバージョンのモデルが作成されます。 音声モデルのエンジン バージョンを更新したら、新しいバージョンをデプロイして新しいエンドポイントを作成する必要があります。 既定のバージョンのみをデプロイできます。

音声モデルの新しいバージョンを再デプロイする方法を示すスクリーンショット。

新しいエンドポイントを作成したら、トラフィックをご使用の製品の新しいエンドポイントに転送する必要があります。

この機能の機能と制限、およびモデルの品質を向上させるためのベスト プラクティスの詳細については、「 カスタム音声を使用するための特性と制限事項」を参照してください。

音声モデルを別のプロジェクトにコピーする

音声モデルは、同じリージョンまたは別のリージョンの別のプロジェクトにコピーできます。 たとえば、あるリージョンでトレーニングされたニューラル音声モデルを、別のリージョンのプロジェクトにコピーできます。

プロの音声微調整は現在、一部のリージョンでのみ使用できます。 ニューラル音声モデルは、それらのリージョンから他のリージョンにコピーできます。 詳細については、 カスタム音声のリージョンを参照してください。

カスタム音声モデルを別のプロジェクトにコピーするには:

  1. [モデルのトレーニング] タブで、コピーする音声モデルを選択し、[プロジェクトにコピー] を選択します。

    プロジェクトへのコピー オプションのスクリーンショット。

  2. モデルをコピーする[サブスクリプション][リージョン][Speech リソース][プロジェクト] を選択します。 ターゲット リージョンに Speech リソースとプロジェクトが存在する必要があります。ない場合は、まず作成する必要があります。

    [copy voice model]\(音声モデルのコピー\) ダイアログのスクリーンショット。

  3. [送信] を選択してモデルをコピーします。

  4. 成功したコピーの通知メッセージの下にある [モデルの表示] を選択します。

モデルのコピーをデプロイするためにモデルをコピーしたプロジェクトに移動します。

次のステップ

この記事では、カスタム音声 API を使用してプロの音声を微調整する方法について説明します。

重要

プロの音声微調整は現在、一部のリージョンでのみ使用できます。 サポートされているリージョンで音声モデルをトレーニングしたら、必要に応じて別のリージョンの AI Foundry リソースにコピーできます。 詳細については、Speech Service テーブルの脚注を参照してください。

トレーニング期間は、使用するデータ量によって異なります。 プロの音声を微調整するには、平均で約 40 時間かかります。 Standard サブスクリプション (S0) ユーザーは、4 つの音声を同時にトレーニングできます。 制限に達した場合は、少なくとも 1 つの音声モデルのトレーニングが終わるまで待ってから、やり直します。

トレーニング方法ごとに必要な合計時間数は異なりますが、それぞれに同じ単価が適用されます。 詳細については、カスタム ニューラル トレーニングの価格の詳細に関するページを参照してください。

トレーニング方法を選択する

データ ファイルを検証したら、それらを使用してカスタム音声モデルを構築します。 カスタム音声を作成する場合は、次のいずれかの方法でトレーニングできます。

  • ニューラル: トレーニング データと同じ言語で音声を作成します。

  • ニューラル - クロス言語: トレーニング データとは異なる言語を話す音声を作成します。 たとえば、fr-FR トレーニング データを使用して、en-US を話す音声を作成できます。

    トレーニング データの言語とターゲット言語の両方が、クロス言語音声トレーニングでサポートされている言語のいずれかである必要があります。 ターゲット言語でトレーニング データを準備する必要はありませんが、テスト スクリプトはターゲット言語である必要があります。

  • ニューラル - マルチ スタイル: 新しいトレーニング データを追加せずに、複数のスタイルと感情で話すカスタム音声を作成します。 複数のスタイルの音声は、ビデオ ゲームのキャラクター、会話チャットボット、オーディオブック、コンテンツ リーダーなどに役立ちます。

    複数のスタイルの音声を作成するには、一連の汎用トレーニング データ (少なくとも 300 個の発話) を準備する必要があります。 1 つ以上のプリセット ターゲットの話し方を選択します。 同じ音声の追加トレーニング データとしてスタイル サンプル (スタイルごとに少なくとも 100 個の発話) を提供することで、複数のカスタム スタイルを作成することもできます。 サポートされているプリセット スタイルは言語によって異なります。 「さまざまな言語で利用可能なプリセット スタイル」をご覧ください。

トレーニング データの言語は、カスタム音声、多言語、または複数のスタイルまたは HD 音声のトレーニングで サポートされている言語 のいずれかである必要があります。

音声モデルを作成する

ニューラル音声を作成するには、Custom Voice API の Models_Create 操作を使用します。 次の手順に従って要求本文を作成します。

  • 必須の projectId プロパティを設定します。 プロジェクトの作成に関する記事を参照してください。
  • 必須の consentId プロパティを設定します。 ボイス タレントの同意の追加に関する記事をご覧ください。
  • 必須の trainingSetId プロパティを設定します。 トレーニング セットの作成に関する記事をご覧ください。
  • ニューラル音声トレーニングの場合、必須のレシピ kind プロパティを Default に設定します。 レシピの種類はトレーニング方法を示し、後で変更することはできません。 別のトレーニング方法を使用するには、「 ニューラル - 多言語 または ニューラル - マルチスタイル または ニューラル - HD 音声 (プレビュー)」を参照してください。 バイリンガル トレーニングとロケール間の違いについて詳しくは、「バイリンガル トレーニング」をご覧ください。
  • 必須の voiceName プロパティを設定します。 名前は慎重に選択します。 音声名は、SDK と SSML 入力による音声合成要求で使われます。 文字、数字、およびいくつかの区切り文字だけを使用できます。 ニューラル音声モデルごとに、異なる名前を使用します。
  • 必要に応じて、description プロパティに音声の説明を設定します。 音声の説明は後で変更できます。

HTTP PUT 要求は、以下の Models_Create の例に示すように URI を使用して行います。

  • YourResourceKey をSpeech リソース キーに置き換えます。
  • YourResourceRegion を Speech リソース リージョンに置き換えます。
  • JessicaModelId を任意のモデル ID に置き換えます。 大文字と小文字が区別される ID はモデルの URI で使われ、後で変更することはできません。
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourResourceKey" -H "Content-Type: application/json" -d '{
  "voiceName": "JessicaNeural",
  "description": "Jessica voice",
  "recipe": {
    "kind": "Default"
  },
  "projectId": "ProjectId",
  "consentId": "JessicaConsentId",
  "trainingSetId": "JessicaTrainingSetId"
} '  "https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/models/JessicaModelId?api-version=2024-02-01-preview"

次の形式で応答本文を受け取る必要があります。

{
  "id": "JessicaModelId",
  "voiceName": "JessicaNeural",
  "description": "Jessica voice",
  "recipe": {
    "kind": "Default",
    "version": "V10.0"
  },
  "projectId": "ProjectId",
  "consentId": "JessicaConsentId",
  "trainingSetId": "JessicaTrainingSetId",
  "locale": "en-US",
  "engineVersion": "2023.07.04.0",
  "status": "NotStarted",
  "createdDateTime": "2023-04-01T05:30:00.000Z",
  "lastActionDateTime": "2023-04-02T10:15:30.000Z"
}

バイリンガル トレーニング

ニューラル トレーニングの種類を選んだ場合は、複数の言語で話すように音声をトレーニングできます。 zh-CNzh-HK、および zh-TW ロケールは、中国語と英語の両方を話す音声のためのバイリンガル トレーニングをサポートしています。 ある程度までトレーニング データ次第で、合成された音声は、英語のネイティブ アクセントを持つ英語またはトレーニング データと同じアクセントを持つ英語を話すことができます。

zh-CN ロケールの音声がサンプル データと同じアクセントで英語を話せるようにするには、英語データをコンテキスト トレーニング セットにアップロードするか、プロジェクトの作成時にChinese (Mandarin, Simplified), English bilingualを選択するか、REST API を使用してトレーニング セット データのzh-CN (English bilingual)ロケールを指定する必要があります。

コンテキスト トレーニング セットには、少なくとも 100 文または 10 分の英語コンテンツを含め、中国語コンテンツの量を超えないようにします。

次の表は、ロケール間の違いを示しています。

Speech Studio のロケール REST API のロケール バイリンガルのサポート
Chinese (Mandarin, Simplified) zh-CN サンプル データに英語が含まれている場合、合成された音声は、英語データの量に関係なく、サンプル データと同じアクセントではなく、英語のネイティブ アクセントで英語を話します。
Chinese (Mandarin, Simplified), English bilingual zh-CN (English bilingual) 合成された音声がサンプル データと同じアクセントで英語を話すようにしたい場合は、トレーニング セットに 10% を超える英語データを含めることをお勧めします。 そうしないと、英語を話すアクセントが理想的ではない可能性があります。
Chinese (Cantonese, Simplified) zh-HK サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。
Chinese (Taiwanese Mandarin, Traditional) zh-TW サンプル データと同じアクセントで英語を話せる合成音声をトレーニングしたい場合は、トレーニング セットで 10% より多くの英語データを提供するようにします。 そうしないと、既定で英語のネイティブ アクセントになります。 10% のしきい値は、アップロード前のデータではなく、アップロードが成功した後で受け入れられたデータに基づいて計算されます。 アップロードされた英語データの一部が欠陥のために拒否され、10% のしきい値を満たさなくなった場合、合成される音声は既定で英語のネイティブ アクセントになります。

さまざまな言語で利用可能なプリセット スタイル

次の表は、さまざまな言語に応じたさまざまなプリセット スタイルをまとめたものです。

話し方 言語 (ロケール)
怒り 英語 (米国) (en-US)
日本語 (日本) (ja-JP) 1
中国語 (標準、簡体字) (zh-CN) 1
穏やか 中国語 (標準、簡体字) (zh-CN) 1
チャット 中国語 (標準、簡体字) (zh-CN) 1
陽気 英語 (米国) (en-US)
日本語 (日本) (ja-JP) 1
中国語 (標準、簡体字) (zh-CN) 1
不満 中国語 (標準、簡体字) (zh-CN) 1
興奮 英語 (米国) (en-US)
怖い 中国語 (標準、簡体字) (zh-CN) 1
優しい 英語 (米国) (en-US)
希望に満ちた 英語 (米国) (en-US)
悲しい 英語 (米国) (en-US)
日本語 (日本) (ja-JP) 1
中国語 (標準、簡体字) (zh-CN) 1
叫ぶ 英語 (米国) (en-US)
深刻 中国語 (標準、簡体字) (zh-CN) 1
恐怖 英語 (米国) (en-US)
不親切 英語 (米国) (en-US)
ささやく 英語 (米国) (en-US)

1 ニューラル音声スタイルはパブリック プレビューで利用できます。 パブリック プレビューでのスタイルは、米国東部、西ヨーロッパ、東南アジアのサービス リージョンでのみ使用できます。


トレーニング状態を取得する

音声モデルのトレーニング状態を取得するには、Custom Voice API の Models_Get 操作を使用します。 次の手順に従って要求 URI を作成します。

次の Models_Get の例に示すように、URI を使用して HTTP GET 要求を行います。

  • YourResourceKey をSpeech リソース キーに置き換えます。
  • YourResourceRegion を Speech リソース リージョンに置き換えます。
  • 前のステップで異なるモデル ID を指定した場合は、JessicaModelId を置き換えます。
curl -v -X GET "https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/models/JessicaModelId?api-version=2024-02-01-preview" -H "Ocp-Apim-Subscription-Key: YourResourceKey"

次の形式で応答本文を受け取るはずです。

レシピの kind と他のプロパティは、音声をトレーニングした方法によって異なります。 この例のレシピの種類は、ニューラル音声トレーニング用の Default です。

{
  "id": "JessicaModelId",
  "voiceName": "JessicaNeural",
  "description": "Jessica voice",
  "recipe": {
    "kind": "Default",
    "version": "V7.2023.03"
  },
  "projectId": "ProjectId",
  "consentId": "JessicaConsentId",
  "trainingSetId": "JessicaTrainingSetId",
  "locale": "en-US",
  "engineVersion": "2023.07.04.0",
  "status": "Succeeded",
  "createdDateTime": "2023-04-01T05:30:00.000Z",
  "lastActionDateTime": "2023-04-02T10:15:30.000Z"
}

トレーニングが完了するまで数分待つ必要がある場合があります。 最終的に、状態は Succeeded または Failed に変わります。

次のステップ