Proyek ini adalah sistem Conversational Retrieval-Augmented Generation (RAG) yang memungkinkan pengguna untuk mengunggah file PDF, mengekstrak konten, dan mengajukan pertanyaan tentang konten yang diunggah. Sistem ini melacak riwayat obrolan dan mengontekstualisasikan pertanyaan pengguna berdasarkan percakapan sebelumnya untuk memberikan jawaban yang relevan.
Aplikasi ini dibangun dengan streamlit untuk antarmuka pengguna, mengintegrasikan GROQ untuk LLM (model bahasa), dan Chroma sebagai toko vektor untuk menangani embeddings dokumen dan pengambilan. Aliran percakapan dipertahankan dengan riwayat obrolan untuk memungkinkan pertanyaan yang stateful.
HuggingFaceEmbeddings untuk membuat embeddings dokumen dan mengambil konten yang relevan. Untuk menjalankan proyek ini, Anda membutuhkan yang berikut:
Klon Repositori:
git clone https://github.com/yourusername/conversational-rag-with-pdf.git
cd conversational-rag-with-pdfBuat lingkungan virtual:
python3 -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`Instal dependensi yang diperlukan:
pip install -r requirements.txtMengatur variabel lingkungan:
Buat file .env di direktori root dan tambahkan tombol API Anda:
touch .env Di dalam file .env , tambahkan yang berikut:
HF_TOKEN=your_huggingface_token
GROQ_API_KEY=your_groq_api_keyJalankan aplikasi:
streamlit run utils.pySaat Anda meluncurkan aplikasi, pertama -tama Anda harus memasukkan kunci API GROQ Anda. Ini diperlukan untuk melakukan pemodelan bahasa dan menjawab pertanyaan.
Klik tombol Pilih File PDF untuk mengunggah satu atau lebih file PDF. Konten dari PDF akan diproses dan dibagi menjadi potongan -potongan untuk pengambilan yang efisien.
Setelah mengunggah PDF, Anda dapat mengajukan pertanyaan terkait dengan konten file yang diunggah. Asisten akan menjawab berdasarkan konteks yang disediakan oleh PDF dan riwayat obrolan sebelumnya.
Sistem melacak riwayat percakapan. Anda dapat melihat sejarah sesi, dan asisten menggunakan sejarah ini untuk menjawab pertanyaan tindak lanjut dalam konteks.
Gemma2-9b-It .Jika Anda mengalami masalah seperti kesalahan kunci API atau masalah unggahan file, pastikan bahwa:
pip install -r requirements.txt .