LM Warden

इंस्टॉल करने से पहले लोग क्या पूछते हैं।

LM Warden क्या है?

यह आपके अपने हार्डवेयर पर चलने वाले इन्फ़रेंस इंजनों के लिए एक कंट्रोल प्लेन है: NVIDIA GPU वाले Linux होस्ट पर vLLM और llama.cpp, या Apple silicon वाले Mac पर एक बीटा ऐप में MLX और llama.cpp। आप HuggingFace से एक मॉडल पुल करते हैं, उसे अपने GPU पर लोड करते हैं, एक API कुंजी बनाते हैं और उसे OpenAI-संगत /v1 एंडपॉइंट के ज़रिए कॉल करते हैं। ब्राउज़र UI से आप मॉडल लोड और अनलोड कर सकते हैं, और उसमें लाइव इंजन लॉग, चैट प्लेग्राउंड, GPU और टोकन के आँकड़े, और हर API कुंजी का अपना पेज है। यह मॉडल को तेज़ नहीं बनाता और इंजनों में बदलाव नहीं करता। यह वे हिस्से जोड़ता है जो एक अकेले इंजन के साथ नहीं आते।

यह किन GPU और ऑपरेटिंग सिस्टम पर चलता है?

Linux और macOS। Linux पर: x86_64 होस्ट पर NVIDIA GPU। न्यूनतम Turing है (sm_75, RTX 20-सीरीज़ वाली पीढ़ी): बेस इमेज में CUDA 13 है, जिसने Maxwell, Pascal और Volta छोड़ दिए हैं, इसलिए GTX 1080 Ti, Titan X या V100 काम नहीं करेंगे। Turing से Blackwell तक सब शामिल है, Ada, Hopper और RTX 50-सीरीज़ समेत। macOS पर: Apple silicon (M1 या नया), एक अलग Mac ऐप के ज़रिए, बीटा में: macOS 14 या नए के लिए एक नेटिव मेनू-बार ऐप जो MLX से और llama.cpp के Metal बिल्ड से मॉडल चलाता है, वही OpenAI-संगत API देता है और वही डैशबोर्ड अपनी विंडो में दिखाता है, lmwarden.com/download/mac से (लगभग 110 MB, एक SHA-256 फ़ाइल के साथ)। यह ऐड-हॉक साइन किया गया है और नोटराइज़ नहीं है, इसलिए पहली बार चलाने पर इसे System Settings › Privacy & Security › Open Anyway में अनुमति दें (macOS 14 पर राइट-क्लिक › Open भी काम करता है); डिफ़ॉल्ट रूप से यह सिर्फ़ लूपबैक पते पर उपलब्ध रहता है, और ख़ुद को अपडेट नहीं करता। अब Windows की बारी है; हम उस पर काम कर रहे हैं, अभी कोई तारीख़ तय नहीं है। इस रिलीज़ में ROCm, Intel GPU या CPU का रास्ता नहीं है; AMD Radeon और Intel GPU रोडमैप पर हैं, और पहले कौन आएगा यह प्रोजेक्ट के GitHub Discussions में मिलने वाले फ़ीडबैक पर निर्भर है। एक Linux मशीन में कई GPU समर्थित हैं; एक मॉडल को कई मशीनों में बाँटना समर्थित नहीं है।

क्या मेरा मौजूदा OpenAI क्लाइंट इसके साथ काम करेगा?

हाँ। /v1/* पर गेटवे OpenAI-संगत है, इसलिए base_url और कुंजी बदलते ही openai SDK, LangChain, OpenWebUI और आपके अपने एजेंट बिना बदलाव के काम करते हैं। GET /v1/models हर मॉडल का max_model_len भी बताता है, इसलिए क्लाइंट को कॉन्टेक्स्ट विंडो का अंदाज़ा नहीं लगाना पड़ता। Codex CLI, जो सिर्फ़ OpenAI Responses API समझता है, भी काम करता है: POST /v1/responses आपके लोड किए गए मॉडल के लिए Chat Completions में अनुवादित होता है (स्टेटलेस, और सिर्फ़ लोकल: राउटर के नियम लागू नहीं होते)।

क्या मैं इसे Claude Code के साथ इस्तेमाल कर सकता हूँ और अपना Anthropic अकाउंट भी रख सकता हूँ?

हाँ। ANTHROPIC_BASE_URL को warden पर सेट करें, अपना सामान्य claude लॉगिन रखें, और warden कुंजी को ANTHROPIC_CUSTOM_HEADERS में X-LMWarden-Key के रूप में डालें। एक नियम Claude Code के माँगे गए मॉडल नाम, जैसे claude-haiku*, को आपके GPU पर लोड किए गए मॉडल से जोड़ता है; बाकी हर मॉडल, और हर दूसरा /v1 पाथ, आपके अपने लॉगिन से Anthropic को बाइट-दर-बाइट भेजा जाता है। इसके लिए Claude Code 2.1.227 या नया चाहिए, यह डिफ़ॉल्ट रूप से बंद है, और कुछ भी आगे भेजे जाने से पहले कुंजी पर “May relay to Anthropic” फ़्लैग होना ज़रूरी है। पुराने क्लाइंट अब भी सिर्फ़-लोकल मोड इस्तेमाल कर सकते हैं।

क्या Anthropic मेरी warden कुंजी देखता है, या warden मेरा Anthropic लॉगिन?

Anthropic warden कुंजी कभी नहीं देखता: वह अपने अलग हेडर में जाती है और अनुरोध आगे भेजे जाने से पहले हटा दी जाती है। warden आपका Anthropic लॉगिन ज़रूर संभालता है, क्योंकि उसे आगे भेजना होता है, लेकिन सिर्फ़ Anthropic को। वह कभी किसी इंजन को नहीं भेजा जाता और कभी लॉग नहीं होता, और पास-थ्रू हुए अनुरोध की कोई भी चीज़ न सेव होती है न God mode में दिखती है।

यह कौन-से इन्फ़रेंस इंजन इस्तेमाल करता है?

Linux पर, मेनलाइन vLLM v0.32.0 और llama.cpp b11719, हर मॉडल के लिए चुने जाते हैं और बिना बदलाव के चलते हैं: कोई पैच की हुई इमेज नहीं, कोई फ़ोर्क नहीं, कोई मंकीपैचिंग नहीं। .gguf फ़ाइल चुनने पर llama.cpp चुना जाता है, जो GGUF क्वांटाइज़ेशन से बड़े मॉडल छोटे कार्ड पर फ़िट करता है और पुराने GPU को काम का बनाए रखता है। TensorRT-LLM, SGLang और Ollama का रनटाइम साथ नहीं आते; Mac बीटा मॉडल MLX से चलाता है, जो उसका डिफ़ॉल्ट इंजन है, या .gguf फ़ाइलों के लिए llama.cpp के Metal बिल्ड से, और उसमें vLLM नहीं है।

क्या कुछ भी मेरी मशीन से बाहर जाता है?

होस्ट से कुछ भी बाहर नहीं जाता, जब तक आप Claude Code राउटर चालू करके किसी कुंजी पर “May relay to Anthropic” फ़्लैग न लगाएँ। तब उस कुंजी से उन Claude मॉडल के अनुरोध, जिन्हें कोई नियम आपके GPU पर नहीं भेजता, यूज़र के अपने Anthropic लॉगिन से Anthropic को जाते हैं, और कुछ नहीं। कोई अकाउंट, लाइसेंस जाँच या एनालिटिक्स नहीं है। इसके अलावा स्टैक सिर्फ़ तभी बाहर कॉल करता है जब आप कहें: वेट पुल करने के लिए huggingface.co (HF_HUB_OFFLINE=1 उसे भी रोक देता है), इंजन-वर्ज़न पिकर खोलने पर Docker Hub, और रिलीज़ इमेज के लिए रजिस्ट्री, जिसकी जगह ऑफ़लाइन या एयर-गैप्ड इंस्टॉल में docker load लेता है।

क्या प्रॉम्प्ट और जवाब सेव होते हैं?

डिफ़ॉल्ट रूप से नहीं। चार्ट और हर कुंजी के उपयोग के पीछे का अनुरोध इतिहास सिर्फ़ मेटाडेटा रखता है और उसमें प्रॉम्प्ट या कंप्लीशन टेक्स्ट के लिए कोई कॉलम नहीं है। दो डायग्नोस्टिक सुविधाएँ सामग्री कैप्चर कर सकती हैं, और दोनों तब तक बंद रहती हैं जब तक आप उन्हें चालू न करें: God mode (VW_GODMODE_ENABLED), एक कुंजी के ट्रैफ़िक का सीमित इन-मेमोरी व्यू, और कंटेंट लॉग (VW_CONTENT_LOG_ENABLED), जो सिर्फ़ आपकी बताई गई टोकन ID के लिए डिस्क पर लिखता है।

टीम के लिए API कुंजियाँ कैसे काम करती हैं?

हर ऐप या व्यक्ति को अपनी vw_ कुंजी और अपना पेज मिलता है। P0 से P9 तक प्राथमिकता सेट करें (प्रतीक्षा में P9 अनुरोध हमेशा P8 अनुरोध से पहले जाता है), कुंजी को रोकें, ताकि चल रहे अनुरोध पूरे होते रहें पर उसके क्लाइंट को नए अनुरोधों पर 403 token paused मिले, या उसे ग्रेस अवधि के साथ रोटेट करें जिसके दौरान पुरानी कुंजी भी काम करती रहती है। अनुरोध, प्रॉम्प्ट टोकन और कंप्लीशन टोकन कुंजी और क्लाइंट IP के हिसाब से गिने जाते हैं, साथ में हर कुंजी की क़तार प्रतीक्षा और लेटेंसी। कंट्रोल API चलाने वाली स्क्रिप्ट, CI और एजेंट एडमिन पासवर्ड की जगह अलग vwa_ एडमिन टोकन इस्तेमाल करते हैं।

क्या मैं एक GPU पर कई मॉडल चला सकता हूँ?

नहीं। हर GPU पर एक ही लोड किया गया मॉडल चल सकता है; यह नियम इंजन शुरू होने से पहले ही जाँचा जाता है। आप एक ही होस्ट के अलग-अलग कार्ड पर अलग-अलग मॉडल लोड कर सकते हैं, और vLLM के टेंसर पैरेललिज़्म से एक मॉडल को कई कार्ड में बाँट सकते हैं।

इसे इंस्टॉल करने के लिए क्या चाहिए?

Linux पर आपको ऐसा होस्ट चाहिए जिसमें Docker, Docker Compose v2.24 या नया, एक NVIDIA GPU, NVIDIA Container Toolkit हो, और जहाँ Docker अपनी इमेज रखता है वहाँ लगभग 40 GB ख़ाली जगह हो। इंस्टॉलर होस्ट की जाँच करता है, आपको GPU चुनने देता है, ज़रूरी सीक्रेट (पासवर्ड और कुंजियाँ) बनाता है, रिलीज़ इमेज पुल करता है और स्टैक शुरू करने का विकल्प देता है। फिर ब्राउज़र में पहली बार चलने वाला विज़ार्ड इस्तेमाल होने वाले GPU, एक HuggingFace टोकन और आपका एडमिन अकाउंट पूछता है। Apple silicon वाले Mac पर इसकी जगह बीटा ऐप डाउनलोड करना होता है; Mac वाला हिस्सा देखें।

इसकी लागत क्या है?

यह पूरी तरह मुफ़्त है। LM Warden, Apache-2.0 लाइसेंस के तहत उपलब्ध है। यह सॉफ़्टवेयर है जिसे आप ख़ुद चलाते हैं, होस्टेड API नहीं: हार्डवेयर, ड्राइवर, डिस्क और बिजली आपकी होती है, और हार्डवेयर का ख़र्च निकल जाने के बाद हर अनुरोध की लागत सिर्फ़ बिजली है, प्रति टोकन कोई शुल्क नहीं।