txtai ist eine All-in-One-Einbettungsdatenbank für semantische Suche, LLM-Orchestrierung und Sprachmodell-Workflows.
Einbettungsdatenbanken sind eine Vereinigung von Vektorindizes (dünn und dicht), Graphnetzwerken und relationalen Datenbanken.
Diese Grundlage ermöglicht die Vektorsuche und/oder dient als leistungsstarke Wissensquelle für LLM-Anwendungen (Large Language Model).
Erstellen Sie autonome Agenten, Retrieval Augmented Generation (RAG)-Prozesse, Multi-Modell-Workflows und mehr.
Zusammenfassung der txtai-Funktionen:
txtai wurde mit Python 3.9+, Hugging Face Transformers, Sentence Transformers und FastAPI erstellt. txtai ist Open Source unter einer Apache 2.0-Lizenz.
Sind Sie an einer einfachen und sicheren Möglichkeit interessiert, gehostete txtai-Anwendungen auszuführen? Dann nehmen Sie an der txtai.cloud-Vorschau teil, um mehr zu erfahren.
Täglich schießen neue Vektordatenbanken, LLM-Frameworks und alles dazwischen aus dem Boden. Warum mit txtai bauen?
# Get started in a couple lines
import txtai
embeddings = txtai . Embeddings ()
embeddings . index ([ "Correct" , "Not what we hoped" ])
embeddings . search ( "positive" , 1 )
#[(0, 0.29862046241760254)]
# app.yml
embeddings :
path : sentence-transformers/all-MiniLM-L6-v2
CONFIG=app.yml uvicorn " txtai.api:app "
curl -X GET " http://localhost:8000/search?query=positive "
In den folgenden Abschnitten werden gängige Txtai-Anwendungsfälle vorgestellt. Ein umfassender Satz von über 60 Beispiel-Notebooks und -Anwendungen ist ebenfalls verfügbar.
Erstellen Sie semantische/Ähnlichkeits-/Vektor-/neuronale Suchanwendungen.
Herkömmliche Suchsysteme verwenden Schlüsselwörter, um Daten zu finden. Die semantische Suche versteht die natürliche Sprache und identifiziert Ergebnisse, die dieselbe Bedeutung haben, nicht unbedingt dieselben Schlüsselwörter.
Beginnen Sie mit den folgenden Beispielen.
Notizbuch | Beschreibung | |
---|---|---|
Wir stellen txtai vor | Übersicht über die von txtai bereitgestellten Funktionen | |
Ähnlichkeitssuche mit Bildern | Betten Sie Bilder und Text für die Suche in denselben Bereich ein | |
Erstellen Sie eine QA-Datenbank | Fragenabgleich mit semantischer Suche | |
Semantische Diagramme | Entdecken Sie Themen, Datenkonnektivität und führen Sie Netzwerkanalysen durch |
Autonome Agenten, Retrieval Augmented Generation (RAG), Chat mit Ihren Daten, Pipelines und Workflows, die mit großen Sprachmodellen (LLMs) interagieren.
Weitere Informationen finden Sie weiter unten.
Notizbuch | Beschreibung | |
---|---|---|
Eingabeaufforderungsvorlagen und Aufgabenketten | Erstellen Sie Modellaufforderungen und verbinden Sie Aufgaben mit Workflows | |
Integrieren Sie LLM-Frameworks | Integrieren Sie llama.cpp, LiteLLM und benutzerdefinierte Generierungsframeworks | |
Erstellen Sie Wissensgraphen mit LLMs | Erstellen Sie Wissensgraphen mit LLM-gesteuerter Entitätsextraktion |
Agenten verbinden Einbettungen, Pipelines, Workflows und andere Agenten miteinander, um komplexe Probleme autonom zu lösen.
txtai-Agenten basieren auf dem Transformers-Agent-Framework. Dies unterstützt alle LLMs, die txtai unterstützt (Hugging Face, llama.cpp, OpenAI / Claude / AWS Bedrock über LiteLLM).
Weitere Informationen finden Sie unter dem Link unten.
Notizbuch | Beschreibung | |
---|---|---|
Was ist neu in txtai 8.0? | Agenten mit txtai | |
Analysieren von Hugging-Face-Beiträgen mit Grafiken und Agenten | Erkunden Sie einen umfangreichen Datensatz mit Graph Analysis und Agents | |
Den Agenten Autonomie gewähren | Agenten, die Probleme iterativ nach eigenem Ermessen lösen |
Retrieval Augmented Generation (RAG) reduziert das Risiko von LLM-Halluzinationen, indem die Ausgabe mit einer Wissensbasis als Kontext eingeschränkt wird. RAG wird häufig zum „Chatten mit Ihren Daten“ verwendet.
Ein neuartiges Merkmal von txtai ist, dass es sowohl eine Antwort als auch eine Quellenangabe liefern kann.
Notizbuch | Beschreibung | |
---|---|---|
Erstellen Sie RAG-Pipelines mit txtai | Leitfaden zur Retrieval-Augmented-Generierung, einschließlich der Erstellung von Zitaten | |
So funktioniert RAG mit txtai | Erstellen Sie RAG-Prozesse, API-Dienste und Docker-Instanzen | |
Erweitertes RAG mit Graphpfaddurchquerung | Durchlaufen von Diagrammpfaden zum Sammeln komplexer Datensätze für erweiterte RAG | |
Speech-to-Speech RAG | Vollständiger Speech-to-Speech-Workflow mit RAG |
Sprachmodell-Workflows, auch semantische Workflows genannt, verbinden Sprachmodelle miteinander, um intelligente Anwendungen zu erstellen.
Während LLMs leistungsstark sind, gibt es zahlreiche kleinere, spezialisiertere Modelle, die für bestimmte Aufgaben besser und schneller arbeiten. Dazu gehören Modelle für extraktive Fragebeantwortung, automatische Zusammenfassung, Text-to-Speech, Transkription und Übersetzung.
Notizbuch | Beschreibung | |
---|---|---|
Führen Sie Pipeline-Workflows aus | Einfache, aber leistungsstarke Konstrukte zur effizienten Datenverarbeitung | |
Erstellen abstrakter Textzusammenfassungen | Führen Sie eine abstrakte Textzusammenfassung durch | |
Transkribieren Sie Audio in Text | Konvertieren Sie Audiodateien in Text | |
Übersetzen Sie Text zwischen Sprachen | Optimieren Sie maschinelle Übersetzung und Spracherkennung |
Der einfachste Weg zur Installation ist über Pip und PyPI
pip install txtai
Python 3.9+ wird unterstützt. Es wird empfohlen, eine virtuelle Python-Umgebung zu verwenden.
Weitere Informationen zu optionalen Abhängigkeiten, umgebungsspezifischen Voraussetzungen, Installation aus der Quelle, Conda-Unterstützung und der Ausführung mit Containern finden Sie in den detaillierten Installationsanweisungen.
Die aktuell empfohlenen Modelle finden Sie in der Tabelle unten. Diese Modelle ermöglichen alle den kommerziellen Einsatz und bieten eine Mischung aus Geschwindigkeit und Leistung.
Komponente | Modell(e) |
---|---|
Einbettungen | All-MiniLM-L6-v2 |
Bildunterschriften | BLIP |
Etiketten – Zero Shot | BART-Groß-MNLI |
Beschriftungen – behoben | Feinabstimmung mit der Trainingspipeline |
Großes Sprachmodell (LLM) | Lama 3.1 Unterweisen |
Zusammenfassung | DistilBART |
Text-to-Speech | ESPnet-JETS |
Transkription | Flüstern |
Übersetzung | OPUS-Modellreihe |
Modelle können entweder als Pfad vom Hugging Face Hub oder als lokales Verzeichnis geladen werden. Modellpfade sind optional, Standardwerte werden geladen, wenn sie nicht angegeben sind. Für Aufgaben ohne empfohlenes Modell verwendet txtai die Standardmodelle, wie im Leitfaden „Huging Face Tasks“ gezeigt.
Weitere Informationen finden Sie unter den folgenden Links.
Die folgenden Anwendungen werden von txtai unterstützt.
Anwendung | Beschreibung |
---|---|
txtchat | Retrieval Augmented Generation (RAG)-gestützte Suche |
paperai | Semantische Suche und Workflows für medizinische/wissenschaftliche Arbeiten |
Codefrage | Semantische Suche für Entwickler |
tldrstory | Semantische Suche nach Schlagzeilen und Story-Texten |
Zusätzlich zu dieser Liste gibt es auch viele andere Open-Source-Projekte, veröffentlichte Forschungsergebnisse und geschlossene proprietäre/kommerzielle Projekte, die in der Produktion auf txtai aufbauen.
Eine vollständige Dokumentation zu txtai einschließlich Konfigurationseinstellungen für Einbettungen, Pipelines, Workflows, API und eine FAQ mit häufigen Fragen/Problemen ist verfügbar.
Für diejenigen, die zu txtai beitragen möchten, lesen Sie bitte diesen Leitfaden.