Studio RAG trim: remove cross-encoder reranker

The cross-encoder reranker is off by default (enable_rerank=False everywhere)
and adds a second model download plus a candidate-widening pass on every search.
Removing it keeps the core retrieval (parse, chunk, embed, BM25 + dense, RRF,
search_knowledge_base tool) intact while dropping ~375 lines.

- delete core/rag/reranker.py and its test
- drop enable_rerank / reranker_model from the search tool, tools dispatch,
  and the /rag/search route (candidate_k is now just top_k)
- remove the /rag/reranker/precache endpoint and reranker config knobs
- update tool-handler test to the trimmed rag_scope shape

42 RAG tests pass.
This commit is contained in:
Daniel Han 2026-05-31 14:14:52 +00:00
commit b085b37b69
7 changed files with 9 additions and 384 deletions

View file

@ -196,8 +196,6 @@ def test_execute_tool_dispatches_to_search_knowledge_base():
top_k = None,
scope_kb_id = None,
scope_thread_id = None,
enable_rerank = False,
reranker_model = None,
default_top_k = 5,
min_score = 0.0,
**kwargs,
@ -206,7 +204,6 @@ def test_execute_tool_dispatches_to_search_knowledge_base():
called["top_k"] = top_k
called["scope_kb_id"] = scope_kb_id
called["scope_thread_id"] = scope_thread_id
called["enable_rerank"] = enable_rerank
called["default_top_k"] = default_top_k
called["min_score"] = min_score
return "stub-result"
@ -218,7 +215,6 @@ def test_execute_tool_dispatches_to_search_knowledge_base():
tool_context = {
"rag_scope": {
"kb_id": "kb-1",
"enable_rerank": True,
"default_top_k": 3,
"min_score": 0.35,
}
@ -229,7 +225,6 @@ def test_execute_tool_dispatches_to_search_knowledge_base():
assert called["top_k"] == 7
assert called["scope_kb_id"] == "kb-1"
assert called["scope_thread_id"] is None
assert called["enable_rerank"] is True
assert called["default_top_k"] == 3
assert called["min_score"] == 0.35