Tools

Perplexity-Suche

OpenClaw unterstützt die Perplexity Search API als web_search-Provider. Sie gibt strukturierte Ergebnisse mit den Feldern title, url und snippet zurück.

Aus Kompatibilitätsgründen unterstützt OpenClaw auch ältere Perplexity-Sonar-/OpenRouter-Konfigurationen. Wenn Sie OPENROUTER_API_KEY verwenden, einen sk-or-...-Schlüssel in plugins.entries.perplexity.config.webSearch.apiKey eintragen oder plugins.entries.perplexity.config.webSearch.baseUrl / model festlegen, wechselt der Provider zum Chat-Completions-Pfad und gibt statt strukturierter Search-API-Ergebnisse KI-generierte Antworten mit Quellenangaben zurück.

Plugin installieren

Installieren Sie das offizielle Plugin und starten Sie anschließend den Gateway neu:

bash
openclaw plugins install @openclaw/perplexity-pluginopenclaw gateway restart

Perplexity-API-Schlüssel beziehen

  1. Erstellen Sie unter perplexity.ai/settings/api ein Perplexity-Konto.
  2. Generieren Sie im Dashboard einen API-Schlüssel.
  3. Speichern Sie den Schlüssel in der Konfiguration oder legen Sie PERPLEXITY_API_KEY in der Gateway-Umgebung fest.

OpenRouter-Kompatibilität

Wenn Sie OpenRouter bereits für Perplexity Sonar verwendet haben, behalten Sie provider: "perplexity" bei und legen Sie OPENROUTER_API_KEY in der Gateway-Umgebung fest oder speichern Sie einen sk-or-...-Schlüssel in plugins.entries.perplexity.config.webSearch.apiKey.

Optionale Kompatibilitätseinstellungen:

  • plugins.entries.perplexity.config.webSearch.baseUrl
  • plugins.entries.perplexity.config.webSearch.model

Konfigurationsbeispiele

Native Perplexity Search API

json5
{  plugins: {    entries: {      perplexity: {        config: {          webSearch: {            apiKey: "pplx-...",          },        },      },    },  },  tools: {    web: {      search: {        provider: "perplexity",      },    },  },}

OpenRouter-/Sonar-Kompatibilität

json5
{  plugins: {    entries: {      perplexity: {        config: {          webSearch: {            apiKey: "<openrouter-api-key>",            baseUrl: "https://openrouter.ai/api/v1",            model: "perplexity/sonar-pro",          },        },      },    },  },  tools: {    web: {      search: {        provider: "perplexity",      },    },  },}

Schlüssel festlegen

Über die Konfiguration: Führen Sie openclaw configure --section web aus. Dadurch wird der Schlüssel in ~/.openclaw/openclaw.json unter plugins.entries.perplexity.config.webSearch.apiKey gespeichert. Dieses Feld akzeptiert auch SecretRef-Objekte.

Über die Umgebung: Legen Sie PERPLEXITY_API_KEY oder OPENROUTER_API_KEY in der Prozessumgebung des Gateways fest. Bei einer Gateway-Installation tragen Sie den Wert in ~/.openclaw/.env (oder in Ihrer Dienstumgebung) ein. Siehe Umgebungsvariablen.

Wenn provider: "perplexity" konfiguriert ist und die SecretRef für den Perplexity-Schlüssel nicht aufgelöst werden kann und kein Ersatzwert aus der Umgebung verfügbar ist, schlägt der Start beziehungsweise das Neuladen sofort fehl.

Tool-Parameter

Diese Parameter gelten für den nativen Perplexity-Search-API-Pfad.

querystringrequired

Suchanfrage.

countnumberdefault: 5

Anzahl der zurückzugebenden Ergebnisse (1–10).

countrystring

Zweistelliger ISO-Ländercode (z. B. US, DE).

languagestring

Sprachcode nach ISO 639-1 (z. B. en, de, fr).

freshness'day' | 'week' | 'month' | 'year'

Zeitfilter – day entspricht 24 Stunden.

date_afterstring

Nur Ergebnisse, die nach diesem Datum veröffentlicht wurden (YYYY-MM-DD).

date_beforestring

Nur Ergebnisse, die vor diesem Datum veröffentlicht wurden (YYYY-MM-DD).

domain_filterstring[]

Array mit zugelassenen oder ausgeschlossenen Domains (maximal 20).

max_tokensnumberdefault: 25000

Gesamtes Inhaltsbudget (maximal 1000000).

max_tokens_per_pagenumberdefault: 2048

Token-Limit pro Seite.

Für den älteren Sonar-/OpenRouter-Kompatibilitätspfad gilt:

  • query, count und freshness werden akzeptiert.
  • count dient dort nur der Kompatibilität; die Antwort besteht weiterhin aus einer einzigen generierten Antwort mit Quellenangaben und nicht aus einer Liste mit N Ergebnissen.
  • Filter, die ausschließlich von der Search API unterstützt werden (country, language, date_after, date_before, domain_filter, max_tokens, max_tokens_per_page), führen zu eindeutigen Fehlermeldungen.

Beispiele:

javascript
// Länder- und sprachspezifische Sucheawait web_search({  query: "erneuerbare Energien",  country: "DE",  language: "de",}); // Aktuelle Ergebnisse (vergangene Woche)await web_search({  query: "KI-Nachrichten",  freshness: "week",}); // Suche nach Datumsbereichawait web_search({  query: "KI-Entwicklungen",  date_after: "2024-01-01",  date_before: "2024-06-30",}); // Domain-Filterung (Zulassungsliste)await web_search({  query: "Klimaforschung",  domain_filter: ["nature.com", "science.org", ".edu"],}); // Domain-Filterung (Ausschlussliste – Präfix - verwenden)await web_search({  query: "Produktbewertungen",  domain_filter: ["-reddit.com", "-pinterest.com"],}); // Umfangreichere Inhaltsextraktionawait web_search({  query: "detaillierte KI-Forschung",  max_tokens: 50000,  max_tokens_per_page: 4096,});

Regeln für Domain-Filter

  • Maximal 20 Domains pro Filter.
  • Einträge aus Zulassungs- und Ausschlusslisten dürfen nicht in derselben Anfrage kombiniert werden.
  • Verwenden Sie für Einträge der Ausschlussliste das Präfix - (z. B. ["-reddit.com"]).

Hinweise

  • Die Perplexity Search API gibt strukturierte Websuchergebnisse zurück (title, url, snippet).
  • OpenRouter oder explizit festgelegte Werte für plugins.entries.perplexity.config.webSearch.baseUrl / model stellen Perplexity aus Kompatibilitätsgründen wieder auf Sonar Chat Completions um.
  • Die Sonar-/OpenRouter-Kompatibilität gibt eine einzelne generierte Antwort mit Quellenangaben zurück, keine strukturierten Ergebniszeilen.
  • Ergebnisse werden standardmäßig 15 Minuten lang zwischengespeichert (über cacheTtlMinutes konfigurierbar).

Verwandte Themen

Was this useful?
On this page

On this page