मुख्य कंटेंट तक स्किप करें

तृतीय-पक्ष और स्वयं होस्ट किए गए प्रदाता जोड़ना

Libre WebUI 0.16.0 सेटिंग्स > प्लगइन में प्रदाता कनेक्शन जोड़ता है। यहाँ अंतर्निहित प्रदाता सक्रिय करें, अनुकूल प्लगइन को API पर मार्ग करें, परिणामी कैटलॉग देखें या विश्वसनीय नेटवर्क के निजी गेटवे से जुड़ें।

खोज, चयन, विन्यास, मॉडल पुनःताज़ा और क्षमता कैटलॉग वाले Libre WebUI प्रदाता कनेक्शन।

समर्थित रूप:

  • OpenAI Chat Completions;
  • OpenAI Responses;
  • Anthropic Messages; और
  • Google Gemini सामग्री तथा फ़ंक्शन कॉल।

अंतर्निहित Anthropic और Gemini परिभाषाएँ प्रदाता पहचान से चुने विशेष एडेप्टर उपयोग करते हैं। नया आयातित परिभाषा Chat Completions या Responses अर्थ लेता है; Anthropic/Gemini-अनुकूल API बताने से अंतर्निहित एडेप्टर नहीं चुना जाता। अलग अनुरोध, प्रवाह, उपकरण-कॉल या उत्तर रूप को सर्वर एडेप्टर चाहिए। JSON मार्गन/विन्यास बताता है, दूसरे प्रोटोकॉल को नहीं बदलता।

कनेक्शन खोलना

  1. प्रवेश करें करके सेटिंग्स > प्लगइन खोलें।
  2. बाएँ प्रदाता खोजें।
  3. State और कैटलॉग देखने के लिए चुनें।
  4. अपने खाता के लिए सक्रिय करता करें।
  5. परिचय-पत्र या कनेक्शन अधिलेख के लिए ही विन्यस्त करें खोलें।

विन्यास तयशुदा में संकुचित है। Connection सेटिंग्स प्रशासक को पहले दिखते हैं; नमूना-चयन मापदंड अलग संकुचित Advanced मापदंड में हैं। विरासत मान पहले-भरे खाता अधिलेख नहीं, संकेत की तरह दिखते हैं।

परिभाषाएँ पूरे-इंस्टेंस विन्यास हैं; केवल प्रशासक आयात, स्थापित, अद्यतन और हटाना कर सकते हैं। हर उपयोगकर्ता अपनी सक्रियण, परिचय-पत्र और अनुमत निर्माण मापदंड नियंत्रित करता है।

त्वरित जोड़ना

सेटिंग्स > कनेक्शन एक OpenAI-अनुकूल एंडपॉइंट और कुंजी का त्वरित मार्ग है। प्रशासक Ollama स्थिति/संस्करण, कनेक्शन सूची और जोड़ना फ़ॉर्म देखता है।

दिखने वाला नाम, पूरा चैट-पूर्णता URL और वैकल्पिक कुंजी चाहिए। Libre कनेक्शन ID निकालता, परिभाषा स्थापित, कुंजी सर्वर पर सहेजता, कनेक्शन सक्रिय करता और मॉडल सूची अनुरोध करता है। खोजे गए मॉडल अस्थायी कैटलॉग बदलकर चयनक में दिखते हैं।

पंक्ति एंडपॉइंट, मॉडल संख्या, कुंजी उपस्थिति, गतिविधि, पुनःताज़ा और हटाना दिखाता है। Responses मोड, मूल URL अधिलेख, अलग क्षमता कैटलॉग और मापदंड नीति पूरा प्लगइन UI में रहते हैं।

Codex (ChatGPT sign-in)

Codex (ChatGPT) को API कुंजी नहीं चाहिए। Server प्रणाली उपयोगकर्ता के रूप में codex login के बाद यह प्रशासक को दिखता और ChatGPT सत्र से दस्तावेजीकृत मॉडल परिवार देता है। टोकन auth.json से पढ़े, उसी OAuth क्लाइंट से पुनःताज़ा और वापस लिखे जाते हैं; मान लॉग नहीं होते।

अनुरोध कार्य कंटेनर नहीं, सर्वर करता है; मॉडल Work में भी चलते हैं। प्रदाता सर्वर-स्वामी की ChatGPT सदस्यता उपयोग करता है, इसलिए केवल-प्रशासक। CODEX_OAUTH_MODELS_ENABLED=false से छिपाएँ; वैकल्पिक प्रमाणीकरण स्थान CODEX_HOME से।

अंतर्निहित या आयातित प्रदाता

OpenAI, Anthropic, Gemini, Groq, Mistral, OpenRouter, Kimi Code, Hugging Face, GitHub Models, स्थानीय MLX LM आदि उपलब्ध हैं। प्रोटोकॉल/प्रमाणीकरण मेल हो तो अंतर्निहित से शुरू करें।

प्रशासक JSON परिभाषा आयात करता है। न्यूनतम गेटवे:

{
"id": "private-ai-gateway",
"name": "Private AI Gateway",
"type": "completion",
"endpoint": "http://ai-gateway:8080/v1/chat/completions",
"api_mode": "chat_completions",
"auth": {
"header": "Authorization",
"prefix": "Bearer ",
"key_env": "PRIVATE_AI_GATEWAY_API_KEY"
},
"model_map": ["gateway-chat"]
}

परिभाषा आयात करके सक्रिय करें और कुंजी सहेजें। संपादन-योग्य मूल URL, पथ, खोज और अलग क्षमता endpoints के चर जोड़ें। पूर्ण उदाहरण plugins/openai.json

विश्वसनीय नेटवर्क में जानबूझकर अप्रमाणित गेटवे हेतु auth.header और auth.key_env खाली तथा auth.prefix हटाएँ; कुंजी आवश्यक/भेजी नहीं।

Chat Completions या Responses

मोडपथफ़ील्ड
chat_completions/chat/completionsmessages
responses/responsesinput

अंतर्निहित OpenAI API मोड देता है। Libre पूर्ण और प्रवाही Responses आउटपुट को Chat/Work के लिए बदलता है, जिसमें सीमित तर्क स्थिति और उपकरण-कॉल पुनरावृत्ति शामिल है।

मोड तयशुदा पथ बदलता है, ऊपरी प्रोटोकॉल नहीं। Responses केवल अनुकूल अनुरोध/घटना रूप पर चुनें।

मूल URL या पूरा एंडपॉइंट

प्राथमिकता क्रम:

  1. विशेष पूरा endpoint
  2. base_url + api_path.
  3. प्लगइन परिभाषा का एंडपॉइंट।

मूल URL:

https://gateway.example/v1

Chat Completions:

https://gateway.example/v1/chat/completions

Responses:

https://gateway.example/v1/responses

API पथ सापेक्ष क्रिया के लिए। पुराना पूरा एंडपॉइंट पूरा URL; पूरा एंडपॉइंट की उच्च प्राथमिकता।

/chat/completions, /completions और /responses प्रत्यय अर्थ तय करते हैं। अज्ञात पथ चुना मोड रखता है।

मार्ग/कुंजी बदलने के बाद परीक्षण से पहले प्रदाता सहेजें करें। प्रमाणित उपयोगकर्ता मार्ग उसी खाता परिचय-पत्र माँगता है। अप्रमाणित विकल्प फ़ील्ड खाली रखता है। संचालक परिवेश कुंजी उपयोगकर्ता एंडपॉइंट को नहीं भेजी जाती; वैकल्पिक केवल विश्वसनीय अंतर्निहित मार्ग पर।

Model ID खोज

सक्रिय प्रदाता चुनकर ताज़ा करें मॉडल दबाएँ। Libre कैटलॉग और Chat पुनःलोड करता है।

कैटलॉग अनुपस्थित या PLUGIN_MODEL_DISCOVERY_TTL_MS से पुराना हो तो स्वतः पुनःताज़ा। हाथ-से पुनःताज़ा इनमें से एक परिणाम:

Resultअर्थ
कैटलॉग अद्यतनउत्तर में अलग सूची
पहले-से वर्तमानसमान सूची
API कुंजी आवश्यकRequest नहीं भेजा, पिछला कैटलॉग दृश्य
लोड विफलEndpoint अप्राप्य या no डेटा

केवल परिवेश में दी गई कुंजी स्थापित परिभाषा के लिए अंतर्निहित परिभाषा की तरह उपयोग नहीं होती; संदेश इसका कारण बताता है। वाक्, चित्र और एम्बेडिंग मॉडल क्षमता चिह्न सहित दिखते हैं, पर चैट चयनक में नहीं।

मॉडल-सूची URL:

  • /models अंत अपरिवर्तित;
  • ज्ञात /chat/completions, /completions, /responses, /embeddings या /messages को /models से बदलें; या
  • अन्य पथ में /models जोड़ें।

उदाहरण:

https://gateway.example/v1/chat/completions
https://gateway.example/v1/responses

-> https://gateway.example/v1/models

व्युत्पत्ति गलत हो तो variables में models_endpoint निर्धारित करें:

{
"name": "models_endpoint",
"type": "string",
"label": "Models Endpoint",
"default": "https://gateway.example/v1/models"
}

विरासत या administrator-सहेजा मान प्राथमिकता। ऊपरी-स्तर models_endpoint पढ़ा नहीं। data सरणी वाला OpenAI-अनुकूल उत्तर अपेक्षित:

{
"data": [{ "id": "gateway-chat" }, { "id": "gateway-code" }]
}

ID उपयोगकर्ता के लिए सहेजे, फ़ाइल अधिलेखन नहीं। अनुकूल खोज न हो तो model_map रखें। कैटलॉग केवल-पठन; चिह्न स्वास्थ्य प्रमाण नहीं।

ID वैश्विक रूप से अद्वितीय नहीं। Chat मूल ID को सटीक प्रदाता पहचान के साथ रखता है। अनुपलब्ध प्रदाता unavailable ही दिखता, पुनर्निर्देशन नहीं।

अलग चित्र निर्माण

OpenAI चित्र एंडपॉइंट https://api.openai.com/v1/images/generations; नया विन्यास तयशुदा gpt-image-2, पुराने ID वैकल्पिक।

चैट और चित्र मार्ग पृथक हैं। उपयोगकर्ता का चैट मूल URL चित्र अनुरोध नहीं लेता। खाली image_endpoint प्लगइन परिभाषा उपयोग करता है; पूरा URL अनुकूल Image API क्रिया बताता है।

Selection विशिष्ट प्रदाता-बद्ध; समान ID केवल चुना प्रदाता को।

सुरक्षित HTTP गेटवे

HTTP/HTTPS स्वीकृत। HTTP विश्वसनीय LAN, Tailscale या कंटेनर नेटवर्क के लिए, पर कुंजियाँ, प्रॉम्प्ट, tool परिणाम और सामग्री बिना परिवहन कूटलेखन। TLS HTTPS प्राथमिकता दें करें।

अनुरोध सर्वर से, इसलिए सर्वर-पहुँच-योग्य पता चुनें:

स्थानउदाहरण
स्थानीय, समान होस्टhttp://127.0.0.1:8081/v1
Compose सेवाhttp://ai-gateway:8080/v1
कंटेनर → होस्टhttp://host.docker.internal:8081/v1
विश्वसनीय LAN/Tailscalehttp://192.168.1.20:8081/v1

कंटेनर के भीतर localhost कंटेनर स्वयं है, सेवा/होस्ट नहीं।

केवल HTTP/HTTPS; परिचय-पत्र चुनने से पहले अंतिम पता सत्यापित और पुनर्निर्देशन अनुसरण नहीं। Final URL सीधे विन्यस्त करें।

Gateway परीक्षण

होस्ट या सर्वर कंटेनर से:

curl http://ai-gateway:8080/v1/models \
-H 'Authorization: Bearer YOUR_GATEWAY_KEY'

Chat Completions:

curl http://ai-gateway:8080/v1/chat/completions \
-H 'Authorization: Bearer YOUR_GATEWAY_KEY' \
-H 'Content-Type: application/json' \
-d '{
"model": "gateway-chat",
"messages": [{"role": "user", "content": "Reply with: ready"}],
"stream": false
}'

Responses:

curl http://ai-gateway:8080/v1/responses \
-H 'Authorization: Bearer YOUR_GATEWAY_KEY' \
-H 'Content-Type: application/json' \
-d '{
"model": "gateway-chat",
"input": "Reply with: ready",
"store": false
}'

परीक्षण सफल होने पर वही मार्ग, मोड, परिचय-पत्र, मॉडल ID निर्धारित करें; प्रदाता सक्रिय करता, मॉडल पुनःताज़ा और select। विश्वसनीय tool समर्थन पर Work मॉडल उपयोग कर सकता है।

समस्या निवारण

लक्षणजाँच
अनुरोध अंतर्निहित एंडपॉइंट परपुराना पूरा अधिलेख हटाकर आवश्यक मूल URL/API पथ सहेजें।
Request डेटा गलतAPI मोड को प्रोटोकॉल से मिलाएँ, एंडपॉइंट प्रत्यय जाँचें।
Model ID नहीं/models, data[].id रूप, models_endpoint या model_map
मार्ग बदलाव बाद पुराने मॉडलChange सहेजें; पुराना खोजा कैटलॉग साफ।
कुंजी अनुपस्थितउपयोगकर्ता परिचय-पत्र सहेजें; अंतर्निहित परिवेश वैकल्पिक अधिलेख पर नहीं।
Docker localhost नहीं पहुँचतासेवा नाम, होस्ट उपनाम या पहुँच-योग्य निजी पता।
Chat चलता, चित्र नहींपूरा image_endpoint और क्षमता मॉडल।
Chat चलता, Work नहींअनुकूल tool-कॉल समर्थन।
प्रदाता पुनर्निर्देशनFinal सत्यापित URL; पुनर्निर्देशन अनुसरण नहीं।

विवरण प्लगइन में और त्रुटियाँ समस्या निवारण में देखें।

समुदाय आभार

0.16.0 मार्गदर्शिका/UI को ZhengJin (@fangzhengjin) ने आकार दिया: तृतीय-पक्ष प्रदाता पर विस्तृत प्रतिक्रिया और #163 की AI-सहायित UI अवधारणा ने प्रवाह तय करने में मदद की।

संबंधित दस्तावेज़