From 0813d9d1e645cab12c5d19f85c412d0b1c9e98c2 Mon Sep 17 00:00:00 2001 From: Kristian Koehntopp Date: Fri, 31 May 2024 11:50:39 +0200 Subject: [PATCH] publish 2024-05-31-llms-daheim-mit-ollama.md --- .../2024-05-31-llms-daheim-mit-ollama.md | 413 ++++++++++++++++++ static/uploads/2024/05/ollama-1.png | Bin 0 -> 23462 bytes static/uploads/2024/05/ollama-2.png | Bin 0 -> 41702 bytes static/uploads/2024/05/ollama-3.png | Bin 0 -> 7321 bytes 4 files changed, 413 insertions(+) create mode 100644 content/posts/2024-05-31-llms-daheim-mit-ollama.md create mode 100644 static/uploads/2024/05/ollama-1.png create mode 100644 static/uploads/2024/05/ollama-2.png create mode 100644 static/uploads/2024/05/ollama-3.png diff --git a/content/posts/2024-05-31-llms-daheim-mit-ollama.md b/content/posts/2024-05-31-llms-daheim-mit-ollama.md new file mode 100644 index 0000000000..b256f5fc45 --- /dev/null +++ b/content/posts/2024-05-31-llms-daheim-mit-ollama.md @@ -0,0 +1,413 @@ +--- +author: isotopp +title: "LLMs daheim mit Ollama" +date: "2024-05-31T05:06:07Z" +feature-img: assets/img/background/rijksmuseum.jpg +toc: true +tags: +- lang_de +- computer +- erklaerbaer +- ai +--- + +Dieser Text ist eine Art Followup für [Wie ChatGPT funktioniert]({{< relref "/2024-02-06-wie-chatgpt-funktioniert.md" >}}). +Es geht darum, ein LLM lokal auszuführen und damit zu experimentieren. + +Wer mit LLMs daheim experimentieren möchte, der steht vor dem Problem, +einen Haufen furchtbar empfindlicher und schlecht zu aktualisierender Abhängigkeiten in Python zu installieren, +monströse Downloads zu verwalten und die Ausführung für die eigene Maschine zu optimieren. +Das wird ein bischen verbessert mit [llama.cpp](https://github.com/ggerganov/llama.cpp), +einer C++/C Bibliothek, die einem einen Teil der Arbeit abnimmt, +aber man hat immer noch kein Paket, mit dem man einfach Ergebnisse bekommt. + +Abhilfe schafft hier [Ollama](https://github.com/ollama/ollama), +eine in Golang geschriebene Anwendung, +die llama.cpp integeriert und den Download, die Verwaltung und die Ausführung von LLMs automatisiert. +Die [Website](https://ollama.com/) verweist auf das Blog, +den Discord und das Github von Ollama, und hat eine Suche, +mit der man auf Ollama angepaßte LLms finden und herunterladen kann. + +# Installation + +LLMs sind rechenintensive Monster, die eine große Maschine zur Ausführung brauchen. +Aber eingedampfte Spezialversionen kann man schon auf einem großen Raspi ausführen. +Größe ist jedoch ein qualitativer Unterschied: +Ein LLM mit 0.3 Mrd Parameters verhält sich ganz anders als eines mit 8 Mrd. Parametern, +und dieses wiederum wird von einem LLM mit 70 Mrd. Parameters vollkommen deklassiert. +Ersteres kann man auf einem Raspi ausführen, +die 8 Mrd Parameter-Modelle oft auf einem Mac oder Windows-Rechner mit 32 GB RAM oder 12 GB VRAM in der Grafikkarte, +und die 70 Mrd. Parameter-Modelle brauchen in der Regel Spezialrechner mit 128 GB RAM und zwei 24 GB NVidia-Karten kombiniert. + +In meinem Fall steht mir + +- ein Mac mini M2pro mit 32 GB RAM und 8+4 Cores +- ein Windows 11 Rechner mit 64 GB RAM und NVidia 4070Ti (12 GB VRAM) + +zur Verfügung. Beide Maschinen haben ausreichend Plattenplatz auf NVME. + +Man kann sich Ollama von der Website herunterladen und installieren, +oder das Golang Projekt selbst clonen und compilieren, +aber die einfachste Weise der Installation sind Paketmanager für MacOS und Windows. + +Auf dem Mac habe ich Homebrow, und `brew install ollama` ist die schnellste und einfachste Methode, +Ollama zu installieren und aktuell zu halten. +Auf Windows geht dasselbe mit [Scoop](https://scoop.sh/), `scoop install ollama` regelt die Details. + +# `ollama serve` ausführen + +Ollama wird als Server ausgeführt. +Dazu muß man `ollama serve` starten. + +Alle weiteren Operationen setzen voraus, daß in einem Fenster irgendwo `ollama serve` aktiv ist, +denn alle weiteren Operationen tun nichts anderes als REST-Requests an `ollama serve` zu senden. +Dies kann mit der `ollama`-Kommandozeile passieren, oder man schreibt sich eigene Python-Programme, die das tun + +```console +$ ollama serve +kk:~ kris$ ollama serve +2024/05/31 09:52:25 routes.go:1008: INFO server config + env="map[OLLAMA_DEBUG:false OLLAMA_LLM_LIBRARY: OLLAMA_MAX_LOADED_MODELS:1 OLLAMA_MAX_QUEUE:512 + OLLAMA_MAX_VRAM:0 OLLAMA_NOPRUNE:false OLLAMA_NUM_PARALLEL:1 + OLLAMA_ORIGINS:[http://localhost ... https://0.0.0.0:*] + OLLAMA_RUNNERS_DIR: OLLAMA_TMPDIR:]" +time=2024-05-31T09:52:25.124+02:00 level=INFO source=images.go:704 msg="total blobs: 28" +time=2024-05-31T09:52:25.131+02:00 level=INFO source=images.go:711 msg="total unused blobs removed: 0" +[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached. +... +time=2024-05-31T10:02:15.032+02:00 level=INFO source=payload.go:44 msg="Dynamic LLM libraries [metal]" +time=2024-05-31T10:02:15.090+02:00 level=INFO source=types.go:71 msg="inference compute" + id=0 library=metal compute="" driver=0.0 name="" total="21.3 GiB" available="21.3 GiB" + +``` + +Ollama lädt später Parameterdaten für die LLMs herunter. Diese nehmen einige Gigabyte Plattenplatz ein. +Per Default legt das MacOS Ollama dies im Home des Benutzers ab, in `$HOME/.ollama/models`. +Man kann dies mit einer Umgebungsvariable umstellen. + +In diesem Fall muss man `OLLAMA_MODELS` setzen: + +```console +kk:~ kris$ ollama serve --help +Start ollama + +Usage: + ollama serve [flags] + +Aliases: + serve, start + +Flags: + -h, --help help for serve + +Environment Variables: + + OLLAMA_HOST The host:port to bind to (default "127.0.0.1:11434") + OLLAMA_ORIGINS A comma separated list of allowed origins + OLLAMA_MODELS The path to the models directory (default "~/.ollama/models") + OLLAMA_KEEP_ALIVE The duration that models stay loaded in memory (default "5m") + OLLAMA_DEBUG Set to 1 to enable additional debug logging + +$ kk:~ kris$ mkdir /Volumes/Ablage/Torch/ollama-models/ +$ OLLAMA_MODELS=/Volumes/Ablage/Torch/ollama-models/ ollama serve +``` + +Der Speicher dort sollte schnell sein und ausreichend Raum bereit stellen: + +```console +kk:~ kris$ df -h /Volumes/Ablage +Filesystem Size Used Avail Capacity iused ifree %iused Mounted on +/dev/disk9s1 3.6Ti 804Gi 2.9Ti 22% 360k 31G 0% /Volumes/Ablage +kk:~ kris$ du -sh /Volumes/Ablage/Torch/ollama-models + 54G /Volumes/Ablage/Torch/ollama-models +kk:~ kris$ ollama list +NAME ID SIZE MODIFIED +llama3:70b-instruct-q2_K 693db6efd8f9 26 GB 6 days ago +llama3:instruct 365c0bd3c000 4.7 GB 6 days ago +mistral:instruct 2ae6f6dd7a3d 4.1 GB 6 days ago +gemma:instruct a72c7f4d0a15 5.0 GB 6 days ago +llama3-gradient:instruct 5d1398df5b8b 4.7 GB 6 days ago +phi3:14b 1e67dff39209 7.9 GB 7 days ago +llava-llama3:latest 44c161b1f465 5.5 GB 7 days ago +llama3-gradient:latest 5d1398df5b8b 4.7 GB 7 days ago +phi3:14b-instruct 1e67dff39209 7.9 GB 7 days ago +``` + +Der Ollama-Server bindet sich an localhost, Port 11434 und lauscht nun auf eingehende REST-Requests. +Diese können dazu führen, daß ein Model geladen und ausgeführt wird. +Das kann beim ersten Mal einige Zeit dauern, da viele Gigabyte Daten geladen werden müssen. + +Der Server hält das Model einige Zeit im Speicher, `OLLAMA_KEEP_ALIVE` viele Minuten. +Der Default ist 5m. +Danach wird der Speicher wieder frei gegeben. + +# Modelle aus dem Internet laden + +LLMs sind recht komplizierte Konstrukte mit der eigentlichen Parameter-Datei, die den Großteil der Daten aus macht, +einem Systemprompt und weiteren Layers, die meist eher nicht so groß sind. +Auf einem handelsüblichen Desktop-Rechner kann man meist erwarten, ein "7B" oder "8B"-Modell auszuführen. +Dies belegt zwischen 5 GB und 9 GB an Speicher, im RAM oder auf der Grafikkarte. + +Richtig große Modelle, 70B-Modelle, brauchen wesentlich mehr Speicher und eine Hardware, +die für die Ausführung von LLMs auf mehreren Grafikkarten vorbereitet ist. + +Ein guter Startpunkt ist das Mistral AI-Model [Mistral](https://ollama.com/library/mistral). +Man lädt es mit `ollama pull mistral:instruct` herunter. +Das wird Zeit lang dauern und das Model-Directory entsprechend voll machen. + +**HINWEIS:** Noch einmal die Erklärung, daß alle Arbeit von `ollama serve` erledigt wird. +Wenn dieses Kommando nicht aktiv ist, funktioniert keines der anderen Kommandos. +`ollama pull`, `ollama run` und auch `ollama rm` senden lediglich REST-Requests an den Server, +der dann die Arbeit macht. + +```console +kk:~ kris$ ollama pull mistral:instruct +pulling manifest +pulling ff82381e2bea... 100% ▕████████████████▏ 4.1 GB +pulling 43070e2d4e53... 100% ▕████████████████▏ 11 KB +pulling c43332387573... 100% ▕████████████████▏ 67 B +pulling ed11eda7790d... 100% ▕████████████████▏ 30 B +pulling 42347cd80dc8... 100% ▕████████████████▏ 485 B +verifying sha256 digest +writing manifest +removing any unused layers +success + +``` + +# Modelle ausführen + +Das Modell kann man mit `ollama run mistral:instruct` testen. + +```console +>>> /set verbose +Set 'verbose' mode. +>>> Explain in a single sentence "Why is the sky blue?" + The sky appears blue because molecules in the Earth's atmosphere scatter +sunlight in all directions, and blue light is scattered more because it +travels in shorter, smaller waves. + + +total duration: 1.559908875s +load duration: 2.719417ms +prompt eval count: 23 token(s) +prompt eval duration: 303.421ms +prompt eval rate: 75.80 tokens/s +eval count: 41 token(s) +eval duration: 1.245361s +eval rate: 32.92 tokens/s +``` + +Wir sehen hier, daß mein M2pro mini 32 GB 1.56 Sekunden gebraucht hat, um diese Antwort zu generieren. +Die Frage hat "23 Token" belegt, die mit 75 Token/s analysiert worden sind. + +Die Generierung der Ausgabe hat 41 Token erzeugt, 1.25s gedauert und ist mit 33 Token/s gelaufen. +Der Rechner hat dabei ca. 50 Watt gezogen. + +![](/uploads/2024/05/ollama-3.png) + +*Ausgabe der MacOS App Stats (`brew install stats`), der Rechner verbraucht normal ca. 7 Watt, mit dem LLM aktiv 50 Watt.* + +![](/uploads/2024/05/ollama-1.png) + +*Ausgabe der MacOS App Stats, hier: GPU Auslastung. Dies ist die einzige Anwendung, die die Mac mini GPU an den Anschlag bringt.* + +Die NVidia 4070Ti kommt auf mehr als 70 Token/s, zieht aber über 400 W. + +Der `ollama run`-Prompt kann mit `/bye` verlassen werden. + +Die vorhandenen Modelle können mit `ollama list` aufgelistet werden. +Mit `ollama rm` löscht man ein lokales Modell und gibt den Plattenplatz frei. +Es muss dann neu heruntergeladen werden. + +```console +kk:~ kris$ ollama rm llama3:instruct +deleted 'llama3:instruct' +``` + +# Arbeiten mit `ollama run`: Texte zusammenfassen + +Für das folgende Beispiel ist ein laufender Server `ollama serve` erforderlich, +das Modell `mistral:instruct` muß bereit stehen (d.h. `ollama list` zeigt es an), +und wir verwenden den Text [The 64-Square Madhouse](https://www.gutenberg.org/files/61213/61213.txt) von Fritz Leiber. + +Das Ziel ist es, Ollama diesen Text mit Hilfe von Llama 3 zusammenfassen zu lassen. + +1. Den Text von Fritz Leiber vom Projekt Gutenberg herunterladen. + Es ist hilfreich, allen Copyright-Text am Anfang und am Ende weg zu schneiden, + um dem Modell nur die Story selbst zu füttern. +2. Server starten: `ollama serve`. + Dabei sind ggf. die notwendigen Parameter als Umgebungsvariablen zu setzen, damit die Modelle gefunden werden. +3. Modell prüfen: `ollama list` zeigt das Modell `mistral:instruct` als vorhanden an. + Ansonsten muss es mit `ollama mistral llama3:instruct` herunter geladen werden. +4. Den Prompt mit `ollama run mistral:instruct` starten. + +Wir verwenden hier das Modell `mistral:instruct` von [Mistral AI](https://en.wikipedia.org/wiki/Mistral_AI). +Das ist eine Firma von ehemaligen Google und Meta/Facebook Mitarbeitern, die vor einem Jahr in Paris gegründet wurde. + +Auf dem Prompt erfolgt die Kommunikation mit dem Modell in Englisch. +Manche Modelle sind ausdrücklich mehrsprachig trainiert (zum Beispiel [Mixtral](https://ollama.com/library/mixtral)), +aber wenn dies in der Anleitung zum Modell nicht angegeben ist, ist Englisch zu verwenden. + +Wir können dem Modell eine Anfrage in einer Zeile stellen. +Mehrzeilige Anweisungen werden mit `"""` eingeleitet und genau so beendet. + +Es ist ein `instruct`-Modell, es wird also keine Annahmen machen, sondern wir müssen Arbeitsanwendungen geben. + +Wir können dem Client Parameter setzen. +Dies erfolgt mit `/`-Kommandos, `/help` für eine Übersicht. + +Modelle haben Parameter. +Ein wichtiger Parameter ist `num_ctx` (manchmal auch n_ctx). +Er bestimmt die Anzahl der Token, die das Modell als Kontextspeicher für die Antwortgenerierung verwendet. + +Ein Embedding ist ein vieldimensionaler Vektor, der Bedeutung von Worten codiert. +Es belegt etwa 1 Kilobyte an Speicher. +Ein Token ist ein Zeiger auf ein Embedding, aber im Kontext der Antwortgenerierung wird das Token kopiert. +Ein Kontext von 65536 belegt also in etwa 64 MB Speicher. +In englischer Sprache entspricht ein Wort in etwa 1.3 Tokens. + +Unser Beispieltext hat, nachdem wir vorne und hinten alles das wegschneiden, +was Projekt Gutenberg als Disclaimer hinzugefügt hat, +eine Größe von circa 14.000 Worten: + +```console +kk:~ kris$ wc leiber-64-square.txt + 1824 13853 84236 leiber-64-square.txt +``` + +Wenn wir dem Modell einen Kontext von 65536 Token geben, dann sollte es mit der Geschichte gut zurechtkommen. +**HINWEIS:*** Es heißt `/set parameter num_ctx 65536`, nicht `/set num_ctx 65536`. + +```console +kk:~ kris$ ollama run mistral:instruct +>>> /set verbose +Set 'verbose' mode. +>>> /set parameter num_ctx 65536 +Set parameter 'num_ctx' to '65536' +>>> """ +... You are an english teacher, summarising a text. +... Who are the main characters? +... What happens? +... +... The text: +... [Use """ to end multi-line input] +``` + +Wir setzen also `/set verbose`, um Statistiken zu bekommen. +Wir setzen dann den Parameter `/set parameter num_ctx 65536`, um dem Modell genug Arbeitskontext zu geben. +Danach leiten wir mit `"""` einen mehrzeiligen Input ein. +Dieser wird durch `"""` auf einer neuen Zeile genau so abgeschlossen. + +In einem anderen Fenster laden wir nun die Story in den Paste-Buffer: + +```console +(venv) kk:keks kris$ cat leiber-64-square.txt | pbcopy +(venv) kk:keks kris$ +``` + +Diese kann nun in den Ollama-Prompt gepasted werden. + +```console +... +... Sandra said, "Well, there's something you can't build into a +... machine--ego." +... +... "Oh, I don't know about that," said Simon Great. +... +... """ +``` + +Die generierte Antwort des Modells lautet: + +> Who are the main characters in this text? The main characters in the +story are Sandra Lea Grayling, a journalist who is covering the first +international grandmaster chess tournament where an electronic computing +machine is entered, Dr. Savilly Krakatower (also known as Dirty Old +Krakatower), a retired grandmaster who is now special correspondent for +the _London Times_, and Simon Great, the psychologist who programmed the +chess-playing computer called "The Machine". Other characters include +several other chess players, such as William Angler, Bela Grabo, Igor +Jandorf, Vassily Lysmov, Moses Sherevsky, Maxim Serek, Ivan Jal, and +Mikhail Votbinnik. Additionally, there are several unnamed officials, +waiters, and other people who appear in the story but do not have +significant roles. +> +> What happens? The story is about the first international grandmaster chess +tournament where an electronic computing machine is entered. Sandra Lea +Grayling, a journalist who is covering the event, struggles to understand +the game of chess and the complexities of the competition, especially as +it relates to the Machine. She interviews several of the players, +including Dr. Savilly Krakatower and Simon Great, the psychologist who +programmed the Machine. The Machine initially struggles against the human +players but eventually starts to dominate the tournament and becomes the +clear favorite to win. Sandra follows the competition closely, watching as +the players try to outsmart the Machine using various strategies. In the +end, the Machine wins the tournament, marking a significant milestone in +the development of artificial intelligence. + +und + +```console +total duration: 2m43.311123417s +load duration: 2.162927375s +prompt eval count: 22546 token(s) +prompt eval duration: 1m58.965654s +prompt eval rate: 189.52 tokens/s +eval count: 350 token(s) +eval duration: 42.123853s +eval rate: 8.31 tokens/s +``` + +Wir haben eine recht gute Prompt Eval Rate: 190 Token/s. +Die Generierung der Antwort ist langsamer, auch wegen des großen Kontexts, den wir gesetzt haben: 8.3 Token/s. + +# Selbst coden + +Es gibt eine Ollama Python Bibliothek. +Diese tut nicht mehr, als Requests an `ollama serve` zu senden: + +- [ollama-python](https://github.com/ollama/ollama-python) +- [ollama API Dokumentation][https://github.com/ollama/ollama/tree/main/docs], api.md +- [Mistral Model Documentation](https://docs.mistral.ai/), die Code-Beispiele dort gehen davon aus, + daß man deren Server verwendet. Das tun wir nicht, wir verwenden Ollama und eine lokale Instanz. + +Die REST API ist in `api.md` im Ollama Quelltext-Tree auf Github dokumentiert. + +Die `ollama.chat()`-Funktion (und auch die gleichnamige Funktion der Mistral API, die gegen deren Instanz arbeitet), +hat einen Parameter `messages` (Plural, eine Liste). +Das LLM ist stateless. +Es kann sich nicht an vorhergehende Nachrichten erinnern. +Daher muss man dem Modell bei jedem Request alle vorhergehenden Fragen und Antworten und auch den Systemprompt mitsenden. + +```python + o = ollama.Client(host="127.0.0.1") + + response = o.chat( + model="mistral:instruct", + messages=[ + { + "role": "system", + "content": instructions, + }, + { + "role": "user", + "content": old_message + } + { + "role": "assistant", + "content": old_answer, + }, + { + "role": "user", + "content": message, + }, + ], + ) +``` + +Genauso muß man `options={}` mitsenden, wenn man zum Beispiel mehr Kontext braucht. + +Die Anleitung zu Mistral gibt bessere +[Summarization Prompts](https://docs.mistral.ai/guides/prompting_capabilities/#summarization) +als Beispiel und erklärt im hinteren Teil mehr zu Tokens, Tokenization und zum direkten Umgang mit dem LLM. diff --git a/static/uploads/2024/05/ollama-1.png b/static/uploads/2024/05/ollama-1.png new file mode 100644 index 0000000000000000000000000000000000000000..1c9cc8a1a760fbcb723e3168d139c5f913241afe GIT binary patch literal 23462 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 G6Z$_!*Nl(= literal 0 HcmV?d00001 diff --git a/static/uploads/2024/05/ollama-2.png b/static/uploads/2024/05/ollama-2.png new file mode 100644 index 0000000000000000000000000000000000000000..ae7030b7eae5ae1456d259966ed92da8158afc13 GIT binary patch literal 41702 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 literal 0 HcmV?d00001