Tools
Recherche Perplexity
OpenClaw prend en charge l’API Perplexity Search en tant que fournisseur web_search. Elle renvoie des résultats structurés comportant les champs title, url et snippet.
À des fins de compatibilité, OpenClaw prend également en charge les anciennes configurations Perplexity Sonar/OpenRouter. Si vous utilisez OPENROUTER_API_KEY, une clé sk-or-... dans plugins.entries.perplexity.config.webSearch.apiKey, ou définissez plugins.entries.perplexity.config.webSearch.baseUrl / model, le fournisseur bascule vers le chemin des complétions de conversation et renvoie des réponses synthétisées par l’IA avec des citations au lieu des résultats structurés de l’API Search.
Installer le plugin
Installez le plugin officiel, puis redémarrez le Gateway :
openclaw plugins install @openclaw/perplexity-pluginopenclaw gateway restartObtenir une clé API Perplexity
- Créez un compte Perplexity sur perplexity.ai/settings/api.
- Générez une clé API dans le tableau de bord.
- Enregistrez la clé dans la configuration ou définissez
PERPLEXITY_API_KEYdans l’environnement du Gateway.
Compatibilité avec OpenRouter
Si vous utilisiez déjà OpenRouter pour Perplexity Sonar, conservez provider: "perplexity" et définissez OPENROUTER_API_KEY dans l’environnement du Gateway, ou enregistrez une clé sk-or-... dans plugins.entries.perplexity.config.webSearch.apiKey.
Paramètres de compatibilité facultatifs :
plugins.entries.perplexity.config.webSearch.baseUrlplugins.entries.perplexity.config.webSearch.model
Exemples de configuration
API Perplexity Search native
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "pplx-...", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}Compatibilité OpenRouter / Sonar
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "<openrouter-api-key>", baseUrl: "https://openrouter.ai/api/v1", model: "perplexity/sonar-pro", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}Où définir la clé
Via la configuration : exécutez openclaw configure --section web. La clé est enregistrée dans ~/.openclaw/openclaw.json sous plugins.entries.perplexity.config.webSearch.apiKey. Ce champ accepte également les objets SecretRef.
Via l’environnement : définissez PERPLEXITY_API_KEY ou OPENROUTER_API_KEY dans l’environnement du processus Gateway. Pour une installation du Gateway, placez-la dans ~/.openclaw/.env (ou dans l’environnement de votre service). Consultez Variables d’environnement.
Si provider: "perplexity" est configuré et que la SecretRef de la clé Perplexity n’est pas résolue sans solution de repli dans l’environnement, le démarrage ou le rechargement échoue immédiatement.
Paramètres de l’outil
Ces paramètres s’appliquent au chemin de l’API Perplexity Search native.
querystringrequiredRequête de recherche.
countnumberdefault: 5Nombre de résultats à renvoyer (1 à 10).
countrystringCode pays ISO à 2 lettres (par exemple US, DE).
languagestringCode de langue ISO 639-1 (par exemple en, de, fr).
freshness'day' | 'week' | 'month' | 'year'Filtre temporel — day correspond à 24 heures.
date_afterstringUniquement les résultats publiés après cette date (YYYY-MM-DD).
date_beforestringUniquement les résultats publiés avant cette date (YYYY-MM-DD).
domain_filterstring[]Tableau de domaines autorisés ou refusés (20 au maximum).
max_tokensnumberdefault: 25000Budget total de contenu (1 000 000 au maximum).
max_tokens_per_pagenumberdefault: 2048Limite de jetons par page.
Pour l’ancien chemin de compatibilité Sonar/OpenRouter :
query,countetfreshnesssont acceptés.- Dans ce cas,
countsert uniquement à la compatibilité ; la réponse reste une seule réponse synthétisée avec des citations, et non une liste de N résultats. - Les filtres réservés à l’API Search (
country,language,date_after,date_before,domain_filter,max_tokens,max_tokens_per_page) renvoient des erreurs explicites.
Exemples :
// Recherche propre à un pays et à une langueawait web_search({ query: "renewable energy", country: "DE", language: "de",}); // Résultats récents (semaine écoulée)await web_search({ query: "AI news", freshness: "week",}); // Recherche dans une plage de datesawait web_search({ query: "AI developments", date_after: "2024-01-01", date_before: "2024-06-30",}); // Filtrage par domaine (liste d’autorisation)await web_search({ query: "climate research", domain_filter: ["nature.com", "science.org", ".edu"],}); // Filtrage par domaine (liste de refus — préfixe -)await web_search({ query: "product reviews", domain_filter: ["-reddit.com", "-pinterest.com"],}); // Extraction de contenu supplémentaireawait web_search({ query: "detailed AI research", max_tokens: 50000, max_tokens_per_page: 4096,});Règles de filtrage par domaine
- 20 domaines au maximum par filtre.
- Une même requête ne peut pas mélanger des entrées de liste d’autorisation et de liste de refus.
- Utilisez le préfixe
-pour les entrées de la liste de refus (par exemple["-reddit.com"]).
Remarques
- L’API Perplexity Search renvoie des résultats de recherche Web structurés (
title,url,snippet). - OpenRouter, ou la définition explicite de
plugins.entries.perplexity.config.webSearch.baseUrl/model, fait rebascule Perplexity vers les complétions de conversation Sonar à des fins de compatibilité. - La compatibilité Sonar/OpenRouter renvoie une seule réponse synthétisée avec des citations, et non des lignes de résultats structurées.
- Les résultats sont mis en cache pendant 15 minutes par défaut (durée configurable via
cacheTtlMinutes).
Voir aussi
Tous les fournisseurs et toutes les règles de détection automatique.
Résultats structurés avec des filtres par pays et par langue.
Recherche neuronale avec extraction de contenu.
Guide de démarrage rapide et documentation de référence officiels de l’API Perplexity Search.