Cara Membuat Chatbot RAG dengan Gemini API & Python: Tutorial Lengkap Knowledge Base AI untuk Pemula
Cara Membuat Chatbot RAG dengan Gemini API: Tutorial Lengkap Python untuk Pemula
Pada artikel ini kami akan membagikan cara membuat chatbot RAG (Retrieval-Augmented Generation) sederhana menggunakan Python dan API Gemini. Knowledge base atau sumber pengetahuan yang kamu miliki nantinya akan diproses menggunakan bantuan API Key dari Gemini. Hasilnya, chatbot kamu bisa menjawab pertanyaan berdasarkan dokumen yang kamu berikan sendiri.
Apa Itu RAG dan Bagaimana Cara Kerjanya?
RAG adalah singkatan dari Retrieval-Augmented Generation, yaitu teknik yang menggabungkan pencarian informasi (retrieval) dengan kemampuan menghasilkan teks (generation) dari model AI. Cara kerjanya sederhana: sistem akan mencari informasi relevan dari dokumen yang kamu miliki, lalu memberikan informasi tersebut ke model AI sebagai konteks untuk menjawab pertanyaan.
Dengan RAG, chatbot tidak hanya mengandalkan pengetahuan bawaan model, tetapi juga bisa menjawab berdasarkan data spesifik yang kamu sediakan. Ini sangat berguna untuk membuat asisten AI yang paham dengan produk, dokumen internal perusahaan, atau materi belajar tertentu.
Persiapan Awal Sebelum Memulai
Tools dan Software yang Dibutuhkan
Sebelum memulai tutorial, pastikan kamu sudah menyiapkan beberapa hal berikut:
- Python versi 3.9 atau lebih baru sudah terinstall di komputer
- Visual Studio Code atau IDE Python lainnya
- Koneksi internet untuk mengakses API Gemini
- Akun Google untuk mendapatkan API Key Gemini
Pengetahuan Dasar yang Disarankan
Tutorial ini cocok untuk pemula, namun akan lebih mudah dipahami jika kamu sudah mengenal dasar-dasar Python seperti variabel, fungsi, dan cara menjalankan script Python. Jika kamu baru pertama kali menggunakan API AI, tidak perlu khawatir karena setiap langkah akan dijelaskan secara detail.
Langkah 1 - Install Library Python yang Diperlukan
Langkah pertama adalah menyiapkan environment Python dan menginstall library-library yang dibutuhkan.
-
Buat folder projek terlebih dahulu di komputer kamu.
-
Buka folder tersebut melalui IDE Coding seperti Visual Studio Code.
-
Pada terminal Visual Studio Code, ketikkan perintah berikut untuk membuat virtual environment:
python -m venv venv
Perintah tersebut digunakan untuk membuat virtual environment pada bahasa pemrograman Python. Dengan membuat virtual environment, kamu tidak perlu khawatir mengenai masalah versi pada library yang akan diinstall nantinya. Virtual environment mengisolasi dependency projek ini dari projek Python lain di komputer kamu.
- Untuk mengaktifkan virtual environment yang telah dibuat, masukkan perintah:
venv\Scripts\activate
Setelah berhasil, kamu akan melihat tulisan (venv) di awal terminal, menandakan virtual environment sedang aktif.
- Install library dengan perintah berikut:
pip install google-generativeai
pip install google.genai
pip install python-dotenv
pip install numpy
Berikut penjelasan masing-masing library:
- google-generativeai dan google.genai: Library resmi dari Google untuk berkomunikasi dengan model AI Gemini melalui API. Library ini menyediakan fungsi untuk mengirim prompt dan menerima respons dari model Gemini.
- python-dotenv: Library yang digunakan untuk membaca file
.env(file untuk menyimpan API Key dan konfigurasi rahasia lainnya). Dengan library ini, kode kamu tidak perlu menyimpan API Key secara hardcoded. - numpy: Library komputasi numerik yang berguna untuk pengolahan data dan vektor. Meskipun tidak digunakan secara langsung di tutorial ini, numpy sering diperlukan sebagai dependency library lain atau untuk pengembangan RAG yang lebih kompleks.
Langkah 2 - Buat dan Dapatkan API Key Gemini
Sebelum bisa menggunakan API Gemini, kamu perlu mendaftar dan mendapatkan API Key secara gratis dari Google.
Mendaftar ke Google AI Studio
-
Buka browser dan kunjungi Google AI Studio di
https://aistudio.google.com/ -
Login menggunakan akun Google yang kamu miliki.
Membuat API Key Baru
-
Setelah login, klik tombol Get API Key di menu sebelah kiri.
-
Klik tombol Create API Key untuk membuat kunci API baru.
-
Copy API Key yang muncul. Simpan sementara di notepad atau catatan pribadi kamu.
Catatan: Google memberikan kuota gratis untuk API Gemini yang cukup untuk pengembangan dan eksperimen. Pastikan kamu tidak membagikan API Key kepada siapapun.
Langkah 3 - Simpan API Key ke File .env
Menyimpan API Key langsung di dalam kode program adalah praktik yang kurang aman. Cara yang benar adalah menyimpannya di file environment terpisah.
-
Pada folder project di Visual Studio Code, buat file baru dengan nama .env
-
Isi file tersebut dengan informasi berikut:
GEMINI_API_KEY=ISI_API_KEY_ANDA
Ganti ISI_API_KEY_ANDA dengan API Key yang sudah kamu copy sebelumnya.
- Pastikan file
.envini masuk ke dalam.gitignorejika kamu menggunakan Git, agar API Key tidak terekspos ke repositori publik.
Langkah 4 - Uji Coba Koneksi ke Gemini API
Sebelum membuat chatbot RAG, ada baiknya kita menguji koneksi ke API Gemini terlebih dahulu.
-
Buat file baru bernama app.py
-
Isi dengan kode berikut:
import os
from dotenv import load_dotenv
import google.generativeai as genai
load_dotenv()
genai.configure(
api_key=os.getenv("GEMINI_API_KEY")
)
model = genai.GenerativeModel("gemini-2.5-flash")
response = model.generate_content(
"Halo"
)
print(response.text)
- Coba jalankan di terminal Visual Studio Code dengan perintah:
python app.py
- Jika berhasil, maka akan muncul pesan di terminal seperti: "Halo! Ada yang bisa saya bantu?"
Jika muncul error, periksa kembali:
- API Key sudah benar dan aktif
- Koneksi internet berfungsi dengan baik
- Library sudah terinstall dengan benar
Langkah 5 - Siapkan File Knowledge Base
Knowledge base adalah dokumen yang akan menjadi sumber pengetahuan chatbot RAG kamu.
- Buat file baru bernama materi.txt, kemudian isi file tersebut dengan informasi. Contohnya seperti ini:
Transfer Learning adalah teknik pembelajaran mesin
yang menggunakan model yang telah dilatih sebelumnya.
Model yang sudah pernah belajar akan digunakan
untuk menyelesaikan tugas baru.
Transfer Learning dapat menghemat waktu pelatihan.
- File tersebut nantinya akan digunakan sebagai knowledge base. kamu bisa memodifikasi isi file tersebut sesuai dengan topik atau materi yang ingin kamu ajarkan ke chatbot. Semakin lengkap informasinya, semakin baik jawaban yang bisa diberikan chatbot.
kamu juga bisa menggunakan format lain seperti file CSV, JSON, atau PDF untuk knowledge base yang lebih kompleks. Untuk tutorial ini, kita gunakan file teks sederhana agar mudah dipahami.
Langkah 6 - Buat Program Chatbot RAG
Sekarang kita akan membuat program utama yang menggabungkan semua komponen: membaca knowledge base, menghubungkan ke Gemini API, dan memberikan jawaban berdasarkan konteks.
Kode Program Lengkap
- Update kembali file app.py dengan kode berikut:
import os
from dotenv import load_dotenv
from google import genai
load_dotenv()
client = genai.Client(api_key=os.getenv("GEMINI_API_KEY"))
def load_knowledge():
with open("materi.txt", "r", encoding="utf-8") as f:
return f.read()
def ask_chatbot(content):
knowledge = load_knowledge()
prompt = f"""
kamu adalah chatbot yang hanya boleh menjawab berdasarkan materi berikut.
=========================
MATERI
=========================
{knowledge}
=========================
PERTANYAAN
=========================
{content}
Jika jawabannya tidak ada di materi,
katakan dengan sopan bahwa informasi tersebut tidak ditemukan.
"""
response = client.models.generate_content(
model="gemini-2.5-flash",
contents=prompt)
return response.text
question = input("Masukkan pertanyaan kamu: ")
answer = ask_chatbot(question)
print(answer)
Penjelasan Kode Program
Berikut cara kerja program di atas:
- load_knowledge(): Fungsi untuk membaca file
materi.txtdan mengembalikan isinya sebagai string. - ask_chatbot(): Fungsi utama yang menerima pertanyaan, membuat prompt dengan menyertakan knowledge base sebagai konteks, lalu mengirimkannya ke Gemini API.
- Prompt: Struktur prompt sangat penting dalam RAG. Perhatikan bahwa kita menyusun prompt dengan bagian MATERI (knowledge base), PERTANYAAN, dan instruksi khusus untuk model.
- Instruksi batasan: Kita memberi tahu model untuk hanya menjawab berdasarkan materi, dan jika tidak ditemukan, menjawab dengan sopan. Ini mencegah model memberikan informasi di luar konteks.
Menjalankan Chatbot RAG
- Jalankan kembali program dengan perintah:
python app.py
- Program akan meminta kamu memasukkan pertanyaan. Coba tanyakan sesuatu yang ada di dalam file
materi.txt, misalnya:
Masukkan pertanyaan kamu: Apa itu Transfer Learning?
Maka chatbot akan menjawab berdasarkan materi yang ada di file teks.
- Coba juga tanyakan sesuatu yang tidak ada di dalam materi:
Masukkan pertanyaan kamu: Siapa presiden Indonesia?
Chatbot akan menjawab dengan sopan bahwa informasi tersebut tidak ditemukan, sesuai instruksi yang kita berikan.
FAQ Seputar Chatbot RAG
Apa itu RAG (Retrieval-Augmented Generation)?
RAG adalah teknik yang menggabungkan pencarian informasi (retrieval) dengan kemampuan generate teks AI. Chatbot RAG mencari data relevan dari knowledge base terlebih dahulu sebelum menjawab, sehingga jawaban lebih akurat dan sesuai konteks.
Apa bedanya RAG dengan fine-tuning?
RAG memberikan konteks ke AI saat query tanpa mengubah model — cocok untuk data yang sering berubah. Fine-tuning melatih ulang model dengan dataset spesifik — cocok untuk mengubah perilaku atau gaya model. Untuk tools fine-tuning, baca Tools Fine-Tuning LLM.
Bisakah RAG menggunakan model AI lokal?
Tentu. Kamu bisa mengganti Gemini API dengan model lokal via Ollama atau LM Studio. Proses retrievel-nya tetap sama, hanya sumber LLM-nya yang diganti. Pelajari Cara Menjalankan LLM dengan Ollama untuk setup model lokal.
Apa format knowledge base yang didukung?
Teks (.txt), PDF, CSV, DOCX, dan markdown. Pada tutorial ini kita menggunakan teks biasa. Untuk dokumen yang lebih kompleks, kamu bisa menambahkan library seperti PyPDF2 atau python-docx untuk parsing.
Kesimpulan
Selamat! kamu telah berhasil membuat chatbot RAG sederhana menggunakan Python dan Gemini API. Dengan teknik ini, kamu bisa membuat chatbot yang menjawab pertanyaan berdasarkan dokumen spesifik yang kamu miliki.
Apa Langkah Selanjutnya?
Setelah menguasai dasar RAG ini, kamu bisa mengembangkannya lebih lanjut:
- Integrasikan ke platform chatting seperti Telegram. Baca tutorial kami tentang Cara Membuat Chatbot Telegram dengan n8n & Gemini AI untuk membuat chatbot yang bisa diakses banyak orang.
- Gunakan model AI lokal jika ingin privasi lebih terjaga. Pelajari Cara Menjalankan LLM di Laptop Tanpa Internet menggunakan Ollama untuk alternatif offline.
- Optimasi prompt agar hasil lebih akurat. Simak Panduan Prompt Engineering - Teknik Optimasi Prompt AI Terbaik untuk meningkatkan kualitas jawaban chatbot kamu.
- Coba API LLM gratis lainnya seperti GLM. Baca API LLM Gratis Model GLM 5.2 Via Cloudflare untuk alternatif selain Gemini.
- Jalankan LLM di laptop spek rendah dengan Cara Menjalankan LLM di Windows Tanpa Internet Menggunakan LM Studio.
Dengan RAG, kamu bisa membangun berbagai aplikasi AI yang lebih cerdas dan kontekstual. Selamat mencoba!
Baca Artikel Lainnya
Semua Artikel7 Tools Fine-Tuning LLM Open Source Gratis 2026: Unsloth, Axolotl & LLaMA-Factory
Rekomendasi tools fine-tuning LLM open source gratis 2026: Unsloth, Axolotl, LLaMA-Factory. Panduan memilih library fine tuning untuk pemula dan developer.
Cara Mendapatkan Kredit DigitalOcean $200 Gratis via GitHub Student Pack & Virtual Debit BRI
Panduan lengkap klaim kredit DigitalOcean $200 gratis pakai GitHub Student Developer Pack dan Virtual Debit BRI. Tips hindari akun suspended dan verifikasi kartu.
Tutorial Chatbot Telegram AI dengan n8n & Gemini API: Cara Mudah Tanpa Coding Step-by-Step
Panduan lengkap step-by-step membuat chatbot Telegram AI menggunakan n8n dan Gemini API tanpa coding. Cocok untuk customer service otomatis dan integrasi AI.
