Large Language Models mit Ollama über ReST Services aufrufen

Large Language Models mit Ollama über ReST-Services aufrufen: Eine Schritt-für-Schritt Anleitung für Linux Server.

In unserem vorigen Video, haben wir gezeigt, wie man Ollama und das Open WebUI auf einem Linux System lokal installieren kann. Du findest diesen ersten Teil hier. In diesem Video zeigen wir, wie du dein lokales LLM Modell über ReST Services aufrufen kannst.

Vorbereitungen:

Stelle sicher, dass Dein Ollama von Deinem Rechner (Entwicklungsumgebung) erreichbar ist.
Stoppe dazu ggf. die Firewall:

				
					sudo systemctl disable ufw
sudo systemctl stop ufw
				
			

Stelle sicher, dass Ollama von allen Rechnern erreichbar ist. Editiere dazu das Service Script:

				
					sudo systemctl edit ollama.service
				
			

Füge folgende Zeilen oben in der Datei ein:

				
					[Service]
Environment="OLLAMA_HOST=0.0.0.0"

				
			

Starte den Service neu mit:

				
					sudo systemctl restart ollama

				
			

Gib dann im Browser http://deinhost:11434 ein. Du solltest im Browser die Meldung „Ollama is running“ angezeigt bekommen.

Code um Ollama über ReST aufzurufen:

Du kannst im Video genau nachvollziehen, wie Du über JavaScript Ollama aufrufen kannst.
Das gesamte Code Beispiel findest du hier auf Gitlab.

Das Video zusammengefasst:

In diesem Beitrag zeige ich euch, wie ihr ein Large Language Model (LLM) mit Ollama auf eurem Linux-Server über ReST-Services aufrufen könnt. Falls ihr in unserem letzten Beitrag verpasst habt, wie ihr Ollama auf einem Linux-Server installiert, dann schaut euch unser Tutorial dazu an, bevor ihr mit diesem weiter macht. Hier geht es darum, wie ihr Ollama über ReST-APIs direkt in eure eigenen Anwendungen integriert und nutzt – perfekt für alle, die keine Cloud-Lösungen verwenden möchten und maximale Kontrolle über ihre Daten behalten wollen.

1. Vorbereitung: Netzwerkkonfiguration und Firewall-Einstellungen

Bevor ihr Ollama über ReST-Services ansprechen könnt, müsst ihr sicherstellen, dass der Ollama-Dienst auf eurem Server über das Netzwerk erreichbar ist. Standardmäßig nimmt Ollama nur Verbindungen vom lokalen Server an. Um Verbindungen von anderen IP-Adressen zuzulassen, müssen wir die Service-Konfiguration bearbeiten.

Setzt die Variable OLLAMA_HOST auf 0.0.0.0, um Ollama so zu konfigurieren, dass es Verbindungen von allen IP-Adressen akzeptiert. Achtet darauf, dass eure Firewall korrekt konfiguriert ist und der benötigte Port offen ist. Dies könnt ihr mit dem Befehl sudo systemctl status firewall überprüfen und bei Bedarf anpassen.

2. Testaufruf an Ollama über ReST-Services

Nachdem ihr die Netzwerkkonfiguration angepasst habt, könnt ihr einen einfachen Testaufruf an Ollama über REST durchführen. Mit einem ReST-GET-Aufruf könnt ihr prüfen, ob Ollama korrekt läuft. Nutzt dazu die IP-Adresse des Servers und den Standardport von Ollama.

Wenn die Antwort „Ollama running OK“ erscheint, dann wisst ihr, dass Ollama bereit ist, auf Anfragen zu reagieren und der Server korrekt konfiguriert ist.

3. POST-Request für Modellanfragen

Jetzt geht es darum, Ollama über ReST für spezifische Modellanfragen zu nutzen. In diesem Beispiel senden wir einen POST-Request an die ReST-API von Ollama, um eine Textübersetzung anzufordern. Im JSON-Body des Requests gebt ihr die Modell-ID und den gewünschten Eingabetext an. Ihr könnt zusätzlich die Option „Streaming deaktivieren“ setzen, um die Antwort des Modells in einem einzigen Response zu erhalten, anstatt sie schrittweise zu streamen.

4. Entwicklung einer einfachen Weboberfläche zur Interaktion mit Ollama

Um das Ganze anschaulich zu machen, entwickeln wir eine einfache Weboberfläche, die mit dem Ollama-Modell interagiert. Die Benutzeroberfläche besteht aus einem Texteingabefeld, einem „Übersetzen“-Button und einem Ausgabefeld.

Sobald der Benutzer einen Text eingibt und auf den Button klickt, wird die Anfrage per JavaScript an die ReST-API gesendet. Das Modell übersetzt den Text dann ins Englische und Spanische. Die Antwort wird direkt im Ausgabefeld angezeigt, sodass der Benutzer sofort die Ergebnisse sehen kann.

5. Zusammenfassung und weiterführende Schritte

Mit dieser Anleitung habt ihr eine vollständige Lösung zur Nutzung von Large Language Models wie Ollama über ReST-Services auf eurem Linux-Server, ohne auf Cloud-Dienste angewiesen zu sein. Diese Vorgehensweise gibt euch nicht nur maximale Kontrolle über eure Daten, sondern auch eine hohe Flexibilität, da ihr Ollama direkt in eure eigenen Anwendungen integrieren könnt.

Das und weitere spannende Inhalten findet ihr auf unserem YouTube Kanal CIIT Software.

Plattformunabhängige Apps

Plattformunabhängige Apps: Entwicklung für eine breite Nutzerbasis Plattformunabhängige (Cross-Plattform) App-Entwicklung ist eine effektive Strategie, um Anwendungen zu erstellen, die auf verschiedenen Betriebssystemen und Geräten funktionieren.

Weiterlesen »

Cloud Native Anwendungen

Cloud Native Anwendungen bei CIIT: Revolution in der Softwareentwicklung Cloud Native Anwendungen stellen einen bedeutenden Fortschritt in der Art und Weise dar, wie Software entwickelt,

Weiterlesen »

Computerwissenschaften

Die Computerwissenschaften, oft auch als Informatik bekannt, bilden das Rückgrat der modernen Technologielandschaft. Als akademische Disziplin umfassen die Computerwissenschaften das Studium der theoretischen Grundlagen von

Weiterlesen »

DevOps

DevOps: Eine Kulturelle und Technische Revolution in der Softwareentwicklung DevOps, ein zusammengesetztes Wort aus „Development“ (Entwicklung) und „Operations“ (Betrieb), steht für eine Reihe von Praktiken,

Weiterlesen »