Eleven v4を発表これまでで最も感情豊かなモデル、Eleven v4をご紹介します。

コンテンツへ移動

AI音声アシスタントの作り方:ブランドに寄り添う音声AI

執筆者
Jack Limebear
公開日
最終更新日

聴くこの記事を聴く

小売店に返金を依頼する電話をかけると、人間のようなAIが応対し、数分後には銀行口座に返金される場面を想像してみてください。人によるサポート担当者を必要とせず、すべてのやり取りがシームレスに進みます。かつてはフィクションと考えられていた、複雑なユースケースを処理できるAI搭載音声アシスタントが、今では現実になっています。

より多くの企業が、顧客向けアプリケーションにAI音声アシスタントを導入しています。最先端の音声エージェントと生成AIを活用するこれらのアシスタントは、意図の照合、低遅延の応答、幅広いユースケースに対応する機能連携を実現します。


ElevenAgentsのようなツールを使えば、音声アシスタントをカスタマーサポートのワークフローにこれまで以上に簡単に組み込めます。AI音声アシスタントを構築するには、まず担わせる役割を定義し、スピーチtoテキスト、LLM、そしてテキスト読み上げを1つのリアルタイムパイプラインに接続します。ナレッジベースと業務ツールを追加し、システム指示とフォールバックルールを作成して、遅延と安全性をテストし、リリース後に結果を測定します。

このガイドでは、ブランドに密接に沿ったAI音声アシスタントの構築方法を紹介します。

AI voice assistant benchmarks: <500 ms response target, 92% accuracy, and 90+ languages.

概要

  • AI音声アシスタントは、スピーチtoテキスト、LLM、テキスト読み上げを接続して、行動できる会話型AIを作ります。
  • 音声AIを自然に聞こえやすくし、通話離脱を減らすには、音声区間検出(VAD)を使って往復の応答時間を500ms未満に抑えます。
  • 社内ナレッジベースとツールを統合し、さまざまなシナリオで文脈を理解した正確かつ有用なAI応答を実現します。
  • 感情的または複雑な問い合わせを扱う際は、明示的な口頭確認を求める安全対策を適用し、有人エージェントへ引き継ぎます。
  • ElevenAPIを使用して、ライブ対話向けに設計された高精度のインタラクティブ音声・オーディオモデルにアクセスできます。

AI音声アシスタントとは?

AI音声アシスタントは、話し言葉を理解し、ユーザーが接続されたシステムとやり取りできるソフトウェアです。スピーチtoテキスト、AIモデル、テキスト読み上げ技術を組み合わせ、会話をアクションに変換します。

AI音声アシスタントはテキストを文字起こしするだけでなく、アプリの起動、データの取得、機械の制御などのタスクを実行できます。使用する音声モデルによっては、人間の録音とほとんど聞き分けられない音声を実現するAIアシスタントもあります。


ただし、AI音声アシスタントは新しい技術ではありません。多くの消費者は、単純なコマンドに応答する商用音声アシスタント、Siri、Alexa、Google Assistantを使っています。しかしAI技術の進化に伴い、より複雑なエンタープライズワークフロー向けにAI音声アシスタントを構築する組織が増えています。

たとえば、Admiralは、保険会社で、数百万人の顧客を支援するAI音声アシスタントを構築しました。このAIアシスタントは問い合わせに回答し、文書を取得し、人間のエージェントを反復作業から解放します。

商用または産業用ワークフロー向けのAI音声アシスタントを構築する予定なら、ぜひ続きをご覧ください。重要な実装詳細を示すため、Python AI音声アシスタントの例を用いて、構築手順を説明します。

AI音声アシスタントの作り方:AI音声エージェントの役割を定義する

音声AIは、コールセンター全体のカスタマーサポートを自動化する用途でよく使われます。ただし、AI音声エージェントの幅広い機能を活用すれば、営業、プロダクト、HR. 

を含むほぼすべてのユースケース向けにAI音声アシスタントを構築できます。音声エージェントの用途にかかわらず、業務ロジックと整合していることを確認してください。高性能な音声アシスタントを構築するには、一般的なエンドユーザーの課題について業務領域の専門家に相談します。そのうえで、顧客とのやり取りのジャーニーを整理し、測定可能な指標を設定します。

たとえば営業ファネルに音声AIを適用する場合、エージェントは事前選別の質問を行える必要があります。

AIセールス開発担当者(SDR)のDomはこれを実現し、リード選別精度92%. 

成功指標、チャネル、エスカレーション経路を選ぶ

エンタープライズ環境に導入する場合、エージェントは特定の目標に対して一貫して機能しなければなりません。目標を絞るほど、エージェントの評価と微調整は容易になります。

そのため、開発の早い段階で次のような問いを検討してください。

  • 許容できる応答遅延はどの程度ですか?
  • 期待するコンテインメント率はどの程度ですか?
  • エージェントは複数の言語で会話する必要がありますか?
  • AIアシスタントは、人の介入なしに基本的な依頼を最初から最後まで処理できますか?
  • どのような場合に、人によるサポートへエスカレーションすべきですか?
Five questions for tuning an agent: latency, containment, languages, autonomy, and escalation.

Raw APIで構築するか、ElevenAgentsを使うか?

コードを書く前に、音声スタックのどこまでを自ら管理するか決めましょう。ElevenAPIを通じてスピーチtoテキスト、LLM、テキスト読み上げを自分で接続することも、これらをまとめたマネージドプラットフォームであるElevenAgentsを利用することもできます。

Raw APIで構築すると、すべてのレイヤーを完全に制御できます。LLMを選び、オーケストレーションコードを書き、ターンテイキング、割り込み処理、テレフォニー、監視を管理します。この方法は特定のアーキテクチャ要件を持つチームに適しており、本ガイドのPythonチュートリアルでも採用しています。

ElevenAgentsは、モデル、ツール、ナレッジベース、ワークフローを1つのダッシュボードに集約します。TwilioやAmazon Connectなどのテレフォニープロバイダーを、Salesforce、Zendesk、HubSpotなどの業務ツールに接続します。また、リリース前のシミュレーションと自動テスト、リリース後の成功率、CSAT、文字起こしの分析も利用できます。

次の質問を使って選択してください。

  • スピード:ElevenAgentsなら、チームはダッシュボードからエージェントを設定してリリースできます。一方、Raw APIではパイプライン全体を構築・保守します。
  • 制御性:Raw APIならコードで各ステップをカスタマイズでき、ElevenAgentsは一般的なニーズを設定でカバーします。
  • 運用:ElevenAgentsにはテストと分析が含まれますが、Raw APIでは独自の監視を構築する必要があります。
  • チーム:ElevenAgentsはプロダクト、サポート、運用担当が混在するチームに適し、Raw APIは専任エンジニアを持つチームに適しています。

実用的なアプローチは、まずElevenAgentsでユースケースを検証し、より細かな制御が必要なレイヤーだけをカスタムコードに移すことです。

Comparison of Raw APIs and ElevenAgents, recommending validation in ElevenAgents first.

AI音声アシスタントのアーキテクチャを設計する

ビジネス目標を定義したら、エージェントの機能を適切な技術に対応付けます。AI音声アシスタントは、音声をテキストに変換し、アクションを起動し、一貫した応答を返すために連携する複数の主要コンポーネントで構成されます。

  • スピーチtoテキストモデルは発話を取り込み、音素を識別し、会話の文字起こしを生成します。
  • 単純なルールベースアルゴリズムや自然言語処理ライブラリから大規模言語モデル(LLM)までを含むAIエンジンは、音声アシスタントの頭脳として機能します。
  • テキスト読み上げモデルは、人間らしい音声を使って会話の応答を合成し、ブランドガイドラインに従います。
AI voice assistant pipeline: audio, transcription, LLM tools, speech synthesis, and reply.

ElevenLabsは、プロダクトチームとエンジニアリングチームのAI音声アシスタント設計を支援するスピーチtoテキストおよびText to Dialogueの音声・オーディオモデルを提供しています。モデルは、繊細なイントネーション、感情の理解、低遅延応答に対応しています。音声モデルにはElevenAPIからアクセスできます。

AIモデルの選択は、音声アシスタントの目標と要件に大きく左右されます。OpenAI GPTモデル、Gemini、ClaudeなどのLLMは推論に優れていますが、ドメイン固有のニーズに対応するには追加の微調整が必要です。より単純なニューラルネットワークやルールベースパーサーのほうが実用的な場合もあります。


音声モデルやAIモデルに加え、会話やユーザーの依頼から特定のエンティティを抽出するカスタムソフトウェアも必要です。たとえば発信者が「営業部と話したい」と言った場合、コードは「営業部」を識別し、適切なアクションを起動する必要があります。

APIキーを作成し、スピーチtoテキスト、LLM、ツール、テキスト読み上げを接続する

音声モデルと言語モデルに接続する前に、APIキーを用意します。同様に、外部サービスツールを音声アシスタントに統合する際にAPIリクエストを送るにはAPIキーが必要です。

  • ElevenLabs APIキーを作成するには、こちらをクリックしてください。
  • OpenAI LLMを使用するには、こちらからキーを取得してください。
  • サードパーティのCRM、ERP、その他のツールに接続する場合は、公式ドキュメントを参照してAPIキーを作成し、対応APIを確認してください。

APIキーを取得したら、開発環境に保存します。

次に、適切な引数をAPIに渡して、ツール、LLM、オーディオモデルを初期化しアクセスします。

1. まず、ElevenLabs Scribe v2 Realtimeに接続して、自動音声認識を実行します。ElevenLabs Scribe v2 Realtimeを使うと、会話を150ms未満でテキストに変換する低遅延の音声エージェントを構築できます(ネットワークおよびアプリケーションの時間を除く)。

以下は、ElevenLabs Scribe v2 Realtimeでマイク録音をキャプチャするPythonコードスニペットです。

async def run(
    self,
    audio_queue: asyncio.Queue[bytes],
    on_partial: Callable[[str], None],
    on_committed: TranscriptHandler,
) -> None:
    audio_format = AudioFormat(f"pcm_{self.settings.audio_sample_rate}")
    connection = await self.client.speech_to_text.realtime.connect(
        RealtimeAudioOptions(
            model_id="scribe_v2_realtime",
            audio_format=audio_format,
            sample_rate=self.settings.audio_sample_rate,
            commit_strategy=CommitStrategy.VAD,
            vad_silence_threshold_secs=0.45,
            min_speech_duration_ms=120,
        )
    )

2. 次に、文字起こしを優れた推論能力を持つLLMに送信して応答を生成します。この例ではOpenAI GPT-4o miniを使用します。

Pythonコードで文字起こしをLLMに送る方法は次のとおりです。

async def _stream_completion(self) -> tuple[str, list[dict[str, str]]]:
    response = await self.client.chat.completions.create(
        model=self.settings.openai_model,
        messages=[self.messages[0], *self.messages[-12:]],
        tools=TOOLS,
        tool_choice="auto",
        parallel_tool_calls=False,
        temperature=0.4,
        stream=True,
    )

3. LLMの出力を受け取ったら、ElevenLabs v4 Turboを使って自然な音声応答に変換します。Text to Speechモデルは感情表現が豊かで、リアルタイムの対話向けに設計されており、約100msという超低遅延を実現します(モデル推論時間のみ。実際のエンドツーエンド遅延は、場所や使用するエンドポイントの種類などにより異なります)。

以下のコードは、ElevenLabs Text to Dialogue APIでWebSocketを使い、音声応答をストリーミングするエージェントを示しています。

async def stream(self, text: str) -> AsyncIterator[bytes]:
    query = urlencode(
        {
            "model_id": self.settings.elevenlabs_tts_model_id,
            "output_format": "pcm_24000",
        }
    )
    url = f"wss://api.elevenlabs.io/v1/text-to-dialogue/stream-input?{query}"
    voice_id = self.settings.elevenlabs_voice_id


    async with websockets.connect(url, max_size=2**20, ping_interval=20) as socket:
        await socket.send(
            json.dumps(
                {
                    "voices": [voice_id],
                    "xi_api_key": self.settings.elevenlabs_api_key,
                }
            )
        )
        await socket.send(
            json.dumps(
                {
                    "inputs": [
                        {"text": text, "voice_id": voice_id, "new_turn": False}
                    ]
                }
            )
        )
        await socket.send(json.dumps({"close_socket": True}))

自動音声認識エージェントは、複数ターンの会話を問題なく処理できる必要があります。そのためには、発話の開始と終了を判断できる音声エージェントが必要です。

自然で目的に沿った会話を設計する

従来の自動音声応答(IVR)システムは、プログラムされたシナリオの範囲を超えて動作できません。ルールで定義されていない問題の解決を求められると、これらのIVRは満足のいく応答を提供できません。また、常に自然に聞こえるわけではなく、顧客体験を損ねます。

高度なAIと音声モデルにより、音声アシスタントはより自然に応答し、例外的なケースにも対応できます。エージェントが想定すべきシナリオと、解決できないケースのエスカレーション経路を設計できます。たとえば、配送状況を尋ねる顧客もいれば、不良品に不満を抱き、CXマネージャーとの会話を要求する顧客もいます。

システム指示、ターンテイキングルール、フォールバック応答を作成する

さまざまなシナリオに対応するには、特定のロジック処理コードとシステムプロンプトをAI音声エージェントアプリケーションに作成します。

たとえば、以下のシステムプロンプトは、フラストレーションを検出し、LLMにより共感的に応答するよう指示します。

SYSTEM_PROMPT = ""You are a calm, empathetic voice assistant for customer support.
Speak naturally in short, clear sentences that are easy to hear. Answer from
retrieved company information when relevant; say when the answer is uncertain
rather than inventing a policy. Use tools for customer lookup and support
requests. Before creating a ticket or transferring a caller, request explicit
verbal confirmation through the tool flow and wait for a clear yes. Never ask
for passwords, full payment card numbers, or authentication codes. Do not claim
a ticket was created, a contact was found, or a transfer completed unless the
tool confirms it. Keep responses concise and avoid markdown when speaking.
"""

AIとの会話は、急かされていると感じさせてはいけませんし、途中で遮ってもいけません。音声モデルは、ユーザーが話し終えたタイミングを検出し、適切なタイミングで応答する必要があります。ElevenLabs Scribe v2 Realtimeでは、マイク入力を聞く際にVADを有効にできます。無音時間だけに依存する従来のVADとは異なり、ElevenLabs Scribe v2 Realtimeはディープラーニングアルゴリズムを用いて、顧客が話し終えたかどうかを判断します。

VADを有効にするには、スピーチtoテキストAPIと連携するコード内でパラメータを設定します。

commit_strategy=CommitStrategy.VAD,

次に、エージェントが顧客の依頼に十分に回答できない場合に備え、丁寧で敬意あるフォールバック応答を用意します。同様に、AIエージェントは会話の文字起こし中にエラーに遭遇することがあります。コードで技術的な問題を処理し、顧客に対して率直に伝える必要があります。

フォールバック応答を提供するには、コードで条件分岐ロジックを使用します。たとえば、以下のコードスニペットはスピーチtoテキストAPIからエラーステータスを取得し、適切な応答をトリガーします。

connection.on(RealtimeEvents.ERROR, handle_error)
connection.on(RealtimeEvents.AUTH_ERROR, handle_error)
connection.on(RealtimeEvents.CLOSE, stopped.set)

信頼できる回答のためのナレッジ・ツールレイヤーを構築する


LLMは優れた推論能力を備え、AI音声アシスタントが自然に応答することを可能にします。しかし、会話として自然な応答が常に正確とは限りません。根拠となるデータがなければ、LLMはハルシネーションを起こし、もっともらしいが不正確な回答を音声エージェントが返す原因になります。

たとえば、最近リリースしたプロダクトについてGPT-4o miniに質問しても、確信を持って回答できません。そのためには、LLMを社内ナレッジベースに検索拡張生成(RAG)システムで接続する必要があります。RAGにより、LLMは社内のプロダクトガイドを参照し、正確な回答を生成できます。

検索、APIアクション、権限、人への引き継ぎを追加する

RAGを使用するには、ベクトルデータベースを作成する必要があります。ベクトルデータベースは、文書を多次元空間の数値表現として保存します。以下のコードスニペットは、音声エージェントがLLMに問い合わせる前に、ベクトルストアから関連文書を取得する方法を示しています。

def search(self, query: str, top_k: int = 3) -> list[dict[str, str | float]]:
    query_vector = _vectorize(query)
    ranked = sorted(
        (
            (_cosine(query_vector, chunk.vector), chunk)
            for chunk in self.chunks
        ),
        key=lambda item: item[0],
        reverse=True,
    )
    return [
        {"source": chunk.source, "text": chunk.text, "score": score}
        for score, chunk in ranked[: max(0, top_k)]
        if score > 0

RAGに加え、AI音声アシスタントはCRM、ERP、その他のエンタープライズシステムへのアクセスも必要になる可能性があります。これにより、応答を作成する際のコンテキストとして、顧客データ、過去の取引、市場トレンドなどの必要な情報を音声エージェントが取得できます。

たとえば、APIを使ってElevenLabsをHubSpotと統合できます。これにより、CRMナレッジベースを使用して一般的な問題を解決し、チケットを作成し、会話の完全なコンテキストとともにサポートをエスカレーションできます。

以下は、音声エージェントがHubSpotでサポートチケットを作成できるコードスニペットです。

esponse = await self.client.post(
    "/crm/v3/objects/tickets",
    json={
        "properties": {
            "subject": title,
            "content": description,
            "hs_pipeline": "0",
            "hs_pipeline_stage": "1",
        }
    },
)
response.raise_for_status()
ticket = response.json()
if contact_email:
    contact_response = await self.search_contact(contact_email)
    results = contact_response.get("results", [])
    if results:
        await self.client.put(
            f"/crm/v4/objects/tickets/{ticket['id']}/associations/contacts/{results[0]['id']}",
            json=[{"associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 16}],
        )
return {"mode": "live", "id": ticket.get("id"), "title": title}

AI音声エージェントは問題解決を迅速化できますが、特に変更がアカウントに大きな影響を及ぼす可能性がある場合、顧客は選択肢を把握している必要があります。テキストベースのチャットボットとは異なり、口頭で選択肢を提示するには、より多くの安全対策が必要です。一度選択すると、通話中にそれを取り消すのは難しい場合があります。

この場合、発信者を認証し、口頭確認を求めることをおすすめします。たとえば顧客が購入をキャンセルしたい場合、音声エージェントは「注文をキャンセルしてもよろしいですか?」と明示的に尋ね、回答を待つ必要があります。

以下に例を示します。

def request(self, name: str, arguments: dict[str, Any]) -> str:
    self.pending = PendingAction(name=name, arguments=arguments)
    if name == "create_support_ticket":
        return "I can create that support ticket. Would you like me to submit it?"
    return "I can transfer you to a human support agent. Should I start the transfer?"

def resolve(self, text: str) -> tuple[ConfirmationState, PendingAction | None]:
    if self.pending is None:
        return ConfirmationState.NONE, None

    answer = re.sub(r"[^a-z']+", " ", text.lower()).strip()
    if answer in {
        "yes", "yes please", "yeah", "yeah please", "yep", "sure",
        "please do", "confirm", "do it",
    }:
        action, self.pending = self.pending, None
        return ConfirmationState.CONFIRMED, action
    if answer in {"no", "nope", "dont", "do not", "cancel", "stop"}:
        self.pending = None
        return ConfirmationState.DECLINED, None
    return ConfirmationState.PENDING, None

AI音声エージェントで発信者の本人確認を行う方法

AI音声エージェントは、アカウントの詳細を共有したりアカウントを変更したりする前に、誰と会話しているかを確認する必要があります。発信者の電話番号は有用なシグナルですが、本人性を証明するものではありません。ほかの確認手段と組み合わせてください。

  • 発信者の番号をCRM内の顧客レコードと照合する。
  • 直近の注文日など、アカウント所有者しか知らない情報を尋ねる。
  • レコードに対するツール呼び出しで回答を検証し、正しいかどうかの判断をLLMに委ねない。
  • 未認証の発信者が行える操作を制限する。たとえば注文状況の確認は許可しても、キャンセルは許可しない。

上記のシステムプロンプトの指示どおり、パスワード、完全な決済カード番号、認証コードは会話に含めないでください。

verify caller identify with a voice agent

ライブ通話転送とエスカレーションを備えたAI音声エージェント

ライブ転送では、発信者に同じ説明を繰り返させることなく有人エージェントにつなぎます。ウォーム転送では、通話を接続する前に音声エージェントが文字起こしとコンテキストを担当者に渡します。一般的なトリガーは次のとおりです。

  • 発信者が人と話したいと求める。
  • 発信者が不満を感じているように聞こえる、または会話が感情的になる。
  • エージェントがフォールバック応答の後も依頼を解決できない。
  • 依頼に人の承認が必要なアクションが含まれる。

場合によっては、AIエージェントが通話を有人エージェントにエスカレーションする必要があります。多くの場合、音声エージェントは不満を示す意図や転送をトリガーする特定の言葉を検出します。コードでは、通話転送がシームレスに行われ、顧客からその仕組みが意識されないようにする必要があります。

Guidance on four human-handoff triggers and passing transcript context during warm transfer.

切り替え前に、文字起こし、顧客の詳細、その他の補助コンテキストをライブサポート窓口に渡します。ElevenLabsは、AIエージェントが処理する通話をSIPトランクまたはTwilioの電話番号へルーティングする電話番号転送ツールを提供しています。

以下のコードスニペットは、Twilio会議への引き継ぎを示しています。

account = self.settings.twilio_account_sid
call_sid = self.settings.twilio_call_sid
conference = f"support-{call_sid}"
room = xml.sax.saxutils.escape(conference)
twiml = f"<Response><Dial><Conference>{room}</Conference></Dial></Response>"
api = f"https://api.twilio.com/2010-04-01/Accounts/{account}"
auth = (account, self.settings.twilio_auth_token)
async with httpx.AsyncClient(timeout=15.0, auth=auth) as client:
    agent_call = await client.post(
        f"{api}/Calls.json",
        data={
            "To": self.settings.handoff_number,
            "From": self.settings.twilio_from_number,
            "Twiml": twiml,
        },
    )
    agent_call.raise_for_status()
    caller_call = await client.post(
        f"{api}/Calls/{call_sid}.json",
        data={"Twiml": twiml},
    )
    caller_call.raise_for_status()

ElevenAgentsでコードなしにAI音声アシスタントを構築する

カスタムコードが不要なら、ElevenAgentsで同じアシスタントをリリースできます。手順は上記のアーキテクチャに対応していますが、コードを書く代わりにダッシュボードで各レイヤーを設定します。

  1. エージェントを作成し、トーン、対応範囲、エスカレーションのタイミングを含めて、その役割をシステムプロンプトに記述します。
  2. ボイスライブラリから音声を選ぶか、独自の音声をデザインまたはクローンし、エージェントが話す言語を設定します。
  3. ナレッジベースを追加し、エージェントが自社文書に基づいて回答できるようにします。
  4. CRMやヘルプデスクなどのツールとインテグレーションを接続し、エージェントがアクションを実行できるようにします。
  5. アシスタントが解決できない通話について、有人エージェントへの転送を設定します。
  6. リリース前にシミュレーションと自動テストを実行し、動作を確認します。
  7. 電話番号またはチャネルにエージェントをデプロイし、成功率、CSAT、文字起こしを確認します。

以下のセクションにあるテストと測定のガイダンスは、コードの有無にかかわらず適用できます。

ブランドに合うAI音声アシスタントの作り方

組織は、ブランドを反映するようAIエージェントの音声を調整できます。会話全体で一貫したトーンを保つことは、信頼の構築に役立ちます。ElevenLabsでは、AIエージェントの音声をカスタマイズする方法がいくつかあります。

  • ElevenLabs ボイスライブラリには、90以上の言語を自然に話す20,000以上のAI音声があります。エネルギッシュな音声から落ち着きと自信のある音声まで、ブランドトーンに合うものを閲覧して利用できます。
  • ElevenLabs ボイスデザインでは、テキストプロンプトから独自の声の特徴を作成できます。話す速さ、トーン、感情、その他の音声特性を説明すると、求める音声を作れます。
  • ElevenLabs AI音声クローンは、音声録音のサンプルを分析して、あなたの声のデジタルレプリカを作成します。


感情やニュアンスを適切に表現することに加え、特に固有名詞についてAI音声の発音を監査することも重要です。必要に応じて、音声モデルが参照できる発音辞書を作成してください。

Comparison of voice library, voice design, and voice cloning options, plus pronunciation guidance.

リリース前に遅延、割り込み、精度、安全性をテストする

リリース前にAI音声エージェントを厳密にテストし、さまざまなシナリオで信頼性高く動作することを確認してください。

  • 遅延テスト:応答に700ms以上かかるエージェントは、顧客にとって不自然に聞こえます。構成によっては、ネットワーク速度、LLM、音声モデル、サードパーティAPIが遅延に影響します。会話の遅延は理想的には500ms未満に抑えてください。
  • 割り込みテスト:エージェントが会話中の割り込みを処理できるか確認します。具体的には、コンテキストを失うことなく、出力オーディオフレームを破棄し、TTSを停止し、音声入力のキャプチャを再開できる必要があります。
  • ターンテイキングテスト:ユーザーが話し終えたら、エージェントは自然に応答を引き継ぐ必要があります。適切なタイミングで応答を開始するか、発話の途中で割り込まないかを評価してください。詳しいガイドは、ElevenLabsのターンテイキング処理をご覧ください。
  • 精度テスト:STTレイヤーの不正確さは下流に波及します。ノイズの多い環境でも音声アシスタントが発話を理解できることを確認してください。また、音声モデルは異なるアクセントの発話も一貫して正確に文字起こしする必要があります。
  • 安全性テスト:ブランドポリシーに反するシステム動作をガードレールが防ぐことを確認してください。やり取りが感情的になった場合、エージェントは事前に定めたガイドラインに従い、有人エージェントへウォームハンドオフを行う必要があります。
Pre-launch checklist: latency, interruptions, turn-taking, transcription accuracy, and safety.

成果を測定し、音声アシスタント開発を改善する

社内テスト基準を満たすことで、AI音声エージェントは実環境へのデプロイに備えられます。しかし、それは開発ライフサイクルの最終目標ではありません。AI音声エージェントが顧客の依頼を継続して解決できるようにするには、デプロイ後の反復改善も同様に重要です。

会話型AIの指標から得たフィードバックを使い、AIアシスタントのギャップを特定します。その後、アプリケーションロジック、APIインテグレーション、モデルの選択、その他の技術スタック要素を段階的に改善し、会話型AIの性能を高めます。

コンテインメント、解決率、顧客満足度、失敗モードを追跡する


AIアシスタントを業界ベンチマークに照らして継続的に測定してください。追跡すべき指標には次のようなものがあります。

  • コンテインメント:AIエージェントによって正常に解決された会話の数を追跡します。
  • エスカレーション率:最終的に人の介入を必要とする通話を測定します。
  • 単語誤り率:AIがオーディオをどれほど正確に文字起こしするかを示す精度ベンチマークです。
  • ハルシネーション率:LLMが不正確だがもっともらしい回答を生成した事象を明らかにします。
  • CSAT:顧客がAI音声エージェントにどの程度満足しているかを示すフィードバックです。


会話型AIの指標について詳しく見る。

AI音声アシスタント向けElevenAPIを始める

ElevenAPIは、AI音声アシスタントの開発を簡素化します。主要なテキスト読み上げとスピーチtoテキストモデルにより、エンタープライズワークフローに自然に適合する、文脈を理解した会話型AIエージェントを作成できます。音声・オーディオモデルは一貫して高精度かつ低遅延を実現し、自然な顧客体験を提供します。

ElevenAPI APIキーを取得し、公式ドキュメントを参照して構築を始めましょう。

FAQ:AI音声アシスタントの構築

執筆者

Jack LimebearはGrowthチームに所属し、ブログやインサイトページのコンテンツライター兼ストラテジストとして活躍しています。ElevenLabsに入社する前は、急成長中のSaaSスタートアップからFortune 500企業まで、さまざまな組織で10年以上にわたりコンテンツ戦略をリードしてきました。ケンブリッジ大学で英文学の修士号を取得しています。

関連記事

最高品質のAIオーディオで創造する