アップデート

Kitsch Labs APIをご紹介します

Kitsch Labs APIで使える声を探し、キャラクターの最初のセリフを音声にする方法をご紹介します。

Kitsch Labs
さまざまな物語の世界へ続く、油絵風の扉

Kitsch Labs APIをご紹介します。アプリで選んだAIボイスを、ゲーム、アニメーション制作ツール、AIキャラクターチャットなどのサービスでも使えるようになりました。キャラクターが初めて挨拶する場面から、ユーザーの選択によって変わるセリフまで、声が必要な瞬間に音声を生成できます。

APIでは、利用できる声の一覧を取得し、テキストから音声を生成し、ストリーミング形式の応答を受け取れます。声の利用権限とリクエスト上限は、アカウントに応じて確認されます。リクエスト形式の詳細はKitsch Labsの開発者ドキュメントをご覧ください。まずは一つのセリフを音声ファイルにする方法をご紹介します。

声を探して、セリフを生成する

まず GET /v1/voices で、現在のアカウントで使える声を確認します。キャラクターに合う声のIDを選び、セリフと一緒に POST /v1/text-to-speech/{voice_id} へ送ると、音声が返ります。

アプリのAPIキー管理画面でキーを作成し、以下の YOUR_API_KEY と VOICE_ID を実際の値に置き換えてください。APIキーは必ずサーバー側で使用します。

curl -X POST "https://api.kitschlabs.com/v1/text-to-speech/VOICE_ID?output_format=mp3_44100_128" \
  -H "xi-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"やっと来たね。ずっと待っていたよ。","language_code":"ja"}' \
  --output character-line.mp3

このリクエストではMP3ファイルが保存されます。実際のサービスでは、サーバーからAPIを呼び出し、生成された音声をゲームの会話や対話の流れに合わせて届けられます。

ストリーミング形式で音声を受け取る

HTTPのチャンク形式で応答を受け取りたい場合は、同じリクエスト本文を POST /v1/text-to-speech/{voice_id}/stream に送ります。生成URLの末尾に /stream を付けるだけで、対応する出力形式と認証方法も同じです。

現在のストリーミング経路は、発話全体を生成してから音声をチャンクで送信します。そのため、通常のリクエストより最初の音が早く届く保証はなく、生成中の単語をその場で再生する方式でもありません。実際のセリフの長さとネットワーク環境で遅延を測り、適した経路を選んでください。リクエストと応答の形式は開発者ドキュメントで確認できます。

シーンに合わせて話し方を整える

同じ言葉でも、キャラクターとの関係や場面によって響き方は変わります。language_code で対応する発話言語を指定し、instruct で話し方を自然な言葉で指示できます。普段は落ち着いたキャラクターが、再会の場面では弾んだ声で話すように、シーンごとに指示を調整してみてください。

声を決める前に、複数のセリフを聴いてみましょう。一つのサンプルだけでなく、ゲームの連続したセリフ、アニメーションのカット切り替え、長いキャラクターチャットでも同じ人物に聞こえることが大切です。

実際のサービスに組み込む前に

APIキーをブラウザーやアプリのクライアントコードに含めず、サーバーに保管してください。利用できる声はアカウントの権限によって異なり、リクエストには利用量とクレジットの上限が適用されます。商用利用の範囲も、現在のプランと各音声の利用条件を確認しましょう。

最初は短い代表的なセリフで連携し、音質、応答時間、失敗したときの画面を確かめるのがおすすめです。

キャラクターに最初のセリフを

Kitsch Labs APIは、プロダクトの一場面に声をつなぐ出発点です。開発者ドキュメントでリクエスト形式と最新の対応範囲を確認し、APIキーを作成して最初のセリフを生成してみてください。

Kitsch Labs

ずっと推せるAIをつくります。