Patakbuhin ang answer engine ng Perplexica sa isang custom OpenAI base URL.
Updated 2026-07-29
Ini-configure ng Perplexica, binagong-pangalan ng upstream na Vane, ang OpenAI provider nito gamit ang isang API Key at isang Base URL field. Itakda ang Base URL sa https://api.apisrouter.com/v1, idagdag ang mga model id na gusto mo, at nagsi-synthesize ang bawat sagot ng search sa pamamagitan ng gateway gamit ang Claude, GPT, DeepSeek, o Gemini sa likod ng isang key.
Mabilisang sagot: isang Base URL field, dalawang henerasyon ng config.
Sa kasalukuyang mga release, naglalantad ang OpenAI provider ng Perplexica ng eksaktong dalawang kinakailangang field: API Key at Base URL, na naeedit sa setup screen at settings UI, kasama ang naka-document na environment mappings na OPENAI_API_KEY at OPENAI_BASE_URL. Itakda ang Base URL sa https://api.apisrouter.com/v1, i-paste ang isang gateway key, pagkatapos ay idagdag ang mga chat model na gusto mo gamit ang eksaktong id ng katalogo. Ipinapasa ng provider ang model id bilang plain string sa pamamagitan ng /v1/chat/completions, kaya gumagana ang mga id ng Claude at DeepSeek sa pamamagitan ng "OpenAI" provider slot. Sa mas lumang mga release ng Perplexica (ang henerasyon ng config.toml, hanggang sa linya ng v1.10 at v1.11), ang parehong kakayahan ang CUSTOM_OPENAI provider: isang [MODELS.CUSTOM_OPENAI] block na may API_KEY, API_URL, at MODEL_NAME keys. Ipinapakita ang dalawang henerasyon sa ibaba, kaya itugma ang setup sa bersyon na talagang pinapatakbo mo.
# 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-6Paano sumasagot ang Perplexica sa isang tanong, at kung saan naninirahan ang LLM.
Ang Perplexica (ItzCrazyKns sa GitHub, humigit-kumulang 36K stars) ang pinaka-kilalang open-source na answering engine sa estilo ng Perplexity: kumukuha ito ng tanong, nagpapatakbo ng tunay na web searches sa pamamagitan ng isang bundled na SearxNG instance, binabasa ang mga resulta, at nagpapasagot sa isang LLM ng isang sagot na may citation. Ang search modes (speed, balanced, quality) ay nagpapalitan ng retrieval depth kontra latency, at ang focus modes ay nagpaparipot sa mga source sa web, discussions, o academic papers. Noong 2026, binagong-pangalan sa upstream ang proyekto bilang Vane, sinundan ng Docker image; nanatili ang architecture at ang provider system, kaya naaangkop ang lahat dito sa alinman sa pangalan. Ang LLM slot ang lugar kung saan naninirahan ang kalidad ng synthesis at gastos. Bawat sagot ay isa o higit pang mga chat-completions call na nagdadala ng retrieved sources bilang context, na ginagawang high-input-token na workload ang isang answering engine: mas marami ang binabasa ng model kaysa sa isinusulat nito. Itinuturing ng provider system na isa lamang sa maraming backend ang OpenAI (Ollama, Anthropic, Gemini, Groq, at iba pa), at ang OpenAI provider ang may freely editable na Base URL, na siyang gateway hook. Isang behavior na dapat malaman nang maaga: kapag ang Base URL ay iba sa stock na OpenAI endpoint, sinasadyang ipinapakita ng Perplexica ang isang walang laman na default na model list at ginagamit ang mga model entry na idinagdag mo mismo sa provider. Sinasadya ito, dahil hindi nito malalaman kung ano ang si-serve ng isang custom endpoint. Ang pagdadagdag ng claude-sonnet-4-6 o deepseek-v4-flash bilang isang model entry ang ikalawang kalahati ng setup, hindi isang workaround.
Buong setup: kasalukuyang mga release at ang legacy config.toml.
Ini-configure ng kasalukuyang mga release ang lahat sa app. Sa unang boot, hinihingi ng setup screen ang mga provider; pagkatapos, naninirahan ang parehong field sa Settings. Piliin ang OpenAI provider, itakda ang API Key at Base URL, pagkatapos ay magdagdag ng mga chat model entry gamit ang mga id na balak mong gamitin. Dapat eksaktong tumugma ang mga id sa katalogo ng gateway, at bawat entry na idinagdag mo ay lumilitaw sa model picker sa tabi ng search box. File-based ang lumang henerasyon. Kung may config.toml pa rin ang installation mo, nasa henerasyon ka ng CUSTOM_OPENAI: punan ang block sa ibaba at i-restart ang container. Kumukuha ang MODEL_NAME ng isang model id, na inaalok pagkatapos ng UI bilang opsyong custom OpenAI.
[MODELS.CUSTOM_OPENAI]
API_KEY = "sk-YOUR-APISROUTER-KEY"
API_URL = "https://api.apisrouter.com/v1"
MODEL_NAME = "claude-sonnet-4-6"Pagpili ng synthesis model para sa isang answering engine.
Dahil binabasa ng model picker ang anumang entry na idinagdag mo laban sa isang Base URL, madali lamang ang A/B testing ng synthesis models: magtanong ng parehong tanong sa dalawang tab na may dalawang entry at ihambing ang mga citation. Pinepresyuhan ng per-key usage log ang mga sagot ng bawat model, na siyang tapat na paraan para magpasya kung karapat-dapat sa mga token nito ang frontier na synthesis sa iyong query mix.
- Naghahari ang mga input token. Maaaring magtulak ang isang sagot sa quality mode ng malalaking retrieved contexts sa prompt, kaya ang presyo per input token ng id mo ang nagtatakda sa gastos ng isang search, hindi ang maikling sagot na isinusulat nito pabalik.
- Malakas na default ang claude-sonnet-4-6 para sa synthesis na may citation: mahusay itong sumusunod sa mga instruksyong source-grounding at nananatiling coherent kapag hindi magkatugma ang maraming snippet.
- Gumaganang maayos sa claude-haiku-4-5-20251001, gemini-3.5-flash, o deepseek-v4-flash ang mga high-volume na personal o team na instance: nananatiling naka-ground ang mga sagot at bumababa nang sapat ang per-search na gastos para iwanan sa quality mode.
- Panatilihin ang isang frontier na id bilang pangalawang entry. Magkatabi ang mga model entry sa picker, kaya ang pag-escalate ng isang mahirap na tanong sa gpt-5.5 ay isang pagbabago sa dropdown, hindi pag-edit ng config.
- Binibigyan ng gantimpala ng academic focus mode ang mga long-context na model, dahil mas malaki ang mga abstract at sipi ng papel kaysa sa mga snippet ng web.
Pay-as-you-go · mas mababa sa opisyal na presyo
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Opisyal na Presyo | Aming Presyo |
|---|---|---|
| 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 |
Mga failure mode na specific sa Perplexica.
Ang walang laman na model list ang klasiko. Itinakda mo ang Base URL, naging walang laman ang picker, at mukhang sira ito. Hindi iyon totoo: sa isang hindi default na Base URL, inililista lamang ng Perplexica ang mga model entry na idinagdag mo sa provider. Idagdag ang mga id mo at lumilitaw ang mga ito. Hiwalay na slot ang embeddings. Gumagamit ang Perplexica ng embedding models para sa reranking ng resulta, at naglilingkod ang OpenAI provider ng embeddings mula sa parehong Base URL at key. Kung hindi si-serve ng gateway mo ang embedding id na ini-configure mo doon, nasisira ang reranking habang gumagana pa rin ang mga sagot ng chat. Ang malinis na hati ay panatilihin ang embeddings sa local na Transformers provider, na tumatakbo sa makina nang walang API, at i-route lamang ang chat synthesis sa pamamagitan ng gateway. Nakakatisod sa mga gabay ang rename. Iisang proyekto ang Perplexica at Vane; tumutukoy ang mga lumang tutorial sa perplexica Docker image at config.toml, ang mga kasalukuyang build ay naglalakbay bilang vane kasama ang in-app settings at isang persistent na data volume. Kung walang config.toml ang installation mo, huwag gumawa ng isa, hindi ito binabasa; i-configure sa halip sa pamamagitan ng UI o ng mga naka-document na env vars. Independyente ang SearxNG. Kung bumababa ang kalidad ng mga sagot o walang ibinabalik ang mga search, iyon ang SearxNG container o ang JSON-format na setting nito, hindi ang LLM endpoint. Ang Base URL lamang ang gumagalaw sa mga chat at embedding calls.
Sino ang nagru-route ng Perplexica sa pamamagitan ng isang gateway.
- Mga self-hoster na pumapalit sa isang subscription sa Perplexity na gustong makuha ang frontier-quality na synthesis per search sa presyong token, na may isang key sa halip na vendor account per model family.
- Mga team na nagpapatakbo ng isang shared na answering engine, kung saan ginagawang numero per model ng per-key usage log ang "magkano ang gastos sa amin ng search."
- Mga privacy-focused na setup na pinapanatiling lubusang lokal ang retrieval (SearxNG kasama ang local embeddings) at niruruta lamang ang huling synthesis call palabas sa isang naaudit na endpoint.
- Mga tinkerer na naghahambing ng synthesis models sa magkatulad na tanong: ang bawat kandidato ay isang model entry laban sa parehong Base URL.
- Mga developer na walang access sa billing ng isang partikular na vendor. Ang top-up based na access na walang kailangang card ay inaalis ang per-provider na sign-up dependency.
I-verify ang endpoint at i-debug ang unang search.
Kumpirmahin munang si-serve ng gateway ang mga id na idinagdag mo bago sisihin ang app; dapat eksaktong tumugma ang mga entry sa provider sa output ng /v1/models. Sumusunod sa pattern ang mga kabiguan sa unang run. Nangangahulugan ang "No chat model providers configured" na hindi na-save ang mga field ng provider o walang laman pa rin ang model list; magdagdag ng kahit isang chat model entry. Ang isang 401 sa server logs ay nangangahulugang hindi tumutugma ang key sa endpoint sa Base URL field. Ang isang model-not-found na error ay isang typo sa id sa isang model entry. Ang mga error sa reranking na may gumaganang mga sagot ay tumuturo sa embedding slot, kung saan sinasagip ka ng local na Transformers provider. At kung walang nagbago pagkatapos i-edit ang mga environment variable, tandaan na nananatili ang config sa data volume; nananalo ang mga field na na-save na sa UI laban sa isang susunod na pagbabago sa env, kaya i-edit ang mga ito sa Settings. Kapag dumadaloy na ang mga search, ipinapakita ng APIsRouter console ang per-request na model, token counts, at gastos. Input-heavy ang mga answering engine, at ang pagkita ng tunay na numero ng tokens-per-search para sa iyong query mix ay mas mahusay kaysa sa anumang tantiya.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50Mga madalas itanong
Pareho bang proyekto ang Perplexica at Vane?
Oo. Binagong-pangalan bilang Vane ang upstream na repository noong 2026, at sinundan ito ng Docker image. Pareho sa dalawang pangalan ang provider system, integrasyon ng SearxNG, at ang Base URL field na inilarawan dito; ang mga lumang release lamang ang gumagamit pa rin ng pangalang Perplexica at config.toml.
Maaari bang gumamit ang Perplexica ng mga model ng Claude o DeepSeek para sa mga sagot?
Oo. Ipinapasa ng OpenAI provider ang mga model id bilang plain string sa anumang Base URL na itinakda mo. Idagdag ang claude-sonnet-4-6 o deepseek-v4-flash bilang mga model entry laban sa Base URL ng gateway at lilitaw ang mga ito sa model picker tulad ng anumang iba pang opsyon.
Bakit walang laman ang model list pagkatapos kong baguhin ang Base URL?
Sinasadya iyon. Sa isang hindi default na Base URL, hindi maaaring ipagpalagay ng Perplexica kung aling mga model ang si-serve ng endpoint, kaya inililista lamang nito ang mga entry na idinagdag mo mismo sa provider. Idagdag ang mga id mo sa Settings at agad silang lalabas.
Ano ang mga legacy na config key ng CUSTOM_OPENAI?
Sa henerasyon ng config.toml (hanggang sa linya ng v1.10 at v1.11), kumukuha ang [MODELS.CUSTOM_OPENAI] block ng API_KEY, API_URL, at MODEL_NAME. Itakda ang API_URL sa gateway endpoint kasama ang /v1 at ang MODEL_NAME sa isang id ng katalogo, pagkatapos ay i-restart.
Dumadaan ba rin ang embeddings sa custom Base URL?
Kung i-configure mo ang mga embedding model sa OpenAI provider, oo, ginagamit nila ang parehong Base URL at key. Pinapanatili ng karamihan ng gateway setups ang embeddings sa local na Transformers provider sa halip, na walang kailangang API at pinapanatiling independiyente ang reranking mula sa chat endpoint.
Gumagana pa ba ang mga environment variable na OPENAI_API_KEY at OPENAI_BASE_URL?
Oo, ito ang naka-document na env mappings para sa dalawang field ng OpenAI provider sa kasalukuyang mga release. Tandaan na ang mga value na na-save na sa pamamagitan ng settings UI ay nananatili sa data volume, kaya i-edit doon kung na-configure na ang app minsan.