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

प्लगइन

Libre WebUI स्थानीय Ollama के साथ बाहरी प्रदाता और मॉडल क्षमताएँ प्लगइन से जोड़ता है।

प्लगइन प्रकार

प्रकारउद्देश्य
Chat/completionप्रदाता पाठ/chat मॉडल
Embeddingsदस्तावेज़ खोज और memory
इमेज जनरेशनइमेज मॉडल और ComfyUI
पाठ-to-speechआवाज़ synthesis
Speech-to-पाठTranscription
ऑडियो जनरेशनSound प्रदाता
वीडियो जनरेशनAsync वीडियो प्रदाता

प्लगइन static मॉडल maps और supported होने पर प्रदाता API से live खोज दे सकते हैं।

Built-In प्रदाता Families

OpenAI/compatible APIs, Anthropic, Google Gemini, Groq, Moonshot AI Kimi Code, Mistral, OpenRouter, Hugging Face, GitHub मॉडल, Apple Silicon MLX LM, ComfyUI, ElevenLabs। Catalogs अक्सर बदलते; खोज हो तो UI सत्य का स्रोत।

Ownership और Authorization

प्लगइन definitions instance-साझा हैं। हर /api/plugins रूट auth चाहता; अपलोड/स्थापित/अपडेट/हटाएँ व्यवस्थापक-केवल। Activation प्रति उपयोगकर्ता, SQLite में स्थायी।

Upgrade पर पुराना .status.json केवल सटीक compiled trust anchors से match definitions के लिए मौजूदा accounts में once copy। पुराना कस्टम/shadow quarantined और inactive; बाद के accounts नहीं सक्रिय प्लगइन।

Bundled परिभाषा तभी विश्वसनीय जब normalized सामग्री compiled हैश से match। Writable definitions स्रोत पथ/पूर्ण हैश से SQLite approved। व्यवस्थापक स्थापित/अपडेट/re-import अनुमोदन लिखता; सीधा फ़ाइल edit invalidates। अनुमोदन/अपडेट सभी खाता activations साफ़ करता, उपयोगकर्ता reviewed परिभाषा reactivate। Pre-upgrade कस्टम re-import से पहले catalogs/खोज/क्रेडेंशियल/execution में नहीं।

केवल admins कनेक्शन-रूटिंग variables बचाते:

endpoint, base_url, api_path, models_endpoint, api_url, image_endpoint, embedding_endpoint, stt_endpoint, tts_endpoint, voice_clone_endpoint, api_mode, model, model_idconfig.endpoint_variable, config.models_endpoint_variable, config.voice_clone_endpoint_variable भी रूटिंग।

Others temperature/streaming save कर सकते। Non-व्यवस्थापक पुराना रूटिंग ignored/not returned और पूर्ण रीसेट में हटाया; बाद में भूमिका promotion revive नहीं।

क्रेडेंशियल

OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GROQ_API_KEY=gsk_...
GEMINI_API_KEY=...
MISTRAL_API_KEY=...
OPENROUTER_API_KEY=sk-or-...
KIMI_API_KEY=...
GITHUB_API_KEY=github_pat_...
ELEVENLABS_API_KEY=...

साझा deployments में उपयोगकर्ता-level क्रेडेंशियल बेहतर; पर्यावरण एकल-उपयोगकर्ता/demo/managed।

पर्यावरण कुंजी केवल unshadowed bundled रूटिंग/auth पर वैकल्पिक। Imported, writable shadow ID या व्यवस्थापक संग्रहीत कस्टम रूट उसी खाते का क्रेडेंशियल चाहता। Libre root एंडपॉइंट, auth फ़ील्ड, capability endpoints/selectors और recognized रूटिंग defaults compare करता। Compiled मैनिफ़ेस्ट हैश authoritative; overwritten मैनिफ़ेस्ट trust नहीं बना सकता।

यह खोज, Chat, Work, availability और catalogs पर लागू; कस्टम एंडपॉइंट operator रहस्य नहीं पाता।

उपयोगकर्ता क्रेडेंशियल effective स्रोत, पूर्ण हैश, auth contract, capability endpoints/selectors और रूटिंग मान से bind। रूट/परिभाषा बदलाव पर resave। पुराना unbound केवल सटीक anchored bundled रूट पर पहला सफलता में bind।

OpenAI-Compatible प्रदाता

प्लगइन पूर्ण API URL, API कुंजी env, chat behavior, embedding, मॉडल खोज, वैकल्पिक model_map define करता। JSON केवल OpenAI Chat Completions, OpenAI उत्तर, Anthropic संदेश या Gemini wire formats; arbitrary proprietary protocol बैकएंड adapter चाहता।

OpenAI इमेज जनरेशन

Bundled एंडपॉइंट https://api.openai.com/v1/images/generations, वर्तमान gpt-image-2; deprecated gpt-image-1.5, gpt-image-1, gpt-image-1-mini compatibility।

इमेज समान उपयोगकर्ता क्रेडेंशियल या विश्वसनीय env वैकल्पिक। अलग image_endpoint कस्टम Chat एंडपॉइंट को इमेज अनुरोध से बचाता; blank bundled इमेज API।

Selection प्रदाता-qualified। समान ID केवल panel-चयनित प्रदाता। GPT इमेज base64 को Libre app इमेज बनाकर उपयोगकर्ता gallery में save। Routes auth, pluginId और model चाहते। n JSON integer 1–10; strings/fractions reject।

Chat Completions और उत्तर API modes

प्लगइन chat_completions या responses; bundled OpenAI सेटिंग → प्लगइन में choice।

  1. पूर्ण endpoint override।
  2. base_url + वैकल्पिक api_path
  3. पुराना endpoint

मैनिफ़ेस्ट-equal एंडपॉइंट डिफ़ॉल्ट माना जाता, पुराना संग्रहीत defaults नया मूल URL को shadow नहीं। Genuine कस्टम पूर्ण एंडपॉइंट highest।

डिफ़ॉल्ट /chat/completions और /responsesbase_url API root https://api.example.com/v1; api_path सापेक्ष ऑपरेशन। पूर्ण एंडपॉइंट पूर्ण पथ। Known suffix semantics authoritative; कस्टम paths चयनित api_mode

{
"endpoint": "https://api.example.com/v1/chat/completions",
"api_mode": "responses",
"base_url": "https://api.example.com/v1",
"api_path": "/responses"
}

उत्तर input, max_output_tokens, flattened फ़ंक्शन टूल, store: false, एन्क्रिप्टेड reasoning continuation। आउटपुट Libre घटनाएँ में normalized। Replay केवल पूर्ण ordered आउटपुट Item array ≤64 Items/90 KB; Items सटीक। Unique IDs/प्रकार और संदेश/reasoning/फ़ंक्शन कॉल validate पहले side effects। Oversized Chat दृश्य इतिहास वैकल्पिक, कच्चा फ़ंक्शन कॉल Items discard; Work सटीक bounded replay बिना reject।

SQLite प्रदाता स्थिति संदेश के साथ encrypt; Work hidden context rows। Hashed दायरा समान प्रदाता/मॉडल/मोड/अंतिम एंडपॉइंट/क्रेडेंशियल fingerprint। बदलाव पर normalized इतिहास वैकल्पिक; सक्रिय Work हर round रूटिंग/क्रेडेंशियल revalidate।

Tool स्थिति replay सीमा और पूर्ण 100 KB metadata wrapper में fit पहले पार्श्व प्रभाव। Interrupted batch अनुपस्थित परिणाम सटीक call ID और outcome-unknown warning से restore ताकि workspace inspect, effect repeat नहीं। अपूर्ण उत्तर सफलता नहीं; incomplete_details.reason retained।

खोज ऑपरेशन पथ से /models; https://api.example.com/v1/responseshttps://api.example.com/v1/models। Compatible सूची न हो तो model_map। प्रति-उपयोगकर्ता variables/क्रेडेंशियल, प्रति-उपयोगकर्ता storage। Activation, रीफ़्रेश, कुंजी/कनेक्शन बदलाव/रीसेट trigger; unrelated जनरेशन नहीं।

अनुपस्थित/stale (> PLUGIN_MODEL_DISCOVERY_TTL_MS) पर auto खोज, backoff/deadline। अंतिम URL क्रेडेंशियल से पहले validated, redirects नहीं। Chat, Work, मॉडल-सूची, इमेज, embedding, transcription, speech, आवाज़ clone, ऑडियो, वीडियो अंतिम endpoints directly configure।

HTTP/HTTPS accepted। HTTP क्रेडेंशियल/prompts/परिणाम/सामग्री खुला पाठ, केवल विश्वसनीय self-hosted gateway; prefer TLS। अनुरोध बैकएंड से; container में http://ai-gateway:8080/v1, localhost Libre container। Unauthenticated एकल-उपयोगकर्ता मोड नहीं।

Capability-विशिष्ट Endpoints

Chat override इमेज/embedding/STT/TTS/ऑडियो/वीडियो से isolated। प्लगइन image_endpoint, embedding_endpoint, stt_endpoint, tts_endpoint या config.endpoint_variable; cloning config.voice_clone_endpoint_variable। Blank प्लगइन capability एंडपॉइंट; generic Chat endpoint override नहीं।

GitHub मॉडल blank पर models.github.ai/inference/chat/completions; Hugging Face embedding/इमेज/TTS में Chat एंडपॉइंट नहीं, hf-inference/models/{model}

एंडपॉइंट Overrides

endpoint पूरा ऑपरेशन URL, जैसे https://provider.example/v1/chat/completions, केवल https://provider.example नहीं। पुराना api_url alias; non-खाली endpoint wins।

पूर्ण HTTP/HTTPS accepted, others reject। HTTP विश्वसनीय केवल। Blank परिभाषा एंडपॉइंट, malformed स्पष्ट reject। Redirects नहीं। अनुरोध बैकएंड से; container localhost self, सेवा name या supported host.docker.internal

मॉडल खोज

सेटिंग → प्लगइन में प्रदाता connections workspace। प्रदाता select, सक्रिय स्थिति/कैटलॉग; Configure तक configuration collapsed।

रीफ़्रेश मॉडल खोज और प्लगइन/Chat lists reload। कैटलॉग केवल-पढ़ने; वर्तमान उपयोगकर्ता discovered IDs + capability maps, लेबल स्वास्थ्य जाँच नहीं। वैकल्पिक IDs JSON model_map

Activation effective एंडपॉइंट/क्रेडेंशियल से खोज। व्यवस्थापक कस्टम रूट उसी खाते का क्रेडेंशियल; पर्यावरण केवल विश्वसनीय मैनिफ़ेस्ट। URL:

  • /models ending as-is;
  • /chat/completions, /completions, /responses, /embeddings, /messages/models;
  • अन्य में append /models

पूर्ण models_endpoint derivation से पहले, समान URL नीति, नहीं redirects। Save/रीसेट endpoint, api_url, models_endpoint, base_url, api_path, api_mode clears/refreshes उपयोगकर्ता कैटलॉग।

कस्टम routes क्रेडेंशियल selection से पहले validate; नहीं env वैकल्पिक। OpenAI-compatible data array expected। Activation waits; सफलता प्रति उपयोगकर्ता, साझा JSON unchanged। सामान्य activation अनुपलब्ध पर previous परिणाम; intentional कनेक्शन बदलाव stale साफ़ और विफलता पर model_map

Chat में सटीक प्रदाता Selection

मॉडल IDs globally unique नहीं; Ollama और प्लगइन example-model दे सकते। Chat कच्चा ID + identity:

  • providerType: "ollama" स्थानीय/कॉन्फ़िगर किया Ollama;
  • providerType: "plugin" + providerId सटीक प्लगइन।

URL-encoded qualified मान केवल selector keys; प्रदाता कच्चा ID। Duplicates अलग, reopen सटीक सहेजा choice।

स्पष्ट identity fail closed। प्लगइन inactive/हटाया/मॉडल अनुपस्थित हो तो अनुपलब्ध दृश्य, समान-name switch नहीं। Reactivate या choose।

पुराना records में providerType/providerId unset/null; name-केवल रूटिंग compatibility और “प्रदाता not recorded”। Reselect सटीक। Persona persona:<id>, नया selections Ollama-backed।

प्रदाता सेटिंग और विरासत

सेटिंग → प्लगइन → Configure। Panels डिफ़ॉल्ट closed। व्यवस्थापक साझा definitions/रूटिंग; उपयोगकर्ता activate, own API keys, जनरेशन controls; अपलोड/स्थापित/export/हटाएँ/रूटिंग नहीं।

कनेक्शन overrides पहला, sampling उन्नत पैरामीटर में closed। Inherited मान blank फ़ील्ड + डिफ़ॉल्ट hint; panel opening defaults save नहीं करता।

Save केवल वर्तमान editor बदलाव। Clearing non-sensitive removes override; blank masked sensitive unchanged। रीसेट to Defaults अनुमत overrides हटाता। विफलता पर unsaved मान दृश्य। कस्टम एंडपॉइंट blank = bundled, पूर्ण URL = override।

प्लगइन in Work

Work Ollama/Ollama Cloud के साथ सक्रिय completion, chat उपयोग करता जब:

  • प्लगइन सक्रिय;
  • मॉडल discovered कैटलॉग या मॉडल मानचित्र में; और
  • वर्तमान व्यवस्थापक क्रेडेंशियल उपलब्ध।

प्रदाता प्रकार/ID task/run में, सटीक रूटिंग। समान-name प्लगइन मौजूदा task redirect नहीं। OpenAI-compatible, Anthropic, Gemini tool formats। मॉडल टूल कॉल समर्थन; reject/incompatible पर नहीं वैकल्पिक।

दूरस्थ Work several अनुरोध; प्रदाता system prompt, context, tool definitions/परिणाम (स्रोत फ़ाइलें, lists, कमांड आउटपुट) लेता। Libre dismissible disclosure दिखाता; pricing/retention/training समीक्षा।

Embeddings

Embedding प्लगइन दस्तावेज़ सेटिंग में। Libre nomic-embed-text, bge, e5, gte जैसे Ollama names detect। कोई नहीं पर nomic-embed-text स्थानीय candidate।

प्लगइन Development Notes

परिभाषा capability साफ़ बताए, unsupported सुविधा pretend नहीं। मॉडल maps small वैकल्पिक, reliable मॉडल-सूची API पर खोज।

  1. परिभाषा जोड़ें।
  2. क्रेडेंशियल कुंजी/उपयोगकर्ता फ़ील्ड।
  3. मॉडल-सूची हो तो खोज।
  4. Chat, embeddings, इमेज, TTS, STT अनुरोध mapping।
  5. अनुपस्थित/bad कुंजी और प्रदाता errors test।

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