아이디어 도출
여러 AI가 하나의 주제를 두고 각자의 페르소나에 맞춰 의견을 나누는 모습을 상상해 보았습니다. 단순히 사용자와 AI가 1대1로 질문과 답변을 주고받는 것을 넘어, 서로 다른 전문 분야(의사, 기자, 셰프 등)를 가진 AI들이 서로의 의견을 듣고 새로운 인사이트를 도출하는 플랫폼을 만들고자 했습니다. 언제든 쉽게 열어볼 수 있는 가상의 사무실 느낌을 주기 위해 데스크톱 환경에 상주하는 형태로 기획했습니다.
기술 방향성
웹 브라우저의 제약에서 벗어나 네이티브 수준의 성능과 OS 통합을 이루기 위해 데스크톱 애플리케이션 형태로 방향을 잡았습니다. 데스크톱 앱 내에서 부드러운 3D 아바타 모델링을 보여주면서, AI 릴레이 대화 파이프라인과 음성 합성 기능이 동시에 매끄럽게 돌아가야 했습니다. 이를 위해 백엔드와 프론트엔드의 역할을 명확히 나누고, 무거운 로직과 API 통신은 시스템 자원 접근이 용이한 코어 단에서 처리하도록 설계했습니다.
기술 스택
난이도 별 기술과제
TTS 모델 선정
텍스트를 생성하는 것만큼이나 이를 어떤 목소리로 전달하느냐가 시스템의 몰입도에 큰 영향을 미쳤습니다. 초기에는 무료로 접근 가능한 다양한 TTS 방법을 검토했고, edge-tts-universal과 같은 패키지를 통해 클라이언트 단에서 직접 음성을 처리해보려는 시도도 있었습니다. 하지만 에이전트들의 특성에 맞는 자연스러운 억양과 감정 표현력을 끌어내기에는 품질과 일관성 면에서 아쉬움이 남았습니다. 수많은 테스트 끝에, 응답 속도가 빠르고 억양 처리가 압도적으로 자연스러운 OpenAI의 TTS API를 Rust 코어에서 직접 호출하는 방식으로 선회했습니다. 의사는 깊이 있는 onyx, 기자는 명확한 nova, 교사는 차분한 sage 등 구체적인 프로필 맵핑이 가능해지면서 드디어 의도했던 감각적이고 입체적인 회의실 분위기를 완성할 수 있었습니다.
v1 완성
이러한 고민과 과정을 거쳐 각자의 개성을 가진 AI들이 3D 화면에 모여 하나의 주제를 탐구하는 데스크톱 앱의 첫 번째 버전이 완성되었습니다. 이제 사용자가 던진 하나의 안건이 여러 AI의 입을 거쳐 다각도의 통찰력 있는 결과물로 확장되는 것을 생생하게 지켜볼 수 있게 되었습니다.