음성 대 음성(Voice-to-voice) 챗봇 업데이트
Voice-to-voice chatbot update
핵심 요약
Qwen3.5-397B를 활용해 실시간 대화와 중단이 가능한 로컬 음성 챗봇 개발 현황 공유
- 실시간 스트리밍 — SSE 스트리밍을 적용해 실시간에 가까운 응답과 대화 중간 끼어들기 기능을 구현함
- 하드웨어 사양 — 24GB GPU와 150GB 시스템 RAM을 사용하여 Qwen3.5-397B 모델을 로컬에서 구동함
- 기술 스택 — Whisper-small STT, Orpheus TTS, 커스텀 SNAC 디코더를 조합하여 구축함
- 코드 공개 예정 — 개발자가 집안일을 마치는 대로 오늘 저녁 중 GitHub에 소스 코드를 업로드할 계획임
몇 달 동안 퇴근 후 틈틈이 작업하며 계속 개선해 왔습니다. 이제 SSE 스트리밍 덕분에 챗봇이 실시간에 가까워졌고, 마지막으로 말한 문맥을 유지하면서 대화 중간에 끼어드는 것도 가능해졌습니다. 100% 로컬이며 Qwen3.5-397B (Unsloth의 UD-Q3_K_XL), Whisper-small STT, 그리고 ONNX 기반 커스텀 SNAC 디코더를 사용하는 Orpheus Q4_K_XL TTS로 구동됩니다.
VRAM 사용량은 21.3GB 이하로 유지되어 24GB GPU에서 연산 그래프를 위한 여유 공간이 충분합니다. Qwen을 위한 시스템 RAM MoE 전문가 모델은 약 150GB를 차지합니다. bf16 KV 캐시로 실행 중이며(Qwen3.5는 Q8 KV에서 오작동함), 131,072 토큰을 지원합니다. 몇 시간 동안 대화하기에 충분한 양입니다.
GitHub 코드는 곧 올라올 예정입니다. 집안일(honey-do list)을 마치는 대로 오늘 저녁에 업로드할 수 있을 것 같습니다.


