uezo/aiavatarkit
🥰 Building AI-based conversational avatars lightning fast ⚡️💬
해결하는 문제
AIAvatarKit은 웹, 모바일, 전화, 하드웨어 장치 등 여러 채널에서 작동하는 저지연 대화형 AI 아바타를 구축하기 위한 프레임워크를 제공합니다. 음성 활동 탐지(VAD), 음성-텍스트 변환(STT), 대규모 언어 모델(LLM), 텍스트-음성 변환(TTS) 간의 파이프라인 조율의 복잡성을 해결하며, 반응성이 뛰어나 인간과 같은 대화 흐름을 유지합니다.
작동 방식
이 프로젝트는 데이터를 네 가지 주요 단계를 거치는 모듈식 STSPipeline(음성-음성)을 사용합니다:
- VAD: 사용자가 말하는지 감지하고, 의미 기반 게이트(예: Namo Turn)를 사용하여 사용자가 실제로 생각을 마쳤는지 판단하여 대화 순서를 관리합니다.
- STT: Azure, Google, OpenAI 등의 제공자들을 사용하여 오디오를 텍스트로 변환합니다.
- LLM/에이전트: 텍스트를 처리하고 응답을 생성하며, 외부 데이터 접근을 위한 도구 호출 및 MCP(Model Context Protocol)를 지원합니다.
- TTS: VOICEVOX, ElevenLabs, Azure 등의 서비스를 사용하여 응답을 다시 오디오로 변환합니다.
어댑터가 이 파이프라인을 래핑하여 오미채널 배포를 가능하게 하며, 사용자가 전화 통화에서 LINE 봇으로 이동하는 등 다양한 인터페이스 간에 대화를 유지할 수 있습니다.
대상 사용자
웹/모바일 앱용 인터랙티브 AI 캐릭터, 디지털 사이니지용 가상 매장 직원, 컴패니언 하드웨어(Raspberry Pi), 메타버스 아바타(VRChat), AI 기반 전화 운영자 등을 개발하는 개발자들.
주요 특징
- 초저지연: 발화 종료 후 첫 번째 오디오 출력까지 1초 미만의 응답 시간을 달성합니다.
- 모듈식 아키텍처: VAD, STT, LLM, TTS 모든 구성 요소가 교체 가능하여, 모델이나 음성 업그레이드 시 시스템 전체를 다시 작성할 필요가 없습니다.
- 오미채널 지원: 하나의 파이프라인으로 WebSocket, HTTP, 전화 통화(Twilio/Asterisk), 메시징 앱(LINE)을 모두 지원합니다.
- 다중 모달 표현력: LLM에 의해 트리거되는 얼굴 표정, 애니메이션, 화면 내 아티팩트(차트, 지도 등)를 지원합니다.
- 프로덕션 준비 완료: 실시간 설정, 로그, 메트릭, 가드레일을 포함한 관리 패널을 제공하며, 아바타가 문장을 중간에 중단하여 오류를 수정할 수 있는 기능도 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트