Selbstgehostetes Perplexica – mit Ollama
Lokaler Betrieb eines Copilot-ähnlichen Services? Einfach!
Das ist sehr aufregend! Anstatt Copilot oder perplexity.ai zu nutzen und der ganzen Welt mitzuteilen, wonach Sie suchen, können Sie nun einen ähnlichen Dienst auf Ihrem eigenen PC oder Laptop hosten!
Perplexica ist ein System, das Copilot und Perplexity.ai ähnelt.
- Sie stellen eine Frage
- Die KI sucht im Internet nach Antworten (Sie können festlegen, wo gesucht werden soll: wissenschaftliche Arbeiten, Texte, YouTube, Reddit…)
- Anschließend fasst die KI alle gefundenen Informationen zusammen
- Das Ergebnis wird mit Verweisen auf die ursprünglichen Webseiten präsentiert
- Zudem gibt es eine Liste mit Bildern und YouTube-Videos auf der rechten Seite
- Außerdem sind Folgefragen bereit, die Sie anklicken können, falls Sie das Thema weiter vertiefen möchten
Diese Systeme werden in der Cloud gehostet und gehören bestimmten Unternehmen (beispielsweise Microsoft oder Meta). Perplexica ist Open-Source-Software, die Sie auf Ihrem PC oder einem leistungsstarken Laptop hosten können.
Die gleiche Upstream-Codebasis wird nun als Vane verteilt; Vane (Perplexica 2.0) Quickstart mit Ollama und llama.cpp behandelt aktuelle Docker-Images, SearxNG und lokale Inferenz-Pfade, falls Sie sich dem umbenannten Projekt anschließen möchten.
Für einen umfassenden Vergleich von lokaler Ollama mit vLLM, Docker Model Runner, LocalAI und Cloud-Anbietern – einschließlich Kosten- und Infrastrukturnachteilen – siehe LLM Hosting: Local, Self-Hosted & Cloud Infrastructure Compared.
Hier sehen wir die Antwort von Perplexica mit dem Chat-Modell llama3.1 8b q6 und dem Jina-Embedding-Modell auf die Frage Who is Elon Mask?
Perplexica besteht aus mehreren Modulen:
- SearxNG – Metasuchmaschine. Sie ruft 10+ andere Suchmaschinen auf, um Ergebnisse zu erhalten, die Perplexica kombinieren kann. SearxNG ist sehr konfigurierbar; Sie können jede Suchmaschine aktivieren oder deaktivieren und neue hinzufügen. Für unsere Zwecke funktioniert die Standardkonfiguration jedoch gut.
- Perplexica Backend und Frontend. Technisch gesehen sind dies zwei separate Module: eines stellt die API bereit, das andere die Benutzeroberfläche (UI).
- Ollama-Dienst – dies ist kein Teil des Perplexica-Projekts, aber wenn Sie Ihre LLMs lokal hosten möchten, ist Ollama der einzige Weg, um sie zu nutzen.
Die Installation des gesamten Systems besteht aus zwei großen Schritten:
- Installieren Sie Ollama + Laden Sie Ollama-Modelle herunter
- Installieren Sie Perplexica zusammen mit SearxNG
Ollama installieren
Um mit Ollama zu beginnen, befolgen Sie diese Schritte:
Installieren Sie Ollama, indem Sie das Skript ausführen:
curl -fsSL https://ollama.com/install.sh | sh
Weisen Sie Ollama an, Ihr Lieblings-LLM herunterzuladen. Wenn es sich um Llama3.1 8b q4 handelt, führen Sie das Skript aus:
ollama pull llama3.1:latest
Ziehen Sie die neueste Version von Nomic-Embed-Text, um sie als Embedding-Modell zu verwenden (falls dies Ihr Favorit ist), mit:
ollama pull nomic-embed-text:latest
Bearbeiten Sie die Ollama-Dienstdatei, indem Sie ausführen:
sudo systemctl edit ollama.service
Fügen Sie die folgenden Zeilen hinzu, um Ollama dem Netzwerk zugänglich zu machen (Perplexica muss sich aus dem Docker-Container verbinden):
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Laden Sie den systemd-Daemon neu und starten Sie den Ollama-Dienst neu:
sudo systemctl daemon-reload
sudo systemctl restart ollama
Überprüfen Sie, ob Ollama erfolgreich gestartet wurde:
systemctl status ollama.service
sudo journalctl -u ollama.service --no-pager
Eine detaillierte Beschreibung, wie Ollama installiert, aktualisiert und konfiguriert wird, finden Sie unter: Install and configure Ollama
Für Details zur Verwendung anderer Ollama-Modelle mit Perplexica sehen Sie im Folgenden den Abschnitt „Andere Ollama-Modelle installieren".
Perplexica installieren
Ich habe dockerisierte Perplexica unter Linux installiert, aber ein sehr ähnliches docker-compose kann auch unter Windows oder Mac verwendet werden.
Los geht’s!
Einführung mit Docker (Empfohlen) Stellen Sie sicher, dass Docker auf Ihrem System installiert und läuft.
Klonen Sie das Perplexica-Repository:
git clone https://github.com/ItzCrazyKns/Perplexica.git
Navigieren Sie nach dem Klonen in das Verzeichnis, das die Projektdateien enthält.
cd Perplexica
Benennen Sie die Datei sample.config.toml in config.toml um. Wenn Sie Perplexica später aktualisieren möchten – also einen git pull in dieses Repository durchführen –, kopieren Sie einfach die Datei sample.config.toml auf config.toml:
cp sample.config.toml config.toml
Bearbeiten Sie die Konfigurationsdatei:
nano config.toml
Für Docker-Setups müssen Sie nur die folgenden Felder ausfüllen:
OLLAMA: Ihre Ollama-API-URL.
Sie sollten sie als http://host.docker.internal:PORT_NUMBER eingeben.
Wenn Sie Ollama auf Port 11434 installiert haben (das ist der Standard), verwenden Sie http://host.docker.internal:11434. Für andere Ports passen Sie dies entsprechend an.
Während Sie sich noch im Perplexica-Verzeichnis befinden, führen Sie aus:
docker compose up -d
Dadurch werden die Docker-Images von SearxNG und dem Basis-Node heruntergeladen, zwei Perplexica-Docker-Images erstellt und drei Container gestartet. Warten Sie einige Minuten, bis die Einrichtung abgeschlossen ist.
Sie können Perplexica in Ihrem Webbrowser unter http://localhost:3000 aufrufen.
Gehen Sie zu Einstellungen. Sie wissen schon – das Zahnrad-Symbol unten links – und wählen Sie Ihre Ollama-Modelle.

Hier sehen Sie das ausgewählte Chat-Modell llama3.1:8b-instruct-q6_K (Llama 3.1 8b mit Quantisierung q6_K) und das Embedding-Modell nomic-embed-text:137m-v1.5-fp16.
Sie können auch das helle oder dunkle Thema auswählen, welches Sie mehr mögen.
Perplexica-Suchoptionen (Klicken Sie auf das Auge-Symbol im Kasten), im Dunklen Thema:

Andere Ollama-Modelle installieren
Sie haben bereits die Modelle llama3.1:latest und nomic-embed-text:latest im vorherigen Abschnitt „Ollama installieren" installiert.
Sie benötigen nur ein Modell für den Chat, aber es gibt viele Modelle zur Auswahl. Sie verhalten sich leicht unterschiedlich; es ist gut, mit den gängigsten zu beginnen: Llama3.1, Gemma2, Mistral Nemo oder Qwen2.
Chat-Modelle
Der vollständige Name des Chat-Modells, das Sie im Installationsteil gesehen haben – llama3.1:latest – lautet llama3.1:8b-text-q4_0. Das bedeutet, es hat 8 Milliarden Parameter und eine Quantisierung von 4_0. Es ist schnell und relativ klein (4,8 GB), aber wenn Ihre GPU etwas mehr Speicher hat, würde ich empfehlen, Folgendes auszuprobieren:
- llama3.1:8b-instruct-q6_K (6,7 GB) – in meinen Tests zeigte es eine viel bessere Antwort, war jedoch etwas langsamer.
- llama3.1:8b-instruct-q8_0 (8,5 GB) – oder vielleicht dieses hier.
Insgesamt sind alle Modelle der Gruppe llama3.1:8b relativ schnell.
Sie können die von mir empfohlenen Modelle mit dem Skript ziehen:
ollama pull llama3.1:8b-instruct-q6_K
ollama pull llama3.1:8b-instruct-q8_0
Im Vergleich zu Llama3.1:8b erzeugt Gemma2 prägnantere und kunstvollere Antworten. Probieren Sie diese aus:
# 9.8GB
ollama pull gemma2:9b-instruct-q8_0
# 14GB
ollama pull gemma2:27b-instruct-q3_K_L
Die Mistral Nemo-Modelle erzeugen Antworten irgendwo zwischen Gemma2 und Llama3.1.
# das Standardmodell, 7.1GB
ollama pull mistral-nemo:12b-instruct-2407-q4_0
# 10GB
ollama pull mistral-nemo:12b-instruct-2407-q6_K
# 13GB
ollama pull mistral-nemo:12b-instruct-2407-q8_0
Sie sollten auch die Qwen2-Modelle ausprobieren:
# das Standardmodell, 4.4GB
ollama pull qwen2:7b-instruct-q4_0
# 8.1GB
ollama pull qwen2:7b-instruct-q8_0
Die Modelle, die mir am besten gefallen haben, sind: llama3.1:8b-instruct-q6_K und mistral-nemo:12b-instruct-2407-q8_0.
Um zu überprüfen, welche Modelle Ollama im lokalen Repository hat:
ollama list
Um ein unnötiges Modell zu entfernen:
ollama rm qwen2:7b-instruct-q4_0 # zum Beispiel
Embedding-Modelle
Sie können die Installation dieser Modelle überspringen, da Perplexica vorinstallierte 3 Embedding-Modelle hat: BGE Small, GTE Small und Bert bilingual. Sie funktionieren ganz gut, aber Sie möchten vielleicht andere Embedding-Modelle ausprobieren.
Im Abschnitt „Ollama installieren" oben haben Sie das Embedding-Modell nomic-embed-text:latest installiert; es ist ein gutes Modell, aber ich würde empfehlen, auch Folgendes auszuprobieren:
ollama pull jina/jina-embeddings-v2-base-en:latest
# und
ollama pull bge-m3:567m-fp16
Das Ergebnis von jina/jina-embeddings-v2-base-en:latest hat mir am besten gefallen, aber Sie sollten es selbst ausprobieren.
Netzwerkinstallation von Perplexica
Wenn Sie es auf einem Netzwerkserver installieren, führen Sie vor dem Befehl
docker compose up -d
aus oder, falls Perplexica bereits läuft und die Images neu erstellt werden müssen:
# Stoppen und alle Container entfernen (!!! falls Sie es nur brauchen)
docker compose down --rmi all
Geben Sie die IP-Adresse Ihres Perplexica-Servers in docker-compose.yaml ein: Dazu führen Sie vor
nano docker-compose.yaml
aus:
perplexica-frontend:
build:
context: .
dockerfile: app.dockerfile
args:
- NEXT_PUBLIC_API_URL=http://127.0.0.1:3001/api # << hier
- NEXT_PUBLIC_WS_URL=ws://127.0.0.1:3001 # << hier
depends_on:
- perplexica-backend
Starten Sie nun die Perplexica- und SearxNG-Container:
docker compose up -d
Oder neu erstellen und starten:
docker compose up -d --build
Perplexica aktualisieren
Perplexica läuft auf Docker:
# Stoppen und alle Container entfernen (!!! falls Sie es nur brauchen)
docker compose down --rmi all
# navigieren Sie in das Projektverzeichnis
# wo Sie perplexica während der Installation geklont haben
cd Perplexica
# ziehen Sie die Updates
git pull
# Aktualisieren und Neu erstellen der Docker-Container:
docker compose up -d --build
Für Nicht-Docker-Installationen bitte sehen Sie unter: https://github.com/ItzCrazyKns/Perplexica/blob/master/docs/installation/UPDATING.md
FAQ
-
F: Was ist Perplexica?
-
A: Perplexica ist eine kostenlose, selbst gehostete KI-Suchmaschine und eine Alternative zu perplexity.ai und Copilot-Systemen, die es Benutzern ermöglicht, ihre eigene Suchmaschine lokal auf ihrem Computer zu betreiben.
-
F: Welche Schritte sind erforderlich, um Perplexica mit Ollama zu installieren und einzurichten?
-
A: Die Schritte umfassen die Installation von Ollama, das Herunterladen der Modelle und die Installation von Perplexica.
-
F: Welche Anpassungsoptionen sind in Perplexica verfügbar?
-
A: Optionen umfassen die Auswahl verschiedener Modelle wie LLama 3.1, Mistral Nemo oder Gemma2, die Einrichtung lokaler Embedding-Modelle und die Erkundung verschiedener Suchoptionen wie Nachrichten, wissenschaftliche Arbeiten, YouTube-Videos und Reddit-Foren.
-
F: Welches Ollama-Modell sollte mit Perplexica verwendet werden?
-
A: Die besten Ergebnisse in unseren Tests erzielten wir, als wir Perplexica mit llama3.1:8b-instruct-q6_K und jina/jina-embeddings-v2-base-en:latest betrieben.
Um zu sehen, wie Ollama (typisches Backend von Perplexica) mit vLLM, Docker Model Runner, LocalAI und Cloud-Anbietern zusammenpasst, überprüfen Sie unseren Leitfaden LLM Hosting: Local, Self-Hosted & Cloud Infrastructure Compared.
Nützliche Links
- Installationsanweisungen auf der Perplexica-Website: https://github.com/ItzCrazyKns/Perplexica
- Perplexica dem Netzwerk zugänglich machen
- Ollama installieren und Ollama-Modelle in einen anderen Ordner verschieben
- LLM-Vergleich: Mistral Small, Gemma 2, Qwen 2.5, Mistral Nemo, LLama3 und Phi
- Ollama-Kurzreferenz