Grafik von Stephen Phillips - https://unsplash.com/@hostreviews

Skalierbar und sicher: Die Hosting-Plattform von Ollama für neuronale Netze

Ollama kann verwendet werden, um Anwendungen des Machine Learnings zu beschleunigen, Kosten zu senken und die Leistung zu verbessern. Heute werden wir uns ansehen, wie Ollama konfiguriert werden kann und wie es mit einigen Beispielmodellen interagiert.

Henrik Bartsch

Henrik Bartsch

Die Texte in diesem Artikel wurden teilweise mit Hilfe künstlicher Intelligenz erarbeitet und von uns korrigiert und überarbeitet. Für die Generierung wurden folgende Dienste verwendet:

Wie wir maschinelles Lernen bei der Erstellung unserer Artikel einsetzen

Einleitung: Die Notwendigkeit einer skalierbaren Infrastruktur für maschinelles Lernen

Da die Entwicklung und Integration von Anwendungen der künstlichen Intelligenz und des maschinellen Lernens immer schneller voranschreitet, ist einer der größten Engpässe bei der Entwicklung von Systemen des maschinellen Lernens deutlich geworden: Infrastruktur.

Angesichts des exponentiellen Datenwachstums und der damit verbundenen Rechenanforderungen stehen Unternehmen unter wachsendem Druck, ihre neuronalen Netze effizient einzusetzen und zu verwalten, ohne dabei Abstriche bei der Leistung oder Genauigkeit zu machen.1 Daraus ergibt sich ein dringender Bedarf an einer skalierbaren Infrastruktur für maschinelles Lernen, die mit der schnellen Entwicklung der oben genannten Technologien1 oder anderer Funktionen wie Inference as a Service Schritt halten kann.

In diesem Artikel stellen wir eine innovative Lösung für diese Herausforderung vor: Ollama, eine hochmoderne Plattform, die speziell für das Hosting von neuronalen Netzen nach Bedarf entwickelt wurde.

Ollama als Dienst für das Hosting neuronaler Netze

Ollama ist eine Hosting-Plattform für neuronale Netze und bietet eine standardisierte Infrastruktur für Anwendungen des maschinellen Lernens. Durch die Nutzung dieses Dienstes können Entwickler*innen ihre neuronalen Netze einfach lokal bereitstellen, verwalten und optimieren, ohne auf teure Hardware oder komplizierte Infrastrukturen angewiesen zu sein.

Obwohl Ollama den Anwendern die Möglichkeit bietet, die Gesamtbetriebskosten zu senken und die Leistung zu steigern, müssen die Anwender*innen dennoch Hardware zur Verfügung stellen, um den Dienst effektiv nutzen zu können.

Key Features

Die Verwendung von Ollama zur Ausführung von Aktivitäten in neuronalen Netzen bietet mehrere Schlüsselfunktionen, die es zu einem leistungsstarken Werkzeug machen:

  1. Lokale Ausführung: Sprachmodelle können auf der eigenen Hardware ausgeführt werden, wodurch Datenschutz und Sicherheit gewährleistet werden. 2 3

  2. Benutzerfreundliche Installation: Ollama bietet einen einfachen Installationsprozess für Windows, macOS und Linux. 3

  3. Große Auswahl an Modellen: Zugriff auf eine große Bibliothek vortrainierter Modelle, darunter Llama 3.3, Mistral und Phi 3.3.

  4. Benutzerdefinierte Modellerstellung: Möglichkeit zur Anpassung und Erstellung eigener Modelle unter Verwendung von Ollamas leichtgewichtiger Modeldateistruktur. 2 3

  5. GPU-Beschleunigung: Ollama bietet Unterstützung für GPU-Beschleunigung, um die Leistung zu verbessern und die Inferenz zu beschleunigen. 3

  6. Integration mit verbreiteten Plattformen: Nahtlose Integration mit Plattformen durch integrierte REST-APIs für die Interaktion mit Webanwendungen. 3

Ollama ausführen

In diesem Abschnitt werden wir uns mit der Ausführung von Ollama beschäftigen und dabei die wichtigsten Schritte wie Installation, Download und beispielhafte Verwendung eines großen Sprachmodells behandeln. Um eine nahtlose Erfahrung zu gewährleisten, müssen wir uns mit diesen grundlegenden Elementen vertraut machen, bevor wir die API von Ollama erkunden. Das Verständnis der einzelnen Schritte bei der Verwendung von Ollama ermöglicht es, das volle Potential von Ollama auszuschöpfen und letztendlich Projekte und Anwendungen des maschinellen Lernens zu verbessern.

Installation

Um mit der Installation von Ollama zu beginnen, müssen wir auf die Download-Seite von Ollama Seite navigieren. Hier finden wir die entsprechende Installationsanleitung.

Image - Ollama-Download für Linux

Ab diesem Punkt gehen wir davon aus, dass ihr entweder CUDA oder ROCm auf Ihrem System installiert habt, um einen Grafikprozessor effektiv nutzen zu können. Überspringt diesen Schritt, wenn ihr nicht vorhabt, euren Grafikprozessor für schnellere Inferenzen zu nutzen.

Ein einfaches Installationsprogramm mit einer einzigen Datei steht sowohl für Windows als auch für Mac zur Verfügung. Für Linux empfiehlt Ollama die Verwendung von curl, um die Installationsdatei herunterzuladen.

Nach dem Herunterladen und Installieren von Ollama mit dem Single-File-Installer können wir nun überprüfen, ob Ollama installiert ist. Wir öffnen dazu ein Terminal und führen den folgenden Befehl aus, um Ollama zu starten: 4

Ollama serve

Wenn unsere Installation erfolgreich war, sollte dieser Befehl Ollama starten und keine Fehlercodes zurückgeben. Um dies zu überprüfen, öffnen wir ein anderes Terminal und führen den folgenden Befehl in dem Terminal aus:

Ollama -v

Dies sollte die Version von Ollama zurückgeben, die derzeit auf unserem System läuft.

Modelle herunterladen und ausführen

Um ein Modell herunterzuladen und auszuführen, müssen wir ein Modell auswählen, das unseren Anforderungen entspricht. Eine Liste aller Modelle, die von Ollama heruntergeladen werden können, finden wir hier. Für dieses Beispiel laden wir Llama 3.2 herunter. Wenn wir auf den Eintrag in der Liste der verfügbaren Modelle oder auf den von uns angegebenen Link klicken, wird der Inhalt der folgenden Seite angezeigt:

Image - Downloading Llama 3.2

Die Seite zeigt uns nun den gesamten Inhalt des Repositories llama3.2-3b an, das wir herunterladen müssen, um das Modell verwenden zu können. Außerdem sehen wir in der rechten oberen Ecke einen Befehl, mit dem wir das Modell direkt lokal ausführen können. Wir öffnen also ein Terminal und führen den folgenden Befehl aus, um auf das hier ausgewählte Modell zuzugreifen:

Ollama run llama3.2

Wenn Sie diesen Befehl ausführen, werden alle erforderlichen Dateien heruntergeladen und das Modell gestartet. Nach der Fertigstellung können wir das Command Line Interface (CLI) verwenden, um mit dem Modell zu interagieren.

Zugang zur API

Neben einem einfachen Command Line Interface bietet Ollama auch eine Integration über einen lokalen API-Endpoint. 5 Dieser Endpoint ermöglicht es uns im lokalen Netzwerk auf aktive und bereitgestellte Modelle zuzugreifen, ohne dass dies auf dem eigenen Computer geschehen muss. Dies ermöglicht auch Integrationen von Ollama in andere Anwendungen hinein.

Um die Möglichkeiten des API-Endpoint von Ollama zu demonstrieren, werden wir curl verwenden, um eine Webanfrage zu stellen.

Wenn du auf deinem System keinen Zugriff auf curl haben solltest und unsere Ergebnisse reproduzieren möchten oder daran interessiert sind, selbst mit der API zu experimentieren, können wir Ihnen die folgenden alternativen Tools empfehlen: Python Requests, Yet Another REST Client, Postman oder auch VS Code with REST Client extension.

Für unser Beispiel wollen wir einen Witz über Pinguine von Llama 3.2 abfragen. Dazu öffnen wir das Terminal und geben folgenden Befehl ein:

curl http://localhost:11434/api/chat -d '{
  "model": "llama3.2",
  "messages": [
    {
      "role": "user",
      "content": "Please generate a joke revolving around penguins."
    }
  ],
  "stream": false
}'

Dies sendet eine einfache Anfrage an den Ollama-Endpoint zur Ausführung innerhalb des Dienstes. Als Antwort erhalten wir den folgenden JSON-Text:

{
  "model":"llama3.2",
  "created_at":"2024-12-14T12:07:07.948287554Z",
  "message":
  {
    "role":"assistant",
    "content":"Why did the penguin take his credit card to the Antarctic?\n\nBecause he wanted to freeze his assets! (get it?)"
  },
  "done_reason":"stop",
  "done":true,
  "total_duration":210528850,
  "load_duration":34427940,
  "prompt_eval_count":34,
  "prompt_eval_duration":23000000,
  "eval_count":26,
  "eval_duration":151000000
}

Diese Ausgabe zeigt uns die tatsächliche Antwort des großen Sprachmodells innerhalb des „Message“-Blocks und ermöglicht es uns gleichzeitig, eine Reihe interessanter Statistiken über den Prozess der Antwortgenerierung zu sehen. Das „done“-Flag zeigt uns zum Beispiel, dass die Nachricht die gesamte Ausgabe enthält, die in 0.0230.023 Sekunden berechnet wurde. Unglaublich schnell!

Anwendungsfelder

Ollama kann überall dort eingesetzt werden, wo große Sprachmodelle eine Rolle spielen. Seine Fähigkeit, unglaublich schnell Berechnungen durchzuführen und gleichzeitig eine standardisierte API-Schnittstelle beizubehalten, macht es ideal für jede Art von Sprachverarbeitung. Im Folgenden werden einige Beispiele genannt, in denen Ollama eingesetzt werden kann, um die Produktivität zu steigern oder eine zweite Verifizierungsebene neben der menschlichen Kontrolle bereitzustellen:

  1. Finanzdienstleistungen: Banken und Finanzinstitute können große Sprachmodelle für einen personalisierten Kundenservice nutzen, um Latenzzeiten zu verkürzen und Kunden in Zeiten zu helfen, in denen der Kundenservice aus verschiedenen Gründen bereits (stark) überlastet ist.

  2. Einzelhandel: Einzelhändler können Ollama für personalisiertes Marketing einsetzen, Lagerbestände optimieren und die Kundenzufriedenheit erhöhen.

  3. Gesundheitswesen: Krankenhäuser und medizinische Forschungseinrichtungen können große Sprachmodelle für Aufgaben wie die Analyse von Krankenakten, die Patientenüberwachung und die prädiktive Diagnostik einsetzen und so Datenschutz und Sicherheit gewährleisten und gleichzeitig die Qualität der Patientenversorgung verbessern.

Da Ollama jedoch auf die Interaktion mit textuellen oder numerischen Eingaben beschränkt ist, kann es nicht zur Erzeugung von Bilddateien oder anderen Kontexten verwendet werden.

TL;DR

Ollama ist ein Dienst, der speziell für das Hosten und Verwalten großer Sprachmodelle entwickelt wurde. Er bietet Entwickler*innen, Forscher*innen und Unternehmen eine robuste Plattform für die Speicherung, Verarbeitung und Bereitstellung dieser komplexen Modelle. Mit seiner benutzerfreundlichen Oberfläche und fortschrittlichen Funktionen wie dem API-Endpoint ermöglicht Ollama Benutzer*innen, Sprachmodelle effizient und effektiv zu nutzen. Durch die Bereitstellung einer zuverlässigen und flexiblen Lösung für die Verwaltung großer Sprachmodelle ermöglicht Ollama schnellere Innovation, verbesserte Leistung und niedrigere Betriebskosten bei der Verarbeitung natürlicher Sprache.

In unserem nächsten Beitrag werden wir die Möglichkeiten der Interaktion mit Ollama außerhalb der Kommandozeilenschnittstelle untersuchen und uns dabei auf die Integration über den API-Endpoint konzentrieren.

Quellen

Footnotes

  1. mckinsey.com

  2. bytegoblin.io 2

  3. arsturn.com 2 3 4 5

  4. github.com

  5. github.com