본문으로 건너뛰기
BringTalk
프로그램▼
워크샵2일 — 직접 만들어보며 감을 잡습니다POC프로젝트★ 대부분 여기서 시작6주 — 빠르게 데이터로 검증합니다AX프로젝트검증한 것을 전사의 시스템으로
콘솔Alpha
인더스트리▼
자동차광고 리드, 시승, 견적, 정비 예약까지 콜을 매출 흐름으로 연결합니다.인테리어·가구상담 예약, 견적 일관성, 설치 후 CS를 한 흐름으로 묶습니다.보험 GA리드 후속, 보장 안내, 갱신 콜을 컴플라이언스 기준으로 운영합니다.금융·캐피탈납부 일정, 신청 상태, 동의 확인 콜을 신뢰 기반으로 처리합니다.통신·인터넷해지 방어, 장애 접수, 요금제 상담을 반복 가능한 운영으로 만듭니다.여행·항공·호텔변경, 지연, 리워드 문의를 고객 맥락에 맞춰 이어갑니다.법무·회계·세무첫 상담 접수와 일정·서류 안내로 전문가 시간을 회수합니다.의료·치과예약, 시술 상담, 진료 외 시간 응대를 놓치지 않고 받습니다.부동산 중개매물 매칭과 임장 일정 조율로 거래 기회를 지킵니다.교육·유학·학원상담 신청 후속과 등록 전환을 부모·학생 양쪽 톤으로 응대합니다.물류·렌탈·모빌리티배송 추적, 렌탈 일정, 차량 상태 조회 콜을 자동화합니다.B2G·공공민원 1차 분류와 인증·정책 안내로 상담 인력을 비웁니다.
솔루션▼
Vapi공식 파트너Global Top 3 Voice AI Platform
블로그
상담 신청
프로그램
워크샵POC프로젝트AX프로젝트
콘솔Alpha
인더스트리
자동차인테리어·가구보험 GA금융·캐피탈통신·인터넷여행·항공·호텔법무·회계·세무의료·치과부동산 중개교육·유학·학원물류·렌탈·모빌리티B2G·공공
솔루션
Vapi
블로그
상담 신청
Design

Designing Production Voice Agent Architecture: From Orchestrator to Tool Server

Moon Kim·May 15, 2026·3 min read

Contents

  1. The Orchestrator Is a Session OS, Not a Model Wrapper
  2. STT Provider, LLM Router, and TTS Engine Must Be Swappable
  3. Tool Server: Transaction Boundaries Before Function Calls
  4. State Store: Execution State, Not Conversation Logs
  5. Error Handling and Observability Belong in the Same Design Document
  6. BringTalk Designs Context Injection Within Zero Retention Boundaries

A production voice agent isn't completed by a single good model. LiveKit recommends 4-core/8GB servers handling 10–25 concurrent jobs as a starting point, and Vapi recommends 2–3 fallback providers for TTS/STT failures — because ultimately, Orchestrator separation and recovery design matter more than performance.

The Orchestrator Is a Session OS, Not a Model Wrapper

In real-time voice systems, the Orchestrator isn't just code that chains STT, LLM, and TTS in series. It must be an operational layer that centrally manages session creation, turn detection, barge-in cancellation, timeout budgets, provider health scores, and tool execution order. LiveKit runs agent servers as worker pools with separate processes per job for this reason — clear session boundaries prevent one call's delay or crash from contaminating another call's quality.

STT Provider, LLM Router, and TTS Engine Must Be Swappable

In production, provider outages arrive before model quality issues. STT Provider, LLM Router, and TTS Engine should be abstracted not by identical request/response types, but by streaming event interfaces and common error codes. Vapi supports voice fallback and transcriber fallback separately and recommends 2–3 different providers for each. The Orchestrator must know the degraded mode path, retryable stages, and acceptable voice quality degradation ranges beyond the primary route.

Tool Server: Transaction Boundaries Before Function Calls

From the moment the LLM selects a tool, the problem shifts from natural language to transaction design. The Tool Server must validate function schemas, check permissions, handle idempotency keys, manage timeouts, and determine retry eligibility — returning results as structured JSON. Without separating read-only queries from write operations, you'll immediately face duplicate bookings, incorrect CRM updates, and payment re-invocations. Vapi's custom tool and code tool patterns signal that this boundary should be extracted into an independent service.

State Store: Execution State, Not Conversation Logs

As Pipecat's context aggregator demonstrates, voice agent state extends far beyond simple transcripts. User utterances, assistant's actual TTS text, tool results, summarized context, incomplete tasks, and interruption flags must be managed together for accurate next turns. The State Store should separate hot session state from durable event logs. Short-term conversational memory belongs in low-latency storage, while long-term history should be asynchronously loaded with summaries to reduce both token costs and recovery time.

Error Handling and Observability Belong in the Same Design Document

Defining retry policies without tracing makes root cause analysis impossible. The Orchestrator, STT Provider, LLM Router, Tool Server, and TTS Engine should be linked by per-turn traces, with each hop logging latency, partial transcripts, tool arguments, and provider error codes. LiveKit assumes log collection, health endpoints, and graceful draining; Vapi Evals enables mock conversations and tool-call verification as pre-deployment quality gates. The key rule: voice output favors fallback over retry, while tool write operations favor idempotency over fallback.

BringTalk Designs Context Injection Within Zero Retention Boundaries

BringTalk's design principle places session decisions in the Orchestrator, injects customer state via Context Injection only when needed, and never pushes sensitive information outside Zero Retention boundaries. In time-critical scenarios like LQA and FUA, CRM events and recent behavioral data are tightly connected, but raw PII and internal identifiers are masked behind the Tool Server or substituted with lookup tokens. This ensures policies persist even when models change, and model changes don't require rewriting the entire voice pipeline.

📌 Key metrics: start with 4-core/8GB handling 10–25 concurrent jobs, begin autoscale near load_threshold 0.5 rather than 0.7, and default to 2–3 different providers for voice/transcription fallback

Share this article
XLinkedIn

READ NEXT

Related articles

Design

Voice AI Retry Design — retryOnFail, Idempotency Keys, and onError

September 3, 2026
Design

Where Phone Booking Automation Ends

September 2, 2026
Design

Traditional IVR, Visual IVR, Digital ARS, Voice AI — Four Systems With Different Branch Logic

September 1, 2026
For your calls

Test the same transition in Korean call operations within six weeks.

Discuss a 6-week POCDiscuss Vapi implementation
BringTalk

콜 운영에 들어가 음성 AI 에이전트를 6주 만에 실험 가능한 시스템으로 구축합니다.

탐색
  • 브링톡 콘솔 Alpha
  • 인더스트리
  • Vapi 파트너십
  • 블로그
프로그램
  • 워크샵
  • POC프로젝트
  • AX프로젝트
연락
  • contact@bringtalk.ai
  • 070-5275-3959
  • 상담 신청
개인정보처리방침이용약관개인정보 문의

주식회사 브링톡·대표 김진홍·사업자등록번호 259-81-04010

서울특별시 강남구 강남대로42길 19, 2층 201호 에이 012호(도곡동)

© 2026 BringTalk · Voice Agent StudioEvery call becomes revenue.