Sistem Rag Buku NCERT
Proyek ini mengimplementasikan sistem Pengambilan-Agusted Generasi (RAG) untuk buku-buku NCERT menggunakan Ollama untuk database embedding dan vektor teks, dan API GROQ untuk respons model bahasa.
Fitur
- Menggunakan model embedding teks nomic melalui ollama untuk membuat embeddings vektor
- Toko Embeddings di Chromadb
- Memanfaatkan API Groq dengan model Llama 3 8B untuk menghasilkan respons
- Menyediakan frontend backend dan streamlit untuk interaksi pengguna
Antarmuka Streamlit
Di bawah ini adalah tangkapan layar dari antarmuka streamlit untuk sistem Rag NCERT Books kami:

Arsitektur Sistem
Berikut gambaran umum arsitektur sistem Rag Buku NCERT:

Arsitektur sistem terdiri dari komponen berikut:
- Konsumsi data : Buku NCERT diproses dan disiapkan untuk penyematan.
- Generasi Embedding : Ollama dengan model embedding teks nomik menciptakan embeddings vektor untuk teks yang diproses.
- Penyimpanan Vektor : Chromadb menyimpan embedding yang dihasilkan untuk pengambilan yang efisien.
- Pemrosesan kueri : Kueri pengguna diproses dan embeddings yang relevan diambil dari Chromadb.
- Model Bahasa : API GROQ dengan model LLAMA 3 8B menghasilkan respons berdasarkan konteks yang diambil dan permintaan pengguna.
- Backend : Fastapi menangani komunikasi antara frontend dan berbagai komponen sistem.
- Frontend : StreamLit menyediakan antarmuka pengguna interaktif untuk meminta sistem dan menampilkan hasil.
Prasyarat
Sebelum Anda mulai, pastikan Anda telah memenuhi persyaratan berikut:
- Python 3.7+
- Ollama diinstal dan diatur
- Akun API GROQ dan Kunci API
Instalasi
Klon Repositori:
git clone https://github.com/yourusername/ncert-rag-system.git
cd ncert-rag-system
Instal dependensi yang diperlukan:
pip install -r requirements.txt
Unduh dan atur ollama:
- Ikuti instruksi di situs resmi Ollama untuk menginstal Ollama
- Unduh model embedding teks nomic:
ollama pull nomic-embed-text
Siapkan kunci API GROQ Anda:
- Buat file
.env di root proyek - Tambahkan Kunci API GROQ Anda:
GROQ_API_KEY=your_api_key_here
Penggunaan
Mulailah backend fastapi:
uvicorn main:app --reload
Luncurkan StreamLit UI:
streamlit run streamlit_app.py
Buka browser web Anda dan navigasikan ke URL aplikasi streamlit (biasanya http://localhost:8501 )
Gunakan antarmuka untuk berinteraksi dengan sistem kain NCERT BUKU
Evaluasi Rag

Lisensi
Proyek ini dilisensikan di bawah lisensi MIT - lihat file lisensi untuk detailnya.
Berkontribusi
Kontribusi dipersilakan! Silakan mengirimkan permintaan tarik.
Ucapan Terima Kasih
- Ollama untuk menyediakan model penyematan
- Groq untuk LLM API mereka
- Fastapi dan Streamlit untuk kerangka backend dan frontend