Allgemeine Einführung
Cognita ist ein Open-Source-Framework, das von TrueFoundry entwickelt wurde, um die Entwicklung von RAG (Retrieval-Augmented Generation) basierten Anwendungen zu vereinfachen. Das Framework bietet eine strukturierte, modulare Lösung, die es einfach macht, die RAG Cognita unterstützt mehrere Datenquellen, Parser und eingebettete Modelle und bietet eine einfach zu bedienende Benutzeroberfläche, die es auch technisch nicht versierten Benutzern ermöglicht, mit RAG-Konfigurationen zu experimentieren. Es lässt sich nahtlos in bestehende Systeme integrieren, unterstützt inkrementelle Indizierung und mehrere Vektordatenbanken und hilft Entwicklern bei der schnellen Iteration und Bereitstellung von KI-Anwendungen.
Referenzierung verschiedener RAG-Strategien auf Basis der Langchain/LlamaIndex-Modularität und Bereitstellung einer benutzerfreundlichen Schnittstelle zum schnellen Testen und Freigeben von produktionsreifen Anwendungen.
Funktionsliste
- Modularer Aufbau: Aufteilung der RAG-Anwendung in einzelne Module wie Datenlader, Parser, Embedder und Retriever zur Verbesserung der Wiederverwendbarkeit und Wartbarkeit des Codes.
- Intuitive Benutzeroberfläche: Bietet eine visuelle Schnittstelle, die es den Benutzern ermöglicht, Dokumente einfach hochzuladen und F&A-Vorgänge durchzuführen.
- API-Treiber: Unterstützung vollständiger API-Treiber, einfache Integration in andere Systeme.
- Inkrementelle Indizierung: Nur geänderte Dokumente werden neu indiziert, was Rechenressourcen spart.
- Unterstützung mehrerer Datenquellen: Laden Sie Daten aus mehreren Datenquellen wie lokalen Verzeichnissen, S3, Datenbanken usw.
- Unterstützung mehrerer Modelle: Einschließlich OpenAI, Cohere und anderer eingebetteter Modelle sowie Unterstützung von Sprachmodellen.
- Integration von Vektordatenbanken: Nahtlose Integration mit Vektordatenbanken wie Qdrant, SingleStore und anderen.
Hilfe verwenden
Ablauf der Installation
Da Cognita ein Open-Source-Python-Projekt ist, umfasst der Installationsprozess die folgenden Schritte:
- Klon-Lager::
git klonen. https://github.com/truefoundry/cognita.git cd Cognita
- Einrichten einer virtuellen Umgebung(Empfohlene Praxis):
python -m venv .cognita_env Quelle .cognita_env/bin/activate # Unix .cognita_env\Scripts\aktivieren # Fenster
- Installation von Abhängigkeiten::
pip install -r anforderungen.txt
- Umgebungsvariablen konfigurieren::
- Kopieren Sie .env.example in die .env-Datei und konfigurieren Sie sie nach Ihren Bedürfnissen, z. B. API-Schlüssel, Datenbankverbindung usw.
Richtlinien für die Verwendung
Laden von Daten:
- Wählen Sie eine Datenquelle: Cognita unterstützt das Laden von Daten aus lokalen Dateien, S3-Speicher-Buckets, Datenbanken oder TrueFoundry-Artefakten. Wählen Sie die für Sie geeignete Datenquelle.
- Hochladen oder Konfigurieren der Daten: Wenn Sie lokale Dateien wählen, laden Sie die Dateien direkt hoch. Wenn es sich um eine andere Datenquelle handelt, konfigurieren Sie die Zugriffsrechte und den Pfad.
Datenanalyse:
- Parser auswählen: Wählen Sie je nach Dokumenttyp (z.B. PDF, Markdown, Textdatei) den passenden Parser aus. Cognita unterstützt standardmäßig das Parsen mehrerer Dateiformate.
- Parsing durchführen: Klicken Sie auf die Schaltfläche Parsing und das System wird das Dokument in ein einheitliches Format konvertieren.
Dateneinbettung:
- Auswahl des eingebetteten Modells: Wählen Sie das eingebettete Modell (z. B. das Modell von OpenAI oder andere Open-Source-Modelle) entsprechend Ihren Anforderungen.
- Einbettung erzeugen: Führt Einbettungsoperationen durch, um Text in eine Vektordarstellung für den späteren Abruf umzuwandeln.
Abfrage und Abruf:
- Eingabe einer Abfrage: Geben Sie Ihre Abfrage in der Benutzeroberfläche oder über die API ein.
- Abrufen relevanter Informationen: Das System wird die relevantesten Dokumentfragmente in der Datenbank entsprechend Ihrer Anfrage abrufen.
- Antworten generieren: Verwenden Sie das ausgewählte Sprachmodell, um Antworten auf der Grundlage der abgerufenen Segmente zu generieren.
Inkrementelle Indizierung:
- Überwachen Sie Datenänderungen: Cognita bietet die Möglichkeit, nur neue oder aktualisierte Dokumente zu indizieren, was die Effizienz erhöht und Rechenressourcen spart.
Bedienung der Benutzeroberfläche:
- Sammlungen verwalten: Sie können in der Benutzeroberfläche Dokumentensammlungen erstellen, löschen oder bearbeiten.
- Q&A-Betrieb: Die Benutzer können die Auswirkungen des RAG-Systems erleben, indem sie Fragen und Antworten direkt über die Schnittstelle eingeben.
Featured Function Bedienung
- Mehrsprachige Unterstützung: Wenn Ihre Daten mehrere Sprachen enthalten, können Sie die Vorteile der mehrsprachigen Unterstützung von Cognita für mehrsprachige Fragen und Antworten nutzen.
- Dynamischer Modellwechsel: Mit Cognita können Sie bei Bedarf zwischen verschiedenen Einbettungs- oder Sprachmodellen wechseln, ohne die gesamte Anwendung neu bereitstellen zu müssen.
Mit den oben beschriebenen Schritten und Funktionen können Benutzer schnell loslegen und Cognita nutzen, um ihre eigenen RAG-Anwendungen zu erstellen und zu optimieren, um die KI-gesteuerte Informationsbeschaffung und -generierung zu verbessern.