Update build_library, enrich_library, and embed_library functions in local_rag.py

This commit is contained in:
2026-03-19 22:14:44 +01:00
parent a95b4c8226
commit 8cd785d1ac

View File

@@ -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}