diff --git a/app/api/search.py b/app/api/search.py index bb4563f..e6d7ce0 100644 --- a/app/api/search.py +++ b/app/api/search.py @@ -34,8 +34,11 @@ class SearchResult(BaseModel): def _get_bm25() -> BM25Index: - from app.main import _bm25 - return _bm25 + import app.main as _main + bm25 = getattr(_main, "_bm25", None) + if bm25 is None: + raise RuntimeError("BM25 index not initialised — app.main not loaded") + return bm25 def _get_db_path() -> str: @@ -57,7 +60,7 @@ def search( chunk_id=h.chunk_id, doc_id=h.doc_id, page_number=h.page_number, - text_snippet=h.text[:300], + text_snippet=(h.text or "")[:300], bm25_score=h.score, ) for h in hits