Cognee: Bangun Memory dan Knowledge Graph untuk AI Agent-mu

# Cognee: Bangun Memory dan Knowledge Graph untuk AI Agent-mu Halo temen-temen, di tutorial kali ini aku mau ngajak kalian kenalan sama salah satu tools yang menurutku bakal makin penting seiring mak...

By Ruby Abdullah · · tutorial
cogneeknowledge-graphai-agentsragpython

Cognee: Bangun Memory dan Knowledge Graph untuk AI Agent-mu

Halo temen-temen, di tutorial kali ini aku mau ngajak kalian kenalan sama salah satu tools yang menurutku bakal makin penting seiring makin banyaknya orang bikin AI agent, namanya Cognee. Kalau kalian pernah bikin chatbot atau agent pakai LLM, pasti pernah ngerasain masalah klasik: modelnya pinter ngobrol, tapi lupaan. Tiap sesi baru mulai dari nol, gak inget percakapan sebelumnya, gak inget dokumen yang udah kita kasih. Nah, biasanya kita solve ini pakai RAG (Retrieval Augmented Generation) dengan vector database. Tapi vector search doang itu punya keterbatasan: dia cuma nyari yang mirip secara semantik, tapi gak paham hubungan antar informasi.

Di sinilah Cognee masuk. Cognee itu framework open-source yang ngubah dokumen dan percakapan kamu jadi kombinasi knowledge graph plus vector store yang bisa kamu query. Jadi kamu gak cuma dapet potongan teks yang mirip, tapi juga dapet struktur relasi antar entitas. Bayangin aja kayak kamu punya otak kedua buat agent kamu yang bisa nginget fakta sekaligus paham gimana fakta-fakta itu saling terhubung.

Yang bikin aku suka, Cognee ini pakai pendekatan yang mereka sebut ECL: Extract, Cognify, Load. Kamu extract data dari berbagai sumber, cognify (proses jadi graph plus embeddings), terus load ke storage yang bisa di-query. Semuanya jalan di atas asyncio, jadi memang dari sananya udah dirancang buat async Python. Di tutorial ini aku bakal bahas dari instalasi, konfigurasi LLM provider, loop inti add, cognify, search, sampai konsep data points dan ontology, cara pakai buat RAG, dan visualisasi graph-nya. Yuk kita mulai.

Introduction: Apa Itu Cognee dan Kenapa Kamu Perlu

Sebelum masuk kode, aku mau jelasin dulu konsep dasarnya biar kalian gak bingung pas praktek. Cognee itu intinya adalah memory engine buat AI agent. Tapi beda sama sekadar nyimpen chat history di array, Cognee membangun representasi terstruktur dari pengetahuan kamu.

Ada tiga komponen mental yang perlu kamu pahami. Pertama, ada vector store, tempat teks kamu disimpen sebagai embeddings buat pencarian semantik. Kedua, ada graph store, tempat entitas dan relasi antar entitas disimpen sebagai node dan edge. Ketiga, ada relational store, buat metadata dan tracking dokumen. Cognee ngatur ketiga-tiganya secara otomatis buat kamu, jadi kamu gak perlu pusing setup Neo4j, Qdrant, atau Postgres secara manual di awal. Default-nya semua pakai storage lokal yang embedded.

Kenapa graph itu penting? Aku kasih contoh sederhana. Misal kamu ingest dokumen tentang perusahaan. Vector search bisa nemu paragraf yang nyebut "founder" kalau kamu tanya soal pendiri. Tapi kalau kamu tanya "siapa yang kerja di perusahaan yang didirikan oleh si A", vector search bakal kesulitan karena itu butuh nyambungin beberapa fakta. Graph bisa jawab pertanyaan kayak gitu karena relasinya eksplisit tersimpan sebagai edge. Kombinasi keduanya inilah yang bikin retrieval Cognee lebih powerful daripada RAG biasa.

Cognee cocok banget buat kasus kayak agent yang butuh long-term memory, sistem RAG yang butuh reasoning multi-hop, knowledge base internal perusahaan, atau asisten personal yang inget preferensi kamu lintas waktu. Oke, sekarang kita install dulu.

Instalasi

Instalasi Cognee gampang banget, cukup satu perintah pip. Aku saranin kalian bikin virtual environment dulu biar rapi.

python -m venv venv

source venv/bin/activate # di Windows: venv\Scripts\activate

pip install cognee

Cognee butuh Python 3.10 ke atas ya temen-temen, jadi pastiin versi Python kalian udah cukup baru. Kalian bisa cek dengan:

python --version

Setelah keinstall, langkah paling penting berikutnya adalah konfigurasi LLM provider. Cognee butuh LLM buat dua hal utama: pertama buat extract entitas dan relasi pas proses cognify, kedua buat generate embeddings (kalau kamu pakai embedding dari provider yang sama). Default-nya Cognee pakai OpenAI, jadi cara paling cepet adalah set API key lewat environment variable.

export LLMAPIKEY="sk-your-openai-api-key"

Kalau kamu mau lebih eksplisit atau mau pakai provider lain, Cognee nyediain modul config yang bisa kamu panggil dari Python. Aku lebih suka cara ini karena lebih jelas dan gampang di-track di codebase.

import cognee

Konfigurasi LLM provider

cognee.config.setllmprovider("openai")

cognee.config.setllmmodel("gpt-4o-mini")

cognee.config.setllmapikey("sk-your-openai-api-key")

Artikel Terkait

Tutorial Lengkap Pinecone: Vector Database untuk AI dan Semantic Search

Tutorial Lengkap Pinecone: Vector Database untuk AI dan Semantic Search Pinecone adalah managed vector database yang dir...

Tutorial LangChain: Framework Paling Populer untuk Membangun Aplikasi LLM

Tutorial LangChain: Framework Paling Populer untuk Membangun Aplikasi LLM LangChain adalah framework open-source yang di...

Tutorial ColBERT & RAGatouille: Late-Interaction Retrieval untuk RAG

ColBERT & RAGatouille: Retrieval Late-Interaction untuk RAG yang Lebih Baik Sebagian besar sistem RAG mengandalkan dense...

Firecrawl: Web Scraping API untuk Aplikasi AI dan LLM

Firecrawl: Web Scraping API untuk Aplikasi AI dan LLM Firecrawl adalah managed web scraping API yang dirancang khusus un...