Orion: Characterizing and Programming Apple's Neural Engine for LLM Training and Inference

Orion is het eerste open end-to-end systeem dat de Apple Neural Engine direct aanstuurt via private API's om zowel stabiel on-device training als snelle inferentie van grote taalmodellen mogelijk te maken door CoreML te omzeilen en recompilatie-tijd tijdens training drastisch te reduceren.

Ramchand Kumaresan

Gepubliceerd Tue, 10 Ma
📖 4 min leestijd☕ Koffiepauze-leesvoer

Each language version is independently generated for its own context, not a direct translation.

Stel je voor dat je een enorme fabriek hebt met een superkrachtige, speciale robotarm die alleen maar ontworpen is om heel snel ingewikkelde puzzels op te lossen. Deze robotarm is de Neural Engine (ANE) van Apple. Hij zit in meer dan twee miljard iPhones, iPads en Macs.

Het probleem? Tot nu toe was deze robotarm als een gesloten kast. De fabrieksleutel (de software) die je normaal gebruikt, gaf je geen toegang tot de knoppen van deze robot. Je kon hem niet zelf aansturen, en je kon hem niet gebruiken om nieuwe dingen te leren (trainen). De fabrikant (Apple) zei: "Gebruik maar de algemene werkbank (de GPU of CPU), die is wel goed genoeg."

Orion is het project dat de sleutel heeft gevonden om die kast open te maken. Hier is hoe het werkt, vertaald naar alledaagse taal:

1. De "Blindganger" aanpak

Voorheen was het alsof je een blindeman was die probeerde een auto te besturen. Je wist niet welke knop wat deed. Orion is de eerste die de handleiding heeft geschreven. De onderzoekers hebben de geheime taal van de robotarm vertaald en een lijst gemaakt van 20 regels waar je je aan moet houden.

  • Voorbeeld: Ze ontdekten dat je bepaalde puzzelstukken (zoals het samenvoegen van data) niet in één keer mag doen, maar in aparte stapjes. Als je dat niet doet, stopt de robot.

2. De "Koffieautomaat" voor training (Delta Compilation)

Dit is misschien wel het coolste stukje.
Stel je voor dat je een koffieautomaat hebt die elke keer dat je een nieuwe smaak (gewicht) wilt toevoegen, de hele machine moet demonteren en opnieuw moet bouwen. Dat duurt 4 seconden per kopje. Als je 1000 kopjes wilt maken, ben je 4000 seconden kwijt aan bouwen, niet aan koffie drinken.

Orion heeft een trucje bedacht: Delta Compilation.
In plaats van de hele machine te slopen, doen ze het volgende:

  1. Zet de machine uit (unloading).
  2. Vervang alleen het koffiebonen-reservoir met de nieuwe smaak (patching the weights).
  3. Zet de machine weer aan (reloading).

Dit duurt nu nog maar een fractie van de tijd. In plaats van 4 seconden per stap, duurt het nu 0,5 seconden. Hierdoor wordt het trainen van een slimme AI 3,8 keer sneller. Het is alsof je van een handmatige koffiezetapparaat overschakelt naar een automaat die alleen de bonen verwisselt.

3. De "Hot-Swap" Truc (LoRA)

Normaal gesproken moet je een robot volledig herbouwen als je hem wilt leren een nieuwe taal. Orion gebruikt een slimme truc: ze steken de nieuwe kennis in een losse zak (een adapter) die ze tijdens het werk kunnen verwisselen.

  • Analogie: Stel je voor dat je een chef-kok hebt die altijd dezelfde basisrecepten maakt. Wil je nu Italiaans koken? Je hoeft de hele keuken niet te verbouwen. Je hangt gewoon een "Italiaans-receptenboek" (de adapter) aan de muur, en de chef gebruikt dat. Zodra je weer Frans wilt koken, hang je dat boekje er weer af. Geen herbouwen nodig!

4. Het resultaat: Een stabiele leerling

Voorheen probeerden anderen dit, maar de robotarm werd vaak gek (hij gaf "NaN" fouten, wat betekent dat de cijfers uit elkaar vielen en het resultaat onzin werd). Orion heeft drie specifieke "bugjes" in de software opgelost die ervoor zorgden dat de robotarm stabiel blijft, zelfs als hij urenlang blijft leren.

  • Ze hebben bewezen dat je een model van 110 miljoen parameters (een vrij slimme AI) in 22 minuten kunt laten leren op een M4 Max computer, zonder dat het systeem crasht.

Waarom is dit belangrijk?

  • Geen wachtlijst meer: Je hoeft niet meer te wachten tot je AI in de "cloud" (op een server ver weg) wordt verwerkt. Je kunt het direct op je eigen apparaat doen.
  • Energiezuinig: De Neural Engine verbruikt bijna geen stroom als hij niet gebruikt wordt.
  • Open Source: De onderzoekers hebben de sleutels (de code) gratis beschikbaar gesteld. Iedereen kan nu meedoen aan het bouwen van slimme apps die deze speciale robotarm gebruiken.

Kortom: Orion heeft de "verboden zone" van Apple's chip opengebroken, een slimme manier gevonden om de machine snel aan te passen zonder hem te herbouwen, en bewezen dat je er zelfs mee kunt leren. Het is alsof ze een nieuwe, snellere weg hebben gevonden door een berg die voorheen als onbegaanbaar werd beschouwd.