Voice
AI agent を電話、テキストメッセージ、ブラウザの音声会話で利用可能にする
Voice を使う理由
チャットボックス経由でしか利用できない agent では、電話をかける人々に対応できません。たとえば、予約を取る患者、注文状況を確認する顧客、人と話したい発信者です。voice connector は、agent がすでに持つすべての機能(instructions、knowledge bases、connectors、AI functions)に加えて、電話番号、音声、テキスト送信機能を提供します。これらはチャットとまったく同じように通話でも適用されます。
すべての音声会話は、音声フロントエンドを備えた通常の agent conversation です。
- 発信者が話すと、agent はその内容の transcript を受け取ります。
- agent は通常どおり tools を使って応答します。発信者を検索し、knowledge base を検索し、予約を取り、確認テキストを送信します。
- 応答は音声で返され、会話の両側が transcript として記録されます。
3 つの connector
| Connector | 概要 |
|---|---|
| Twilio | 電話回線です。Twilio account を保持します。各 agent にはその account の番号が割り当てられ、その番号で通話やテキストに応答し、発信やテキスト送信もできます。 |
| OpenAI Voice | 音声エンジンです。OpenAI realtime model が通話で聞き取りと発話を行い、knowledge や action が必要なときに Squid agent に問い合わせます。電話なしでブラウザ通話も実行できます。 |
| ElevenLabs | 音声エンジンです。ElevenLabs voices を備えた ElevenLabs agent が通話を担当し、Squid agent を頭脳として使用します。 |
電話では常に Twilio connector が出発点です。これは、他の connector を必要としない独自の音声エンジン Twilio speech を備えています。Twilio が発信者の音声を文字起こしし、agent の応答を読み上げます。OpenAI Voice または ElevenLabs connector を追加すると、すべての電話回線で代替エンジンとして利用できます。
音声エンジンの選択
エンジンは、電話回線上で agent ごとに選択するため、agent ごとに異なるエンジンを使用できます。
| 機能 | Twilio speech | OpenAI Voice | ElevenLabs |
|---|---|---|---|
| 発話するもの | Squid agent の応答を読み上げる Twilio text-to-speech(ElevenLabs、Google、Amazon の voices) | OpenAI realtime speech-to-speech model | クローン voice を含む ElevenLabs voice |
| 思考するもの | Squid agent がすべての発話に応答 | realtime model が会話を処理し、tool として Squid agent を呼び出す | Squid agent がすべての turn に応答 |
| 特性 | 応答をストリーミングし、1 回の通話につき 1 言語 | 最も自然。small talk を自ら処理し、発信者に合わせて他の言語へ切り替える | 自然な voices。発信者に合わせて他の言語へ切り替える |
| agent が作成する最初のメッセージ(既知の発信者を名前で挨拶する) | はい | はい | いいえ、固定の最初のメッセージ |
| 発信者による割り込み | はい | はい。allowInterruptions と interruptionSensitivity を使用 | はい |
| agent の tools から通話を終了または転送 | はい | はい | 自身で通話を終了。転送不可 |
目的を指定した outbound calls(instructions) | はい | はい | outbound calls は可能だが、instructions は指定不可 |
| Squid 内の transcript と call record | はい | はい | いいえ。通話は ElevenLabs に保存される |
| agent の番号での SMS | はい | はい | いいえ。ElevenLabs が番号を所有 |
| ブラウザ通話 | Twilio 経由(Voice SDK credential) | Twilio 経由、または startWebCall() による WebRTC で直接実行。電話は不要 | いいえ |
| outbound calls の voicemail detection | いいえ | いいえ | はい |
推奨のデフォルト設定は、最も自然な会話を実現し、番号を購入する前にブラウザからテストするには OpenAI Voice から始めることです。特定の voice が最も重要な場合は ElevenLabs を選択してください。
セットアップ方法
- account credentials を使用して Twilio connector を追加します。
- 必要に応じて OpenAI Voice または ElevenLabs connector を追加します。
- Agent Studio で agent に Twilio ability を追加します。account の電話番号、音声エンジン、voice settings を選択します。ability を保存すると、その番号が接続されます。
- その番号に電話します。
通話に関するすべての情報は backend で利用できます。transcript、call records、受信テキスト、AI functions 内の call context です。SDK documentation の Voice agents、および発信者の識別、予約、テキストによる確認を行う完全な例については phone assistant tutorial を参照してください。
詳しく見る
📄️ ElevenLabs
Squid agent を頭脳として使用する ElevenLabs voice agent で電話に応答します
📄️ OpenAI Voice
Squid agent を背後に持つ OpenAI realtime model で、電話通話とブラウザ通話に応答します
📄️ Twilio
AI agent に電話番号を付与:その番号で着信応答、発信、SMS の送受信を行います