3 Punkte von GN⁺ 2024-05-30 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Cohere hat einen Datensatz veröffentlicht, in dem die gesamte Wikipedia als Vektoren eingebettet ist
  • Mit diesem Datensatz können Einzelpersonen einen semantischen Vektorindex der Wikipedia erstellen

Die Schwierigkeiten

  • Die Größe des Datensatzes (allein das englische Korpus umfasst 180 GB) ist nicht das Problem
  • Bisherige Vektordatenbanken konnten keine Datensätze indexieren, die größer als der Arbeitsspeicher sind
  • Die Bibliothek JVector ermöglicht es, mit komprimierten Vektoren Datensätze zu indexieren, die größer als der Arbeitsspeicher sind

Anforderungen

  • Linux oder MacOS erforderlich (Windows ist wegen Einschränkungen von ChronicleMap nicht nutzbar)
  • 180 GB freier Speicherplatz für den Datensatz und 90 GB Speicherplatz für den Index erforderlich
  • Genügend RAM erforderlich, um beim Aufbau des Index eine JVM mit 36 GB Heap ausführen zu können
  • Vor dem Aufbau des Index muss Swap deaktiviert werden

Index aufbauen und durchsuchen

Wie es funktioniert

  • Erstellung eines Vektorindex mit JVector, Speicherung der Artikeldaten mit Chronicle Map
  • Für die Vektorkomprimierung wird Locally-Adaptive Quantization (LVQ) verwendet
  • Datenparallelisierung mithilfe paralleler Streams

Fazit

  • Dank der JVector-Bibliothek wird es realistisch, die gesamte englische Wikipedia auf einem Laptop zu indexieren
  • Zusammen mit dem DataStax-Astra-Service lassen sich leistungsfähige Indexierungsfunktionen mit Unterstützung für Echtzeit-Einfügungen, -Updates und -Löschungen nutzen

Meinung von GN⁺

  • Innovationskraft von JVector: JVector könnte den Bereichen Data Science und Suchmaschinen einen großen Innovationsschub geben, weil damit große Datensätze ohne Speicherbeschränkungen indexiert werden können.
  • Praxisnutzen: Da Einzelpersonen nun die gesamte Wikipedia auf einem Laptop indexieren können, wird es für Forschende und Entwickler einfacher, große Datensätze zu nutzen.
  • Technische Aspekte: Für den Einsatz dieser Technik sind ausreichend Festplattenspeicher und Arbeitsspeicher sowie Systemeinstellungen wie das Deaktivieren von Swap erforderlich.
  • Alternative Technologien: Andere Open-Source-Projekte mit ähnlichen Funktionen sind etwa FAISS (Facebook AI Similarity Search) oder Annoy (Approximate Nearest Neighbors Oh Yeah).
  • Leistungsoptimierung: Durch Parallelverarbeitung und Vektorkomprimierung lässt sich die Leistung optimieren, allerdings ist ein sorgfältiges Ressourcenmanagement des Systems nötig.

Noch keine Kommentare.

Noch keine Kommentare.