SearXNG: Einem Modell Websuche ermöglichen lokal
SearXNG (freie Software unter der Lizenz AGPL-3.0, die ihre Nutzer weder verfolgt noch profiliert) ist eine selbst gehostete Metasuchmaschine: Sie leitet Ihre Suchanfragen an andere Suchmaschinen weiter und führt deren Ergebnisse zusammen, ohne API-Schlüssel und ohne Rechnung. Für ein lokales Modell ist der entscheidende Schritt, „json“ zur Liste der Formate in settings.yml hinzuzufügen (standardmäßig nur „html“) und diese JSON-Ausgabe anschließend wieder an Ihre Chatoberfläche oder Ihren Agenten anzubinden.
Ein offenes Modell weiß nichts über diese Woche, und nichts in seiner Antwort warnt Sie davor: Es wird über den letzten Monat mit derselben Selbstsicherheit sprechen wie über das auswendig gelernte Einmaleins. Ihm Zugang zu einer Websuche zu geben, behebt das. SearXNG ist eine selbst gehostete Metasuchmaschine, die diesen Dienst ohne API-Schlüssel, ohne Abrechnung pro Anfrage und ohne Konto bereitstellt – damit ist sie ein passender Baustein für eine lokale Installation, bei der Sie nicht jede Frage an einen Drittanbieter schicken möchten.
#Warum ein lokales Modell Webzugriff benötigt
Das Wissen eines Modells endet mit seinem Trainingsdatum, und es weiß nicht mit Sicherheit, wo genau diese Grenze liegt. Es gibt zwei Lösungen: Sie geben dem Modell die Fakten selbst im Prompt vor oder ermöglichen ihm, sie beim Antworten selbst zu suchen. Die Suche ist die allgemeine Form der zweiten Lösung und lässt sich am besten skalieren, sobald die Fragen variieren.
Der naheliegende Weg ist eine kommerzielle Such-API: ein Konto, ein Schlüssel, eine Abrechnung pro Anfrage. SearXNG ist die selbst gehostete Alternative. Sie betreiben die Instanz, die Anfragen gehen von Ihnen aus, es gibt kein Konto und nichts wird protokolliert, sofern Sie sich nicht dafür entscheiden. Bei einer Installation, deren Nutzen gerade darin liegt, dass die Daten zu Hause bleiben, wäre es ein seltsamer Endpunkt, jede Frage durch die Hintertür an einen Drittanbieter zu schicken.
Das Projekt selbst beschreibt sich ausdrücklich als Metasuchmaschine, deren Nutzer weder verfolgt noch profiliert werden, und wird unter der freien Lizenz AGPL-3.0 verbreitet. Diese Lizenz hat ein starkes Copyleft: Wer eine modifizierte Version weiterverbreitet, auch als Online-Dienst, muss den zugehörigen Quellcode unter denselben Bedingungen erneut veröffentlichen. Bei persönlicher Nutzung oder interner Nutzung innerhalb eines Teams greift diese Klausel niemals: Sie betrifft ausschließlich die Weiterverbreitung einer modifizierten Version an Dritte, nicht den bloßen Betrieb der Instanz zu Hause oder im eigenen Unternehmen.
#Was SearXNG macht, ganz ohne Magie
Ihr privates, kostenloses ChatGPT auf Ihrem Rechner in einer Stunde – mit LM Studio, Ollama, Open WebUI und Ihren Dokumenten, ganz ohne Cloud.
- Lebenslanger Online-Zugang
- PDF + Dateien
- Erstattung binnen 30 Tagen
SearXNG crawlt das Web nicht und besitzt keinen eigenen Index. Es ist ein Vermittler: Ihre Suchanfrage wird an eine konfigurierbare Auswahl bestehender Suchmaschinen weitergeleitet. Deren Ergebnisse kommen zurück, werden von Duplikaten bereinigt und neu sortiert, und Sie erhalten eine einzige Liste. Die abgefragten Suchmaschinen sehen nicht Ihre IP-Adresse, sondern die der Instanz.
Der Vermittlerstatus erklärt auch das vom Projekt selbst hervorgehobene Datenschutzversprechen: Die Nutzer werden von der Instanz weder verfolgt noch profiliert. Kein Konto, keine Werbe-Tracking-Cookies, kein mit einer Identität verknüpfter Suchverlauf – das unterscheidet SearXNG deutlich von kommerziellen Suchmaschinen, deren Geschäftsmodell gerade auf der Profilbildung anhand von Suchanfragen und Klicks im Zeitverlauf beruht.
- Die Qualität wird vererbt
- Deaktivieren Sie die Suchmaschinen, die für Ihren konkreten Anwendungsfall irrelevante Ergebnisse liefern: Das verbessert die Antworten des Modells stärker als jede Anpassung des Prompts, denn das Modell kann einen bereits mit irrelevanten Informationen belasteten Ausgangskontext nicht ausgleichen.
- Die Automatisierung wirkt wie Missbrauch
- Ein Mensch führt pro Minute einige Suchanfragen aus, eine Agentenschleife dagegen Dutzende. Die vorgeschalteten Suchmaschinen reagieren mit CAPTCHAs und vorübergehenden Sperren, die sich bei Ihnen als leere Ergebnisse zeigen.
Diese starke Abhängigkeit von den zugrunde liegenden Suchmaschinen ist der zentrale Kompromiss jeder Metasuchmaschine: SearXNG kann nicht besser sein als das, was es aggregiert, und übernimmt auch deren Ausfälle und Änderungen. Ändert eine Suchmaschine von einem Tag auf den anderen ihr HTML-Markup, funktioniert das entsprechende Modul in SearXNG nicht mehr, bis die Maintainer es aktualisieren. Das erklärt, warum bei einer seit Langem unveränderten Instanz manche Suchmaschinen unbemerkt nicht mehr antworten, ohne dass eine ausdrückliche Fehlermeldung erscheint.
#L'installer
- 01Container bereitstellenDas offizielle Image wird auf Docker Hub (searxng/searxng) und auf GHCR (ghcr.io/searxng/searxng) veröffentlicht; beide Versionen werden vom Projekt selbst gepflegt. Auf einer einzelnen Maschine reichen das Image und ein Valkey-Cache-Dienst (Valkey ist der Open-Source-Fork von Redis) für den Einstieg völlig aus.
- 02Im lokalen Netzwerk belassenEine im Internet frei zugängliche Instanz wird innerhalb weniger Tage gefunden und als kostenloses Relay genutzt, wodurch ihr Zugriff auf die vorgeschalteten Suchmaschinen gesperrt wird. Man bindet sie an das lokale Netzwerk oder schaltet eine Authentifizierung davor.
- 03Von dem Rechner aus prüfen, der die Anfragen senden wirdNicht von Ihrem Browser aus. Ein Container, der einen anderen aufruft, benötigt die aus Docker heraus erreichbare Adresse, nicht localhost.
#Die Einstellung, die alle übersehen
Standardmäßig liefert eine frisch installierte SearXNG-Instanz nur HTML: perfekt für einen Menschen, völlig unbrauchbar für ein Programm. Die offizielle Dokumentation bestätigt, dass der Schlüssel search.formats in settings.yml standardmäßig nur „html“ enthält, obwohl csv, json und rss verfügbar sind; Sie müssen json hinzufügen und anschließend neu starten. Das ist die alleinige Ursache für die überwiegende Mehrheit der „Es funktioniert nicht“-Probleme beim Anschließen von SearXNG an eine Chat-Oberfläche.
#An Ihr Modell anschließen
| Umgebung | Rolle von SearXNG |
|---|---|
| Webinterface für lokalen Chat | Integrierter Suchanbieter: Man gibt die URL der Instanz ein, und die Antworten werden um eine Quellenliste ergänzt |
| Agenten-Framework | Ein Suchwerkzeug, das der Agent aufrufen kann |
| Dokumentenrecherche-Kette | Schritt zur Informationsbeschaffung für Fragen zum aktuellen Geschehen, zusätzlich zum Index Ihrer Dokumente |
| Automatisierungs-Tool | Ein einfacher HTTP-Aufruf an den JSON-Endpunkt |
Der Ablauf ist immer gleich: Die Suche liefert Auszüge und Adressen, Ihr Code oder Ihre Benutzeroberfläche wählt einige davon aus, und diese werden in den Prompt eingefügt, bevor das Modell die gestellte Frage beantwortet. Das Modell surft nicht im Web: Es liest, was ihm vorgelegt wurde. Deshalb wiegen die Qualität der Auszüge und die Größe des Kontextfensters hier schwerer als die Modellgröße.
#Die Einstellungen, die tatsächlich etwas verändern
Eine frisch installierte Instanz aktiviert standardmäßig eine große Anzahl von Suchmaschinen. Das wirkt großzügig, mindert aber die Qualität: mehr Rauschen, mehr Duplikate und höhere Latenz, weil auf die Antwort der langsamsten Suchmaschine gewartet werden muss. Die erste wirkliche Verbesserung betrifft niemals den Prompt des Modells, sondern die Liste der aktiven Suchmaschinen und deren tatsächliche Relevanz für den vorgesehenen Einsatz.
- Nicht relevante Suchmaschinen deaktivieren
- Wer hauptsächlich mit technischer Dokumentation arbeitet, benötigt beispielsweise keine standardmäßig aktivierten Suchmaschinen für Bilder oder Shopping. Jede Suchmaschine weniger bedeutet eine Störquelle weniger und eine Anfrage weniger an einen vorgelagerten Dienst, die im Alltag zu verwalten ist.
- Cache aktivieren
- Eine gemeinsam genutzte Valkey-Datenbank verhindert, dass bei jedem Aufruf eines Agenten, der in einer Schleife dieselbe Frage wiederholt, erneut dieselbe Suche durchgeführt wird. Das spart sowohl Antwortzeit als auch wertvolles Abfragekontingent bei den vorgeschalteten Suchmaschinen.
- Ein Ergebnisbudget festlegen
- Zehn Ergebnisse anzufordern, wenn das Modell tatsächlich nur drei davon lesen wird, verschwendet viel Kontext und erhöht die Latenz, ohne konkreten Nutzen. Stimmen Sie die Anzahl der zurückgegebenen Ergebnisse genau darauf ab, wie viele Ihr Prompt anschließend tatsächlich nutzt – nicht mehr und nicht weniger.
- Die Protokolle beim Start überwachen
- Eine kürzlich auf Valkey aktualisierte Instanz kann ohne Fehlermeldung scheitern, wenn der Hostname noch auf einen alten Cache-Dienst verweist. Ein Blick in die Containerprotokolle erspart Ihnen die Suche an anderer Stelle nach einem Problem, das genau hier liegt.
- Installieren Sie Open WebUI, die Schnittstelle, die diese Ergebnisse verarbeitet
- Abläufe mit n8n und Ollama automatisieren
- Architektur eines lokalen Agenten, der Tools verwendet
- LiteLLM: Ein einheitlicher Proxy für lokale Dienste und Cloud-Dienste
#Zu berücksichtigende Grenzen
- Die Kontingente der Suchmaschinen
- Leere Ergebnisse bedeuten fast immer eine vorgelagerte Blockierung, keinen Konfigurationsfehler bei SearXNG selbst. Weniger aktive Suchmaschinen, mehr Valkey-Cache und vor allem kein Agent, der ohne jede Begrenzung der Anfragefrequenz in einer Schleife sucht.
- Kurze Auszüge
- Für ausführliche Inhalte müssen die Seiten hinter den Links abgerufen und bereinigt werden: Das ist die Aufgabe eines spezialisierten Extraktors, nicht einer Suchmaschine, die lediglich Ergebnisse weitergibt, die bereits zuvor zusammengefasst wurden.
- Kein intelligentes Ranking
- SearXNG führt Suchergebnisse zusammen, versteht aber Ihre Frage nicht. Eine vage Suchanfrage liefert einen vagen Kontext, den das Modell gewissenhaft zusammenfasst, ohne jemals darauf hinzuweisen, dass die gestellte Frage schlecht formuliert war.
- Die Wartung liegt bei Ihnen
- Die vorgeschalteten Suchmaschinen ändern ihre Seiten; die Module müssen entsprechend angepasst werden. Eine Instanz, die ein Jahr lang ohne Updates bleibt, funktioniert unbemerkt immer schlechter.
- Die Migration zu Valkey betrifft ältere Instanzen
- Eine Instanz, die vor mehr als einem Jahr eingerichtet wurde, verweist möglicherweise noch auf einen alten Cache-Dienst. Prüfen Sie den für den Rate-Limiter konfigurierten Hostnamen: Wenn er nicht mehr zu dem Container passt, der heute tatsächlich läuft, versagt der Bot-Schutz unbemerkt, statt Missbrauch zuverlässig zu blockieren.
#FAQ
Ist SearXNG kostenlos?+
Warum gibt meine Instanz HTML anstatt JSON aus?+
Kann ich eine öffentliche Instanz nutzen, anstatt meine eigene zu hosten?+
Braucht man eine GPU?+
Warum werden nach einer Weile keine Ergebnisse mehr angezeigt?+
Bringt das mein Modell auf den neuesten Stand?+
Was ändert die AGPL-3.0-Lizenz von SearXNG für mich?+
- Quelle: GitHub-Repository von SearXNG
- Quelle: offizieller Leitfaden zur Installation in einem Container
- Quelle: Dokumentation der Ausgabeformate
Haben Sie Feedback, einen Fehler entdeckt oder möchten Sie etwas präzisieren? Geben Sie uns Bescheid – so wird der Guide für alle besser.