Files
hyungi_document_server/app/services/search/__init__.py
Hyungi Ahn a4eb71d368 feat(search): Phase 1.1a 모듈 분리 — services/search/ 디렉토리
검색 로직을 services/search/* 모듈로 분리. trigram 도입은 Phase 1.2 인덱스와 함께.

신규:
- services/search/{__init__,retrieval_service,rerank_service,query_analyzer,evidence_service,synthesis_service}.py
- retrieval_service는 search_text/search_vector 이전 (ILIKE 동작 그대로)
- 나머지는 Phase 1.3/2/3 placeholder

이동:
- services/search_fusion.py → services/search/fusion_service.py (R100)

수정:
- api/search.py — thin orchestrator로 축소 (251줄 → 178줄)

동작 변경 없음 — 구조만 분리. 회귀 검증 후 Phase 1.2 진입.
2026-04-07 13:46:04 +09:00

12 lines
511 B
Python

"""Search service 모듈 — Phase 1.1 분리.
검색 파이프라인의 각 단계를 모듈로 분리해 디버깅/테스트/병목 추적을 용이하게 한다.
- retrieval_service: text/vector/trigram 후보 수집
- fusion_service: RRF / weighted-sum / boost (Phase 0.5에서 이동)
- rerank_service: bge-reranker-v2-m3 통합 (Phase 1.3)
- query_analyzer: 자연어 쿼리 분석 (Phase 2)
- evidence_service: evidence extraction (Phase 3)
- synthesis_service: grounded answer synthesis (Phase 3)
"""