docs: .env.example 전면 업데이트 — 누락된 설정값 모두 추가
기존에 빠져 있던 항목 추가: - LLM: ENABLE_THINKING, THINK_VERBOSE - Qdrant: QDRANT_URL, QDRANT_COLLECTION - Embedding: EMBEDDING_MODEL_ID, EMBEDDING_DEVICE - RAG: RAG_TOP_K, RAG_VERBOSE, RAG_SHOW_SOURCES, LANGGRAPH_VERBOSE - Semantic Chunker: SEMANTIC_BREAKPOINT_THRESHOLD_TYPE, SEMANTIC_BUFFER_SIZE - Reranker: RERANKER_ENABLED, RERANKER_MODEL_ID, RERANKER_FETCH_K - Voice: WHISPER_MODEL_SIZE, TTS_VOICE - Vision: VISION_ENABLED, VISION_MODEL_ID, VISION_MAX_TOKENS - IDEA-1: CONV_RAG_ENABLED - IDEA-2: TELEGRAM_BOT_TOKEN, TELEGRAM_USER_MAP - IDEA-5: CRAG_ENABLED - IDEA-8: GRAPH_ENABLED Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+73
-12
@@ -1,27 +1,88 @@
|
|||||||
# LLM 모델 설정
|
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||||
|
# 율봇 환경 설정 예시 (.env.example)
|
||||||
|
# 실제 사용 시 .env로 복사 후 값을 채워주세요.
|
||||||
|
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||||
|
|
||||||
|
# ── LLM ──────────────────────────────────────────
|
||||||
MODEL_ID=mlx-community/Qwen3-8B-4bit
|
MODEL_ID=mlx-community/Qwen3-8B-4bit
|
||||||
MAX_TOKENS=1024
|
MAX_TOKENS=1024
|
||||||
MAX_HISTORY_TURNS=30
|
MAX_HISTORY_TURNS=10 # 메모리에 유지할 최대 대화 턴 수
|
||||||
COMPACT_THRESHOLD=40
|
COMPACT_THRESHOLD=20 # 이 턴 초과 시 오래된 대화를 LLM으로 자동 요약
|
||||||
|
ENABLE_THINKING=true # Thinking 모드 활성화 (Qwen3 지원)
|
||||||
|
THINK_VERBOSE=false # true 시 UI에 thinking 토큰 스트리밍
|
||||||
|
|
||||||
# MySQL 설정 (미설정 시 DB 기능 비활성화)
|
# ── MySQL ─────────────────────────────────────────
|
||||||
|
# 미설정(DB_USER 빈 값) 시 DB 기능 전체 비활성화 (인메모리 모드)
|
||||||
DB_HOST=localhost
|
DB_HOST=localhost
|
||||||
DB_PORT=3306
|
DB_PORT=3306
|
||||||
DB_NAME=youlbot
|
DB_NAME=youlbot
|
||||||
DB_USER=
|
DB_USER=
|
||||||
DB_PASSWORD=
|
DB_PASSWORD=
|
||||||
|
|
||||||
# LangSmith 트레이싱 (Phase 7) — https://smith.langchain.com 에서 API 키 발급
|
# ── Qdrant ────────────────────────────────────────
|
||||||
|
QDRANT_URL=http://localhost:6333
|
||||||
|
QDRANT_COLLECTION=youlbot_docs
|
||||||
|
|
||||||
|
# ── Embedding ────────────────────────────────────
|
||||||
|
EMBEDDING_MODEL_ID=BAAI/bge-m3
|
||||||
|
EMBEDDING_DEVICE=mps # mps (Apple Silicon) | cpu | cuda
|
||||||
|
|
||||||
|
# ── RAG 검색 ─────────────────────────────────────
|
||||||
|
RAG_TOP_K=3 # 최종 반환할 문서 청크 수
|
||||||
|
RAG_VERBOSE=false # true 시 검색 쿼리·청크 내용 출력
|
||||||
|
RAG_SHOW_SOURCES=false # true 시 답변 아래 출처(파일명·페이지) 표시
|
||||||
|
LANGGRAPH_VERBOSE=false # true 시 LangGraph 노드 전환 로그 출력
|
||||||
|
|
||||||
|
# ── Semantic Chunker (Phase 13) ───────────────────
|
||||||
|
SEMANTIC_BREAKPOINT_THRESHOLD_TYPE=percentile # percentile | standard_deviation | interquartile | gradient
|
||||||
|
SEMANTIC_BUFFER_SIZE=1 # 인접 문장 묶음 크기 (1=단일 문장)
|
||||||
|
|
||||||
|
# ── Reranker (Phase 13-B) ────────────────────────
|
||||||
|
RERANKER_ENABLED=false
|
||||||
|
RERANKER_MODEL_ID=cross-encoder/mmarco-mMiniLMv2-L12-H384-v1 # 한국어 지원 다국어 모델
|
||||||
|
RERANKER_FETCH_K=10 # rerank 전 후보 수 (RAG_TOP_K보다 커야 함)
|
||||||
|
|
||||||
|
# ── Hybrid Search (Phase 18) — BM25 + Vector ─────
|
||||||
|
# 활성화 후 기존 문서는 재수집 필요
|
||||||
|
HYBRID_SEARCH_ENABLED=false
|
||||||
|
SPARSE_MODEL_ID=Qdrant/bm25
|
||||||
|
|
||||||
|
# ── Query Rewriting (Phase 19) ───────────────────
|
||||||
|
QUERY_REWRITE_ENABLED=false
|
||||||
|
|
||||||
|
# ── CRAG — 검색 결과 없을 때 web_search 자동 fallback (IDEA-5) ──
|
||||||
|
CRAG_ENABLED=false
|
||||||
|
|
||||||
|
# ── 대화 기반 자동 RAG 인덱싱 (IDEA-1) ───────────
|
||||||
|
# 응답 완료 후 LLM이 유용한 정보 판단 → Qdrant 자동 저장 (background task)
|
||||||
|
CONV_RAG_ENABLED=false
|
||||||
|
|
||||||
|
# ── 지식 그래프 / GraphRAG (IDEA-8) ──────────────
|
||||||
|
# add_relation / query_entity 도구 활성화 + 시스템 프롬프트 자동 주입
|
||||||
|
GRAPH_ENABLED=false
|
||||||
|
|
||||||
|
# ── REST API (Phase 22) ───────────────────────────
|
||||||
|
# 빈 값이면 인증 없음 (개발 모드)
|
||||||
|
API_TOKEN=
|
||||||
|
|
||||||
|
# ── LangSmith 트레이싱 (Phase 7) ─────────────────
|
||||||
|
# https://smith.langchain.com 에서 API 키 발급
|
||||||
LANGCHAIN_TRACING_V2=false
|
LANGCHAIN_TRACING_V2=false
|
||||||
LANGCHAIN_API_KEY=
|
LANGCHAIN_API_KEY=
|
||||||
LANGCHAIN_PROJECT=youlbot
|
LANGCHAIN_PROJECT=youlbot
|
||||||
|
|
||||||
# Hybrid Search (Phase 18) — BM25 + Vector (활성화 후 기존 문서 재수집 필요)
|
# ── 음성 인터페이스 (Phase 14) ────────────────────
|
||||||
HYBRID_SEARCH_ENABLED=false
|
WHISPER_MODEL_SIZE=small # tiny | base | small | medium | large
|
||||||
SPARSE_MODEL_ID=Qdrant/bm25
|
TTS_VOICE=Yuna # macOS say 명령어 한국어 음성 (Yuna | Siri 등)
|
||||||
|
|
||||||
# Query Rewriting (Phase 19) — search_documents 호출 시 구어체 쿼리를 검색 최적화 쿼리로 변환
|
# ── 멀티모달 이미지 이해 (Phase 17) ──────────────
|
||||||
QUERY_REWRITE_ENABLED=false
|
VISION_ENABLED=false
|
||||||
|
VISION_MODEL_ID=mlx-community/Qwen2.5-VL-7B-Instruct-4bit
|
||||||
|
VISION_MAX_TOKENS=512
|
||||||
|
|
||||||
# REST API (Phase 22) — Bearer 토큰 인증. 빈 값이면 인증 없음(개발 모드)
|
# ── 스마트 알림 / Telegram push (IDEA-2) ─────────
|
||||||
API_TOKEN=
|
# BotFather에서 봇 생성 후 토큰 입력
|
||||||
|
TELEGRAM_BOT_TOKEN=
|
||||||
|
# user_id → Telegram numeric chat_id 매핑 (JSON 형식)
|
||||||
|
# 각 가족의 Telegram ID는 봇에 /start 전송 후 로그에서 확인
|
||||||
|
TELEGRAM_USER_MAP={"아록": "", "근혜": "", "도율": "", "하율": ""}
|
||||||
|
|||||||
Reference in New Issue
Block a user