ML-Powered Interactive Voice Response System for Customer Support

airbnb · Tech · 2024 · source Agentic: yes · promotional bias: low · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Real-time customer-support voice automation

Airbnb needed to replace rigid phone-menu support with a conversational IVR that understands caller issues in natural language, recommends relevant self-service resources, and escalates to humans when needed without adding awkward voice latency.

Constraints:

Architecture

Airbnb built an ML-powered IVR pipeline that prompts callers to describe issues in natural language, transcribes speech with Airbnb-specific ASR, classifies contact reason through the Issue Detection Service, and then either routes to self-service or escalates to a support agent with context. Self-service uses a two-stage Help Article Retrieval and Ranking system: article embeddings are indexed in a vector database, caller queries retrieve up to 30 candidates by cosine similarity, and an LLM-based ranker selects the top article for SMS or app delivery. A lightweight paraphrasing layer maps inquiries to curated standardized summaries by embedding similarity and a calibrated threshold so users hear what the system understood before receiving help content.

Diagram confidence: explicit (topology described by the source).

flowchart LR
  Caller["Caller voice input"] --> ASR["Airbnb-specific ASR"]
  ASR --> Intent["Issue Detection Service"]
  Intent --> Decision["IVR workflow decision"]
  Decision --> Retrieval["Help Article Retrieval and Ranking"]
  Retrieval --> Vector["Vector database"]
  Retrieval --> Para["Paraphrasing model"]
  Para --> Notify["SMS or app notification"]
  Decision --> Agent["Human support agent routing"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Caller voice input Natural-language user issue spoken during a support call. Airbnb-specific ASR
Airbnb-specific ASR Domain-adapted speech recognition for noisy phone audio and Airbnb-specific terminology. Caller voice input, Issue Detection Service
Issue Detection Service Parallel intent-detection service that classifies contact reason and escalation intent. Airbnb-specific ASR, IVR workflow decision
IVR workflow decision Chooses self-service article delivery or human-agent routing based on detected intent and issue type. Issue Detection Service, Help Article Retrieval and Ranking, Human support agent routing
Help Article Retrieval and Ranking Two-stage semantic retrieval and LLM ranking system for selecting the most relevant help article. IVR workflow decision, Vector database, Paraphrasing model
Vector database Stores Airbnb Help Article embeddings for cosine-similarity retrieval. Help Article Retrieval and Ranking
Paraphrasing model Maps inquiries to curated standardized summaries using nearest-neighbor embedding similarity and a calibrated threshold. Help Article Retrieval and Ranking, SMS or app notification
SMS or app notification Delivers the selected help article link and context to the caller. Paraphrasing model
Human support agent routing Escalates callers to a suitable support team with relevant details attached. IVR workflow decision

Data flow

A caller reaches Airbnb support and states their issue. Airbnb-specific ASR transcribes the audio, then an intent model predicts a Contact Reason. The IVR workflow decides whether to route the caller to self-service or a human agent. For self-service, the query is embedded, matched against Help Article embeddings in a vector database, re-ranked by an LLM model, summarized through a curated paraphrase, and sent by SMS or app notification.

4 supporting quotes
“IVR picks up and prompts, “In a few sentences, please tell us why you’re calling today.””article, stated
“The caller’s response is transcribed with Airbnb-specific ASR.”article, stated
“The detected intent is then analyzed within the IVR workflow to determine the next action, whether it’s guiding the user through a self-service resolution or escalating directly to a human agent.”article, stated
“An LLM-based ranking model then re-ranks these retrieved articles, with the top-ranked article directly presented to users via IVR channels.”article, stated

Why this architecture

Airbnb chose a staged architecture because each support step has a different failure mode and latency budget: ASR must handle phone audio and domain terms, intent detection must be nearly imperceptible, article retrieval must search broadly but rank precisely, and paraphrasing must be predictable enough for voice callers. Human routing remains in the loop when automation is not appropriate.

3 supporting quotes
“General speech recognition models often struggle with Airbnb-specific terminology, leading to errors like misinterpreting “listing” as “lifting” or “help with my stay” as “happy Christmas Day.””article, stated
“This dual-stage system not only powers IVR interactions but also supports our customer support chatbot and Help Center search.”article, stated
“Rather than deploying a generative LLM for dynamic paraphrasing (which could introduce latency or quality variability), Airbnb implemented a lightweight approach using curated standardized summaries.”summary, stated

Models used: Airbnb-specific ASR · Contact Reason Detection model · escalation intent detection model · text embedding model · LLM-based ranking model · paraphrasing nearest-neighbor model

Scale

Alternatives considered (roads not taken)

Use rigid menu-tree IVR

Rejected because: Rigid menus force callers through pre-set button paths instead of letting them describe issues naturally.

“Traditional IVR systems often rely on rigid menu trees, requiring callers to press buttons and navigate pre-set paths.”article, stated
“By moving away from rigid menus to natural language understanding, we allow guests and hosts to express their issues in their own words”article, stated

Use generic pretrained ASR unchanged

Rejected because: Generic ASR made domain-specific transcription errors that degraded downstream intent and retrieval.

“General speech recognition models often struggle with Airbnb-specific terminology, leading to errors like misinterpreting “listing” as “lifting” or “help with my stay” as “happy Christmas Day.””article, stated
“we transitioned from a generic high-quality pretrained model to one specifically adapted for noisy phone audio.”article, stated

Generate dynamic paraphrases with a generative LLM

Rejected because: Airbnb preferred curated summaries matched by embeddings to avoid latency and quality variability in voice prompts.

“we implemented a lightweight paraphrasing approach leveraging a curated set of standardized summaries.”article, stated
“We calibrated a similarity threshold to ensure high-quality matches.”article, stated

Patterns

tool-use-orchestration (agent_architecture)

The IVR workflow orchestrates ASR, intent detection, retrieval/ranking, paraphrasing, SMS/app delivery, and human escalation.

“By combining Automated Speech Recognition and Contact Reason Detection systems with a help article retrieval system, and a paraphrasing model, we have created an IVR system”article, stated

rag-retrieval (retrieval)

The system retrieves relevant Airbnb Help Center articles from embedded article content based on the caller's query.

“We index Airbnb Help Article embeddings into a vector database, enabling efficient retrieval of up to 30 relevant articles per user query using cosine similarity”article, stated

retrieval-ranking (retrieval)

An LLM-based ranking model re-ranks semantically retrieved article candidates and presents the top-ranked article.

“An LLM-based ranking model then re-ranks these retrieved articles, with the top-ranked article directly presented to users via IVR channels.”article, stated

latency-optimization (performance)

Intent detection runs in parallel under 50 ms on average and retrieval typically completes within 60 ms to preserve real-time voice UX.

“Parallel computing ensures that intent detection latency remains under 50ms on average, making the process imperceptible to IVR users”article, stated
“using cosine similarity, typically within 60ms.”article, stated

confidence-thresholding (quality_control)

The paraphrasing system uses a calibrated similarity threshold before selecting curated standardized summaries.

“During online serving, user inquiries are mapped to these curated summaries via nearest-neighbor matching based on text embedding similarity. We calibrated a similarity threshold to ensure high-quality matches.”article, stated

human-in-the-loop-gate (operations)

The IVR detects escalation requests or issues requiring intervention and routes callers to human support with context.

“If the caller explicitly requests agent support or the issue requires human intervention, the call is routed to a customer support agent with relevant details attached.”article, stated

Tradeoffs

Use curated paraphrases instead of generative paraphrasing

Chose Nearest-neighbor matching to UX-written standardized summaries over Dynamic generative LLM paraphrasing.

Rationale: The curated approach favored predictable quality and low latency over open-ended generation in a voice flow.

“UX writers created concise and clear paraphrases for common Airbnb scenarios.”article, stated
“The outcome was a finite-state solution delivering the most appropriate paraphrased IVR prompt before presenting a help article link.”article, stated

Use two-stage article retrieval and ranking

Chose Vector retrieval for up to 30 candidates followed by LLM re-ranking over Directly presenting nearest-neighbor results without a ranker.

Rationale: The design balances retrieval breadth with ranking precision while meeting real-time latency requirements.

“This dual-stage system not only powers IVR interactions but also supports our customer support chatbot and Help Center search.”article, stated
“This dual-stage approach balances the trade-offs between retrieval breadth (capturing potentially relevant articles) and ranking precision”summary, stated

Respect explicit requests for human support

Chose Separate escalation intent detection and human routing over Forcing all callers through automation first.

Rationale: The system optimizes automation where appropriate while honoring callers who ask for an agent or have issues requiring intervention.

“For such scenarios, we use a different intent detection model to recognize when a caller wants to escalate to a human agent.”article, stated
“If this intent is detected, the IVR system honors the caller’s request and routes the call to the suitable support team.”article, stated

Gotchas (what bit them)

Domain-specific ASR errors cascade into intent and retrieval failures.

Root cause: General speech recognition models misrecognized Airbnb-specific support terms in noisy phone audio.

Resolution: Airbnb adapted ASR for noisy phone audio and added domain-specific phrase list optimization.

“These inaccuracies create challenges in understanding user intent and impact downstream processes.”article, stated
“we introduced a domain-specific phrase list optimization that ensures Airbnb terms are properly recognized.”article, stated

Voice support cannot hide slow model components behind a visual interface.

Root cause: Real-time voice delays create awkward pauses and degrade the user experience.

Resolution: Airbnb kept intent detection under 50 ms on average and semantic retrieval within about 60 ms.

“These tight latency budgets are essential for voice-based systems where delays create awkward pauses and degrade user experience.”summary, stated
“making the process imperceptible to IVR users and ensuring a seamless real-time experience.”article, stated

Voice callers need confirmation before receiving invisible help content.

Root cause: Unlike visual interfaces, IVR callers cannot inspect article titles or contents before the system sends a link.

Resolution: A curated paraphrasing model summarizes the interpreted issue before presenting the article link.

“A key challenge in IVR-based customer support is ensuring users clearly understand the resolution before receiving help article links, as they typically lack visibility into the article’s contents or title.”article, stated
“The outcome was a finite-state solution delivering the most appropriate paraphrased IVR prompt before presenting a help article link.”article, stated

Evaluation

Airbnb evaluates the IVR system at multiple layers: ASR word error rate, intent and retrieval latency, Precision@N for help article retrieval/ranking, manual precision for paraphrasing, user engagement with article content, self-resolution rates, NPS, and customer-service handling time.

Metrics: ASR word error rate from 33% to approximately 10% · intent detection latency under 50 ms on average · semantic retrieval within 60 ms · Precision@N for retrieval and ranking · paraphrase precision exceeding 90% · user engagement with articles · self-resolution rates · customer NPS and handling time

3 supporting quotes
“Across these platforms, its effectiveness is continuously evaluated using metrics like Precision@N, facilitating ongoing improvements and refinements.”article, stated
“Manual evaluation of end-to-end model outputs confirmed precision exceeding 90%.”article, stated
“increasing user engagement, improving customer NPS among users who interacted with the ASR menu, while reducing reliance on human agents and lowering customer service handling time.”article, stated

Outcomes

The article gives component-level scale and latency numbers: WER from 33% to 10%, under-50 ms intent detection, up to 30 retrieved articles, retrieval within 60 ms, and paraphrase precision above 90%.

3 supporting quotes
“The reduced WER significantly enhanced the accuracy of downstream help article recommendations”article, stated
“presenting a paraphrased summary before sending the article link increases user engagement with article content, resulting in improvement in self-resolution rates”article, stated
“This dual-stage system not only powers IVR interactions but also supports our customer support chatbot and Help Center search.”article, stated