Exo AI-software: hjemmeklynge til store sprogmodeller

Sidste ændring: 08/01/2026
Forfatter: Isaac
  • Exo er open source-software, der giver dig mulighed for at oprette en klynge af IA med hverdagsenheder, distribuere LLM-modeller mellem flere netværksforbundne computere.
  • Platformen skiller sig ud ved sin automatiske enhedsregistrering, RDMA-understøttelse over Thunderbolt 5 og dynamiske modelpartitionering, der optimerer CPU-, GPU- og hukommelsesforbrug.
  • Det fungerer især godt på macOS med GPU og MLX, mens det er på Linux Den kører i øjeblikket på CPU'er, med en åben køreplan for at udvide understøttelsen af hardware.
  • Exo er ideel til projekter som Home Assistant, SMV'er og udviklere, der ønsker at køre avanceret AI lokalt uden at være afhængige af skyen eller investere i avancerede GPU'er.

Exo AI-software

Lokal udførelse af store sprogmodeller (LLM) forbindes normalt med enorme maskiner, ekstremt dyre grafikkort og et uvenligt energiforbrug. I de seneste måneder er der dog dukket et alternativ op, som tiltrækker sig stor opmærksomhed: Exo, software der forvandler flere hjemmeenheder til en AI-klynge i stand til at køre meget krævende modeller uden at være afhængig af skyen.

Med Exo, Ideen er at samle computernes kræfter, bærbaremobiltelefoner og andre tilsluttede enheder Så de ved at kombinere deres ressourcer kan køre LLM'er, som vi normalt kun ser i professionelle datacentre. Dette åbner døren for at etablere en slags "mini-datacenter" derhjemme, ideelt til projekter som lokale assistenter som Home Assistant, SMV'er, der ønsker at eksperimentere med AI uden at sprænge budgettet, eller nysgerrige udviklere, der ønsker at gå ud over typisk cloud-testning.

Hvad er Exo, og hvad har det til formål at løse?

Exo er et eksperimentelt open source-softwareprogramvedligeholdes af Exo Labs, hvis hovedformål er at gøre det muligt for dig at bygge din egen klynge af kunstig intelligens derhjemme ved hjælp af almindelige enheder. I stedet for at være afhængig af en enkelt GPU med en masse VRAM, distribuerer Exo modellen på tværs af flere enheder, der er forbundet til det samme netværk.

Exos præmis er enkel, men meget kraftfuld.dine sædvanlige enheder – en MacBook, en iPhone En iPad, en Linux-pc eller endda visse single-board computere (SBC'er) kan samarbejde om at køre en stor AI-model. Hver især bidrager med hukommelse og computerkraft, og softwaren orkestrerer alt, så det fungerer, som om det var én enkelt, større maskine.

Exo blev født som et svar på en meget almindelig begrænsningIkke alle har adgang til en avanceret GPU som en NVIDIA En RTX 3090 med 24 GB VRAM og snesevis af gigabyte RAM. At køre en "beskeden" model som Llama 3.1 70B med anstændig lokal ydeevne kræver hardware, der ligger uden for budgettet for mange udviklere, producenter eller små virksomheder.

I stedet for at tvinge dig til at investere i et uhyrligt stykke udstyr eller udelukkende stole på skyen, Exo foreslår at kombinere den tilgængelige hukommelse fra flere mere beskedne enheder så den komplette model passer ind i klyngen som helhed. Dette demokratiserer adgangen til eksperimenter med avanceret AI betydeligt, hvilket er særligt interessant for startups og SMV'er.

Exo AI-klynge

Sådan fungerer Exo på et teknisk niveau

Kernen i Exo ligger i dens evne til at distribuere LLM-modeller på tværs af alle tilgængelige enheder på et hjemme- eller kontornetværk. I stedet for at indlæse hele modellen på en enkelt maskine, opdeler Exo den og distribuerer den, hvilket udnytter den kombinerede hukommelse og computerkraft i hver node.

At lave det, Exo bruger en distribueret delt hukommelsestilgangved at tilpasse den del af modellen, der placeres på hver enhed, i henhold til mængden af ​​tilgængelig hukommelse (RAM og, på macOS, GPU VRAM). Således kan en model, der normalt kræver en meget kraftfuld GPU, køre på tværs af bærbare computere, stationære computere og endda andre enheder, forudsat at den samlede klyngehukommelse er tilstrækkelig.

Processen begynder med installationen af ​​Exo på kompatible enheder.I mange tilfælde kræver det at have Python 3.12 eller nyere, udover andre værktøjer såsom en afhængighedsadministrator og compilere. Når tjenesten kører, vil de enheder, der kører Exo de opdager automatisk hinanden inden for det samme netværk, uden at du manuelt behøver at konfigurere IP-adresser eller porte.

Intern kommunikation mellem noder er baseret på forbindelser peer-to-peerDette favoriserer en arkitektur, hvor hver maskine bidrager med sin evne uden at være afhængig af en enkelt, rigid central server. Baseret på denne topologi udfører Exo en ressource- og latensanalyse for at beslutte, hvordan modellen skal partitioneres, og hvor hvert fragment skal placeres.

Et af nøgleelementerne er den dynamiske opdeling af modellerExo får et realtidsbillede af klyngetopologien, ressourcerne for hver enhed (hukommelse, CPU, GPU) og kvaliteten af ​​netværksforbindelserne (latens, båndbredde mellem noder). Med disse oplysninger beslutter den automatisk, hvordan modellen skal opdeles for at afbalancere belastningen og minimere flaskehalse.

De vigtigste tekniske funktioner ved Exo

Exo-projektet inkorporerer flere funktioner designet til at få mest muligt ud af det. den tilgængelige hardware og gøre livet lettere for brugeren. Blandt de mest bemærkelsesværdige er:

Automatisk enhedsregistreringEnhederne, der kører Exo, kan finde hinanden uden at du behøver at røre ved netværkskonfigurationen. Dette undgår det typiske mareridt med at skulle håndtere statiske IP-adresser, manuelle porte eller brugerdefinerede scripts, så noderne kan se hinanden.

Understøttelse af RDMA over ThunderboltEt af de mest slående punkter er, at Exo kommer med Dag-én-kompatibilitet med RDMA (Remote Direct Memory Access) via Thunderbolt 5Denne tilgang gør det muligt at reducere latenstiden mellem enheder med op til 99 % sammenlignet med mere traditionelle kommunikationsmetoder, hvilket er afgørende, når man distribuerer dele af den samme model mellem flere maskiner.

  Sådan opdaterer du din SSD-firmware trin for trin

Tensorisk parallelismeExo implementerer teknikker til tensor parallelismeMed andre ord fordeler den modellens tensorer på tværs af flere enheder. Takket være dette er der i visse konfigurationer rapporteret hastighedsforbedringer på op til 1,8 gange ved brug af to enheder og op til 3,2 gange med fire, sammenlignet med at køre modellen på en enkelt enhed med de samme ressourcer.

Bevidst topologi og selvparalleliseringSystemet beregner automatisk den bedste måde at opdele modellen på og fordele den på tværs af klyngen, idet der tages højde for både hver nodes styrke og kvaliteten af ​​forbindelserne mellem dem. Denne funktion af "Topologibevidst automatisk parallel" Det reducerer behovet for, at brugeren skal justere alt manuelt.

MLX-integration og GPU-understøttelse på macOSPå macOS bruger Exo MLX som inferensbackend og MLX Distributed til distribueret kommunikation. Dette gør det muligt at udnytte GPU'erne integreret i Apple Silicon-chips, hvilket er særligt interessant i enheder som Mac Studio eller den nyeste generation af MacBook Pro.

Praktiske anvendelsesscenarier og ydeevne på Macs

Exo er blevet testet i meget krævende scenarier ved at kombinere flere avancerede Mac-computere, hvorved man udnytter både tensorparallelisme og RDMA over Thunderbolt 5. I disse opsætninger er der blevet kørt gigantiske modeller, som vi normalt kun ville se i datacentermiljøer.

Et eksempel, der diskuteres i fællesskabet, er brugen af fire Mac Studio med M3 Ultra-chip forbundet med Thunderbolt 5 og RDMA. Tilsammen giver de omkring 15 TB effektiv VRAM, der kan rumme utroligt store modeller.

Blandt de modeller, der er blevet implementeret i denne type opsætning, skiller følgende sig ud: Qwen3-235B i 8 bit, DeepSeek v3.1 671B også kvantiseret til 8 bit o incluso Kimi K2 Tænker i native 4 bitsI alle disse tilfælde er hver Mac vært for en del af modellen, og kommunikationen mellem noder optimeres ved hjælp af RDMA.

Disse eksperimenter er blevet dokumenteret af skabere som Jeff Geerlingsom har vist, hvordan det er muligt at opsætte en hjemmekonfiguration med en enorm mængde effektiv videohukommelse. I dette scenarie fungerer Exo som orkestreringslaget, der gør det muligt for modellen at fungere sammenhængende, selvom den er fordelt på tværs af flere maskiner.

Ud over disse ekstreme konfigurationer, Det samme princip kan anvendes på mere beskedne anvendelserFor eksempel at fodre en stor sprogmodel, der fungerer som hjernen i et avanceret hjemmeautomationssystem, en privat samtaleassistent eller tekstanalyseværktøjer i en lille virksomhed.

Brug af Exo med Home Assistant og avanceret hjemmeautomation

Home Assistant-fællesskabet taler allerede om Exo som en mulighed for lokalt at køre store LLM'er, der fungerer som logikmotorer til hjemmeautomation. Selvom mange ikke har prøvet det direkte endnu, har projektet tiltrukket sig opmærksomhed, fordi det lover at give mulighed for meget tunge modeller på relativt beskeden hardwareforudsat at der er nok hold samlet.

Ideen er, at i stedet for at stole på en kraftfuld GPU eller skyenDu kan oprette en klynge med flere computere, selvom de ikke har en dedikeret GPU. Exo ville håndtere distributionen af ​​modellen på tværs af dem alle, hvilket giver Home Assistant mulighed for at konsultere en lokal LLM for at træffe mere komplekse beslutninger eller give mere naturlige svar.

Denne tilgang er især tiltalende for dem, der prioriterer privatliv.Da husstandsdata ikke behøver at forlade det lokale netværk, udføres al inferens og behandling af naturligt sprog i den klynge, du har konfigureret, uden at være afhængig af eksterne servere.

Projektet har fået opmærksomhed på teknologiblogs som CNX Software, hvor Det fremhæves, at Exo endda kan køre på computerklynger, smartphones eller udviklingskort.I praksis findes den mest polerede understøttelse dog i øjeblikket på macOS og Linux, med nogle begrænsninger stadig til stede. iOS.

For mange entusiaster af hjemmeautomation, Exo + Home Assistant-kombinationen Det kunne være den manglende brik at have en avanceret, altid aktiv og fuldstændig lokal samtaleassistent, uden at betale for cloud-tokens eller være afhængig af tredjeparter.

Kompatible AI-modeller og begrænsninger med proprietære modeller

Exo er kompatibel med et godt antal populære AI-modellerisær dem, der er en del af det åbne økosystem og kan downloades og køres lokalt. Disse omfatter familier som LLaMA, Mistral, LLaVA, Qwen og DeepSeek, blandt andre.

I det konkrete tilfælde af Lama 3 af MetaExo fungerer særligt godt med disse arkitekturer og muliggør varianter i forskellige størrelser afhængigt af klyngeressourcer. Dette gør det nemmere for både individuelle eksperimentatorer og små virksomheder at have en moderne sprogmodel uden at pådrage sig licensomkostninger eller være afhængig af tredjeparts-API'er.

En anden interessant fordel er muligheden for at eksponere en API, der er kompatibel med ChatGPTMed nogle justeringer tillader Exo modeller, der kører på din klynge, at acceptere anmodninger i et format, der ligner API'en for OpenAIhvilket i høj grad forenkler integrationen med applikationer, der allerede fungerer med den pågældende standard.

Imidlertid Der er en klar grænse, når vi taler om proprietære modeller som GPT-4.GPT-4 er en lukket model, der hostes på OpenAIs infrastruktur og ikke er tilgængelig til download. Det betyder, at den per definition ikke kan køre på Exo eller noget andet lokalt miljø uden for OpenAI.

  Eksempler på lavniveau-C og hardware-close-sprog

Derfor, når man arbejder med Exo Du skal holde dig til open source-modeller eller dem, der er tilgængelige til lokal brugTil de fleste praktiske anvendelser (chatbots, assistenter, tekstanalyse, grundlæggende og avanceret ræsonnement) findes der allerede et tilstrækkeligt kraftfuldt katalog af open source-modeller, især med den seneste udvikling af modeller som Llama 3.x, Qwen eller DeepSeek.

De vigtigste fordele ved at bruge en Exo-klynge

Exos største fordel er, at det giver mulighed for en drastisk reduktion af hardwareinvesteringer.I stedet for at skulle købe en arbejdsstation med en massiv GPU, kan du genbruge computere og enheder, du allerede har derhjemme eller på kontoret. Mange brugere kunne oprette en klynge blot ved at udnytte deres Macs, en ældre pc og andet underudnyttet udstyr.

Denne tilgang demokratiserer adgangen til avanceret AIDette giver startups og SMV'er med stramme budgetter mulighed for at konkurrere i en liga, der tidligere var forbeholdt velressourcerige virksomheder. Ikke alle projekter retfærdiggør leje af dyre GPU'er i skyen, og det er her, en lokal klynge giver perfekt mening.

Derudover Exo er meget fleksibel med hensyn til enhedstyperSelvom den mest modne understøttelse i øjeblikket findes på macOS (ved hjælp af GPU'er) og Linux (ved hjælp af CPU'er), sigter projektet mod også at integrere andre typer hardware og taktisk forbedre kompatibiliteten. Denne mulighed for at blande forskellige maskinprofiler giver dig mulighed for at designe klyngen i henhold til dine specifikke behov.

En anden vigtig fordel er, at takket være den distribuerede arkitektur, Klyngen kan skaleres relativt nemtHvis du har brug for mere ydeevne på et hvilket som helst tidspunkt, skal du blot tilføje en anden enhed, der kører Exo. Hver ny node registreres automatisk, og dens ressourcer føjes til det samlede antal, uden at du behøver at redesigne systemet fra bunden.

Endelig dynamisk partitionering og topologibevidsthed De garanterer, at selv enheder med beskeden hardware kan bidrage med noget nyttigt. Selvom en ældre bærbar computer ikke vil være i stand til at køre hele systemet alene, kan den håndtere noget af arbejdsbyrden eller udføre nogle af beregningerne, hvilket bidrager til den samlede ydeevne.

Nuværende begrænsninger og punkter at overveje

Ikke alt er perfekt, og Exo forbliver tydeligvis eksperimentel software.Det betyder, at der stadig kan forekomme fejl, ustabil adfærd eller hyppige ændringer i, hvordan systemet er konfigureret og kører. Det er ikke en "indstil det og glem det"-løsning på niveau med et modent kommercielt produkt.

På iOS-enheder som iPhone og iPad, Støtten er stadig begrænset Og det kræver yderligere udvikling for at blive virkelig brugbart for den brede offentlighed. Selvom projektet også forestiller sig at udnytte disse enheder, findes størstedelen af ​​den problemfri oplevelse i øjeblikket på computere.

En anden nøglefaktor er, at Klyngens samlede effektivitet vil i høj grad afhænge af hjemmenetværket.Hvis du har et overbelastet Wi-Fi-netværk, forældede routere eller langsomme forbindelser, kan det blive en betydelig flaskehals at distribuere en stor model på tværs af flere noder. I seriøse miljøer er det næsten en selvfølge, at du vil bruge kabelforbindelser af høj kvalitet eller, i tilfælde af Macs, Thunderbolt 5 med RDMA.

Desuden, selvom summen af ​​mange beskedne enheder kan nå imponerende hukommelsestal, De vil ikke altid konkurrere på rå ydeevne med en klynge af avancerede GPU'er.Der er en hårfin balancegang mellem koordineringsomkostninger, netværkslatenser og effektiv computerkraft, som skal tages i betragtning.

Med alt, Exos værditilbud er fortsat meget interessanttransformering af eksisterende udstyr, stort set uden hardwareomkostninger, til en klynge, der er i stand til at køre modeller, der indtil for nylig syntes eksklusive for specialiserede datacentre.

Exo installation, krav og udførelsesmetoder

Sådan får du Exo op at køre på macOS Det er almindeligt at bruge værktøjer som Homebrew til pakkehåndtering, samt uv til Python-afhængighedshåndtering, macmon til overvågning af hardware på Apple Silicon-chips, Node.js til at bygge webkontrolpanelet og Rust (i øjeblikket i en natlig version) til at kompilere bestemte bindinger.

Den typiske arbejdsgang i macOS går igennem klon det officielle GitHub-arkivInstaller afhængighederne, og kør den tilsvarende kommando for at starte Exo. Dette vil starte både API'en og et lokalt tilgængeligt webdashboard på adressen. http://localhost:52415Derfra kan du se status for klyngen, modeller, instanser osv.

Ud over udførelse af terminal, Exo tilbyder en indbygget macOS-app Denne app kører i baggrunden. Den kræver macOS Tahoe 26.2 eller nyere og distribueres som en .dmg-fil (f.eks. under navnet EXO-latest.dmg). Under installationen kan den bede om tilladelse til at ændre bestemte systemindstillinger og tilføje en netværksprofil, hvilket er nødvendigt for at aktivere avancerede funktioner som RDMA.

I Linux-miljøer involverer installation normalt brug af systemets pakkehåndtering. (som apt på Debian/Ubuntu) eller via Homebrew til Linux, hvis du foretrækker det. Husk, at nogle værktøjer, såsom macmon, er specifikke for macOS og ikke bruges på Linux.

For øjeblikket I Linux kører Exo på CPUI øjeblikket er der ikke fuld understøttelse af GPU-acceleratorer. Udviklingsteamet arbejder på at udvide kompatibiliteten med forskellige hardwareplatforme, så det anbefales at tjekke problemer og funktionsanmodninger på GitHub, hvis du vil vide, om din specifikke enhed muligvis understøttes i fremtiden.

  Elon Musk lancerer 97.400 milliarder dollars bud på OpenAI midt i en strid med Sam Altman

Konfiguration af RDMA via Thunderbolt på macOS

En af de mest slående nye funktioner i de nyeste versioner af macOS Det er tilføjelsen af ​​RDMA-understøttelse, især over Thunderbolt 5-porte. Denne funktion er afgørende for at minimere latenstid mellem fysisk forbundne Mac-computere, hvilket er meget værdifuldt, når man distribuerer en LLM-model.

RDMA er tilgængelig fra og med macOS 26.2 og Det fungerer på enheder med Thunderbolt 5 såsom M4 Pro Mac mini, M4 Max Mac Studio, M4 Max MacBook Pro eller M3 Ultra Mac Studio. I det specifikke tilfælde med Mac Studio bør du dog undgå at bruge Thunderbolt 5-porten, der er placeret ved siden af ​​Ethernet-porten, da den har visse begrænsninger for RDMA.

For at aktivere RDMA, Det er nødvendigt at følge en proces i gendannelsestilstandDe grundlæggende trin involverer at lukke Mac'en ned og tænde den ved at holde tænd/sluk-knappen nede i cirka 10 sekunder, indtil menuen vises. støvle, vælg "Indstillinger" for at åbne gendannelsesmiljøet og åbn Terminal fra menuen Hjælpeprogrammer.

Inden for den gendannelsesterminal, Kommandoen angivet i Exo-dokumentationen udføres for at aktivere RDMA på systemniveau. Efter at have trykket på Enter og genstartet Mac'en, aktiveres funktionaliteten, og Exo kan bruge den til at etablere forbindelser med meget lav latenstid mellem forskellige Mac-computere, der er forbundet via Thunderbolt 5.

Derfra Exo håndterer den komplekse delUdnyttelse af RDMA til at minimere forsinkelser i dataoverførsel mellem noder. Denne forbedring af den interne kommunikation er især vigtig, når man arbejder med modeller, der indeholder hundredvis af milliarder af parametre fragmenteret på tværs af flere maskiner.

Interager med Exo via API og webpanel

Ud over det grafiske dashboard på http://localhost:52415Exo eksponerer en REST API, der giver dig mulighed for at administrere stort set hele modellernes livscyklus: vælge, hvor de skal placeres, oprette instanser, starte chatanmodninger og frigive ressourcer, når de ikke længere er nødvendige.

Et typisk flow kan begynde med at forespørge på slutpunktet /instans/forhåndsvisningerNår du sender parametrene for den model, du vil implementere, returnerer denne tjeneste alle gyldige placeringer for den model i din klyngeDet ville være noget i retning af en liste over mulige "implementeringsplaner" baseret på den nuværende topologi og ressourcer.

Baseret på responsen fra den forhåndsvisning, Du vælger det layout, der passer dig bedst. (for eksempel den første på listen, som du kan vælge med værktøjer som jq fra terminalen) og bruge den til at lave en POST-anmodning til slutpunktet /instansNyttelasten for denne anmodning skal overholde de typer, der er defineret i CreateInstanceParams, herunder parametre som model, hardwarekonfiguration og tildelte noder.

Når instansen er oprettet, Du kan interagere med det ved hjælp af et endpoint, der er kompatibelt med OpenAI API'en, for eksempel /v1/chat/fuldførelserStrukturen af ​​JSON-anmodningen er stort set den samme som den, der bruges med ChatGPT API'en, hvilket gør det meget nemt at tilpasse eksisterende applikationer til at pege på din Exo-klynge i stedet for skyen.

Når du ikke længere har brug for en bestemt model, Du kan frigive den ved at sende en DELETE-anmodning med instans-ID'et.som du kan finde ved at forespørge på slutpunkter som f.eks. /tilstand o /instansPå den anden side er det nyttigt at have hurtige signaler ved hånden, som f.eks. /modeller, som viser alle lokalt tilgængelige modeller, eller selve /state-kommandoen, som beskriver den aktuelle implementeringsstatus.

Projektstatus og udviklingsfællesskab

Exo hostes på GitHub under arkivet exo-explore/exo Den er udviklet åbent med bidrag fra både Exo Labs' kerneteam og fællesskabet. CONTRIBUTING.md-filen beskriver retningslinjerne for at bidrage, indsende pull requests, rapportere fejl og foreslå nye funktioner.

betragtning af, at Det er et levende projekt i konstant udviklingDet er almindeligt, at der udgives nye versioner, forbedret kompatibilitet med forskellige hardwaremodeller og platforme samt ændringer i, hvordan visse komponenter er konfigureret. Derfor er det tilrådeligt ofte at gennemgå dokumentationen og åbne problemer.

Med hensyn til kompatibilitet med acceleratorer, macOS har i øjeblikket mere avanceret understøttelse takket være brugen af ​​GPU og MLXSelvom det er på Linux, kører det i øjeblikket på CPU'en. Teamet har opfordret brugere, der er interesserede i at se understøttelse af nye typer hardware, til at åbne eller understøtte eksisterende anmodninger med reaktioner på GitHub, så de kan prioritere, hvilke platforme der er mest efterspurgte.

Ud fra et økonomisk synspunkt, Exo er fuldstændig gratis og open sourceDer er ingen betalte licenser forbundet med at bruge softwaren, hvilket passer rigtig godt til personlige, uddannelsesmæssige eller små forretningsprojekter, der ønsker at eksperimentere seriøst med AI uden et stort budget.

Exo etablerer sig som en nøgleaktør i demokratiseringen af ​​avanceret AI.Dette giver alle med flere enheder derhjemme eller på kontoret mulighed for at oprette deres egen sprogmodelklynge. Selvom der stadig er et stykke vej igen, er mulighederne enorme for hjemmeautomation, personlige assistenter, dataanalyse og testmiljøer til moderne modeller.