Perplexica के answer engine को एक custom OpenAI base URL पर चलाएं।
Updated 2026-07-29
Perplexica, upstream renamed Vane, अपना OpenAI provider एक API Key और एक Base URL field से configure करता है। Base URL को https://api.apisrouter.com/v1 set करें, चाहिए वाले model ids add करें, और हर search answer gateway के through synthesize होता है, Claude, GPT, DeepSeek, या Gemini एक key के पीछे।
Quick answer: एक Base URL field, दो config generations।
Current releases पर, Perplexica का OpenAI provider exactly दो required fields expose करता है: API Key और Base URL, setup screen और settings UI में editable, documented environment mappings OPENAI_API_KEY और OPENAI_BASE_URL के साथ। Base URL को https://api.apisrouter.com/v1 set करें, एक gateway key paste करें, फिर चाहिए वाले chat models को उनकी exact catalog ids से add करें। Provider model id को /v1/chat/completions पर एक plain string के तौर पर forward करता है, तो "OpenAI" provider slot के through Claude और DeepSeek ids काम करती हैं। Older Perplexica releases पर (config.toml generation, v1.10 और v1.11 line तक), same capability CUSTOM_OPENAI provider है: API_KEY, API_URL, और MODEL_NAME keys वाला एक [MODELS.CUSTOM_OPENAI] block। नीचे दोनों generations दिखाए गए हैं, तो setup को उस version से match करें जो आप actually चला रहे हैं।
# 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 stars) Perplexity style में सबसे जाना-पहचाना open-source answering engine है: यह एक सवाल लेता है, एक bundled SearxNG instance के through असली web searches चलाता है, results पढ़ता है, और एक LLM से एक cited answer synthesize करवाता है। Search modes (speed, balanced, quality) latency के against retrieval depth trade करते हैं, और focus modes sources को web, discussions, या academic papers तक narrow करते हैं। 2026 में project को upstream Vane rename किया गया, Docker image ने भी वही किया; architecture और provider system carry हुए, तो यहां जो कुछ भी है वह दोनों नामों के तहत apply होता है। LLM slot वह जगह है जहां synthesis quality और cost रहते हैं। हर answer एक या ज़्यादा chat-completions calls है जो context के तौर पर retrieved sources carry करती है, जो एक answering engine को high-input-token workload बनाता है: model जो लिखता है उससे कहीं ज़्यादा पढ़ता है। Provider system OpenAI को कई backends में से एक मानता है (Ollama, Anthropic, Gemini, Groq, और दूसरे), और OpenAI provider वह है जिसका Base URL freely editable है, यही इसे gateway hook बनाता है। पहले से जानने लायक एक behavior: जब Base URL stock OpenAI endpoint के अलावा कुछ और हो, Perplexica जानबूझकर एक empty default model list दिखाता है और सिर्फ आपके खुद add किए हुए model entries इस्तेमाल करता है। यह design से है, क्योंकि यह जान नहीं सकता कि एक custom endpoint क्या serve करता है। claude-sonnet-4-6 या deepseek-v4-flash को एक model entry के तौर पर add करना setup का दूसरा half है, workaround नहीं।
पूरा setup: current releases और legacy config.toml।
Current releases सब कुछ app में configure करते हैं। पहली boot पर setup screen providers पूछता है; बाद में same fields Settings में रहते हैं। OpenAI provider select करें, API Key और Base URL set करें, फिर उन ids के साथ chat model entries add करें जो इस्तेमाल करने की योजना है। Ids gateway catalog से exactly match होनी चाहिए, और आप जो हर entry add करते हैं वह search box के बगल में model picker में दिखता है। Legacy generation file-based है। अगर आपकी installation में अभी भी एक config.toml है, आप CUSTOM_OPENAI generation पर हैं: नीचे वाला block भरें और container restart करें। MODEL_NAME एक model id लेता है, जिसे UI फिर custom OpenAI option के तौर पर offer करता है।
[MODELS.CUSTOM_OPENAI]
API_KEY = "sk-YOUR-APISROUTER-KEY"
API_URL = "https://api.apisrouter.com/v1"
MODEL_NAME = "claude-sonnet-4-6"एक answering engine के लिए एक synthesis model चुनना।
चूंकि model picker एक Base URL के against आपके add किए हुए entries पढ़ता है, synthesis models को A/B test करना trivial है: दो tabs में दो entries के साथ same सवाल पूछें और citations compare करें। Per-key usage log हर model के answers की price करता है, जो आपके query mix पर decide करने का honest तरीका है कि frontier synthesis अपने tokens का हक कमाता है या नहीं।
- Input tokens हावी रहते हैं। एक quality-mode answer prompt में बड़े retrieved contexts push कर सकता है, तो आपकी id की per-input-token price एक search की cost set करती है, न कि छोटा answer जो यह वापस लिखता है।
- claude-sonnet-4-6 cited synthesis के लिए strong default है: यह source-grounding instructions को अच्छे से follow करता है और तब भी coherent रहता है जब कई snippets disagree करते हैं।
- High-volume personal या team instances claude-haiku-4-5-20251001, gemini-3.5-flash, या deepseek-v4-flash पर अच्छे चलते हैं: answers grounded रहते हैं और per-search cost इतना गिरता है कि quality mode on रहे।
- एक frontier id को second entry के तौर पर रखें। Model entries picker में side by side बैठते हैं, तो एक hard question को gpt-5.5 पर escalate करना एक dropdown change है, config edit नहीं।
- Academic focus mode long-context models को reward करता है, चूंकि paper abstracts और excerpts web snippets से bulkier होते हैं।
जितना उपयोग उतना भुगतान · आधिकारिक मूल्य से कम
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 के लिए specific failure modes।
Empty model list सबसे classic है। आपने Base URL set किया, picker blank हो जाता है, और यह broken जैसा दिखता है। यह नहीं है: एक non-default Base URL के साथ, Perplexica सिर्फ वे model entries list करता है जो आप provider में add करते हैं। अपनी ids add करें और वे दिख जाती हैं। Embeddings एक अलग slot हैं। Perplexica result reranking के लिए embedding models इस्तेमाल करता है, और OpenAI provider same Base URL और key से embeddings serve करता है। अगर आपका gateway आपके configure किए गए embedding id को serve नहीं करता, reranking टूट जाता है जबकि chat answers काम करते रहते हैं। Clean split embeddings को local Transformers provider पर रखना है, जो machine पर बिना किसी API के चलता है, और सिर्फ chat synthesis को gateway के through route करना है। Rename guides को trip करता है। Perplexica और Vane same project हैं; पुराने tutorials perplexica Docker image और config.toml reference करते हैं, current builds vane के तौर पर in-app settings और एक persistent data volume के साथ ship होते हैं। अगर आपकी installation में कोई config.toml नहीं है, एक न बनाएं, यह पढ़ी नहीं जाती; इसकी बजाय UI या documented env vars के through configure करें। SearxNG independent है। अगर answers degrade हों या searches कुछ भी न return करें, वह SearxNG container या इसकी JSON-format setting है, LLM endpoint नहीं। Base URL सिर्फ chat और embedding calls move करता है।
कौन Perplexica को एक gateway के through route करता है।
- Self-hosters जो एक Perplexity subscription replace करते हैं और per model family vendor account की बजाय एक key के साथ token prices पर frontier-quality synthesis per search चाहते हैं।
- Teams जो एक shared answering engine चलाती हैं, जहां per-key usage log "search का हमें क्या खर्च आता है" को per model एक number में बदल देता है।
- Privacy-focused setups जो retrieval को पूरी तरह local रखते हैं (SearxNG plus local embeddings) और सिर्फ final synthesis call को एक auditable endpoint के through बाहर भेजते हैं।
- Tinkerers जो identical questions पर synthesis models compare करते हैं: हर candidate same Base URL के against एक model entry है।
- Developers जिनके पास किसी given vendor की billing तक access नहीं है। बिना card requirement वाला top-up based access per-provider sign-up dependency हटा देता है।
Endpoint verify करें और पहली search को debug करें।
App को blame करने से पहले confirm करें कि gateway आपके add किए गए ids serve करता है; provider की entries /v1/models output से exactly match होनी चाहिए। First-run failures एक pattern follow करती हैं। "No chat model providers configured" मतलब provider fields save नहीं हुईं या model list अभी भी empty है; कम से कम एक chat model entry add करें। Server logs में एक 401 मतलब key Base URL field वाले endpoint से match नहीं करती। एक model-not-found error एक model entry में id typo है। Working answers वाले reranking errors embedding slot की तरफ इशारा करते हैं, जहां local Transformers provider आपको बचाता है। और अगर environment variables edit करने के बाद कुछ नहीं बदला, याद रखें config data volume में persist करता है; UI में पहले से saved fields बाद के env change पर jeette हैं, तो उन्हें Settings में edit करें। जब searches चलने लगें, APIsRouter console per-request model, token counts, और spend दिखाता है। Answering engines input-heavy हैं, और आपके query mix के लिए असली tokens-per-search number देखना किसी भी estimate से बेहतर है।
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50अक्सर पूछे जाने वाले प्रश्न
क्या Perplexica और Vane same project हैं?
हां। Upstream repository को 2026 में Vane rename किया गया, और Docker image ने भी वही किया। Provider system, SearxNG integration, और यहां describe किया गया Base URL field दोनों नामों के तहत same हैं; सिर्फ legacy releases अभी भी Perplexica नाम और config.toml इस्तेमाल करते हैं।
क्या Perplexica answers के लिए Claude या DeepSeek models इस्तेमाल कर सकता है?
हां। OpenAI provider model ids को आपके set किए गए किसी भी Base URL को plain strings के तौर पर forward करता है। gateway Base URL के against claude-sonnet-4-6 या deepseek-v4-flash को model entries के तौर पर add करें और वे किसी भी दूसरे option की तरह model picker में दिखती हैं।
Base URL बदलने के बाद model list खाली क्यों है?
Design से। एक non-default Base URL के साथ, Perplexica assume नहीं कर सकता कि endpoint कौन-से models serve करता है, तो यह सिर्फ वे entries list करता है जो आप provider में खुद add करते हैं। Settings में अपनी ids add करें और वे तुरंत दिख जाती हैं।
Legacy CUSTOM_OPENAI config keys क्या हैं?
config.toml generation पर (v1.10 और v1.11 line तक), [MODELS.CUSTOM_OPENAI] block API_KEY, API_URL, और MODEL_NAME लेता है। API_URL को /v1 सहित gateway endpoint set करें और MODEL_NAME को एक catalog id, फिर restart करें।
क्या embeddings भी custom Base URL के through route होते हैं?
अगर आप OpenAI provider पर embedding models configure करते हैं, तो हां, वे same Base URL और key इस्तेमाल करते हैं। ज़्यादातर gateway setups embeddings को इसकी बजाय local Transformers provider पर रखते हैं, जिसे किसी API की ज़रूरत नहीं और जो reranking को chat endpoint से independent रखता है।
क्या OPENAI_API_KEY और OPENAI_BASE_URL environment variables अभी भी काम करते हैं?
हां, ये current releases पर OpenAI provider के दो fields के documented env mappings हैं। ध्यान दें कि settings UI के through पहले से saved values data volume में persist करती हैं, तो अगर app पहले से एक बार configured था तो वहीं edit करें।