38 lines
1.3 KiB
Org Mode
38 lines
1.3 KiB
Org Mode
:PROPERTIES:
|
||
:ID: dac32a5d-f8f9-4973-8135-771da4afe7c9
|
||
:END:
|
||
#+title: Daneel - RAG
|
||
|
||
* QMD Memory Backend
|
||
|
||
** Problém
|
||
=memory_search= vracel prázdné výsledky i když QMD index byl správně naplněn.
|
||
|
||
Root cause: =qmd query= (defaultní mód) posílá cmake/node-llama-cpp
|
||
build output na *stdout* místo stderr. Bridge parsuje stdout jako JSON —
|
||
první =[= narazí na =[node-llama-cpp]=, JSON.parse selže → výsledek =[]=.
|
||
|
||
** Řešení
|
||
Přepnout =searchMode= z =query= na =search= v openclaw.json.
|
||
Mód =search= = BM25+vector bez LLM query expansion.
|
||
Žádné cmake, žádné extra modely, rychlejší.
|
||
|
||
#+begin_src json
|
||
{ "memory": { "backend": "qmd", "qmd": { "searchMode": "search" } } }
|
||
#+end_src
|
||
|
||
** Aktuální stav
|
||
- 34 souborů indexováno, 92 vektorů
|
||
- Embedding model: embeddinggemma-300M (314 MB, lokální, CPU)
|
||
- =memory_search= funguje, score 0.8–0.9
|
||
- Pravidlo: dotazy vždy anglicky (lepší recall)
|
||
- Bug nenahlášen upstream
|
||
|
||
** RAG analýza
|
||
Workspace soubory celkem: ~5 200 tokenů = *2,6 % context okna* (200K).
|
||
RAG teď nedává smysl — úspora příliš malá, riziko vynechání pravidel.
|
||
=memory_search= (QMD) = fakticky RAG pro cold storage (30+ daily logů).
|
||
|
||
Přehodnotit až overhead > 15 % (~30K tokenů).
|
||
Při aktivním pruning to v dohledné době nenastane.
|