Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- APM
- 공부
- 정보처리기사 실기 기출문제
- 티스토리챌린지
- 기록으로 실력을 쌓자
- Spring
- CKA 기출문제
- minikube
- AI
- MySQL
- Java
- 오블완
- Pinpoint
- Linux
- CloudWatch
- kotlin coroutine
- LLM
- kotlin
- go
- Kubernetes
- AWS EKS
- PETERICA
- aws
- 바이브코딩
- 코틀린 코루틴의 정석
- 컨텍스트 엔지니어링
- CKA
- SRE
- golang
- tucker의 go 언어 프로그래밍
Archives
- Today
- Total
피터의 개발이야기
[AI] IntentFlow 프로젝트 회고 및 소개 본문
반응형
IntentFlow 프로젝트 회고 및 소개
🧭 프로젝트 개요
IntentFlow는 음성 입력을 받아 사용자의 의도를 파악하고, 적절한 응답을 음성으로 생성하는 End-to-End 음성 대화 시스템이다. Whisper 기반 STT, Sentence Transformers 임베딩, Weaviate 벡터 검색, Piper TTS, 그리고 LLM 폴백 구조를 결합하여, 로컬 환경에서 완전한 대화 루프를 완성한다.
🎯 개발 목적
- 음성 기반 의도 인식 정확도 확보 (≥85%)
- 1.5초 이내 응답 시간(p95) 달성
- LLM 폴백률 ≤30%로 효율적 커버리지 확보
- 완전한 로컬 독립 실행형 파이프라인 구현 (Docker 기반)
🧩 아키텍처 요약
사용자 음성 입력
↓
[STT] Whisper → 텍스트 변환
↓
[Embedding] Sentence Transformers
↓
[Vector DB] Weaviate 검색 (TopK=5, Thresh=0.85)
↓ ├─ 매칭 성공 → 템플릿 렌더링
└─ 매칭 실패 → LLM 폴백
↓
[TTS] Piper → 음성 응답 출력
총 5단계 Core Pipeline: STT → Embedding → Vector Search → Template → TTS
💡 주요 성과
| 항목 | 결과 | 근거 |
| 응답시간 | p95 ≈ 1,480ms | Whisper(600ms) + TTS(800ms) |
| Intent 매칭 정확도 | 0.87 | 20 샘플 테스트 기준 |
| LLM 폴백률 | 0.28 | Vector Thresh=0.85 조건 |
| 시스템 안정성 | /health uptime 99.9% | Docker Health Check |
🧪 주요 학습 및 개선점
1️⃣ 기술적 성취
- 모듈 간 독립성 확보: STT, Embedding, VectorSearch, TTS가 각기 단일 서비스로 동작하며 Health Check 및 Dependency Control로 통합 안정화.
- 템플릿 기반 응답 렌더링:
{{now_hm}},{{now_date}}등 매크로 지원으로 유연한 응답 생성 가능. - Weaviate + SentenceTransformers 최적화: TopK 및 Thresh 튜닝으로 recall@10 안정화.
2️⃣ 협업 및 관리 측면
task_flow.md기반의 체계적 Task 분할로 개발 병렬화에 성공.task_guide.md의 절차적 정의를 준수하여, Task 상태 추적 및 로그 기록이 명확해짐.- Week Plan 기반 리뷰 루프(Plan→Do→Review)로 일정 지연 없이 완료.
3️⃣ 회고 포인트
- 좋았던 점
- STT~TTS End-to-End 파이프라인 완주 및 실측 성능 확보.
- Task 구조화와 문서 자동화(
task_flow.md→week_plan)가 실효적이었음.
- 개선점
- 초기 LLM 폴백 API 응답 지연 발생(LLM Temperature 0.8→0.5 조정으로 해결).
- TTS 캐시 전략 미비로 동일 응답 재생 시 성능 저하.
- 다음 단계 제안
- Prometheus 기반 메트릭 노출 추가.
- Intent 자동 확장 기능(
intent_loader.py) 개선 및 QA 데이터셋 추가.
로컬 기동

📘 참고 문서 링크
- API 명세: API_SPEC.md
- 아키텍처 개요: ARCHITECTURE.md
- 튜닝 가이드: TUNING_GUIDE.md
- 의도 설계 가이드: INTENT_DESIGN.md
- Task Flow: task_flow.md
- Task Guide: task_guide.md
🏁 결론
IntentFlow는 로컬 환경에서 음성 입력 → 의미 추론 → 음성 응답의 전 과정을 자율적으로 완주한 첫 프로토타입이다.
“Vector DB + LLM 폴백 기반의 Hybrid Voice AI” 구조를 검증하였으며, 향후 MAS(Multi-Agent System) 레이어로 확장 가능한 기반을 확보했다.
작성일: 2025-11-12
작성자: Peterica SE Team
반응형
'AI > AI코딩 | 실습' 카테고리의 다른 글
| [AI] Ollama launch + GLM-4.7-Flash로 로컬 Claude Code 실행하기 (0) | 2026.01.28 |
|---|---|
| [AI] IntentFlow - 기술 요소 목록 (0) | 2025.11.18 |
| [AI] IntentFlow 개발 완료 회고 (0) | 2025.10.26 |
| [AI] 한시간 안에 V0를 이용한 웹페이지 만들기(feat. 헤커톤) (0) | 2025.09.30 |
| [AI] Cursor에서 토큰 사용량을 획기적으로 줄이는 실전 방법 (0) | 2025.09.11 |
Comments
