Eine KI-fähige Datenverwaltung und Integrationsplattform. LinkML-Store bietet eine Abstraktionsschicht über mehrere verschiedene Backends (einschließlich Duckdb, MongoDB, Neo4J und lokale Dateisysteme), die gemeinsame Abfragen, Index- und Speichervorgänge ermöglichen.
Eine vollständige Dokumentation finden Sie unter https://linkml.io/linkml-store/
Sehen Sie diese Folien für einen Überblick über hohe Ebene.
Warning LinkML-Store wird immer noch Änderungen unterzogen und Refactoring-, API- und Befehlszeilenoptionen können sich ändern!
Installieren, Daten hinzufügen, abfragen:
pip install linkml-store[all]
linkml-store -d duckdb:///db/my.db -c persons insert data/*.json
linkml-store -d duckdb:///db/my.db -c persons query -w "occupation: Bricklayer"
Index es, durchsuchen Sie es:
linkml-store -d duckdb:///db/my.db -c persons index -t llm
linkml-store -d duckdb:///db/my.db -c persons search "all persons employed in construction"
Validieren:
linkml-store -d duckdb:///db/my.db -c persons validate
Die meisten Datenbank -APIs implementieren das CRUD -Muster: Erstellen, Lesen, Aktualisieren, Löschen. LinkML-Store fügt diesem Muster Suche und Schlussfolgerung hinzu und macht es crudsi .
Der Begriff der "Suche" und "Inferenz" soll flexibel und erweiterbar sein, einschließlich:
LinkML-Store ist so konzipiert, dass sie mit mehreren Backends funktioniert und eine gemeinsame Abstraktionsschicht ergibt
MongoDb
Duckdb
Solr
Neo4j
Dateisystem
Bald kommen: Alle RDBMS, alle Triplestore, Neo4J, HDF5-basierte Geschäfte, Chromadb/Vector DBS ...
Die Absicht ist es, eine Vereinigung aller Merkmale jedes Backends zu geben. Beispielsweise werden für alle Backends analytischen facettierten Abfragen vorgesehen, nicht nur für Solr.
Viele Backends sind mit ihren eigenen Indexierungs- und Suchschemata ausgestattet. Klassischerweise waren dies Lucene-basierte Indizes, jetzt ist es semantische Suche mit LLM-Einbettungen.
LinkML Store behandelt die Indexierung als orthogonales Problem - Sie können unterschiedliche Indexierungsschemata mit unterschiedlichen Backends komponieren. Sie müssen keine Vektordatenbank haben, um die Einbettungssuche auszuführen!
Sehen Sie, wie man-semantische Suchseuche
TODO - DOCS
LinkML-Store wird von linkML unterstützt, was leistungsstarke ausdrucksstarke strukturelle und semantische Einschränkungen ermöglicht.
Siehe Indexierung JSON
und referenzielle Integrität
Es gibt eine vorläufige API, die mithilfe von Hateoas -Prinzipien mit Fastapi implementiert werden.
Zu Beginn sollten Sie zunächst eine Konfigurationsdatei erstellen, z. B. db/conf.yaml :
Dann rennen:
export LINKML_STORE_CONFIG=./db/conf.yaml
make api
Die API gibt sowohl Links als auch Datenobjekte zurück. Es wird empfohlen, ein Chrome -Plugin für die JSON -Anzeige zur Erkundung der API zu verwenden. TODO: Fügen Sie hier Dokumente hinzu.
Die Hauptendpunkte sind:
http://localhost:8000/ - Die Wurzel der APIhttp://localhost:8000/pages/ - durch HTML durch die API durchsuchenhttp://localhost:8000/docs - die SWAGGE UI make app
Weitere Informationen finden Sie in diesen Folien