D3RO Voice — 멀티플랫폼 AI 음성 어시스턴트 (Monorepo & CI/CD)
qwen3:4b가 reasoning 모델이라 <think>...</think> 블록을 길게 생성 → stripReasoningBlocks 후 빈 문자열 → 원본 transcript fallback으로 끝나면서 LLM refine이 42초 걸리는 병목 발견. Google Gemma 4 e4b(4.5B effective params, 2026-04-02 릴리스)로 교체. non-reasoning 기본 + Ollama v0.20+ think: false 파라미터로 2중 방어. 실측 결과: 받아쓰기 한 사이클 51.4s → 5.5s (9.3배 빠름). STT 500ms + LLM 3,925ms + insert 1,092ms. refine 품질 정상 동작 확인: "테스트하는 중입니다" → "테스트하고 있습니다". - LocalLLMService: 3개 fallback 기본값 변경(generate / streamGenerate / chatStream) + Ollama 요청 body에 think: false 명시 추가. non-reasoning 모델은 무시, reasoning 모델은 thinking 토큰 차단. NO_THINK 주석을 legacy 설명으로 업데이트 — qwen3/deepseek-r1 수동 선택자를 위한 3중 방어(/no_think + think:false + stripReasoningBlocks) 명시. - OnboardingModal / OllamaGuideModal: pull 명령어 갱신 - 테스트 fixture 갱신 - 12개 i18n locale JSON: settings.ollamaHint / ollama.step2.alt 키 업데이트 (qwen3:4b → gemma4:e4b, qwen3:8b → gemma4:26b) - 10개 site i18n locale TS + HowItWorks.tsx 파이프라인 시각화 — detail 문자열 'qwen3 / llama3 / gemma3' → 'gemma4 / llama3.2 / phi4', 파이프라인 라벨 'qwen3:4b @ localhost' → 'gemma4:e4b @ localhost' - 설계서 00 LLMConfig 기본값 + CONFIG_DEFAULTS - 설계서 05: 6개 API 스키마 예시, 2개 OllamaClient 코드 예시, LLM 모델 추천 표 재정렬(gemma4:e4b 최상위, qwen3는 reasoning 경고와 함께 후순위), 권장 JSON 설정에 think:false 추가 - phase-14 meeting mode 컨텍스트 윈도우 표 갱신 - V2-5 Mac 부트스트랩 가이드 pull 커맨드 갱신 - project_status.md Part 7 전체 섹션 추가 |
||
|---|---|---|
| .claude | ||
| .github/workflows | ||
| apps | ||
| docs | ||
| memory | ||
| packages | ||
| server/supabase | ||
| site | ||
| .editorconfig | ||
| .eslintignore | ||
| .eslintrc.cjs | ||
| .gitattributes | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .nvmrc | ||
| .prettierrc | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| SECURITY.md | ||
| tsconfig.base.json | ||
| tsconfig.json | ||
| turbo.json | ||