From 8cd785d1acfd3e67acc2082b9c52996209feb306 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Thu, 19 Mar 2026 22:14:44 +0100 Subject: [PATCH] Update build_library, enrich_library, and embed_library functions in local_rag.py --- backend/local_rag.py | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/backend/local_rag.py b/backend/local_rag.py index 5ffd41a..cd7be08 100644 --- a/backend/local_rag.py +++ b/backend/local_rag.py @@ -1086,7 +1086,8 @@ async def build_library(slug: str): "build", root=stage_dir(slug), out=_collect_library_paths(slug)["corpus"], - source_signature=payload.get("source_signature"), + emit="per-file", + stage_signature=payload.get("corpus_signature"), ) return {"job_id": job_id} @@ -1095,21 +1096,13 @@ async def build_library(slug: str): async def enrich_library(slug: str): data = read_library(slug) payload = library_payload(data) - paths = _collect_library_paths(slug) if not payload["states"].get("has_corpus"): raise HTTPException(status_code=400, detail="Build the corpus before enrichment.") lock = LIB_LOCKS.setdefault(slug, asyncio.Lock()) async with lock: if _has_active_job(slug): raise HTTPException(status_code=409, detail="This library already has an active job.") - job_id = _start_job( - slug, - "enrich", - inp=paths["corpus"], - out=paths["enhanced"], - shadow_out=paths["shadow"], - source_signature=payload.get("source_signature"), - ) + job_id = _start_job(slug, "enrich", stage_signature=payload.get("prepare_signature")) return {"job_id": job_id} @@ -1128,15 +1121,15 @@ async def embed_library(slug: str, req: EmbedLibraryRequest): slug, "embed", raw=paths["corpus"], - enhanced=paths["enhanced"] if payload["states"].get("is_enriched") and paths["enhanced"].exists() else None, - shadow=paths["shadow"] if payload["states"].get("is_enriched") and paths["shadow"].exists() else None, + enhanced=None, + shadow=paths["shadow"] if paths["shadow"].exists() else None, out_dir=paths["indexes"], embed_model=req.embed_model, ollama=req.ollama, target_chars=req.target_chars, overlap_chars=req.overlap_chars, concurrency=req.concurrency, - source_signature=payload.get("source_signature"), + stage_signature=payload.get("prepare_signature"), ) return {"job_id": job_id}