Perplexicas Answer-Engine auf einer custom OpenAI-Base-URL betreiben.
Updated 2026-07-29
Perplexica, upstream umbenannt in Vane, konfiguriert seinen OpenAI-Provider mit einem API Key und einem Base-URL-Feld. Setze die Base URL auf https://api.apisrouter.com/v1, füge die gewünschten Model-IDs hinzu, und jede Suchantwort synthetisiert über das Gateway mit Claude, GPT, DeepSeek oder Gemini hinter einem Key.
Kurzantwort: ein Base-URL-Feld, zwei Config-Generationen.
Auf aktuellen Releases exponiert Perplexicas OpenAI-Provider genau zwei Pflichtfelder: API Key und Base URL, editierbar im Setup-Screen und der Settings-UI, mit dokumentierten Umgebungs-Mappings OPENAI_API_KEY und OPENAI_BASE_URL. Setze die Base URL auf https://api.apisrouter.com/v1, füge einen Gateway-Key ein, und füge dann die gewünschten Chat-Modelle per exakter Katalog-ID hinzu. Der Provider reicht die Model-ID als reinen String über /v1/chat/completions weiter, also funktionieren Claude- und DeepSeek-IDs über den „OpenAI"-Provider-Slot. Auf älteren Perplexica-Releases (die config.toml-Generation, bis zur Linie v1.10 und v1.11) ist dieselbe Fähigkeit der CUSTOM_OPENAI-Provider: ein [MODELS.CUSTOM_OPENAI]-Block mit den Keys API_KEY, API_URL und MODEL_NAME. Beide Generationen sind unten gezeigt, passe das Setup also an die Version an, die du tatsächlich betreibst.
# the settings UI fields map to these documented env vars
export OPENAI_API_KEY=sk-APIsRouter-...
export OPENAI_BASE_URL=https://api.apisrouter.com/v1
# then add chat models by id in Settings, e.g. claude-sonnet-4-6Wie Perplexica eine Frage beantwortet, und wo das LLM sitzt.
Perplexica (ItzCrazyKns auf GitHub, rund 36.000 Stars) ist die bekannteste Open-Source-Answer-Engine im Perplexity-Stil: sie nimmt eine Frage, führt echte Web-Suchen über eine gebündelte SearxNG-Instanz aus, liest die Ergebnisse, und lässt ein LLM eine zitierte Antwort synthetisieren. Such-Modi (speed, balanced, quality) tauschen Retrieval-Tiefe gegen Latenz, und Fokus-Modi grenzen Quellen auf Web, Diskussionen oder akademische Papers ein. 2026 wurde das Projekt upstream in Vane umbenannt, das Docker-Image folgte; Architektur und Provider-System gingen über, also gilt hier alles unter beiden Namen. Der LLM-Slot ist, wo Synthesequalität und Kosten leben. Jede Antwort ist ein oder mehrere Chat-Completions-Calls, die die abgerufenen Quellen als Kontext tragen, was eine Answer-Engine zu einem input-token-lastigen Workload macht: das Modell liest weit mehr, als es schreibt. Das Provider-System behandelt OpenAI als eines von mehreren Backends (Ollama, Anthropic, Gemini, Groq und andere), und der OpenAI-Provider ist der mit einer frei editierbaren Base URL, was ihn zum Gateway-Hook macht. Ein Verhalten, das man vorab kennen sollte: Ist die Base URL etwas anderes als der Standard-OpenAI-Endpoint, zeigt Perplexica absichtlich eine leere Default-Modell-Liste und nutzt die Modell-Einträge, die du selbst zum Provider hinzufügst. Das ist Absicht, da es nicht wissen kann, was ein custom Endpoint bedient. claude-sonnet-4-6 oder deepseek-v4-flash als Modell-Eintrag hinzuzufügen ist die zweite Hälfte des Setups, kein Workaround.
Vollständiges Setup: aktuelle Releases und die legacy config.toml.
Aktuelle Releases konfigurieren alles in der App. Beim ersten Start fragt der Setup-Screen nach Providern; danach leben dieselben Felder in Settings. Wähle den OpenAI-Provider, setze API Key und Base URL, und füge dann Chat-Model-Einträge mit den gewünschten IDs hinzu. Die IDs müssen exakt zum Gateway-Katalog passen, und jeder hinzugefügte Eintrag erscheint im Model-Picker neben dem Suchfeld. Die Legacy-Generation ist dateibasiert. Hat deine Installation noch eine config.toml, bist du auf der CUSTOM_OPENAI-Generation: fülle den Block unten aus und starte den Container neu. MODEL_NAME nimmt eine Model-ID, die die UI dann als Custom-OpenAI-Option anbietet.
[MODELS.CUSTOM_OPENAI]
API_KEY = "sk-YOUR-APISROUTER-KEY"
API_URL = "https://api.apisrouter.com/v1"
MODEL_NAME = "claude-sonnet-4-6"Ein Synthese-Modell für eine Answer-Engine wählen.
Weil der Model-Picker anzeigt, was auch immer du gegen eine Base URL hinzugefügt hast, ist A/B-Testing von Synthese-Modellen trivial: stell dieselbe Frage in zwei Tabs mit zwei Einträgen und vergleiche die Zitate. Das Nutzungslog pro Key bepreist die Antworten jedes Modells, der ehrliche Weg zu entscheiden, ob Frontier-Synthese ihre Token an deinem Query-Mix verdient.
- Input-Token dominieren. Eine Quality-Mode-Antwort kann große abgerufene Kontexte in den Prompt drücken, also setzt der Preis pro Input-Token deiner ID die Kosten einer Suche, nicht die kurze Antwort, die zurückgeschrieben wird.
- claude-sonnet-4-6 ist der starke Default für zitierte Synthese: es folgt den Source-Grounding-Instruktionen gut und bleibt kohärent, wenn viele Snippets widersprechen.
- High-Volume-Instanzen für Einzelpersonen oder Teams fahren gut mit claude-haiku-4-5-20251001, gemini-3.5-flash oder deepseek-v4-flash: Antworten bleiben verankert, und die Kosten pro Suche fallen genug, um den Quality-Mode angelassen zu lassen.
- Behalte eine Frontier-ID als zweiten Eintrag. Modell-Einträge sitzen nebeneinander im Picker, also ist die Eskalation einer schwierigen Frage auf gpt-5.5 ein Dropdown-Wechsel, keine Config-Bearbeitung.
- Der akademische Fokus-Modus belohnt Long-Context-Modelle, da Paper-Abstracts und -Auszüge sperriger als Web-Snippets sind.
Nutzungsbasiert · unter offiziellem Preis
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Modell | Offizieller Preis | Unser Preis |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.10 / $0.30 per M |
Fehlerbilder speziell für Perplexica.
Die leere Modell-Liste ist der Klassiker. Du setzt die Base URL, der Picker wird leer, und es sieht kaputt aus. Ist es nicht: bei einer Nicht-Default-Base-URL listet Perplexica nur die Modell-Einträge, die du zum Provider hinzufügst. Füge deine IDs hinzu, und sie erscheinen. Embeddings sind ein separater Slot. Perplexica nutzt Embedding-Modelle für Reranking der Ergebnisse, und der OpenAI-Provider bedient Embeddings von derselben Base URL und demselben Key. Bedient dein Gateway die dort konfigurierte Embedding-ID nicht, bricht Reranking, während Chat-Antworten weiter funktionieren. Der saubere Split ist, Embeddings auf dem lokalen Transformers-Provider zu belassen, der auf dem Rechner ohne jede API läuft, und nur die Chat-Synthese über das Gateway zu routen. Die Umbenennung stolpert Guides. Perplexica und Vane sind dasselbe Projekt; alte Tutorials referenzieren das perplexica-Docker-Image und config.toml, aktuelle Builds liefern als vane mit In-App-Settings und einem persistenten Daten-Volume. Hat deine Installation keine config.toml, erstelle keine, sie wird nicht gelesen; konfiguriere stattdessen über die UI oder die dokumentierten Env-Vars. SearxNG ist unabhängig. Verschlechtern sich Antworten oder liefern Suchen nichts zurück, liegt das am SearxNG-Container oder dessen JSON-Format-Einstellung, nicht am LLM-Endpoint. Die Base URL bewegt nur Chat- und Embedding-Calls.
Wer Perplexica über ein Gateway routet.
- Self-Hoster, die ein Perplexity-Abo ersetzen und Frontier-Qualität-Synthese pro Suche zu Token-Preisen wollen, mit einem Key statt einem Vendor-Konto pro Modellfamilie.
- Teams, die eine geteilte Answer-Engine betreiben, wo das Nutzungslog pro Key „was kostet uns Suche" in eine Zahl pro Modell verwandelt.
- Privacy-fokussierte Setups, die Retrieval vollständig lokal halten (SearxNG plus lokale Embeddings) und nur den finalen Synthese-Call nach außen über einen prüfbaren Endpoint routen.
- Tüftler, die Synthese-Modelle an identischen Fragen vergleichen: jeder Kandidat ist ein Modell-Eintrag gegen dieselbe Base URL.
- Entwickler ohne Zugang zum Billing eines bestimmten Vendors. Guthabenbasierter Zugang ohne Kartenpflicht entfernt die Sign-up-Abhängigkeit pro Provider.
Endpoint verifizieren und die erste Suche debuggen.
Bestätige, dass das Gateway die hinzugefügten IDs bedient, bevor du der App die Schuld gibst; die Einträge im Provider müssen exakt zur /v1/models-Ausgabe passen. First-Run-Fehler folgen einem Muster. „No chat model providers configured" bedeutet, die Provider-Felder haben nicht gespeichert oder die Modell-Liste ist noch leer; füge mindestens einen Chat-Model-Eintrag hinzu. Ein 401 in den Server-Logs bedeutet, der Key passt nicht zum Endpoint im Base-URL-Feld. Ein model-not-found-Fehler ist ein ID-Tippfehler in einem Modell-Eintrag. Reranking-Fehler bei funktionierenden Antworten verweisen auf den Embedding-Slot, wo dich der lokale Transformers-Provider rettet. Und hat sich nach dem Bearbeiten von Umgebungsvariablen nichts geändert, denk daran, dass die Config im Daten-Volume persistiert; bereits in der UI gespeicherte Felder gewinnen gegen eine spätere Env-Änderung, bearbeite sie also in Settings. Sobald Suchen laufen, zeigt die APIsRouter-Konsole Modell, Token-Zahlen und Ausgaben pro Anfrage. Answer-Engines sind input-lastig, und die reale Token-pro-Suche-Zahl für deinen Query-Mix zu sehen schlägt jede Schätzung.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50Häufige Fragen
Ist Perplexica dasselbe Projekt wie Vane?
Ja. Das Upstream-Repository wurde 2026 in Vane umbenannt, und das Docker-Image folgte. Provider-System, SearxNG-Integration und das hier beschriebene Base-URL-Feld sind unter beiden Namen dieselben; nur legacy Releases nutzen noch den Namen Perplexica und config.toml.
Kann Perplexica Claude- oder DeepSeek-Modelle für Antworten nutzen?
Ja. Der OpenAI-Provider reicht Model-IDs als reine Strings an die von dir gesetzte Base URL weiter. Füge claude-sonnet-4-6 oder deepseek-v4-flash als Modell-Einträge gegen die Gateway-Base-URL hinzu, und sie erscheinen im Model-Picker wie jede andere Option.
Warum ist die Modell-Liste leer, nachdem ich die Base URL geändert habe?
Per Design. Bei einer Nicht-Default-Base-URL kann Perplexica nicht annehmen, welche Modelle der Endpoint bedient, also listet es nur die Einträge, die du selbst zum Provider hinzufügst. Füge deine IDs in Settings hinzu, und sie erscheinen sofort.
Was sind die legacy CUSTOM_OPENAI-Config-Keys?
Auf der config.toml-Generation (bis zur Linie v1.10 und v1.11) nimmt der Block [MODELS.CUSTOM_OPENAI] API_KEY, API_URL und MODEL_NAME. Setze API_URL auf den Gateway-Endpoint inklusive /v1 und MODEL_NAME auf eine Katalog-ID, dann neu starten.
Routen Embeddings auch über die custom Base URL?
Konfigurierst du Embedding-Modelle auf dem OpenAI-Provider, ja, sie nutzen dieselbe Base URL und denselben Key. Die meisten Gateway-Setups belassen Embeddings stattdessen auf dem lokalen Transformers-Provider, der keine API braucht und Reranking unabhängig vom Chat-Endpoint hält.
Funktionieren die Umgebungsvariablen OPENAI_API_KEY und OPENAI_BASE_URL noch?
Ja, sie sind die dokumentierten Env-Mappings für die zwei Felder des OpenAI-Providers auf aktuellen Releases. Beachte, dass bereits über die Settings-UI gespeicherte Werte im Daten-Volume persistieren, bearbeite sie also dort, falls die App schon einmal konfiguriert wurde.