Untuk memori agen lokal dan terbuka, pengambilan adalah defaultnya: pipeline RAG, pencarian agen, penyimpanan penyematan, dan traversal grafik adalah hal pertama yang dijangkau sebagian besar pembuat. Sebuah [survei tahun 2026](https://arxiv.org/abs/2602.19320) menyimpulkan bahwa desain memori, bukan kemampuan model, kini menjadi faktor pembatas bagi agen yang berumur panjang.

Pengambilan berfungsi dengan baik untuk pengkodean dan eksplorasi, namun rusak saat agen menangani keadaan yang sedang berlangsung. Proyek-proyek besar ([Zep](https://www.getzep.com/), [Mem0](https://mem0.ai/), [Letta](https://www.letta.com/), [LangMem](https://langchain-ai.github.io/langmem/)) menambahkan resolusi entitas, persistensi, dan struktur grafik, namun konvergensi penuh ke dalam desain terstruktur menghadapi hambatan yang sulit untuk diperbaiki: kueri pertama skema, identitas deterministik, hanya tambahan asal, dan pengendalian yang mengutamakan lokal.

## Mengapa pengambilan mendominasi

Pengambilan sesuai dengan kasus penggunaan yang menempatkan agen pada peta: pengkodean. Basis kode bersifat eksploratif, Anda sering kali tidak tahu di mana letaknya, dan Anda ingin "di mana kita menangani X?" daripada "mencantumkan setiap fungsi dengan asal". Pencarian semantik dan traversal ad hoc sangat cocok untuk itu.

Kebanyakan orang membentuk intuisi mereka tentang memori agen dari pengkodean, di mana pengambilan sudah cukup. Masalahnya adalah menggeneralisasi hal itu. Untuk status operasional seperti tugas, kontak, transaksi, dan komitmen, Anda memerlukan jawaban yang sama minggu depan, rangkaian lengkap, dan jalur audit.

Pengambilan juga murah untuk ditambahkan. Anda dapat menyematkan dokumen Anda, menyambungkan penyimpanan vektor, dan memiliki memori yang berfungsi dalam satu sore, tanpa desain skema, tanpa resolusi entitas, dan tanpa pelacakan asal. Ini merupakan keuntungan nyata, bukan sekedar kelembaman.

## Saat pengambilan terhenti

Istirahat muncul ketika Anda bergantung pada ingatan agen untuk kebenaran.

**Jawaban yang tidak konsisten.** Menanyakan "daftar semua tugas untuk proyek X" akan menghasilkan tujuh hasil pada satu hari dan empat hasil pada hari berikutnya. Pengambilan kesimpulan ulang setiap saat. [Penelitian mengonfirmasi](https://arxiv.org/abs/2512.12818) bahwa agen menggabungkan informasi di seluruh sesi dan menghasilkan jawaban yang tidak konsisten untuk sementara seiring bertambahnya ingatan.

**Penarikan kembali tidak lengkap.** Sistem RAG dengan penarikan kembali di bawah 80% menunjukkan [tingkat halusinasi sebesar 34%, dibandingkan dengan 20% untuk sistem dengan ingatan di atas 90%](https://www.ijmsrt.com/storages/download-paper/IJMSRT25SEP018). Pengambilan berbasis penyematan membuang struktur temporal dan relasional, dan semakin banyak entitas yang Anda miliki, semakin buruk perolehannya.

**Tidak ada asal usulnya.** Saat Anda bertanya "dari mana nomor ini berasal?" pengambilan memberi Anda kesimpulan jawaban dari potongan apa pun yang muncul. Tidak ada garis keturunan dari jawaban kembali ke catatan sumber.

**Penulisan yang tidak dapat dipulihkan.** Saat agen menimpa kontak atau menggabungkan tugas, status sebelumnya akan hilang. Tidak ada versi dan tidak ada rollback.

**Penyimpangan lintas alat.** Tugas yang dibuat di ChatGPT tidak dapat dikueri dengan andal di Kursor. Memori penyedia [sangat tidak konsisten](https://www.datastudios.org/post/can-chatgpt-remember-previous-conversations-memory-behavior-session-limits-and-persistence), dan penyiapan pengambilan terbuka juga tidak bersifat lintas-alat secara default.

## Apa yang disediakan oleh negara terstruktur

Status terstruktur berarti penyimpanan dengan entitas yang diketik, ID stabil, hubungan, dan garis waktu. Kueri yang sama mengembalikan hasil yang sama setiap saat, dan Anda mendapatkan asal dan pengembalian.

| Butuh | Toko terstruktur | Pengambilan |
|------|------------------|-----------|
| Set lengkap ("semua tugas di proyek X") | Ya, berdasarkan skema dan hubungan | Sebagian atau disimpulkan |
| Jawaban yang sama minggu depan | Ya | Tidak |
| Telusuri ke sumber | Ya, rantai asal | Tidak |
| Pulihkan dari penulisan yang buruk | Ya, jika hanya tambahan | Biasanya tidak |
| Konsistensi lintas alat | Ya, jika lintas platform | Hanya jika semua alat berbagi backend yang sama |
| Jelajahi yang tidak diketahui | Mungkin tapi bukan kekuatannya | Ya, di sinilah keunggulan pengambilan |
| Ringkasan satu kali | Berlebihan | Ya |

Penyimpanan terstruktur dapat berbentuk grafik, dan yang saya buat, [Neotoma](https://neotoma.io), adalah: lapisan memori lokal yang kompatibel dengan MCP yang memberikan agen satu sumber kebenaran untuk entitas, hubungan, dan garis keturunan. Yang membedakannya dari "penyiapan grafik" yang umum dalam pengambilan adalah persistensi, ID kanonik, dan asal. Saya telah menulis lebih banyak tentang [mengapa memori agen memerlukan lapisan kebenaran](/posts/truth-layer-agent-memory) di tempat lain.

## Dimana bidang tersebut bergerak

Proyek-proyek besar menyatu menuju keadaan terstruktur dari sisi pengambilan.

**[Zep](https://www.getzep.com/)/[Graphiti](https://www.getzep.com/)** membuat [grafik pengetahuan temporal](https://arxiv.org/abs/2501.13956) yang mencapai peningkatan akurasi 18,5% dibandingkan MemGPT dan pengurangan latensi 90%, serta mengirimkan server MCP. Ini adalah keadaan yang paling dekat dengan keadaan terstruktur dalam ekosistem saat ini.

**Mem0** menggunakan [pipa ekstraksi dan konsolidasi dua fase](https://mem0.ai/research) yang melaporkan akurasi 26% lebih tinggi dibandingkan memori OpenAI, dengan varian grafik untuk hubungan entitas. Ini masih merupakan pengambilan pertama, dan lapisan terstruktur bersifat aditif.

**[Letta](https://www.letta.com/)** (sebelumnya [MemGPT](https://docs.letta.com/guides/legacy/memgpt-agents-legacy)) [bertahan di semua status dalam database](https://docs.letta.com/guides/agents/context-engineering) dengan blok memori yang dapat diedit. Ini adalah "keadaan terstruktur" yang paling eksplisit dari proyek asal pengambilan.

**[LangMem](https://langchain-ai.github.io/langmem/)/[LangGraph](https://langchain-ai.github.io/langgraph/)** menawarkan [SDK memori persisten](https://blog.langchain.com/langmem-sdk-launch/) dengan tipe semantik, episodik, dan prosedural serta konsolidasi memori. Lapisan persistensi memang nyata, tetapi pola akses utamanya masih menyematkan penelusuran.

**[Hindsight](https://arxiv.org/abs/2512.12818)** ([penelitian tahun 2025](https://arxiv.org/abs/2512.12818)) mengatur memori ke dalam empat jaringan logis dan mencapai akurasi 83-91% pada tolok ukur cakrawala panjang. Ini menunjukkan arahnya: memori terstruktur dengan jaringan entitas eksplisit mengungguli pengambilan datar.

## Apakah sistem pengambilan dapat menyatu seluruhnya?

Beberapa hal menyatu secara alami, namun ada pula yang secara struktural sulit untuk diperbaiki.

**Apa yang sudah konvergen.** Ekstraksi entitas dan struktur grafik nyata di Zep dan [Mem0g](https://mem0.ai/). Persistensi basis data nyata di Letta dan LangGraph. Pelacakan temporal adalah nyata di Graphiti. Hal ini menutup kesenjangan yang ada.

**Kesamaan-pertama versus skema-pertama.** Pola akses default pengambilan adalah "temukan hal serupa". Default penyimpanan terstruktur adalah "kueri berdasarkan jenis, ID, hubungan, atau waktu". Membuat skema sistem pengambilan terlebih dahulu berarti mengubah permukaan API dan ekspektasi pengguna, bukan hanya menambahkan fitur.

**Identitas implisit versus eksplisit.** Pengambilan memperlakukan dua bagian sebagai entitas yang sama jika penyematannya berdekatan. Status terstruktur memperlakukan dua rekaman sebagai entitas yang sama jika keduanya berbagi ID kanonik. Memperbaiki identitas deterministik berarti mengubah setiap jalur penyerapan.

**Upsert versus append-only.** Sistem pengambilan biasanya menimpa, sedangkan penyimpanan append-only mempertahankan riwayat. Letta menggunakan blok memori yang bisa diubah, dan Zep melacak evolusi temporal, yang lebih dekat. Kebanyakan sistem pengambilan tidak memiliki konsep sejarah penulisan.

**Asal melalui konsolidasi.** Saat Mem0 menggabungkan fakta atau LangMem menggabungkan ingatan terkait, asal dari sumber aslinya biasanya hilang. Asal yang bertahan dari penggabungan memerlukan model penyimpanan untuk mendukungnya sejak awal.

**Determinisme.** Pengambilan melibatkan pemeringkatan, dan hasil bervariasi dari satu proses ke proses lainnya. Kueri terstruktur bersifat deterministik: kueri yang sama memberikan hasil yang sama. Menghapus fungsi peringkat akan melemahkan manfaat pengambilan. Ini adalah kontrak kueri yang pada dasarnya berbeda.

**Kontrol yang mengutamakan lokal.** Membuat sistem benar-benar lokal, tanpa ketergantungan cloud dan tanpa telemetri, bertentangan dengan model bisnis sebagian besar perusahaan memori. Ini bukanlah hambatan teknis; ini adalah masalah insentif struktural.

Sistem pengambilan bisa menjadi bagian dari penyimpanan terstruktur, namun tahap terakhir memerlukan kueri yang mengutamakan skema, identitas deterministik, sumber hanya tambahan, hasil deterministik, dan default lokal yang mengutamakan. Pilihan-pilihan tersebut bertentangan dengan arsitektur yang mengutamakan pengambilan.

## Pengambilan apa yang masih lebih baik

**Eksplorasi.** Saat Anda ingin menemukan sesuatu di catatan Anda tentang apartemen Barcelona, ​​Anda tidak mengetahui skema atau jenis entitasnya. Pengambilan menampilkan bit yang relevan tanpa pemodelan dimuka.

**Ringkasan.** Saat Anda bertanya apa yang Anda putuskan dengan kontraktor, pengambilan dapat mencari, mengekstrak, dan meringkas dalam satu sesi. Anda tidak memerlukan jawaban itu untuk bertahan atau sama persis di lain waktu.

**Traversal ad hoc.** ​​Saat Anda bertanya di mana webhook Stripe ditangani, tata letaknya bervariasi di seluruh basis kode dan dokumen. Pengambilan beradaptasi tanpa grafik terpadu.

**Biaya awal yang rendah.** Anda dapat memiliki memori kerja dalam satu sore. Untuk apa pun yang tidak memerlukan kelengkapan, konsistensi, atau asal, pengambilan sudah cukup dan lebih murah.

## Kesenjangan dalam keadaan terstruktur dan cara Neotoma mengatasinya

**Overhead skema.** Neotoma menggunakan registri skema yang berkembang tempat ekstraksi berbantuan LLM mengusulkan jenis dan hubungan selama penyerapan. Hal ini menurunkan biaya dimuka namun tidak menghilangkannya. Dalam praktiknya, agen meninjau dan mengoreksi hasil ekstraksi seiring waktu jika ditemukan ketidakkonsistenan.

**Kompleksitas penyerapan.** Neotoma menghitung ID kanonis berbasis hash dari mengidentifikasi properti, sehingga entitas yang sama mendapatkan ID yang sama, apa pun sumbernya. Hal ini lebih dapat diprediksi dibandingkan kesamaan berbasis penyematan, namun bergantung pada kualitas ekstraksi: hash "Mark" dan "Mark Hendrickson" berbeda hingga Anda menggabungkannya.

**Awal dingin.** Neotoma mendukung penyerapan jalur ganda: Anda dapat mengunggah file untuk ekstraksi batch atau mengakumulasi status secara bertahap melalui percakapan agen. Ini tidak instan, namun lebih cepat daripada menunggu percakapan yang cukup untuk membuat grafik yang berguna.

**Biaya hanya penambahan.** Penyimpanan bertambah seiring dengan setiap koreksi, yang memungkinkan pengembalian dan asal. Pada skala pribadi dan operasional, hal ini dapat dikelola, namun ini merupakan trade-off yang nyata: pertanyaan untuk menyelesaikan keadaan saat ini lebih kompleks.

**Bukan pengganti pengambilan.** Neotoma menyediakan pengambilan struktural berdasarkan jenis, ID, hubungan, rentang waktu, dan lingkungan grafik, serta mengharapkan alat pengambilan seperti penelusuran agen dan penelusuran penyematan untuk menangani eksplorasi. Itu adalah pelengkap, bukan pengganti.

## Mengapa saya membangun Neotoma

Saya mencapai batas pengambilan dalam praktik. Tugas, kontak, dan transaksi memerlukan ID kanonis, silsilah, dan akses lintas alat. Pilihan desain merespons langsung hambatan konvergensi yang dijelaskan di atas.

**Skema-pertama.** Kueri didasarkan pada jenis entitas, ID, hubungan, atau rentang waktu. Tidak ada kesamaan penyematan di jalur kueri, dan hasilnya bersifat deterministik.

**Identitas berbasis hash.** Entitas yang sama mendapatkan ID yang sama terlepas dari sumber atau sesi mana yang memperkenalkannya.

**Hanya tambahan.** Setiap fakta menelusuri sumbernya. Koreksi membuat catatan baru, dan rollback dapat dilakukan.

**Alat silang melalui MCP.** Satu lapisan memori dapat diakses dari klien MCP mana pun: Cursor, ChatGPT, Claude, atau Claude Code. Data yang sama dan ID yang sama tersedia di mana saja.

**Yang mengutamakan lokal.** Semua data ada di SQLite dan file lokal. Tidak ada ketergantungan cloud dan tidak ada telemetri. Anda dapat memverifikasi semua yang dilakukan sistem.

[Neotoma](https://neotoma.io) masih awal. Ini adalah [rilis pengembang](/posts/neotoma-developer-release): khusus lokal, mengutamakan CLI, dengan resolusi entitas heuristik, evolusi skema manual, dan tanpa UI web. Apa yang disediakan adalah kontrak, dan argumennya adalah bahwa kontrak ini diperlukan untuk agen yang menangani keadaan yang sedang berlangsung, dan pengambilan saja tidak dapat menyediakannya.

Bidang ini menyatu pada memori terstruktur. Pertanyaannya adalah siapa yang membangun lapisan yang Anda percayai dengan data Anda dan jaminan apa yang diberikannya. Saya ingin lapisan itu terstruktur sejak awal, bukan dibaut setelahnya. Lokal-pertama, terbuka, dapat diperiksa, dan di bawah kendali pengguna.