21 Punkte von GN⁺ 2024-07-17 | 1 Kommentare | Auf WhatsApp teilen
  • Vergiss teure NVIDIA-GPUs und nutze vorhandene Geräte wie iPhone, iPad, Android, Mac oder Linux gebündelt als eine leistungsstarke GPU
  • Unterstützung für LLaMA und verschiedene weitere Modelle
  • „Dynamische Modellpartitionierung“ teilt Modelle optimal auf Basis der aktuellen Netzwerktopologie und der verfügbaren Geräte-Ressourcen auf
    • Dadurch lassen sich Modelle ausführen, die größer sind als das, was auf einem einzelnen Gerät laufen kann
  • Findet andere Geräte per automatischer Geräteerkennung
  • Bietet eine ChatGPT-kompatible API
  • Die Geräte sind nicht in einer Master-Worker-Struktur verbunden, sondern per P2P (die Standard-Partitionierungsstrategie ist ring memory weighted partitioning)
  • Unterstützung für Inference-Engines:
    • ✅ MLX
    • ✅ tinygrad
    • 🚧 llama.cpp
  • Unterstützung für Netzwerkmodule:
    • ✅ GRPC
    • 🚧 Radio
    • 🚧 Bluetooth
  • Bekannte Probleme
    • Da sich die Bibliothek schnell weiterentwickelt, hinkt die iOS-Implementierung der Python-Version hinterher
    • Langfristig ist ein integrierter Ansatz geplant, damit keine separaten Implementierungen gepflegt werden müssen

Zusammenfassung von GN⁺

  • exo ist experimentelle Software, die verschiedene Geräte zu einem leistungsstarken AI-Cluster zusammenführen kann
  • Mit Funktionen wie automatischer Geräteerkennung und dynamischer Modellpartitionierung lassen sich größere Modelle als auf einem Einzelgerät ausführen
  • Über die ChatGPT-kompatible API lassen sich Modelle einfach ausführen
  • Um das Problem der hinterherhinkenden iOS-Implementierung zu lösen, wird derzeit ein integrierter Ansatz vorangetrieben

1 Kommentare

 
GN⁺ 2024-07-17
Hacker-News-Kommentare
  • Erfordert mlx, eine Bibliothek ausschließlich für Apple Silicon. Es heißt, sie laufe auf "iPhone, iPad, Android, Mac, Linux, pretty much any device", aber ich bezweifle, dass das tatsächlich getestet wurde
  • Ich überlege, wie man dieses für lokale Netzwerke optimierte System per Crowdsourcing einfach nutzbar machen könnte. Ich suche nach einer Möglichkeit, damit alle im Büro dem Netzwerk leicht beitreten oder durch Scannen eines QR-Codes zu einem domänenspezifischen Modell beitragen können
  • Die Idee ist großartig und benutzerfreundlich. Sie könnte mehrere alte Geräte sinnvoll wiederverwerten. Ich wünschte mir aber Ergebnisse zu tok, Latenz und Beispiel-Setups
  • Ich habe paddler von GitHub unter Windows auf zwei Geräten für Load Balancing zum Laufen gebracht. Das wäre nützlich, um Llama 400B auf mehreren Geräten auszuführen. Aber Windows-Unterstützung gibt es noch nicht
  • Diese Funktion ermöglicht es, größere Modelle auszuführen, als auf einem einzelnen Gerät möglich wäre. Es fehlt jedoch an einer Erklärung, wie das konkret funktioniert. Wenn sich zum Beispiel einige Layer des neuronalen Netzes auf deviceA und andere auf deviceB befinden, dann müssen bei jeder Token-Generierung die Ausgabedaten des letzten Layers von deviceA an deviceB übertragen werden
  • Swarm-Computing sollte der Standard für alles Computing werden. Es gibt viel zu viele ungenutzte CPUs auf allen Geräten, die wir besitzen
  • Wegen des Netzwerk-Flaschenhalses wird das nicht funktionieren. Man muss Gigabytes an Daten übertragen. Daher braucht man gutes Internet (über 20mb/s) und gute Geräte. Dieses System wird wohl als coole Demo auf Twitter enden. Ich hoffe, man beweist mir das Gegenteil
  • Die Cloud ist bei Computing/Preis nicht zu schlagen, aber wenn man lokal arbeitet, lassen sich Datenschutzprobleme lösen. Die Welt braucht ein zweites Amendment für Computing
  • Früher fand ich die Idee spannend, Modelle lokal auf Mac, PC usw. auszuführen. Inzwischen denke ich aber, dass die meisten nützlichen KI-Berechnungen in der Cloud stattfinden werden. Man kann zwar im Heimnetz ein langsames Llama3-Modell laufen lassen, aber wenn man es in einem Cloud-Service günstig oder kostenlos ausführen kann, gibt es kaum einen Grund dafür. Apple treibt lokale KI-Modelle voran, aber ich habe ernsthafte Bedenken hinsichtlich der Auswirkungen auf die Akkulaufzeit
  • Große Cluster berichten, dass bei Verwendung von RDMA-Netzwerken der Kommunikations-Overhead der Flaschenhals ist. Daher frage ich mich, wie es möglich sein soll, dass dieses System in einem Heimnetzwerk nicht unter massiven Flaschenhälsen leidet