銅像と会話:マルチモーダルなElevenAgents搭載アプリの構築
- 執筆者
- Joe Reeve
- 公開日
- 最終更新日
聴くこの記事を聴く
銅像を撮影し、そこに描かれている人物を特定。その後、各キャラクターが時代に合った個性的な声でリアルタイムに会話できます。
これが、ElevenLabsのボイスデザインとエージェントAPIを使って実現できることです。この記事では、コンピュータビジョンと音声生成を組み合わせて、公共のモニュメントをインタラクティブな体験に変えるモバイルウェブアプリのアーキテクチャを紹介します。ここで紹介する内容は、下記のAPIやコードサンプルを使って再現できます。
チュートリアルを飛ばして、一発で作成
下記のアプリ全体は、たった1つのプロンプトから作成され、 カーソル の空のNextJSプロジェクトでClaude Opus 4.5(high)を使って一発生成に成功しました。すぐに自分で作りたい場合は、これをエディタに貼り付けてください:
また、ElevenLabsエージェントスキル を使うこともできます。これらはドキュメントをもとにしており、さらに良い結果が得られる場合もあります。
この記事の残りでは、このプロンプトがどのようなものを生み出すかを詳しく解説します。
仕組み
このパイプラインは5つのステージがあります:
- 画像を撮影
- アートワークと登場人物を特定(OpenAI)
- 歴史を調査(OpenAI)
- 各キャラクターの個性的な声を生成(ElevenAPI)
- WebRTCでリアルタイム音声会話を開始(ElevenAgents)
ビジョンで銅像を特定
ユーザーが銅像を撮影すると、その画像はOpenAIのビジョン対応モデルに送信されます。システムプロンプトで、アートワーク名、場所、アーティスト、日付、そして各キャラクターの詳細な声の説明を抽出します。システムプロンプトには、期待されるJSON出力形式も含まれています:
ロンドンのウェストミンスター橋にあるブーディカ像の写真の場合、レスポンスはこのようになります:
効果的な声の説明を書くコツ
声の説明の質が、そのまま生成される声の質に直結します。 ボイスデザインのプロンプトガイド で詳しく解説していますが、重要なポイントは:音質の指標(「完璧な音質。」)、年齢や性別、トーンや音色(深い、響きのある、しゃがれたなど)、正確なアクセント(「厚いケルト系イギリス訛り」など)、話す速さです。より具体的なプロンプトほど正確な結果が得られます。「60代で乾いたユーモアを持つ疲れたニューヨーカー」の方が、「年配の女性の声」よりもずっと良い結果になります。
ガイドからのポイント:アクセントの強さを表現する際は「strong」より「thick」を使う、曖昧な「foreign」などは避ける、架空や歴史上のキャラクターには実在のアクセントを参考に提案できる(例:「厚いイギリス訛りで威厳のある古代ケルトの女王」など)。
ボイスデザインでキャラクターの声を作成
ボイスデザインAPI は、テキストの説明から新しい合成音声を生成します。声のサンプルやクローンは不要なので、音声資料が存在しない歴史上の人物にも最適です。
手順は2ステップです。
プレビューを生成
テキストパラメータが重要です。50語以上のキャラクターに合った長めのサンプルテキストを使うと、より安定した結果になります。セリフはキャラクターに合わせて用意しましょう。 ボイスデザインのプロンプトガイド でさらに詳しく解説しています。
声を保存
プレビューが生成されたら、1つ選んで本番用の声を作成します:
複数キャラクターの銅像の場合、声の生成は並行して行われます。5人分の声も1人分とほぼ同じ時間で作成できます:
マルチボイスElevenLabs Agentの構築
声ができたら、次は ElevenLabsエージェント を設定し、リアルタイムでキャラクターごとに声を切り替えられるようにします。
マルチボイス切り替え
supportedVoices配列で、エージェントが利用できる声を指定します。Agentsプラットフォームは声の切り替えを自動で処理します。LLMの応答で話者が変わった場合、TTSエンジンがその部分を正しい声に割り当てます。
グループ会話のプロンプト設計
複数キャラクターが本当のグループのように感じられるには、単なる順番のQ&Aではなく、意図的なプロンプト設計が必要です:
WebRTCによるリアルタイム音声
最後はクライアント側の接続です。ElevenLabs AgentsはWebRTCに対応しており、低遅延の音声会話が可能です。WebSocketベースの接続よりも明らかに速く、自然な会話のやりとりに重要です。
サーバー側:会話トークンを取得
クライアント側:セッションを開始
useConversationフックが音声のキャプチャ、ストリーミング、音声アクティビティ検出、再生を処理します。
ウェブ検索で調査を深める
会話を始める前にもっと歴史的な背景を知りたいユーザー向けに、OpenAIのウェブ検索ツールを使った強化リサーチモードを追加できます:
学んだこと
このプロジェクトは、テキスト・リサーチ・ビジョン・オーディオなど異なるAIモダリティを組み合わせることで、デジタルと現実世界をつなぐ体験が作れることを示しています。マルチモーダルエージェントには、教育・仕事・エンタメなど、まだまだ未開拓の可能性がたくさんあります。もっと多くの方に挑戦してほしいです。
今すぐ作り始めよう
このプロジェクトで使ったAPI( ボイスデザイン、 ElevenAgents、OpenAI)はすべて今すぐ利用できます。



.webp&w=3840&q=80)
