メインコンテンツまでスキップ

プラグインの使用方法

Runtime AI Chatbot Integrator は2つの主要な機能を提供します: Text-to-TextチャットとText-to-Speech (TTS)です。両機能とも類似のワークフローに従います:

  1. APIプロバイダートークンを登録
  2. 機能固有の設定を構成
  3. リクエストを送信しレスポンスを処理

プロバイダートークンの登録

リクエストを送信する前に、RegisterProviderToken関数を使用してAPIプロバイダートークンを登録してください。

Register Provider Token in Blueprint

テキスト間チャット機能

このプラグインは各プロバイダーに対して2つのチャットリクエストモードをサポートしています:

非ストリーミングチャットリクエスト

単一の呼び出しで完全なレスポンスを取得します。

Send OpenAI Chat Request

ストリーミングチャットリクエスト

リアルタイムで応答チャンクを受信し、よりダイナミックなインタラクションを実現します。

Send OpenAI Streaming Chat Request

テキスト読み上げ (TTS) 機能

主要なTTSプロバイダーを使用して、テキストを高品質な音声オーディオに変換します。このプラグインは生のオーディオデータ(TArray<uint8>)を返すため、プロジェクトのニーズに応じて処理できます。

以下の例ではRuntime Audio Importerプラグインを使用した再生用のオーディオ処理を示しています(オーディオインポートドキュメント参照)が、Runtime AI Chatbot Integratorは柔軟に設計されています。プラグインは単に生のオーディオデータを返すため、オーディオ再生、ファイル保存、さらなるオーディオ処理、他のシステムへの転送、カスタムビジュアライゼーションなど、特定のユースケースに応じて自由に処理できます。

非ストリーミングTTSリクエスト

非ストリーミングTTSリクエストは、テキスト全体が処理された後に完全なオーディオデータを単一のレスポンスで返します。このアプローチは、完全なオーディオを待つことが問題にならない短いテキストに適しています。

OpenAI TTSリクエスト送信

ストリーミングTTSリクエスト

ストリーミングTTSは、生成された音声データをチャンク単位で逐次配信します。これにより、音声全体の合成を待つことなく、データを段階的に処理できます。この方式は長いテキストの場合の待ち時間を大幅に短縮し、リアルタイムアプリケーションを実現します。

OpenAIストリーミングTTSリクエスト送信

エラーハンドリング

リクエストを送信する際には、コールバック内でErrorStatusをチェックして潜在的なエラーを処理することが重要です。ErrorStatusは、リクエスト中に発生する可能性のある問題に関する情報を提供します。

エラーハンドリング

リクエストのキャンセル

このプラグインでは、進行中のtext-to-textリクエストやTTSリクエストをキャンセルすることが可能です。長時間実行されるリクエストを中断したり、会話の流れを動的に変更したい場合に便利です。

Cancel Request

ベストプラクティス

  1. コールバック内でErrorStatusを確認し、潜在的なエラーを必ず処理する
  2. APIのレート制限とコストに注意する
  3. 長文または対話型の会話にはストリーミングモードを使用する
  4. 不要になったリクエストはキャンセルしてリソースを効率的に管理することを検討する
  5. 長いテキストにはストリーミングTTSを使用して待ち時間を短縮する
  6. オーディオ処理にはRuntime Audio Importerプラグインが便利な解決策を提供しますが、プロジェクトのニーズに基づいてカスタム処理を実装することも可能です

トラブルシューティング

  • API認証情報が正しいことを確認する
  • インターネット接続を確認する
  • TTS機能を扱う際、Runtime Audio Importerなどのオーディオ処理ライブラリが正しくインストールされていることを確認する
  • TTS応答データを処理する際に正しいオーディオフォーマットを使用していることを確認する
  • ストリーミングTTSの場合、オーディオチャンクを正しく処理していることを確認する