AMD introduceert GAIA – een open-sourceproject dat lokale LLM’s uitvoert op Ryzen AI NPU’s

Het officiële persbericht

AMD heeft een nieuw open-source project gelanceerd genaamd GAIA (spreek uit als /ˈɡaɪ.ə/), een geweldige toepassing die gebruikmaakt van de kracht van de Ryzen AI Neural Processing Unit (NPU) om private en lokale grote taalmodellen (LLM’s) uit te voeren. In deze blog duiken we in de functies en voordelen van GAIA en introduceren we hoe je kunt profiteren van GAIA’s open-source project om het in je eigen applicaties te gebruiken.

Inleiding tot GAIA

GAIA is een generatieve AI-toepassing die is ontworpen om lokale, private LLM’s uit te voeren op Windows pc’s en is geoptimaliseerd voor AMD Ryzen AI-hardware (AMD Ryzen AI 300 Series Processors). Deze integratie zorgt voor snellere, efficiëntere verwerking - d.w.z. minder stroom - terwijl je gegevens lokaal en veilig blijven. Op Ryzen AI-pc’s werkt GAIA samen met de NPU en iGPU om modellen naadloos uit te voeren door gebruik te maken van de open-source Lemonade (LLM-Aid) SDK van ONNX TurnkeyML voor LLM-inferentie. GAIA ondersteunt verschillende lokale LLM’s die geoptimaliseerd zijn om op Ryzen AI PC’s te draaien. Populaire modellen zoals Llama en Phi-derivaten kunnen worden aangepast voor verschillende gebruikssituaties, zoals Q&A, samenvatten en complexe redeneertaken.

Aan de slag met GAIA

Binnen 10 minuten aan de slag met GAIA. Volg de instructies om GAIA te downloaden en te installeren op je Ryzen AI PC. Eenmaal geïnstalleerd kun je GAIA starten en beginnen met het verkennen van de verschillende agents en mogelijkheden. Er zijn 2 versies van GAIA:

1) GAIA Installer - dit draait op elke Windows-pc, maar de prestaties kunnen langzamer zijn.

2) GAIA Hybrid Installer - dit pakket is geoptimaliseerd voor Ryzen AI-pc’s en maakt gebruik van de NPU en iGPU voor betere prestaties.

De Agent RAG-pijplijn

Een van de opvallende kenmerken van GAIA is de Retrieval-Augmented Generation (RAG) pijplijn van de agent. Deze pijplijn combineert een LLM met een kennisbank, waardoor de agent relevante informatie kan ophalen, kan redeneren, plannen en externe tools kan gebruiken binnen een interactieve chatomgeving. Dit resulteert in meer accurate en contextueel bewuste antwoorden.

De huidige GAIA-agenten bieden de volgende mogelijkheden:

Eenvoudige voltooiing via prompt: Geen agent voor directe interactie met het model voor testen en evalueren.
Chaty: een LLM chatbot met geschiedenis die een gesprek aangaat met de gebruiker.

Clip: een Agentic RAG voor YouTube zoeken en Q&A agent.

Joker: een eenvoudige grapgenerator die RAG gebruikt om humor naar de gebruiker te brengen.

Aanvullende agents zijn momenteel in ontwikkeling en ontwikkelaars worden aangemoedigd om hun eigen agent te maken en bij te dragen aan GAIA.

Hoe werkt GAIA?

De linkerkant van Figuur 2: GAIA Overzichtsdiagram illustreert de functionaliteit van Lemonade SDK van TurnkeyML. Lemonade SDK biedt tools voor LLM-specifieke taken zoals prompting, nauwkeurigheidsmeting en serving over meerdere runtimes (bijv. Hugging Face, ONNX Runtime GenAI API) en hardware (CPU, iGPU en NPU).

Lemonade stelt een LLM webservice beschikbaar die communiceert met de GAIA toepassing (rechts) via een OpenAI compatibele REST API. GAIA bestaat uit drie hoofdcomponenten:

1) LLM Connector - overbrugt de web-API van de NPU-service met de op LlamaIndex gebaseerde RAG-pijplijn.

2) LlamaIndex RAG Pipeline - Bevat een query engine en vectorgeheugen, dat relevante externe informatie verwerkt en opslaat.

3) Agent Web Server - Maakt via WebSocket verbinding met de GAIA UI, waardoor gebruikersinteractie mogelijk is.

Aan de rechterkant van de figuur fungeert GAIA als een AI-agent die gegevens ophaalt en verwerkt. Het vectoriseert externe inhoud (bijv. GitHub, YouTube, tekstbestanden) en slaat deze op in een lokale vectorindex. Wanneer een gebruiker een zoekopdracht geeft, vindt het volgende proces plaats:

1) De query wordt naar GAIA gestuurd, waar hij wordt omgezet in een inbeddingsvector.

2) De gevectoriseerde query wordt gebruikt om relevante context op te halen uit de geïndexeerde gegevens.

3) De opgehaalde context wordt doorgegeven aan de webservice, waar deze wordt ingesloten in de prompt van LLM.

4) De LLM genereert een antwoord dat wordt teruggestuurd via de GAIA webservice en wordt weergegeven in de gebruikersinterface.

Dit proces zorgt ervoor dat gebruikersvragen worden aangevuld met relevante context voordat ze worden verwerkt door de LLM, waardoor de nauwkeurigheid en relevantie van het antwoord worden verbeterd. Het uiteindelijke antwoord wordt in realtime via de gebruikersinterface aan de gebruiker geleverd.

Voordelen van lokale LLM’s

Lokaal LLM’s uitvoeren op de NPU biedt verschillende voordelen:

Verbeterde privacy, omdat geen gegevens je machine hoeven te verlaten. Hierdoor is het niet meer nodig om gevoelige informatie naar de cloud te sturen, waardoor de gegevensprivacy en -beveiliging aanzienlijk worden verbeterd terwijl er toch krachtige AI-mogelijkheden worden geboden.

Lagere latentie, omdat er geen communicatie met de cloud nodig is.

Geoptimaliseerde prestaties met de NPU, wat leidt tot snellere reactietijden en een lager energieverbruik.

NPU en iGPU vergelijken

Het draaien van GAIA op de NPU resulteert in betere prestaties voor AI-specifieke taken, omdat het is ontworpen voor inferentiewerkbelastingen. Vanaf versie 1.3 van de Ryzen AI-software is er hybride ondersteuning voor het inzetten van gekwantificeerde LLM’s die gebruikmaken van zowel de NPU als de iGPU. Door beide componenten te gebruiken, kunnen ze elk worden toegepast op de taken en bewerkingen waarvoor ze zijn geoptimaliseerd.

Toepassingen en industrieën

Deze opzet kan van voordeel zijn voor industrieën die hoge prestaties en privacy vereisen, zoals de gezondheidszorg, de financiële sector en bedrijfstoepassingen waar dataprivacy van cruciaal belang is. Het kan ook worden toegepast op gebieden als contentcreatie en klantenserviceautomatisering, waar generatieve AI-modellen essentieel worden. Tot slot helpt het industrieën zonder Wi-Fi om gegevens naar de cloud te sturen en antwoorden te ontvangen, omdat alle verwerking lokaal gebeurt.

Conclusie

Tot slot gebruikt GAIA, een open-source AMD-toepassing, de kracht van de Ryzen AI NPU om efficiënte, private en krachtige LLM’s te leveren. Door LLM’s lokaal uit te voeren, zorgt GAIA voor verbeterde privacy, verminderde latentie en geoptimaliseerde prestaties, waardoor het ideaal is voor industrieën die prioriteit geven aan gegevensbeveiliging en snelle reactietijden.

Bronnen: TechPowerUp, AMD Developer Blog