AutoDataLab2.0 / memory /__init__.py
uchihamadara1816's picture
Upload 172 files
d02bacd verified
raw
history blame contribute delete
776 Bytes
"""Organizational memory (RAG pillar) for AutoDataLab Solo.
Exposes a module-level retriever keyed at ``memory/`` so every specialist
and the grader can share the same corpus index without passing it through
every expert signature.
"""
from __future__ import annotations
from pathlib import Path
from .retriever import MemoryHit, Retriever
_CORPUS_DIR = Path(__file__).resolve().parent
_retriever: Retriever | None = None
def get_retriever() -> Retriever:
"""Return the process-wide retriever, building it lazily on first use."""
global _retriever
if _retriever is None:
_retriever = Retriever(_CORPUS_DIR)
return _retriever
def corpus_dir() -> Path:
return _CORPUS_DIR
__all__ = ["MemoryHit", "Retriever", "get_retriever", "corpus_dir"]