Zurück zu den Artikeln
📄
local LLMmodel quantizationmultimodal AIretrieval-augmented generationOpenAI compatible APIprivacy

Was kann man mit Ollama tun?

Leistungsfähige Sprach- und Multimodalmodelle lokal auf eigener Hardware betreiben, Cloud-Kosten sparen und absolute Datensouveränität wahren: Ollama ermöglicht unkompliziertes Modell-Management über eine OpenAI-kompatible Schnittstelle für RAG, Coding und Analyse.

Was kann man mit Ollama tun?

Ollama ist eine lokale Laufzeitumgebung und ein Modellmanager, der unterstützte Sprach‑ und multimodale Modelle auf Ihrem eigenen Rechner ausführt.
Es kann Modelle herunterladen, lokal verwalten und eine API bereitstellen, die viele OpenAI‑kompatible Clients nutzen können.

Das lokale Speichern der Modelle senkt die Kosten für Cloud-Rechenzeit und garantiert, dass Eingaben ausschließlich auf Ihrem Gerät verarbeitet werden. Dies reduziert die Ausgaben und erhöht die Kontrolle über sensible Daten. Allerdings setzt dies voraus, dass Sie über geeignete Hardware und ausreichend Speicher verfügen und die von den Modellen erzeugten Ausgaben verantwortungsbewusst prüfen.

Einstieg

Der Installationsweg hängt vom Betriebssystem ab.
Folgen Sie den aktuellen Anweisungen unter https://ollama.com/download.
Ein typischer Workflow sieht so aus:

ollama pull llama3.1
ollama run llama3.1

Achten Sie darauf, dass Modell‑Tags und Ressourcenanforderungen variieren können.
Ein lokal gespeichertes Modell entspricht nicht zwangsläufig dem Verhalten eines gleich benannten, in der Cloud gehosteten Modells, weil Unterschiede in Größe, Quantisierung oder Feintuning bestehen können.

Datenschutz und Grenzen

Bei einem lokalen Modell werden Prompts vom lokalen Ollama‑Dienst verarbeitet, anstatt an einen gehosteten Anbieter zu übermitteln.
Dennoch können Anwendungen durch eigene Integrationen Daten an andere Systeme senden, und lokale Rechner benötigen wie gewohnt Zugriffsschutz, Updates und Datensicherheit. Deshalb müssen Sie Netz‑ und Firewall‑Regeln prüfen und sicherstellen, dass das Betriebssystem regelmäßig gepatcht wird.

Lokale Modelle können Fehler begehen, Kontext missverstehen oder bei spezialisierten Aufgaben unterlegen sein.
Vor der Verwendung in medizinischen, rechtlichen, finanziellen oder sicherheitskritischen Bereichen sollten Sie daher die Leistung der Modelle sorgfältig testen. Das bedeutet, dass Sie gezielte Benchmarks durchführen, die Ergebnisse mit verlässlichen Referenzdaten vergleichen und ggf. Fachexperten hinzuziehen.

Was lässt sich bauen?

Text‑ und Codeassistenz

Ein OpenAI‑kompatibler Client kann auf den lokalen Endpunkt verweisen:

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:11434/v1",
    api_key="ollama",
)

response = client.chat.completions.create(
    model="llama3.1",
    messages=[{"role": "user", "content": "Erkläre einen Datenbankindex einfach."}],
)
print(response.choices[0].message.content)

Diese Einrichtung kann Entwürfe, Zusammenfassungen, Erklärungen und Reviews unterstützen. Sie liefert schnelle Textvorschläge, fasst lange Dokumente zusammen oder erklärt Codeabschnitte. Dennoch bleibt die menschliche Prüfung und die Durchführung von Tests unerlässlich.

Dokumentanalyse

Eine Dokumentpipeline kann Text extrahieren und ausgewählte Passagen an ein Modell übergeben:

import pymupdf
from openai import OpenAI

def analyse_document(path: str, question: str):
    doc = pymupdf.open(path)
    text = "\n".join(page.get_text() for page in doc)
    client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
    result = client.chat.completions.create(
        model="llama3.1",
        messages=[
            {"role": "system", "content": "Du analysierst das bereitgestellte Dokument."},
            {"role": "user", "content": f"Dokument:\n{text}\n\nFrage: {question}"},
        ],
    )
    return result.choices[0].message.content

Für große Dokumente ist es üblicherweise sinnvoller, den Text in kleinere Abschnitte zu unterteilen und diese einzeln zu verarbeiten, anstatt die gesamte Datei in einer einzigen Anfrage zu senden. Durch das Aufteilen bleiben Sie innerhalb der Token‑Grenzen und können gezielt die relevantesten Passagen abrufen, was sowohl die Geschwindigkeit als auch die Präzision der Antwort erhöht.

Bilder und multimodale Modelle

Einige Ollama‑Modelle unterstützen Bilder.
Überprüfen Sie die aktuelle Modelldokumentation und API‑Formatierung, bevor Sie sich auf ein bestimmtes Modell verlassen:

ollama pull llava

Multimodale Ausgaben sind Interpretationen und keine Garantie für die genaue Wiedergabe jedes Bilddetails. Sie stellen eine Interpretation dar und garantieren nicht, dass jedes Detail des Bildes korrekt wiedergegeben wird.

Retrieval‑Augmented Generation

Ollama kann Antworten aus Kontexten erzeugen, die aus einer Datenbank wie PostgreSQL mit pgvector abgerufen werden.
Die Retrieval‑Schicht muss Mandanten‑ und Zugriffsrechte prüfen, bevor der Kontext das Modell erreicht.

query_vector = client.embeddings.create(
    model="nomic-embed-text",
    input="Was wurde beim letzten Treffen beschlossen?",
).data[0].embedding

cursor.execute("""
    SELECT content FROM documents
    ORDER BY embedding <=> %s::vector
    LIMIT 5
""", (query_vector,))

Lokale Entwicklerwerkzeuge

Ein CLI‑Tool kann Git‑Diffs oder Logs für Erklärungen an ein lokales Modell übermitteln.
Sie sollten darauf achten, dass keine Geheimnisse oder ungeprüften Befehle unbeabsichtigt an das Modell gesendet werden; die erzeugten Antworten dienen lediglich als Hinweis und müssen vom Entwickler verifiziert werden.

Modellauswahl

Modellgröße, Quantisierung, Kontextlänge und Hardware bestimmen das Ergebnis.
Kleine Modelle benötigen weniger Ressourcen, können aber weniger leistungsfähig sein; große Modelle erfordern möglicherweise erhebliche Mengen an RAM oder GPU‑Speicher. Eine einzige RAM‑Tabelle reicht nicht aus, da jedes Modell seine konkreten Speicheranforderungen auf seiner Seite angibt.

Es ist empirisch belegt: Ein 7B-Modell reicht für die meisten Text-Aufgaben bereits aus. Die passende Modellklasse hängt jedoch von der spezifischen Aufgabe ab. Eine sorgfältige Benchmarking-Untersuchung von Modelle und Prompts ist unerlässlich. Bei feinkörnigen logischen Schlussfolgerungen können größere Modelle die notwendigen Ressourcen rechtfertigen.

Leistung und Ressourcen

Ollama kann unterstützte GPUs wie Apple Metal oder bestimmte NVIDIA‑ und AMD‑Setups nutzen.
Die Token‑Rate wird beeinflusst von Modell, Quantisierung, Kontextlänge, Treiberversionen und thermischen Grenzen der Hardware.

Quantisierung reduziert den Speicherbedarf, indem sie Gewichte mit geringerer Präzision speichert. Sie spart Speicher, geht jedoch häufig mit einem leichten Qualitätsverlust einher. Vergleichen Sie die Ausgaben daher mit einem Testset, anstatt davon auszugehen, dass eine bestimmte Quantisierung immer besser ist.

Eigene Modelfiles

Ein Modelfile kann Basismodell und Parameter festlegen:

FROM llama3.1
PARAMETER temperature 0.7
PARAMETER top_p 0.9
SYSTEM Du bist ein präziser Coding‑Assistent.
ollama create helpful-coder -f Modelfile
ollama run helpful-coder

Durch das Anpassen von Temperatur und top‑p steuern Sie die Zufälligkeit der Ausgabe, während der SYSTEM‑Prompt die Persona des Modells definiert.

Lokale und Cloud‑Modelle

Ollamas lokale API ist unabhängig von Diensten wie OpenRouter oder Groq.
Ein OpenAI‑kompatibler Python‑Client kann solche gehosteten Dienste direkt aufrufen; dies führt jedoch dazu, dass Prompts an den Anbieter gesendet werden und dessen Zugangsdaten und Bedingungen gelten. Das ist keine lokale Inferenz und wird nicht automatisch von Ollama vermittelt.

Fazit

Ollama macht lokale Experimente zugänglich. Es ist nützlich für Prototypen, private Workflows, Offline‑Tools und zum Erlernen von Modell‑Serving.

Quellen & Referenzen

  1. [1]
  2. [2]
  3. [3]
  4. [4]

Comments (0)

Loading comments...