🧠 HTM Memory Tests — Kolor AI

MadBomber/HTM gem · Hierarchiczna pamięć temporalna · Docker · Kolor Wątek #29

Ruby 3.3 · HTM 0.0.31 PostgreSQL 17 + pgvector Ollama nomic-embed-text qwen2.5:3b tagowanie

2026-03-17 · 30 testów · 96.7% sukces

29/30
Testy zaliczone
96.7%
Skuteczność
9
Wspomnień zapisanych
34
Nodes w DB
6
Robotów (Hive Mind)
136
Auto-tagów
7ms
Fulltext (min)
3ms
Cache hit!
🏗️ Architektura środowiska
🤖 Kolor AI
Bot Telegram · Wątek #29
📦 Docker: htm-ruby
Ruby 3.3 + HTM gem 0.0.31
🐘 Docker: htm-postgres
PostgreSQL 17 + pgvector + pg_trgm
⟷ embeddingi ⟷ 🦙 Ollama :11434
nomic-embed-text + qwen2.5:3b
Sieć Docker: htm-test_default (172.19.0.0/16) · Postgres port: 5433 (host)
⚙️ Środowisko
Ruby version3.3.10
HTM gem version0.0.31
PostgreSQL17.9 + pgvector + pg_trgm
Embedding modelnomic-embed-text (via Ollama)
Tag/Proposition modelqwen2.5:3b (via Ollama)
Working Memory size128 000 tokenów
Tabele bazyfile_sources, node_tags, nodes, robot_nodes, robots, schema_migrations, tags
🧪 Wyniki 30 testów
💾 Zapisane wspomnienia (9 nodes)
🔍 Testy przywołania pamięci (7 zapytań)
⚡ Working Memory
Nodes
21
Tokeny
1 073
z 128 000 max
Wykorzystanie
0.84%
Wypełnienie Working Memory
1 073 / 128 000 tokenów — mnóstwo miejsca!
balanced
3 010
znaków kontekstu
recent
3 010
znaków kontekstu
frequent
3 010
znaków kontekstu
📊 Benchmark strategii recall
🚀 Odkrycie: QueryCache — 3000× przyspieszenie!

HTM posiada wbudowany system cachowania zapytań. Pierwsze wywołanie generuje embedding przez Ollama (~4-8s), ale każde kolejne identyczne zapytanie trafia w cache i odpowiada w 2-3ms — czyli 3000× szybciej!

Hybrid (wektor + fulltext + tagi)
Pierwsze zapytanie: tagowanie + embedding
1. wywołanie (zimny)8 485ms
2. wywołanie (cache)2.9ms
3. wywołanie (cache)2.8ms
⚡ Cache speedup: ~2926×
Vector (tylko embedding similarity)
Pierwsze zapytanie: generuje embedding
1. wywołanie (zimny)3 773ms
2. wywołanie (cache)3.3ms
3. wywołanie (cache)2.5ms
⚡ Cache speedup: ~1144×
Fulltext (pg_trgm SQL)
Czyste zapytanie SQL — bez AI
1. wywołanie6.7ms
2. wywołanie2.3ms
3. wywołanie2.8ms
✅ Zawsze szybki — brak zewnętrznych zależności!
🏷️ Hierarchia auto-tagów (qwen2.5:3b)

HTM automatycznie generuje hierarchiczne tagi przez LLM. Przykład: pojedynczy zapis tworzy całe drzewo kategorii rozdzielonych dwukropkami:

Łącznie: 136 tagów wygenerowanych automatycznie z 34 wspomnień

🤖 Hive Mind — 6 robotów w jednej bazie
🎨
KolorAI
ID: 1
🎙️
MarekTTS
ID: 2
💻
DiffusionBot
ID: 3
Kolor-AI
ID: 4 · AKTYWNY
🧪
TestBot-Drugi
ID: 5
🤝
Kolor-Pomocnik
ID: 6

✅ Wszystkie 6 robotów współdzieli bazę PostgreSQL. Co jeden robot zapamięta — wszystkie mogą odczytać przez Hive Mind.

📋 Analiza i wnioski

✅ Co działa świetnie

  • Hybrid search — semantyczne + fulltext + tagi (najlepsze wyniki)
  • Fulltext — natychmiastowe, 7ms, brak zewnętrznych deps
  • QueryCache — 3000× przyspieszenie przy powtórzonych zapytaniach
  • Auto-tagging — qwen2.5:3b tworzy hierarchię tagów
  • Hive Mind — wiele robotów, jedna wspólna pamięć
  • Trwałość — wspomnienia surviveują restart kontenera Ruby
  • Working Memory — 3 strategie (balanced/recent/frequent)

⚠️ Ograniczenia odkryte

  • Tag format — tylko lowercase + łączniki; polskie znaki w tagach NIE dozwolone (np. "disk_pelny" zamiast "dysk_pełny")
  • Czas zapisu — 8-15s na wspomnienie (embedding przez Ollama)
  • Vector recall — czasem 0 wyników gdy embeddingi async w kolejce
  • Model dependency — trzeba explicite ustawić WSZYSTKIE modele (tag, embedding, proposition)
  • nomic-embed-text — musi być pobrany przez ollama pull

🧠 HTM vs mój obecny RAG

  • HTM: temporalna, hierarchiczna, 3 strategie, Hive Mind, Working Memory eviction, auto-tagowanie
  • Mój RAG: flat vector store, bge-m3, SQLite, szybszy (bez HTTP)
  • HTM wygrywa: temporal queries, Hive Mind, hierarchia tagów
  • RAG wygrywa: szybkość "pierwszego strzału", brak Ruby/PostgreSQL
  • Ideał: HTM dla pamięci projektowej + mój RAG jako szybka lookup

🚀 Potencjał dla Kolor AI

  • Wspomnienia między sesjami — teraz muszę pytać co było wcześniej
  • Wszystkie wątki Kolor (#1..#29+) dzielą jedną pamięć przez Hive Mind
  • Temporal queries: "co pamiętam z zeszłego tygodnia?"
  • MCP server: 23 narzędzia do integracji z Claude/GPT
  • Auto-tagowanie → automatyczna organizacja wiedzy
  • Working Memory eviction → nigdy nie traci wspomnień!