ADR-013 — Hybrid RAG (Vector + Graph + Ontology)
| 항목 | 값 |
|---|---|
| Status | Proposed (2026-05-25 — #994 design step) |
| Related Epic | #994 |
| Related ADR | ADR-006 (Ontology L1-L4), ADR-012 (NL Catalog Search) |
한 줄 결정: Vector (Weaviate) + Graph (ArangoDB ontology relations) + Ontology (LinkML semantic layer) 3-축 retrieval. Re-ranker 가 cross-source 결과를 통합 점수화. ADR-012 의 NL Search 와 backbone 공유.
결정
- 3-source retrieval: Vector embedding (semantic) + ArangoDB graph traversal (relational) + Ontology class hierarchy (SHACL constraints).
- Cross-source merge: 각 source 별 top-k 추출 → unified candidate set → Sonnet re-ranker.
- ABAC: 후처리 필터 (ADR-012 패턴 — merge 후 filter).
- Workspace scope: #1018 prerequisite. workspace_id 가 모든 query 에 자동 주입.
- Cache: Vector cache 만 1h TTL. Graph traversal 은 항상 fresh (ontology 변경 빈도 낮음).
비목표
- multi-modal RAG (이미지·코드) 별도. Agent self-iteration 별도.