Saat membangun aplikasi AI berbasis Ollama, salah satu tantangan terbesar adalah menyimpan pengetahuan yang terus bertambah. Misalnya hasil scraping berita, catatan pribadi, dokumentasi proyek, atau riwayat percakapan.
Di sinilah Qdrant menjadi sangat berguna.
Qdrant adalah vector database open source yang dirancang untuk menyimpan embedding dan melakukan pencarian berdasarkan kemiripan makna. Teknologi ini banyak digunakan pada sistem Retrieval-Augmented Generation (RAG), AI Agent, chatbot pintar, hingga sistem pencarian berbasis AI.
Artikel ini akan membahas cara menggunakan Qdrant dari nol, mulai dari instalasi, menyimpan data, melakukan pencarian, hingga backup dan restore.
Apa Itu Qdrant?
Qdrant adalah vector database yang digunakan untuk menyimpan data dalam bentuk vector embedding.
Berbeda dengan database biasa yang mencari berdasarkan kata atau ID, Qdrant mencari berdasarkan makna.
Contoh sederhana:
Anda memiliki berita:
Pemerintah menaikkan anggaran pendidikan tahun depan.
Kemudian ada tweet:
Dana pendidikan semakin besar setiap tahun.
Walaupun kata-katanya berbeda, Qdrant dapat memahami bahwa kedua kalimat tersebut membahas topik yang mirip.
Karena itulah Qdrant banyak digunakan sebagai knowledge base untuk AI.
Kapan Sebaiknya Menggunakan Qdrant?
Qdrant cocok digunakan jika Anda ingin menyimpan:
- Hasil scraping berita.
- Artikel.
- Dokumentasi.
- Catatan pribadi.
- Riwayat percakapan.
- Memory AI.
- Data untuk chatbot.
- Data untuk sistem RAG.
Jika hanya menyimpan data biasa seperti user, password, atau konfigurasi aplikasi, database seperti PostgreSQL atau SQLite masih lebih cocok.
Instalasi Qdrant dengan Docker
Cara paling mudah menjalankan Qdrant adalah menggunakan Docker.
Jalankan perintah berikut:
docker run -d \
--name qdrant \
-p 6333:6333 \
-p 6334:6334 \
-v $(pwd)/qdrant_storage:/qdrant/storage \
qdrant/qdrant
Penjelasan singkat:
6333 = REST API
6334 = gRPC API
qdrant_storage = lokasi penyimpanan data
Setelah container berjalan, buka:
http://localhost:6333/dashboard
Anda akan melihat dashboard Qdrant.
Instalasi Client Node.js
Jika menggunakan JavaScript atau Node.js:
npm install @qdrant/js-client-rest
Kemudian buat koneksi:
import { QdrantClient } from "@qdrant/js-client-rest";
const client = new QdrantClient({
url: "http://localhost:6333"
});
Membuat Collection
Collection di Qdrant mirip seperti tabel pada database relasional.
Contoh membuat collection bernama news:
await client.createCollection("news", {
vectors: {
size: 384,
distance: "Cosine"
}
});
Penjelasan:
size = ukuran vector embedding
distance = metode perhitungan kemiripan
Untuk model embedding 384 dimensi, gunakan:
384
Untuk model lain sesuaikan jumlah dimensinya.
Menyimpan Data ke Qdrant
Misalnya Anda sudah memiliki berita dan embedding.
Contoh:
await client.upsert("news", {
points: [
{
id: 1,
vector: embedding,
payload: {
title: "Anggaran Pendidikan Naik",
category: "politik",
date: "2026-06-16"
}
}
]
});
Struktur data Qdrant terdiri dari:
ID
+
Vector
+
Payload
Payload adalah metadata yang akan membantu saat melakukan pencarian.
Melakukan Pencarian
Misalnya ada tweet:
Pemerintah makin boros anggaran.
Pertama ubah tweet menjadi embedding.
Kemudian lakukan pencarian:
const results = await client.search("news", {
vector: tweetEmbedding,
limit: 5
});
Qdrant akan mengembalikan lima data yang paling relevan secara makna.
Contoh hasil:
Anggaran Pendidikan Naik
APBN 2026 Bertambah
Audit Belanja Negara
Data inilah yang nantinya dikirim ke Ollama sebagai konteks tambahan.
Menggunakan Qdrant Bersama Ollama
Salah satu kombinasi paling populer saat ini adalah:
Scraper
↓
Qdrant
↓
Ollama
↓
Jawaban AI
Contoh alur:
Scraping berita
↓
Generate embedding
↓
Simpan ke Qdrant
↓
Cari berita relevan
↓
Kirim ke Ollama
↓
Generate jawaban
Dengan cara ini Ollama dapat menjawab menggunakan informasi terbaru tanpa perlu fine-tuning.
Cara Backup Qdrant
Backup sangat penting karena knowledge base biasanya lebih berharga daripada model AI itu sendiri.
Ada beberapa metode yang bisa digunakan.
Metode 1: Backup Storage Langsung
Jika menggunakan Docker volume:
-v /data/qdrant:/qdrant/storage
Backup cukup menggunakan:
tar -czf qdrant-backup.tar.gz /data/qdrant
File backup akan berisi seluruh data Qdrant.
Metode 2: Menggunakan Snapshot
Qdrant memiliki fitur snapshot bawaan.
Misalnya ingin membackup collection news.
Jalankan:
curl -X POST \
http://localhost:6333/collections/news/snapshots
Hasilnya:
{
"result": {
"name": "news.snapshot"
}
}
Snapshot akan tersimpan di storage Qdrant.
Keuntungan metode ini:
- Tidak perlu mematikan server.
- Aman untuk produksi.
- Bisa backup per collection.
Backup Otomatis dengan Cron
Misalnya setiap malam pukul 02:00.
Tambahkan ke crontab:
0 2 * * * /opt/scripts/qdrant-backup.sh
Isi script:
#!/bin/bash
curl -X POST \
http://localhost:6333/collections/news/snapshots
curl -X POST \
http://localhost:6333/collections/memory/snapshots
Backup dapat dikirim ke:
- NAS
- Server cadangan
- MinIO
- Amazon S3
- Google Drive
Cara Restore Qdrant
Restore dapat dilakukan menggunakan snapshot yang sudah dibuat sebelumnya.
Pertama lihat daftar snapshot:
curl http://localhost:6333/collections/news/snapshots
Kemudian upload snapshot kembali:
curl -X PUT \
"http://localhost:6333/collections/news/snapshots/upload?priority=snapshot" \
-F '[email protected]'
Setelah proses selesai, collection akan kembali seperti kondisi saat snapshot dibuat.
Strategi Backup yang Direkomendasikan
Untuk proyek AI pribadi, saya biasanya menggunakan struktur berikut:
project/
├── qdrant/
├── sqlite/
├── raw_news/
└── backups/
Penjelasan:
qdrant
Berisi vector database.
sqlite
Berisi konfigurasi aplikasi dan data operasional.
raw_news
Berisi artikel hasil scraping sebelum diproses.
backups
Berisi snapshot dan arsip backup.
Jangan Hanya Menyimpan Embedding
Kesalahan yang sering terjadi adalah hanya menyimpan embedding.
Padahal model embedding bisa berubah sewaktu-waktu.
Lebih aman menyimpan:
Artikel Asli
+
Ringkasan
+
Embedding
Jika suatu hari ingin menggunakan model embedding baru, Anda cukup membuat ulang embedding dari data asli tanpa kehilangan informasi.
Kesimpulan
Qdrant adalah salah satu vector database open source terbaik untuk membangun knowledge base AI. Instalasinya sederhana, performanya cepat, dan sangat cocok digunakan bersama Ollama.
Untuk penggunaan sehari-hari, alur yang umum digunakan adalah:
Scraping Berita
↓
Generate Embedding
↓
Simpan ke Qdrant
↓
Cari Informasi Relevan
↓
Kirim ke Ollama
↓
Generate Jawaban
Agar data tetap aman, gunakan fitur snapshot bawaan Qdrant atau lakukan backup langsung pada storage. Dengan kombinasi backup rutin dan penyimpanan data mentah, Anda dapat membangun knowledge base AI yang terus berkembang tanpa khawatir kehilangan data penting.
