# 율봇 개발 로드맵 ## 현재 구현 상태 (Phase 1~7 완료) | 영역 | 현황 | |------|------| | LLM | Qwen2.5-7B-Instruct-4bit (MLX, Apple Silicon) | | Agent | LangGraph ReAct + Tool Calling + Thinking 모드 | | RAG | Qdrant + BAAI/bge-m3 임베딩 | | Tools | `search_documents`, `get_current_date`, `web_search`, `remember_user_info`, `recall_user_info` (5개) | | UI | Gradio Web UI (`app.py`) + CLI (`main.py`) | | Memory | LangGraph MemorySaver (세션 내) + MySQL (대화 영구 저장) + `td_user_profile` (장기 사용자 메모리) | | Streaming | 비동기 토큰 스트리밍 + `` 블록 파싱 | | Tracing | LangSmith 트레이싱 설정 완료 (`.env`에서 활성화 가능) | --- ## ✅ Phase 4 — Web UI (Gradio) - `app.py` — Gradio ChatInterface + `stream_response()` 연결 - PDF/TXT 파일 업로드 → 인제스트 버튼 - 사고 과정(thinking) 표시 토글 - 대화 초기화 버튼 --- ## ✅ Phase 5 — 장기 사용자 메모리 - MySQL `td_user_profile` 테이블 + Tool 2개 등록 - `remember_user_info(key, value)` — 영구 저장 (아이 생년, 재정 목표 등) - `recall_user_info(key)` — 이전 저장 정보 조회 - `UserProfileRepository` (`services/db/user_profile_repository.py`) --- ## ✅ Phase 6 — 실시간 웹 검색 Tool - `web_search(query)` — DuckDuckGo (무료, API 키 불필요) - 최신 금리, 육아 정책, 뉴스 등 실시간 정보 검색 가능 --- ## ✅ Phase 7 — LangSmith 트레이싱 - `.env`에서 `LANGCHAIN_TRACING_V2=true` + `LANGCHAIN_API_KEY` 설정으로 활성화 - Tool Call 실패 원인, RAG 청크 내용, 에이전트 루프 흐름 시각화 가능 --- ## Phase 8 — 멀티모달 이미지 이해 ★☆☆ **배경**: 이유식 사진 → "이 재료로 만들 수 있는 이유식은?", 금융 서류 사진 → 내용 분석 등 이미지 기반 질문 처리. **제약**: Qwen2.5-7B는 이미지 미지원 → `mlx-community/Qwen2.5-VL-7B-Instruct-4bit` 모델 교체 필요. **난이도**: 높음 | **임팩트**: 높음 (장기 과제)