Perplexity Provider Guide
Web-search-augmented generation via Perplexity's Sonar models
Overview
Perplexity hosts a family of LLMs (Sonar, Sonar Pro, Sonar Reasoning) that pair the model with a live web search backend; responses include citations to the documents the model relied on.
Key Facts
- Protocol: OpenAI-compatible (
/chat/completions) - Default base URL:
https://api.perplexity.ai - Default model:
sonar - Citations: Returned via
citationsfield on the response - Streaming: Yes
- Tool calling: No
Quick Start
1. Get an API Key
https://www.perplexity.ai/settings/api
2. Configure
PERPLEXITY_API_KEY=pplx-your-key
PERPLEXITY_MODEL=sonar
PERPLEXITY_API_KEYalso configures decisions. The same variable configures the Perplexity Decisions provider (perplexity-decider, which servesdecide()). So setting it for Sonar also lets NeuroLink's built-in features send decision requests to Perplexity when no TypeSafe, Laya or XOR provider is configured, and context compaction needs no other opt-in to do so. To avoid that, pass the key through the SDK ascredentials.perplexity.apiKeyinstead of the environment, and keep it out of.envtoo: the SDK and the CLI load that file into the environment, so aPERPLEXITY_API_KEYline like the one above would still configure decisions. (That the text provider reads this slice is taken from the code and has not been run against the live API.) See What is sent to Perplexity and One key, two providers.
3. Generate
import { NeuroLink } from "@juspay/neurolink";
const ai = new NeuroLink();
const result = await ai.generate({
provider: "perplexity",
input: { text: "What did the Fed announce yesterday?" },
});
console.log(result.content);
Supported Models
| Model ID | Notes |
|---|---|
sonar | Default; fast search-augmented chat |
sonar-pro | Larger context, deeper search |
sonar-reasoning | Chain-of-thought reasoning |
CLI Usage
pnpm run cli generate "What were today's tech-stock movers?" --provider perplexity
Provider Aliases
| Alias | Example |
|---|---|
perplexity | --provider perplexity |
Configuration Reference
| Environment Variable | Required | Default |
|---|---|---|
PERPLEXITY_API_KEY | Yes | — |
PERPLEXITY_MODEL | No | sonar |
PERPLEXITY_BASE_URL | No | https://api.perplexity.ai |
Feature Support Matrix
| Feature | Support |
|---|---|
| Text generation | Yes |
| Streaming | Yes |
| Tool calling | No |
| Structured output | Limited |
| Web search | Yes (native) |
| Citations | Yes |
See Also
- Perplexity Decisions Provider — typed, calibrated
decide()judgments on the same key - Anthropic Provider — web-search via the
web_searchtool - Vertex Provider — Google search grounding