Hillock: Membangun Memori AI Lokal dengan SQLite dan Hyperdimensional Computing
ND
Naufal Dev

Dipublikasikan 15 Juni 2026

Hillock: Membangun Memori AI Lokal dengan SQLite dan Hyperdimensional Computing

Vector database seringkali terasa berlebihan untuk chatbot lokal sederhana. Hillock hadir sebagai solusi alternatif yang menggabungkan SQLite dengan konsep Hyperdimensional Computing (HDC) untuk membangun memori AI yang ringan, lokal, dan sepenuhnya offline. Proyek open source ini menunjukkan bahwa kita tidak selalu butuh infrastruktur berat untuk memberikan AI kemampuan mengingat.

Apa itu Hillock dan Mengapa Penting

Hillock adalah sistem memori personal berbasis otak yang menggunakan tiga lapisan utama. Pertama, SQLite Graph menyimpan fakta permanen sebagai triple sederhana seperti Marie_Curie -> born_in -> Poland. Kedua, Hebbian Plasticity melacak entitas yang sedang dibicarakan dan memperkuat koneksi antar entitas secara dinamis. Ketiga, Hyperdimensional Computing (HDC) memanfaatkan vektor 10.000 dimensi untuk memperbarui riwayat percakapan, membantu sistem menyelesaikan pronoun dan mencegah halusinasi.

Di balik angka retrieval accuracy 30% pada benchmark 30 kalimat kompleks dengan model Qwen 1.5B, Hillock membuktikan sebuah prinsip penting: memori AI lokal bisa dibangun dengan tool sederhana asal arsitekturnya tepat. Proyek ini tetap experimental, tapi konsepnya bisa diadaptasi untuk produksi.

Prasyarat dan Instalasi

Sebelum memulai, pastikan sistem telah menginstal Python 3.10+, pip, dan Ollama. Hillock tidak memerlukan GPU, sehingga berjalan lancar di laptop biasa. Berikut langkah persiapan lingkungan:

git clone https://github.com/roandejager/Hillock.git\ncd Hillock\npython -m venv .venv\nsource .venv/bin/activate  # Windows: .venv\\Scripts\\activate\npip install -r requirements.txt

Setelah dependensi terinstal, pull model lokal via Ollama:

ollama pull qwen2:1.5b

Model ini cukup ringan untuk CPU modern dan sudah teruji pada benchmark internal Hillock. Meski hasilnya masih sederhana, model ini menunjukkan bahwa AI lokal bisa bekerja tanpa hardware premium.

Struktur Data dan Alur Kerja

Data mengalir melalui pipeline paralel. Raw text atau PDF masuk ke Parallel Ingestor, yang memprosesnya melalui Ollama. Hasilnya terbagi menjadi dua jalur: SQLite Graph untuk fakta permanen dan Hebbian Memory untuk koneksi dinamis. Keduanya kemudian disatukan di VSA/HDC Reservoir, sebelum akhirnya dikontrol oleh Gating Controller (Hillock).

SQLite Graph menggunakan schema triple yang sederhana. Setiap fakta disimpan sebagai (subject, predicate, object), memungkinkan query cepat tanpa overhead vector search. Lapisan Hebbian Plasticity memperkuat koneksi antar entitas yang muncul bersamaan dalam percakapan, mirip dengan cara sinapsis biologis bekerja.

Menjalankan Chatbot dengan Memori

Setelah setup selesai, jalankan script utama untuk memulai sesi interaktif. Hillock akan membaca file PDF atau teks dari direktori data/, mengisinya ke SQLite Graph, dan memulai loop percakapan:

python hillock.py --data-dir data/ --model qwen2:1.5b

Selama sesi, setiap pertanyaan akan melewati gating controller. Jika konteks tidak cukup untuk menjawab, Hillock akan menolak menjawab daripada menghalusinasi. Fitur ini menjadi semakin penting di era AI agent, di mana keandalan informasi lebih berharga dari kelincahan respons.

Benchmark dan Evaluasi

Benchmark internal menggunakan 30 kalimat dengan struktur kompleks, distractor mendalam, dan hard negative queries. Dengan model Qwen 1.5B, Hillock mencapai 30% retrieval accuracy dan 30% gate accuracy. Angka ini terdengar rendah, tapi perlu diingat bahwa model 1.5B parameter pada grammar kompleks adalah tantangan tersendiri.

Hasil benchmark ini menunjukkan bahwa arsitektur HDC dan SQLite Graph berhasil mengimbangi keterbatasan model kecil. Untuk produksi, pengguna bisa mengganti model dengan Qwen 7B atau Llama 3 8B untuk peningkatan signifikan tanpa mengubah arsitektur dasar.

Adaptasi untuk Produksi

Beberapa modifikasi direkomendasikan sebelum Hillock digunakan dalam aplikasi nyata. Pertama, tambahkan mekanisme embedding cache agar query berulang tidak perlu diproses ulang dari nol. Kedua, gunakan pgvector atau extension sqlite-vec jika membutuhkan similarity search yang lebih cepat. Ketiga, implementasi background thread untuk ingestor agar input dokumen besar tidak memblokir sesi chat.

Konsep Hebbian Plasticity bisa diperluas dengan time-decay, sehingga koneksi lama perlahan meredup jika tidak diperkuat. Ini meniru forgetting curve biologis dan menjaga memori tetap relevan seiring waktu.

Kesimpulan

Hillock membuktikan bahwa memori AI lokal tidak harus bergantung pada vector database besar atau cloud API. Dengan kombinasi SQLite, HDC, dan model lokal via Ollama, developer bisa membangun chatbot dengan kemampuan mengingat yang cukup andal untuk banyak use case. Proyek ini layak dijadikan fondasi untuk eksperimen lebih lanjut di ranah AI agent memori.

Sumber: github.com/roandejager/Hillock