Open Source KI Suche mit Perplexica
Perplexica ist eine Open Source KI Suchmaschine die jeder mittels Docker selbst lokal oder auf einem Server betreiben kann.
In diesem Blog Eintrag möchten wir zum aktuellen KI-Hype einmal die KI-gestütze Suche mittels der Open Source Software Perplexica vorstellen und klären was Perplexica ist, welche Vorteile es bietet und wie man selbst die KI-Suchmaschine auf einem Linux Server mittels Docker installieren kann.
Was ist Perplexica?
Perplexica kann durch seine KI-gestütze Suche diese intuitiver und effektiver gestalten. Es ist möglich eine vollständige Frage einzugeben und Perplexica sucht Kontextbezogen nach einer Antwort sowie verlinkt passende Videos und Fotos.
Welche Vorteile bietet Perplexica im Vergleich zur Klassischen Suchmaschine?
- Kontextualisierte Antworten: Sie liefert präzisere, kontextbasierte Antworten auf komplexe Fragen.
- Datenvisualisierung: Perplexica kann Informationen in grafischen Formaten darstellen, was die Analyse erleichtert.
- Integration von Fachwissen: Oft besser für spezifische Branchen oder Fachgebiete geeignet, indem sie tiefergehendes Wissen bereitstellt.
- Wissensmanagement: Unterstützt Unternehmen dabei, internes Wissen effektiver zu nutzen und zu organisieren.
Installationsanleitung Perplexica via Docker auf einem Linux Server
Vorbereitung
- Server mit Ubuntu 22.04 oder höher
- SSH Login
To-Do-Liste
- Installation von Ollama und dem Sprachmodell llama3, nomic-embed-text und mistral:7b
- Installation von Docker
- Installation von Perplexica
Wir starten mit der Installation von Ollama:
cd /tmp
curl -fsSL https://ollama.com/install.sh | sh
Anschließend laden wir uns folgende Sprachmodelle herunter:
ollama pull llama3:latest
ollama pull nomic-embed-text:latest
ollama pull mistral:7b
Es sind auch weitere Sprachmodelle möglich. Eine Auflistung findet sich im Github Repository von Perplexica.
Nun müssen wir den systemctl Eintrag von ollama.service bearbeiten. Dazu öffnen wir mit folgendem Befehl die systemctl Konfiguration:
systemctl edit ollama.service
Und fügen diese zwei Zeilen hinzu, damit Perplexica auf ollama zugreifen kann:
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Systectl und ollama muss danach neu geladen werden:
systemctl daemon-reload && systemctl restart ollama
Damit ist die Installation von Ollama beendet. Jetzt fehlt Perplexica noch.
Installaton von Perplexica
Wir installieren git, docker und docker-compose:
apt-get install git && apt-get install docker && apt-get install docker-compose
und wechseln in das Verzeichnis /opt, clonen das Github repository und wechseln in das Verzeichnis Perplexica:
cd /opt && git clone https://github.com/ItzCrazyKns/Perplexica.git && cd Perplexica
Als nächstes müssen wir die sample.config.toml in config.toml umbennen bzw. kopieren:
cp sample.config.toml config.toml
Die config.toml öffenen wir mit:
nano config.toml
und ändern folgende Zeile ab:
Change OLLAMA = http://<server-ip>:11434
<server-ip> tauschen wir mit der tatsächlichen IP des Servers aus! Dabei dürfen wir localhost oder 127.0.0.1 nicht verwenden, da sonst das Webinterface von Perplexica einfach nicht lädt!
Eine weitere Zeile müssen wir in der Datei Switcher.tsx im Ordner ui/components/theme ändern. Dazu öffnen wir zuerst mit nano die Dtei Switcher.tsx:
nano ui/components/theme/Switcher.tsx
und ändern die Zeile Nummer 10:
Change line 10: const ThemeSwitcher = ({ className, size }: { className?: string; size?: number }) => {
Als letztes müssen wir in der Datei docker-compose.yaml 3 Zeilen anpassen:
SEARXNG_API_URL=http://<server-ip>:4000
NEXT_PUBLIC_API_URL=http://<server-ip>:3001/api
NEXT_PUBLIC_WS_URL=ws://<server-ip>:3001
Auch hier muss <server-ip> die tatsächliche IP-Adresse des Servers sein! Localhost oder 127.0.0.1 führen zu einem Fehler.
Jetzt ist der Docker Container für den ersten Start bereit:
docker-compose up -d --build
Das Webinterface von Perplexica kann nun unter http:/<server-ip>:3000 aufgerufen werden. Es empfiehlt sich die Nutzung eines Nginx Proxy Manager, sofern man Perplexica außerhalb des eigenen Lans nutzen möchte.