Tools

Pesquisa do Perplexity

O OpenClaw oferece suporte à API Perplexity Search como provedor de web_search. Ela retorna resultados estruturados com os campos title, url e snippet.

Para fins de compatibilidade, o OpenClaw também oferece suporte a configurações legadas do Perplexity Sonar/OpenRouter. Se você usar OPENROUTER_API_KEY, uma chave sk-or-... em plugins.entries.perplexity.config.webSearch.apiKey ou definir plugins.entries.perplexity.config.webSearch.baseUrl / model, o provedor alternará para o fluxo de conclusões de chat e retornará respostas sintetizadas por IA com citações, em vez de resultados estruturados da API Search.

Instalar o plugin

Instale o plugin oficial e reinicie o Gateway:

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

Obter uma chave de API da Perplexity

  1. Crie uma conta da Perplexity em perplexity.ai/settings/api.
  2. Gere uma chave de API no painel.
  3. Armazene a chave na configuração ou defina PERPLEXITY_API_KEY no ambiente do Gateway.

Compatibilidade com o OpenRouter

Se você já usava o OpenRouter para o Perplexity Sonar, mantenha provider: "perplexity" e defina OPENROUTER_API_KEY no ambiente do Gateway ou armazene uma chave sk-or-... em plugins.entries.perplexity.config.webSearch.apiKey.

Controles opcionais de compatibilidade:

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

Exemplos de configuração

API Perplexity Search nativa

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

Compatibilidade com OpenRouter / Sonar

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",      },    },  },}

Onde definir a chave

Pela configuração: execute openclaw configure --section web. O comando armazena a chave em ~/.openclaw/openclaw.json, no campo plugins.entries.perplexity.config.webSearch.apiKey. Esse campo também aceita objetos SecretRef.

Pelo ambiente: defina PERPLEXITY_API_KEY ou OPENROUTER_API_KEY no ambiente do processo do Gateway. Para uma instalação do Gateway, coloque-a em ~/.openclaw/.env (ou no ambiente do seu serviço). Consulte Variáveis de ambiente.

Se provider: "perplexity" estiver configurado e a SecretRef da chave da Perplexity não puder ser resolvida, sem alternativa disponível no ambiente, a inicialização ou recarga falhará imediatamente.

Parâmetros da ferramenta

Estes parâmetros se aplicam ao fluxo da API Perplexity Search nativa.

querystringrequired

Consulta de pesquisa.

countnumberdefault: 5

Número de resultados a retornar (1–10).

countrystring

Código ISO de país com 2 letras (por exemplo, US, DE).

languagestring

Código de idioma ISO 639-1 (por exemplo, en, de, fr).

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

Filtro de período — day corresponde a 24 horas.

date_afterstring

Apenas resultados publicados após esta data (YYYY-MM-DD).

date_beforestring

Apenas resultados publicados antes desta data (YYYY-MM-DD).

domain_filterstring[]

Matriz de domínios permitidos ou bloqueados (máximo de 20).

max_tokensnumberdefault: 25000

Orçamento total de conteúdo (máximo de 1000000).

max_tokens_per_pagenumberdefault: 2048

Limite de tokens por página.

Para o fluxo legado de compatibilidade com Sonar/OpenRouter:

  • query, count e freshness são aceitos.
  • Nesse fluxo, count existe apenas para compatibilidade; a resposta continua sendo uma única resposta sintetizada com citações, em vez de uma lista com N resultados.
  • Os filtros exclusivos da API Search (country, language, date_after, date_before, domain_filter, max_tokens, max_tokens_per_page) retornam erros explícitos.

Exemplos:

javascript
// Pesquisa específica por país e idiomaawait web_search({  query: "renewable energy",  country: "DE",  language: "de",}); // Resultados recentes (última semana)await web_search({  query: "AI news",  freshness: "week",}); // Pesquisa por intervalo de datasawait web_search({  query: "AI developments",  date_after: "2024-01-01",  date_before: "2024-06-30",}); // Filtragem por domínio (lista de permitidos)await web_search({  query: "climate research",  domain_filter: ["nature.com", "science.org", ".edu"],}); // Filtragem por domínio (lista de bloqueados — prefixe com -)await web_search({  query: "product reviews",  domain_filter: ["-reddit.com", "-pinterest.com"],}); // Extração de mais conteúdoawait web_search({  query: "detailed AI research",  max_tokens: 50000,  max_tokens_per_page: 4096,});

Regras do filtro de domínios

  • Máximo de 20 domínios por filtro.
  • Não é possível combinar entradas permitidas e bloqueadas na mesma solicitação.
  • Use o prefixo - para entradas da lista de bloqueados (por exemplo, ["-reddit.com"]).

Observações

  • A API Perplexity Search retorna resultados estruturados de pesquisa na web (title, url, snippet).
  • O OpenRouter ou a definição explícita de plugins.entries.perplexity.config.webSearch.baseUrl / model faz o Perplexity voltar a usar conclusões de chat do Sonar para fins de compatibilidade.
  • A compatibilidade com Sonar/OpenRouter retorna uma única resposta sintetizada com citações, não linhas de resultados estruturados.
  • Por padrão, os resultados são armazenados em cache por 15 minutos (configurável por meio de cacheTtlMinutes).

Relacionados

Was this useful?
On this page

On this page