# 신뢰성과 즐거움을 갖춘 로컬 호스팅 음성 비서 구축 여정 (2025)

> Clean Markdown view of GeekNews topic #27594. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=27594](https://news.hada.io/topic?id=27594)
- GeekNews Markdown: [https://news.hada.io/topic/27594.md](https://news.hada.io/topic/27594.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-03-18T05:34:13+09:00
- Updated: 2026-03-18T05:34:13+09:00
- Original source: [community.home-assistant.io](https://community.home-assistant.io/t/my-journey-to-a-reliable-and-enjoyable-locally-hosted-voice-assistant/944860)
- Points: 1
- Comments: 0

## Topic Body

- Google Home에서 벗어나 **Home Assistant 기반 완전 로컬 음성 비서**를 구축한 과정을 단계별로 정리한 사례  
- **llama.cpp**와 **local-first 구성**을 사용해 클라우드 의존 없이 빠른 응답과 개인정보 보호를 달성  
- 다양한 **GPU·모델·STT·TTS 조합**을 실험하며 성능과 품질을 비교, 최적 구성을 도출  
- **프롬프트 설계와 자동화 스크립트**를 통해 날씨·검색·음악 재생 등 실제 생활 기능을 구현  
- 결과적으로 **프라이버시를 보장하면서도 신뢰성 높은 로컬 음성 비서 환경**을 완성  

---

### 하드웨어 구성
- Home Assistant는 **UnRaid NAS**에서 실행되며, 음성 서버는 **USB4 지원 Beelink MiniPC**와 **eGPU 인클로저**를 사용  
  - GPU는 RTX 3050~3090, RX 7900XTX 등 다양한 모델을 테스트  
  - RTX 3090과 RX 7900XTX는 **1~2초 응답**, RTX 3050은 **3초 내외 응답**  
- 음성 하드웨어는 **HA Voice Preview Satellite**, **Satellite1 Small Squircle Enclosure 2대**, **Pixel 7a**로 구성  

### 모델 및 성능
- **GGML GPT-OSS:20B**, **Unsloth Qwen3 시리즈**, **GLM 4.7 Flash (30B)** 등 여러 모델을 테스트  
- 모든 모델이 기본적인 **도구 호출(tool calling)** 기능을 지원  
- 평가 항목은 **다중 기기 제어**, **문맥 이해**, **오인식 명령 처리**, **잘못된 입력 무시 능력** 등으로 구성  

### 음성 서버 소프트웨어
- **모델 실행기**로는 **llama.cpp**를 권장  
- **음성 입력(STT)**  
  - *Wyoming ONNX ASR* (Nvidia Parakeet V2, OpenVINO 브랜치): CPU 추론 시간 약 0.3초  
  - *Rhasspy Faster Whisper*: ONNX CPU 기반으로 상대적으로 느림  
- **음성 출력(TTS)**  
  - *Kokoro TTS*: 여러 음색 조합 가능, 텍스트 처리 우수  
  - *Piper (CPU)*: 다양한 음성 지원, 숫자·주소 처리에는 약점  
- **Home Assistant LLM 통합**  
  - *LLM Conversation*: 기본 대화 품질 개선  
  - *LLM Intents*: 웹 검색, 장소 검색, 날씨 예보 등 도구 제공  

### Google Assistant에서 로컬 비서로의 전환
- Google Assistant가 점점 **응답 정확도와 기능이 저하**되어 대체 필요성 인식  
- **프라이버시 문제**와 **클라우드 장애 시 제어 불가** 문제도 주요 전환 요인  

### 초기 시도와 모델 개선
- 초기에 **Ollama 기본 모델**을 사용했으나 도구 호출 실패가 잦음  
- **HuggingFace의 GGUF 고정밀 모델**을 사용하면서 성능이 크게 향상  
- Wi-Fi 불안정으로 음성 출력을 끊김 없이 처리하기 위해 **스트리밍 설정 및 전용 IoT 네트워크** 구성  

### 기능 확장과 LLM 프롬프트 설계
- 음성 비서가 **날씨, 영업시간, 일반 지식, 음악 재생**을 수행하도록 구성  
- *llm-intents* 통합으로 기능 확장, 그러나 초기 결과는 제한적  
- **프롬프트 설계**가 핵심 요소로 작용  
  - 서비스별 `#` 섹션과 구체적 지시 목록을 추가해 LLM의 도구 호출 정확도 향상  
  - 불필요한 감탄문·이모지 제거로 **TTS 친화적 응답 형식** 확보  
  - ChatGPT를 활용해 반복적으로 프롬프트를 개선  

### 자동화로 문제 해결
- 음악 재생 기능은 LLM이 직접 수행하지 못해 **Home Assistant 자동화 스크립트**로 보완  
  - “Play {music}” 명령을 트리거로 하여 요청한 위성 기기에 맞는 **media_player**에서 음악 재생  
  - “Stop playing” 명령으로 중지 가능  
- 이후 업데이트로 LLM이 자연스럽게 음악 검색·재생을 수행하게 되었으나, 자동화는 여전히 유용한 접근  

### 커스텀 웨이크워드 학습
- 기본 웨이크워드 대신 **“Hey Robot”** 을 사용  
- *microWakeWord-Trainer-Nvidia-Docker*로 약 30분간 학습  
- 오탐률은 Google Home 수준이며, **자동 음소거 기능**으로 개선 가능  

### 최종 결과
- 평균 사용자에게는 다소 복잡하지만, **세밀한 조정이 가능한 로컬 음성 비서 환경** 완성  
- **프라이버시 보호**, **안정적 제어**, **사용자 맞춤형 성능 조정**이 가능  
- 완전한 클라우드 독립형 음성 비서로 **신뢰성과 즐거움**을 모두 확보

## Comments



_No public comments on this page._
