Perplexed's settings.
A host passes them when it starts Perplexed, {Perplexed, settings} in its
supervision tree; they are kept in :persistent_term. A setting not given
there falls back to config :perplexed, so a standalone project can use
ordinary application config.
| Key | Used by |
|---|---|
:model | Perplexed.answer/2 default model |
:provider | Default search provider spec |
:ladder | Default scrape ladder |
:prices | Search price overrides, by provider spec |
:cloudflare_account_id | Cloudflare search, Browser Run |
:cloudflare_api_token | Cloudflare search, Browser Run |
:cloudflare_gateway_id | Cloudflare search (default "default") |
:deepseek_api_key | DeepSeek search and scrape |
:firecrawl_api_key | Firecrawl search and scrape |
:firecrawl_credit_usd | Firecrawl cost per credit (your plan) |
:firecrawl_pdf | Let Firecrawl read PDFs the ladder could not |
:searxng_instances | SearXNG search: base URLs, or :auto |
:searxng_discovery | :auto discovery filters (countries:) |
:searxng_refresh_ms | :auto refresh interval (default daily) |
:pdf_converter | Perplexed.PdfConverter implementation |
:url_validator | Perplexed.UrlGuard override |
Summary
Functions
The started settings.
A credential for provider: the call's opts[:credentials][key] when
given, else the setting. {:ok, value}, or an :authentication error
naming the missing key when it is unset or blank.
Whether every key in keys has a credential for provider (see credential/3).
The setting for key, or default when unset.
Functions
@spec all() :: keyword()
The started settings.
@spec credential(atom(), atom(), keyword()) :: {:ok, String.t()} | {:error, {:authentication, map()}}
A credential for provider: the call's opts[:credentials][key] when
given, else the setting. {:ok, value}, or an :authentication error
naming the missing key when it is unset or blank.
Whether every key in keys has a credential for provider (see credential/3).
The setting for key, or default when unset.