Lokale ChatGPT-Kopie ermöglicht Offline-Nutzung | Alpaca/LLaMA getestet

Es ist möglich, eine Sprach-KI in nur 4,2 Gigabyte auf einem lokalen Rechner zum Laufen zu bringen, ohne dass eine Internetverbindung benötigt wird. Dies wurde durch die Erstellung einer ChatGPT-Kopie namens Alpaca/LLaMA erreicht, die offline genutzt werden kann. Eine beeindruckende Demonstration davon zeigt, dass die KI auf Fragen wie "Warum ist der Himmel blau?" in Sekundenschnelle eine korrekte Antwort liefert.



Transkript des Videos


(Hinweis: Es handelt sich hier um einen Bonusinhalt für Menschen, die das Video oben nicht schauen können oder wollen. Die Informationen auf der Bildspur gibt das Transkript nicht wieder.)


Guckt mal hier, das ist ein ganz normaler Rechner, der übrigens nicht mit dem Internet verbunden ist. Und ich stelle hier jetzt auf Englisch die Frage: "Warum ist der Himmel blau?" Tja, und sofort kommt die korrekte Antwort.


Was ist die Hauptstadt von Tansania? Jo, Dodoma, richtig. Schreib ein Gedicht über Artischocken. Zack. Wenn ihr jetzt denkt, pfft, ist doch nix Besonderes: Dann liegt ihr völlig falsch. Denn das ist etwas, was noch vor ein paar Wochen völlig undenkbar gewesen wäre.


Ein ausgewachsenes KI-Sprachmodell läuft lokal auf Consumer-Hardware. Bislang klappte sowas nur auf immens teurer Server-Grafik Hardware und mit "immens teuer" meine ich: Hardware für so ungefähr 80.000 Euro.


In diesem Video erkläre ich euch, was der Unterschied zwischen LLaMA und Alpaca ist. So heißen nämlich die Sprachmodelle, die ich benutze. Warum das, ja wirklich, ein historischer Moment ist und vor allem: Wie ihr das selbst auf euren Rechnern installiert kriegt. Es reicht theoretisch sogar ein Raspberry Pi.


Liebe Hackerinnen, liebe Internet-Surfer, herzlich willkommen hier bei…


Ja, wieder ein KI-Video, aber leider musste das sein, weil ich einfach wirklich komplett umgehauen war, davon, dass ich auf meinem kleinen Kartoffelcomputer hier ein ausgewachsenes Sprachmodell laufen lassen kann, das quasi das Weltwissen beinhaltet. Oder etwas weniger dramatisch ausgedrückt: Nahezu das gesamte Wissen, was man im Internet findet. Also das Ding läuft wirklich komplett lokal im Vergleich zum Beispiel zu ChatGPT, bei dem der Informatik-Professor Tom Goldstein davon ausgeht, dass man, nur um das zum Laufen zu bekommen, fünf Nvidia-A100-Server-GPUs braucht – mit jeweils 80 GB RAM.


Den günstigsten Preis, den ich für eine dieser Karten gefunden habe, waren 16.694 Euro. Mal fünf sind wir also bei über 83.000 Euro. Und klar, solche Hardware kauft man gewöhnlich nicht, sondern man mietet sie in der Cloud. Aber insgesamt ist das alles nichts, womit man zu Hause rumspielen könnte.


Nicht nur wegen der Hardware, sondern auch, weil die Macher hinter Chat-GPT und GPT-3 und GPT-4, nämlich OpenAI, eben gar nicht mal so open sind, sondern einem nur das Ergebnis verkaufen wollen, aber nicht die Technik dahinter. Die ganzen großen OpenAI-Produkte sind nämlich Blackboxes.


So und jetzt ist aber neulich Meta, also Ex-Facebook, um die Ecke gekommen und hat LLaMA veröffentlicht - mit zwei "L". Nicht zu verwechseln mit LaMDA von Google. LLaMA ist ein mit GPT vergleichbares Sprachmodell, nur eben deutlich offener. Anders als OpenAI sagt Meta zum Beispiel ganz genau, mit welchen Daten sie das Modell trainiert haben. Den größten Teil, nämlich 67%, machen fünf englische CommonCrawl-Dumps aus, die jeweils den Inhalt von, Achtung, drei Milliarden Websites beinhalten. Also da hätte ein Mensch wahrscheinlich so ein, zwei Stunden dran zu lesen.


4,5 Prozent der Lama-Trainingsdaten sind Code von GitHub, weitere 4,5 Prozent Wikipedia-Dumps in unterschiedlichen Sprachen, 4,5 Prozent Bücher von Project Gutenberg und Book3 und noch ein paar andere Sachen. Insgesamt 4,7 Terabyte reiner Text. Ich verlinke euch das Meta-Paper mal in der Beschreibung. Das ist nämlich wirklich einigermaßen verständlich, fand ich, und sehr interessant.


Ja und LLaMAist nicht nur offener, was die Quellen angeht, sondern Meta sagt sogar ganz genau, wie viel Energie das Training von Lama gekostet hat. Laut Facebook haben 2048 dieser schon erwähnten 80-Gigabyte-A100-Karten fünf Monate lang geackert. Das hat 2638 Megawattstunden Energie gekostet und 1015 Tonnen CO2 ausgestoßen. Also so viel wie 267 Leute, die von München nach New York fliegen.


Kostenmäßig rechnet man so ungefähr einen US-Dollar für eine A100-Stunde in der Cloud und das ergibt 7,3 Millionen US-Dollar. Also so viel hat das Training gekostet. So, aber Meta gibt nicht nur diese Hintergrundinfos raus, sondern auch die Software selbst. Allerdings nicht zu 100 Prozent, denn wer Zugriff auf die sogenannten Models haben will, also die benötigten Daten, muss das manuell beantragen. Und wenn Meta findet, dass man die haben darf, kriegt man sie kostenlos. Ja, Meta will das halt gerne entscheiden. Ja, aber ein paar Tage später fanden sich die Daten dann als Torrent im Netz. Und ja, dann war die Katze aus dem Sack. Und jetzt konnte also quasi jeder auf die Software zugreifen, ob Meta das nun wollte oder nicht.


Es haben dann natürlich sofort ganz viele Leute angefangen, damit herumzuexperimentieren. Und das meiner Meinung nach beeindruckendste Projekt haben fünf Stanford-Forscher durchgezogen. Sie haben das Lama-Sprachmodell genommen und ist Richtung ChatGPT feingetuned. Alpaca heißt das Projekt. Checkt ihr, LLaMA, Alpaca. Denn das Problem ist, dass Lama out-of-the-box nicht so gut Fragen beantworten kann, sondern nur Sätze vervollständigen.


Statt also zu fragen, was mache ich an einem Wochenende in Hannover am besten, muss man hier etwas mehr nachdenken und sowas schreiben wie: "Ein perfektes Wochenende in Hannover besteht aus…" Und das wird dann vervollständigt. Ja,. und das krasse ist, dass die halt einfach 100 Dollar genommen haben und dann bei OpenAI über die API-Schnittstelle GPT-3 Textzugang gekauft haben und da dann 52.000 Frage-Antwort-Paare abgeschnorchelt haben.


Und die Fragen haben sie sich nicht mal selbst ausgedacht, sondern sie haben 175 Fragen vorgegeben, mit denen GPT-3 gefüttert und ja, dann hat GPT-3 dann halt Zehntausende neue Fragen ausgespuckt. Also hat quasi die eigene Seele freigelegt oder den eigenen Kern.


Ja, und dann haben die Stanford-Forscher nochmal 500 US-Dollar in die Hand genommen und damit in der Cloud Rechenleistung gekauft und dann mit den 52.000 Frage-Antwort-Paaren das vorhandene LLaMA-Modell feingetunet. Das was dann rauskam war Alpaca. Und das soll laut Stanford-Forscher hinsichtlich seiner Fähigkeiten mit text-davinci-003 vergleichbar sein, einem der besten GPT-Untersprachmodelle von OpenAI. Und das mit nur 7 Milliarden Parametern. Text-davinci-003 hat 175 Milliarden. Also die haben für 600 US-Dollar ein State-of-the-Art KI-Sprachmodell trainiert bzw. geklont. Bis vor kurzem war das absolut undenkbar.


Dass sowas immer billiger wird, das haben in der Vergangenheit Leute anhand Moore's Law zwar prognostiziert, aber dass das so schnell geht, das hätte niemand erwartet. Alpaca kann man sich Stand heute einfach herunterladen. Man braucht da nicht mal mit Torrents herumhantieren oder so, einfach nur ein Befehl auf der Kommandozeile reicht.


Aber es bewegt sich natürlich in einem rechtlichen Graubereich. Schließlich nimmt es als Basis LLaMA von Meta, was ja eigentlich nur Leute haben dürfen, denen Meta den Zugang erlaubt hat. Und es wurde halt auch das Closed-Source-GPT-3 Sprachmodell von OpenAI genutzt, um Alpaca feinzutunen, was laut OpenAI auch nicht rechtens ist.


Bislang haben sowohl Meta als auch OpenAI noch nicht auf Alpaka reagiert. Ich würde aber sagen, dass man Alpaca definitiv nicht für kommerzielle Anwendungen benutzen sollte. Das könnte nach hinten losgehen. Ob man als Privatmensch Probleme bekommt, wenn man damit herumhantiert, weiß ich ehrlich gesagt nicht. Ich würde vielleicht ein bisschen zur Vorsicht raten, guckt euch das Video an, vielleicht reicht euch das dann schon.


Ich gehe sehr stark davon aus, dass die Büchse der Pandora jetzt eh geöffnet ist und sich aus diesem ganzen Tohuwabohu vermutlich bald eine echte 100% offene und legale Open-Source-Lösung herauskristallisiert.


So ähnlich wie kurz nach dem Release von Open AIs Bildgenerator Dall-E2 ja auch Stable Diffusion auf der Bildfläche erschienen. Und ja klar können intelligente Sprachmodelle für böse Dinge eingesetzt werden, aber ich sehe das ähnlich wie die Alpaca-Entwickler. Die schreiben nämlich in der Dokumentation, dass ihnen natürlich bewusst ist, dass Risiken bestehen, aber ihrer Auffassung nach die Vorteile für die Forschungscommunity schwerer wiegen als die Nachteile.


Oder? Wie seht ihr das? Wird aus solchen Sprachmodellen jetzt Skynet und unterjocht die Menschheit? Wird das Internet in Textschrott und Spam ertrinken? Gerne in die Kommentare schreiben und natürlich gerne abonnieren, dann freuen wir uns. Aber dass das Geschäftsmodell von OpenAI gerade ganz schön wackelt, das dürfte auf jeden Fall klar sein.


Aber wie installiert man den Kram denn jetzt? Also vorgewarnt über die unklare rechtliche Situation habe ich euch ja schon. Meine Empfehlung wäre generell, wartet noch ein bisschen ab, das ist alles noch ziemlich buggy und instabil. Also jetzt fernab von der rechtlichen Situation.


Wenn ihr aber hart drauf seid und das unbedingt versuchen wollt, am einfachsten fanden wir die Installation mit Dalai. Checkt ihr: Alpaca, LLaMA, Dalai LlamA? LOL. Das läuft über die JavaScript-Laufzeitumgebung Node.js und macht einfach einen lokalen Web-Server auf, dann lässt sich das über einen Browser bedienen.


Und das Beste, das Ganze funktioniert egal ob ihr Windows, Mac oder Linux verwendet. Ich habe auf Twitter auch Leute gesehen, die sich schon auf dem Android-Handy installiert haben. Und natürlich auf einem alten Windows-Rechner, moderneren PC und einem mit M2 Max.


Zuerst müsst ihr euch Node.js und Python installieren, falls ihr das nicht eh schon auf dem Rechner habt. Bei Windows nutzt ihr am besten Visual Studio, da kommt Node.js und das benötigte Python direkt mit. Diese drei Optionen hier müsst ihr bei der Installation angeklickt haben. Bei einem unserer Windows Testrechner musste ich danach nochmal manuell Node.js installieren und zwar die 18er-LTS-Version, damit die Installation funktioniert hat.


Bei Windows müsst ihr dann die Kommandozeile aufmachen, also cmd, nicht powershell und bei macOS und Linux einfach das Terminal und dann gebt ihr da den Befehl npx dalai alpaca install 7b ein. Bestätigen. Je nach Rechnergeschwindigkeit kurz oder lang warten und dann npx dalai serve. Und das war's.


Dann könnt ihr einfach im Browser aufmachen localhost:3000 und dann kommt ihr direkt auf die grafische Oberfläche. Ja und ab jetzt braucht ihr kein Internet mehr, das läuft alles lokal auf dem Rechner.


Wenn übrigens irgendwas nicht richtig funktioniert, dann könnt hier "Debug" anklicken, seht ihr noch ein paar Details, was da im Hintergrund passiert. "n_predict" am Anfang, das ist voreingestellt auf 200, das ist einfach die Anzahl der Tokens, die da ausgegeben werden. Ein Token sind vier Buchstaben, also das könnt ihr dann erhöhen, wenn ihr längere Texte haben wollt. Und wichtig ist noch "temp", das ist die Temperatur. Je mehr ihr Richtung 0 kommt, desto statischer und langweiliger, aber auch korrekter werden die Ergebnisse. Und je mehr ihr Richtung 1 kommt, also 0,9 zum Beispiel, das bedeutet, dass das System kreativer wird. Also fängt ein bisschen mehr an zu freestylen und die Fehler, die ja sowieso solche Sprachmodelle machen, nicht vergessen, die werden dann auch mehr.


Aber damit kann man auf jeden Fall viel rumexperimentieren, ganz anders als mit den anderen Sprachmodellen, wo man ja viel weniger Einflussmöglichkeiten hat. Dalai bietet auch so Templates an, also so voreingestellte Modi, hier zum Beispiel "Translate", das ist zum Übersetzen, "Rewrite" ist zum Umschreiben und da klickt man dann einfach drauf und da, wo "Prompt" steht, gibt man dann einfach ein, zum Beispiel hier was man übersetzt haben will.


Alle Befehle für die Installation schreiben wir euch auch noch mal in die Videobeschreibung und ansonsten steht das alles auf der Dalai-GitHub-Seite. Die verlinken wir euch natürlich auch in der Beschreibung. Da sind auch die Befehle, die ihr braucht, um euch die größeren Modelle auf euren Rechner zu laden. Also sowohl Alpaca, da gibt es mehrere als auch von LLaMA. Und wenn ihr das Installieren hinter euch habt, sieht es dann so aus. Hier rechts könnt ihr das Sprachmodell auswählen. Das fetteste Modell "llama.65B" braucht 32 GB Speicher, "alpaca.7B" nur 4 GB. Und übrigens nicht Videospeicher, sondern Dalai läuft ja auf der CPU, also einfach Systemspeicher.


Der Trick, dass das mit so wenig Speicher zurechtkommt, ist übrigens die Quantisierung auf 4-Bit. Dadurch nehmen die Modelle deutlich weniger Speicher ein, aber ob die Quantisierung zu einer Qualitätsverschlechterung der Texte führt, ist bislang auch der Forschungsgemeinde noch so ein bisschen unklar. Wie gesagt, das ist alles noch total Work-in-Progress, da gibt es noch sehr viel herauszufinden. Generell ist einfach das Aufregendste, dass das überhaupt schon auf Consumer-Hardware irgendwie läuft und die Modelle machen auch grob das, was ChatGPT auch kann, sind aber in vielerlei Hinsicht, zumindest bei unseren Tests, deutlich schlechter.


Das mittlere "llama.30b"-Modell hat hier zum Beispiel nur sowas produziert. Also zu viel Leitpaste getrunken da in meinem Rechner. Keine Ahnung. Also ihr solltet nicht denken, dass ihr damit ChatGPT und GPT-4 sofort ersetzen könnt. Auf gar keinen Fall.


Aber wie gesagt, dass es überhaupt schon einigermaßen geht – das ist halt krass und zeigt, mit was für einer Geschwindigkeit sich das KI-Thema gerade weiterentwickelt und zwar jetzt auch außerhalb der etablierten Tech-Unternehmen. Ich glaube, wir müssen uns wirklich anschnallen. Das wird zwar aufregend, aber auch holperig. Tschüss.


c't 3003 ist der YouTube-Channel von c't. Die Videos auf c’t 3003 sind eigenständige Inhalte und unabhängig von den Artikeln im c’t magazin. Die Redakteure Jan-Keno Janssen und Lukas Rumpler sowie die Video-Producer Şahin Erengil und Pascal Schewe veröffentlichen jede Woche ein Video.






Kommentare


Anzeige