Perplexica の回答エンジンを、カスタムの OpenAI base URL で動かす。
Updated 2026-07-29
Perplexica は upstream で Vane と改名され、その OpenAI プロバイダーを API Key と Base URL フィールドで設定します。Base URL を https://api.apisrouter.com/v1 に設定し、欲しいモデル id を追加すれば、すべての検索回答が、Claude・GPT・DeepSeek・Gemini をキー1つの裏に持つゲートウェイ経由で統合されるようになります。
早わかり: Base URL フィールドは1つ、設定の世代は2つ。
現行リリースでは、Perplexica の OpenAI プロバイダーは、まさに2つの必須フィールドを公開しています。API Key と Base URL で、セットアップ画面と設定 UI で編集可能であり、ドキュメント記載済みの環境変数マッピング OPENAI_API_KEY と OPENAI_BASE_URL があります。Base URL を https://api.apisrouter.com/v1 に設定し、ゲートウェイキーを貼り付け、使いたいチャットモデルを正確なカタログの id で追加します。プロバイダーはモデル id を、/v1/chat/completions を通じてプレーンな文字列として転送するため、Claude や DeepSeek の id は "OpenAI" プロバイダーのスロットを通じて動作します。 古い Perplexica のリリース(config.toml の世代、v1.10 と v1.11 の系統まで)では、同じ機能は CUSTOM_OPENAI プロバイダーです。API_KEY・API_URL・MODEL_NAME というキーを持つ [MODELS.CUSTOM_OPENAI] ブロックです。両方の世代を以下に示すので、実際に運用しているバージョンにセットアップを合わせてください。
# the settings UI fields map to these documented env vars
export OPENAI_API_KEY=sk-APIsRouter-...
export OPENAI_BASE_URL=https://api.apisrouter.com/v1
# then add chat models by id in Settings, e.g. claude-sonnet-4-6Perplexica が質問にどう答えるか、そして LLM がどこに位置するか。
Perplexica(GitHub 上では ItzCrazyKns、スター数はおよそ36K)は、Perplexity スタイルの中で最もよく知られたオープンソースの回答エンジンです。質問を受け取り、バンドルされた SearxNG インスタンスを通じて実際の Web 検索を実行し、結果を読み、LLM に引用付きの回答を統合させます。検索モード(speed、balanced、quality)は、検索の深さとレイテンシをトレードオフし、フォーカスモードは、ソースを Web・ディスカッション・学術論文に絞り込みます。2026年、このプロジェクトは upstream で Vane に改名され、Docker イメージもそれに従いました。アーキテクチャとプロバイダーシステムは引き継がれているため、ここで説明する内容はどちらの名前の下でも適用されます。 LLM のスロットこそが、統合の品質とコストが宿る場所です。すべての回答は、検索されたソースを文脈として運ぶ、1回以上のチャット補完呼び出しであり、これが回答エンジンを入力トークンの多いワークロードにしています。モデルは、自身が書く以上にはるかに多くを読みます。プロバイダーシステムは、OpenAI を複数あるバックエンドの1つ(Ollama、Anthropic、Gemini、Groq など)として扱いますが、OpenAI プロバイダーだけが自由に編集できる Base URL を持ち、それがゲートウェイのフックとして機能する理由です。 前もって知っておくべき挙動が1つあります。Base URL が標準の OpenAI エンドポイント以外である場合、Perplexica は意図的に空のデフォルトモデルリストを表示し、あなたがプロバイダーに自分で追加したモデルエントリを使います。これは設計上のことです。カスタムエンドポイントが何を提供しているか、知りようがないからです。claude-sonnet-4-6 や deepseek-v4-flash をモデルエントリとして追加することは、回避策ではなく、セットアップの後半部分です。
フルセットアップ: 現行リリースとレガシーな config.toml。
現行リリースは、すべてをアプリの中で設定します。初回起動時、セットアップ画面がプロバイダーについて尋ねます。それ以降、同じフィールドは Settings の中に存在します。OpenAI プロバイダーを選び、API Key と Base URL を設定し、使う予定の id でチャットモデルのエントリを追加します。id はゲートウェイのカタログと正確に一致していなければならず、追加した各エントリは、検索ボックスの隣のモデルピッカーに現れます。 レガシーな世代はファイルベースです。あなたのインストールにまだ config.toml がある場合、あなたは CUSTOM_OPENAI の世代にいます。以下のブロックを埋めてコンテナを再起動してください。MODEL_NAME は1つのモデル id を取り、UI がそれを custom OpenAI のオプションとして提供します。
[MODELS.CUSTOM_OPENAI]
API_KEY = "sk-YOUR-APISROUTER-KEY"
API_URL = "https://api.apisrouter.com/v1"
MODEL_NAME = "claude-sonnet-4-6"回答エンジン向けの統合モデル選び。
モデルピッカーは、1つの Base URL に対して追加したエントリをそのまま読むため、統合モデルの A/B テストは些細なことです。2つのタブで2つのエントリを使って同じ質問をし、引用を比較してください。キーごとの利用ログが各モデルの回答に価格をつけ、それが、フロンティア級の統合があなたのクエリ構成でそのトークンに値するかどうかを決める、正直な方法です。
- 入力トークンが支配的です。quality モードの回答は、大きな検索済みの文脈をプロンプトに押し込むことがあるため、id の入力トークンあたりの価格が、検索のコストを決めます。書き返す短い回答ではありません。
- claude-sonnet-4-6 は、引用付きの統合にとって強力なデフォルトです。ソースへの根拠づけの指示をよく守り、多数のスニペットが食い違っていても一貫性を保ちます。
- 高ボリュームな個人用・チーム用のインスタンスは、claude-haiku-4-5-20251001、gemini-3.5-flash、deepseek-v4-flash でよく機能します。回答は根拠づけられたままで、検索あたりのコストは、quality モードをオンにしておけるくらいまで下がります。
- フロンティア id を2つ目のエントリとして保っておいてください。モデルエントリはピッカーの中で並んで存在するため、難しい質問を1つ gpt-5.5 にエスカレーションするのは、設定の編集ではなくドロップダウンの変更で済みます。
- 学術フォーカスモードは、長文脈対応のモデルに報います。論文の抄録や抜粋は、Web のスニペットよりもかさばるからです。
従量課金 · 公式価格より安い
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| モデル | 公式価格 | 当社価格 |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.10 / $0.30 per M |
Perplexica に特有の失敗パターン。
空のモデルリストが、定番の問題です。Base URL を設定するとピッカーが空になり、壊れているように見えます。実際には壊れていません。デフォルト以外の Base URL では、Perplexica はプロバイダーに追加したモデルエントリだけを一覧します。あなたの id を追加すれば、現れます。 エンベディングは別のスロットです。Perplexica は結果のリランクにエンベディングモデルを使い、OpenAI プロバイダーは同じ Base URL とキーからエンベディングを提供します。ゲートウェイがそこで設定したエンベディング id を提供していない場合、チャットの回答は動き続ける一方でリランクが壊れます。きれいな分け方は、エンベディングをローカルの Transformers プロバイダーに保つことです。これはマシン上で動作し、API を一切必要とせず、チャットの統合だけをゲートウェイ経由にルーティングします。 改名がガイドをつまずかせます。Perplexica と Vane は同じプロジェクトです。古いチュートリアルは perplexica の Docker イメージと config.toml を参照していますが、現行ビルドは、アプリ内設定と永続データボリュームを持つ vane として出荷されます。あなたのインストールに config.toml がない場合、作成しないでください。読まれることはありません。代わりに UI かドキュメント記載の環境変数で設定してください。 SearxNG は独立しています。回答の質が落ちたり、検索が何も返さなかったりする場合、それは LLM エンドポイントではなく、SearxNG コンテナかその JSON フォーマット設定の問題です。Base URL が動かすのは、チャットとエンベディングの呼び出しだけです。
ゲートウェイ経由で Perplexica を使うのは誰か。
- Perplexity のサブスクリプションを置き換えるセルフホスターで、モデルファミリーごとのベンダーアカウントではなくキー1つで、検索ごとにトークン価格でフロンティア級の統合品質を求める人。
- 共有の回答エンジンを運用するチームで、キーごとの利用ログが「検索は我々にいくらかかっているのか」を、モデルごとの数字に変えてくれる人。
- 検索を完全にローカルに保ち(SearxNG とローカルのエンベディング)、最終的な統合の呼び出しだけを、1つの監査可能なエンドポイント経由で外に出す、プライバシー重視のセットアップ。
- 同一の質問で統合モデルを比較する人で、各候補が、同じ Base URL に対する1つのモデルエントリで済む人。
- 特定ベンダーの請求手段にアクセスできない開発者。チャージ制でカード不要のアクセスなら、プロバイダーごとのサインアップという依存を取り除けます。
エンドポイントを検証し、最初の検索をデバッグする。
アプリを疑う前に、ゲートウェイが追加した id を提供しているか確認してください。プロバイダーのエントリは、/v1/models の出力と正確に一致していなければなりません。 初回実行の失敗にはパターンがあります。「No chat model providers configured」は、プロバイダーのフィールドが保存されていないか、モデルリストがまだ空だということです。少なくとも1つチャットモデルのエントリを追加してください。サーバーログの 401 は、キーが Base URL フィールドのエンドポイントと一致していないということです。model-not-found エラーは、モデルエントリの id のタイプミスです。回答は動くのにリランクだけエラーになる場合、それはエンベディングのスロットを指しており、そこでローカルの Transformers プロバイダーが救いになります。そして、環境変数を編集しても何も変わらない場合、設定はデータボリュームに永続化されることを思い出してください。すでに UI で保存されたフィールドは、あとからの環境変数の変更に優先するため、Settings で編集してください。 検索が流れ始めたら、APIsRouter コンソールがリクエストごとのモデル、トークン数、支出を表示します。回答エンジンは入力量の多いものであり、あなたのクエリ構成における検索あたりの実際のトークン数を見ることは、どんな見積もりにも勝ります。
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50よくある質問
Perplexica は Vane と同じプロジェクトですか?
はい。upstream のリポジトリは2026年に Vane と改名され、Docker イメージもそれに従いました。ここで説明したプロバイダーシステム、SearxNG との統合、Base URL フィールドは、どちらの名前の下でも同じです。レガシーなリリースだけが、いまだに Perplexica という名前と config.toml を使っています。
Perplexica は回答に Claude や DeepSeek のモデルを使えますか?
はい。OpenAI プロバイダーは、モデル id を、設定したどの Base URL に対してもプレーンな文字列として転送します。ゲートウェイの Base URL に対して claude-sonnet-4-6 や deepseek-v4-flash をモデルエントリとして追加すれば、他のオプションと同じようにモデルピッカーに現れます。
Base URL を変更したあと、モデルリストが空になるのはなぜですか?
設計どおりです。デフォルト以外の Base URL では、Perplexica は、そのエンドポイントがどのモデルを提供しているか仮定できないため、あなたがプロバイダーに自分で追加したエントリだけを一覧します。Settings で id を追加すれば、すぐに表示されます。
レガシーな CUSTOM_OPENAI 設定キーとは何ですか?
config.toml の世代(v1.10 と v1.11 の系統まで)では、[MODELS.CUSTOM_OPENAI] ブロックが API_KEY・API_URL・MODEL_NAME を取ります。API_URL を /v1 を含むゲートウェイのエンドポイントに、MODEL_NAME を1つのカタログの id に設定し、再起動してください。
エンベディングもカスタムの Base URL 経由になりますか?
OpenAI プロバイダーでエンベディングモデルを設定した場合は、はい、同じ Base URL とキーを使います。ほとんどのゲートウェイのセットアップは、代わりにエンベディングをローカルの Transformers プロバイダーに保ちます。これは API を必要とせず、リランクをチャットエンドポイントから独立させたままにします。
OPENAI_API_KEY と OPENAI_BASE_URL の環境変数はまだ機能しますか?
はい、これらは現行リリースにおける OpenAI プロバイダーの2つのフィールドの、ドキュメント記載済みの環境変数マッピングです。設定 UI を通じてすでに保存された値はデータボリュームに永続化されることに注意してください。アプリが一度でも設定済みであれば、そちらで編集してください。