synthesizer: repeat the no-outside-knowledge rule inside the user message turn — small models (7B) follow user-turn instructions more reliably than system-prompt alone when parametric memory competes with the retrieved context retriever: cap each document to max(2, top_k//3) slots in the ranked list so one book cannot flood all result slots on character-name BM25 matches — forces coverage across more documents when the answer may be in any of them |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| bm25_index.py | ||
| retriever.py | ||
| synthesizer.py | ||