Back to Projects

WIGVO

Real-time Phone Interpreter

일반 전화선(PSTN) 위에서 동작하는 실시간 음성 통역 시스템. 듀얼 세션 + 에코 게이팅 아키텍처로 평균 557ms 지연, 148건 실통화 0건 에코 루프를 달성했고 ACL 2026 System Demonstrations에 채택됐습니다.

개요

부동산 중개소, 병원, 동네 수리점 같은 곳은 아직도 전화가 유일한 창구입니다. 온라인 예약이 안 되는 곳에 뭔가를 문의하려면 결국 전화를 걸어야 하는데, 국내 거주 외국인(220만 명)에게는 언어 장벽이, 통화 불안을 느끼는 세대에게는 심리적 장벽이, 청각·언어 장애인에게는 물리적 장벽이 있습니다. 기존 음성 번역 기술은 양쪽 다 앱을 깔아야 동작하는 구조라 이 문제를 풀 수 없었습니다. 저희가 목표로 잡은 건 수신자가 아무것도 설치하지 않아도 일반 전화를 받기만 하면 양방향 통역이 바로 동작하는 시스템이었고, 그러려면 통화 매개체를 PSTN(SIP)으로 가져가면서 양쪽 오디오를 실시간으로 처리해야 했습니다.

도전

핵심 문제는 세 가지였습니다. 첫째, 오디오 환경 격차입니다. 일반 앱(16~24kHz PCM16 + 클라이언트 AEC)과 달리 PSTN은 G.711 μ-law 8kHz 협대역 코덱에 80~600ms 가변 지연이 깔립니다. 둘째, 에코 루프입니다. AI가 만든 TTS 음성이 PSTN을 타고 돌아와 다시 STT → 번역 → TTS로 입력되는데, 초기 테스트에서 10통 중 8통이 이 루프에 빠졌습니다. 셋째, VAD 실패입니다. OpenAI Server VAD는 깨끗한 광대역 입력을 가정해서 PSTN 잡음(RMS 50~200)을 "발화 중"으로 잡고 `speech_stopped` 이벤트가 15~72초 늦게 발화하거나 아예 안 옵니다.

접근

"방향별로 독립된 OpenAI Realtime 세션을 두 개 병렬로 돌리고, 두 세션 사이는 소프트웨어 전용 에코 게이팅 파이프라인으로 분리하면" 에코 루프와 저지연을 동시에 잡을 수 있다고 봤습니다.

구조

Dual-Session Echo Gating 아키텍처를 채택했습니다. 방향별 Realtime 세션 2개를 분리해서 돌리고, 두 세션 사이에 소프트웨어 에코 게이트를 두며, STT와 번역을 분리해 환각으로 인한 문장 추가를 차단했습니다.

  • 듀얼 세션 — Session A(브라우저→전화) · Session B(전화→브라우저)가 각자 system prompt와 6턴 슬라이딩 컨텍스트를 독립 유지
  • AudioRouter — Strategy 패턴으로 V2V / T2V / FullAgent 3 파이프라인에 이벤트 위임
  • STT-Translation 분리 — Realtime API의 Whisper-1은 STT만 담당, 번역은 GPT-4o-mini(temperature=0)가 별도 처리 + context_prune_keep=0으로 환각 문장 추가 차단
WIGVO Dual-Session Echo Gating 아키텍처
브라우저 클라이언트 ↔ 릴레이 서버(WebSocket) ↔ Twilio(PSTN). 방향별 Realtime 세션 2개를 AudioRouter가 3 파이프라인에 위임, 각 세션은 6턴 슬라이딩 컨텍스트를 독립 유지.

실행

7단계 진화로 매 단계마다 깨지는 지점을 차례로 잡았습니다. 단일 세션은 에코를 못 잡았고, 단순 듀얼은 두 세션이 서로의 TTS를 듣고 무한 발화 루프에 빠졌습니다. 그 위에 (1) Echo Gate로 TTS 출력 시점에 자기 음성을 차단, (2) Energy Gate로 RMS 임계치 기반 PSTN 노이즈 필터링, (3) Silero VAD로 OpenAI Server VAD가 15~72초씩 지연되던 발화 종료 감지를 클라이언트 측에서 480ms 이내로 단축, (4) 세션 상태 공유 컨트롤러, (5) 발화권 우선순위 룰, (6) STT와 Translation 분리(Whisper-1 vs GPT-4o-mini), (7) 6-turn sliding context로 메모리 부담 통제까지 단계적으로 쌓아 운영 환경에서 종단 간 지연을 557ms까지 끌어내렸습니다.

결과 & 성과

실측 기준 평균 종단 간 지연 약 557ms, 148건의 실통화에서 0건의 에코 루프를 기록했습니다. 시스템 논문이 ACL 2026 System Demonstrations Track에 채택됐고, 수신자는 앱 설치 없이 일반 전화로 받기만 하면 양방향 통역이 동작하는 운영 단계에 도달했습니다. 대상 사용자는 국내 거주 외국인(2024년 기준 220만 명) · 재외 국민(280만 명) · 청각·언어 장애인(등록 39만 명) · 통화 회피 세대(MZ 약 40%)까지 포함합니다.

~557ms
평균 종단 간 지연 (실측, 148건 통화 기준)
0 / 148
에코 루프 발생 / 실통화 (소프트웨어 게이팅 적용 후)
ACL 2026
System Demonstrations Track 채택
Python 3.12FastAPIOpenAI Realtime APIWhisper-1Silero VADTwilioReact Native (Expo 54)Cloud Run

다른 프로젝트

WIGTN Coding44★

WIGTN Coding은 Claude Code 마켓플레이스에 공개된 AI 개발 워크플로우 플러그인입니다(44★). 13개의 전문 에이전트가 병렬로 PRD 생성, 화면정의서, 아키텍처 결정, 빌드, 코드 리뷰, 커밋까지 자동화합니다.

WIGENT1st Place

Wigent는 사용자가 주제를 입력하면 AI 에이전트들이 실시간으로 토론하는 멀티 에이전트 플랫폼입니다. PM 에이전트가 주제를 분석해 전문가 에이전트를 동적 생성/퇴장시키며, 7가지 에이전틱 패턴을 적용했습니다. Build with TRAE 해커톤 1등 수상작.

WIGTN FLAKE2nd Place

WIGTN FLAKE는 창업·투자·이사처럼 수억 원이 걸린 결정을 멀티 에이전트 토론으로 풀어내는 동네 인텔리전스 플랫폼입니다. "무엇을 하고 싶은지" 목적을 선택하면 GPT-4o 오케스트레이터가 5명의 Cortex 전문가를 소환해 부동산·유동인구·카드매출·통신계약 4개 데이터셋을 교차 토론하고, Top 3 동네 + 6개월 예측 + 이상 시그널 + 실행 액션을 자동 생성합니다. Snowflake AI & Data Hackathon Korea 2026 Tech Track 2등 수상작.

면지 (Myunzy)Top 6

면지는 내 이력서와 실제 채용공고로 AI 면접관을 자동으로 만들어 음성으로 모의면접을 진행하는 플랫폼입니다. LG의 한국어 특화 오픈 모델 EXAONE-4.5를 도구호출 하네스 위에서 굴려, GPT급 자유연기 없이도 끝까지 일관되게 압박·평가하고 한국어 답변의 머뭇거림·표현까지 분석하며 세션 안에서 약점을 학습(자가진화)합니다. mock만으로 전 기능이 동작하고, env만 켜면 EXAONE·음성·외부 API로 무중단 승격됩니다. OBA Weekendthon S1 전체 메인 프라이즈 Top 6 · LG U+ Voice AI 트랙(EXAONE).

WIGTN-CUSTOS

WIGTN-CUSTOS는 GitLab 리포에 상주하며 MR 리뷰부터 머지된 코드 감시, 이슈 발급까지 24/7 스스로 돌보는 자가진화 리포 커스토디언입니다. 핵심은 자가발전입니다. 봇은 "팀이 머지했는가"가 아니라 "머지된 뒤 실제로 사고가 났는가"(Truth ≠ Consent)를 진실 신호로 삼아, 그 신호로 스킬 confidence를 재보정하고 사고에서 새 탐지 규칙을 합성해 점점 우리 팀 시니어가 되어갑니다. 라이브 trajectory 기준 도구 선택의 77%가 에이전트 주도이고 Senior Score 91/100을 골든셋으로 측정합니다. Google Cloud Rapid Agent Hackathon 2026 · GitLab Track (심사 중).