86370f6c1e
- FastEmbedSparse(Qdrant/bm25) 기반 sparse 임베딩 추가 (fastembed 패키지) - IngestionService: HYBRID_SEARCH_ENABLED 시 dense + sparse 동시 저장 (RetrievalMode.HYBRID) - _ensure_collection_schema(): sparse vector 미설정 컬렉션 자동 삭제·재생성 - RetrieverService: hybrid 스토어 + dense 폴백 구조, Qdrant 내장 RRF로 결과 통합 - container.py: sparse_embeddings Singleton 프로바이더, ingestion/retriever 양쪽 주입 - .env.example: HYBRID_SEARCH_ENABLED, SPARSE_MODEL_ID 항목 추가 활성화: .env에 HYBRID_SEARCH_ENABLED=true 설정 후 기존 문서 재수집 필요 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
668 B
Plaintext
25 lines
668 B
Plaintext
mlx-lm>=0.19.0
|
|
dependency-injector>=4.41.0
|
|
PyMySQL>=1.1.0
|
|
pydantic-settings>=2.0.0
|
|
# Phase 1 — LangChain BaseChatModel
|
|
langchain-core>=0.3.0
|
|
# Phase 2 — RAG pipeline (Qdrant, embeddings, document loading)
|
|
langchain-community>=0.3.0
|
|
langchain-huggingface>=0.1.0
|
|
langchain-text-splitters>=0.3.0
|
|
langchain-qdrant>=0.2.0
|
|
sentence-transformers>=3.0.0
|
|
qdrant-client>=1.9.0
|
|
pdfplumber>=0.11.0
|
|
# Phase 18 — Hybrid Search (BM25 sparse vectors)
|
|
fastembed>=0.3.0
|
|
# Phase 3 — Agent orchestration
|
|
langgraph>=1.0.0
|
|
# Phase 4 — Web UI
|
|
gradio>=4.0.0
|
|
# Phase 6 — 웹 검색 Tool
|
|
duckduckgo-search>=6.0.0
|
|
# Phase 14 — 음성 인터페이스 (STT)
|
|
openai-whisper>=20231117
|