NCERT Books Rag System
Dieses Projekt implementiert ein RAG-System (Abruf-Augmented-Generation) für NCERT-Bücher, die Ollama für Texteinbettung und Vektordatenbank sowie die GROQ-API für die Reaktion des Sprachmodells verwenden.
Merkmale
- Verwendet Nomic Text -Einbettungsmodell über Ollama zum Erstellen von Vektoreinbettungen
- Geschäfte Einbettung in Chromadb
- Verwendet die GROQ -API mit LLAMA 3 8B -Modell zur Erzeugung von Antworten
- Bietet ein Fastapi -Backend und ein optimistisches Frontend für die Benutzerinteraktion
Optimale Schnittstelle
Unten finden Sie einen Screenshot der optimistischen Schnittstelle für unser NCERT -Bücher -Rag -System:

Systemarchitektur
Hier ist ein Überblick über die NCERT Books Rag -Systemarchitektur:

Die Systemarchitektur besteht aus den folgenden Komponenten:
- Datenaufnahme : NCERT -Bücher werden für die Einbettung verarbeitet und vorbereitet.
- Einbettung der Erzeugung : Ollama mit dem Nomic -Text -Einbettungsmodell erstellt Vektoreinbettungen für den verarbeiteten Text.
- Vektorspeicherung : Chromadb speichert die erzeugten Einbettungen für ein effizientes Abruf.
- Abfrageverarbeitung : Benutzeranfragen werden verarbeitet und relevante Einbettungen aus Chromadb abgerufen.
- Sprachmodell : GROQ -API mit LLAMA 3 8B -Modell generiert Antworten basierend auf dem abgerufenen Kontext und der Benutzerabfrage.
- Backend : Fastapi behandelt die Kommunikation zwischen Frontend und den verschiedenen Systemkomponenten.
- Frontend : Streamlit bietet eine interaktive Benutzeroberfläche zum Abfragen des Systems und zum Anzeigen von Ergebnissen.
Voraussetzungen
Stellen Sie vor Beginn sicher, dass Sie die folgenden Anforderungen erfüllt haben:
- Python 3.7+
- Ollama installiert und eingerichtet
- GROQ -API -Konto und API -Schlüssel
Installation
Klonen Sie das Repository:
git clone https://github.com/yourusername/ncert-rag-system.git
cd ncert-rag-system
Installieren Sie die erforderlichen Abhängigkeiten:
pip install -r requirements.txt
Download und einrichten Ollama:
- Befolgen Sie die Anweisungen auf der offiziellen Website von Ollama, um Ollama zu installieren
- Laden Sie das Nomic Text -Einbettungsmodell herunter:
ollama pull nomic-embed-text
Richten Sie Ihren COQ -API -Schlüssel ein:
- Erstellen Sie eine
.env -Datei im Projektstamm - Fügen Sie Ihren COQ -API -Schlüssel hinzu:
GROQ_API_KEY=your_api_key_here
Verwendung
Starten Sie das Fastapi -Backend:
uvicorn main:app --reload
Starten Sie die optimistische Benutzeroberfläche:
streamlit run streamlit_app.py
Öffnen Sie Ihren Webbrowser und navigieren Sie zur Stromlit -App -URL (normalerweise http://localhost:8501 )
Verwenden Sie die Schnittstelle, um mit dem NCERT Books Rag -System zu interagieren
Lappenbewertung

Lizenz
Dieses Projekt ist unter der MIT -Lizenz lizenziert - Einzelheiten finden Sie in der Lizenzdatei.
Beitragen
Beiträge sind willkommen! Bitte zögern Sie nicht, eine Pull -Anfrage einzureichen.
Anerkennung
- Ollama zur Bereitstellung des Einbettungsmodells
- GROQ für ihre LLM -API
- Fastapi und Strom für die Backend- und Frontend -Frameworks