For the complete documentation index, see llms.txt. This page is also available as Markdown.

Inference Server डिफ़ॉल्ट रूप से localhost से bind होता है

इनफ़ेरेंस सर्वर प्रारंभ करें अब सर्वर पोर्ट को 127.0.0.1 हर नेटवर्क इंटरफ़ेस पर प्रकाशित करने के बजाय। CLI के साथ शुरू किया गया सर्वर केवल उसी मशीन से जवाब देता है जिस पर वह चल रहा है।

# नया डिफ़ॉल्ट: केवल इसी मशीन से पहुँचा जा सकता है
इनफ़ेरेंस सर्वर प्रारंभ करें

# पिछला व्यवहार: हर उस मशीन से पहुँचा जा सकता है जो इस होस्ट तक रूट कर सकती है
inference server start --bind-address 0.0.0.0

NVIDIA Jetson पुराना व्यवहार बनाए रखता है। Jetson इमेजें हेडलेस एज डिवाइस हैं जिन्हें लगभग हमेशा किसी दूसरी मशीन से नियंत्रित किया जाता है, इसलिए वे अभी भी 0.0.0.0 पर प्रकाशित रहती हैं और उनके लिए कुछ नहीं टूटता। इसका यह भी मतलब है कि डिफ़ॉल्ट रूप से Jetson अपने नेटवर्क पर किसी भी चीज़ से पहुँचा जा सकता है - नीचे दिए गए नियंत्रण लागू करें, या इसे --bind-address 127.0.0.1.

क्यों

स्व-होस्टेड Inference Server को डिफ़ॉल्ट रूप से किसी प्रमाणीकरण की आवश्यकता नहीं होती, और यह Workflows Custom Python blocks चलाता है। साथ मिलकर, इसका अर्थ है कि जो भी पोर्ट 9001तक पहुँच सकता है, उसके लिए आपके होस्ट पर मनमाना कोड निष्पादन संभव है। हर इंटरफ़ेस पर प्रकाशित करने से यह स्थानीय नेटवर्क की हर चीज़ के लिए उपलब्ध हो जाता था, जिसमें अविश्वसनीय Wi‑Fi भी शामिल है। अब Loopback डिफ़ॉल्ट है, इसलिए सुरक्षित कॉन्फ़िगरेशन वही है जो आपको बिना सोचे मिल जाता है।

इससे पहले कि आप बाइंड करें 0.0.0.0

पोर्ट को एक्सपोज़ करना एक ऐसे डिप्लॉयमेंट को चुनना है जिसे अपने अलग नियंत्रणों की आवश्यकता होती है:

  • सेट करें WORKSPACES_WHITELISTED_FOR_LOCAL_DEPLOYMENT, या सर्वर के सामने अपनी स्वयं की प्रमाणीकरण व्यवस्था लगाएँ।

  • सेट करें ALLOW_CUSTOM_PYTHON_EXECUTION_IN_WORKFLOWS=false जब तक कि आपके Workflows को वास्तव में कस्टम Python की ज़रूरत न हो।

  • यदि अनुरोध होस्ट से बाहर जाते हैं, तो TLS को सर्वर पर या किसी upstream proxy पर समाप्त करें।

यदि आप कंटेनर स्वयं शुरू करते हैं

कुछ नहीं बदला, और कुछ बदल भी नहीं सकता: HOST इंटरफ़ेस चुनता है के अंदर कंटेनर, जो एक अलग नेटवर्क नेमस्पेस है, इसलिए इमेज यह सीमित नहीं कर सकती कि होस्ट क्या प्रकाशित करता है। docker run -p 9001:9001 अभी भी हर इंटरफ़ेस पर प्रकाशित होता है। नया व्यवहार पाने के लिए, मैपिंग के होस्ट पक्ष को स्पष्ट रूप से बाइंड करें:

के अंतर्गत --network host कोई पोर्ट मैपिंग नहीं होती, इसलिए सेट करें -e HOST=127.0.0.1 इसके बजाय। Kubernetes में, बनाए रखें HOST=0.0.0.0 और exposure को Service type और NetworkPolicy से नियंत्रित करें।

इस बदलाव में यह भी

  • Raspberry Pi और अन्य CPU/GPU targets को नया 127.0.0.1 डिफ़ॉल्ट; केवल Jetson images को छूट है।

  • inference server start --tunnel अब भी 0.0.0.0पर प्रकाशित होता है, क्योंकि tunnel एक अलग कंटेनर में चलता है और host gateway के माध्यम से सर्वर तक पहुँचता है। जब यह ऐसा करता है, CLI एक सूचना दिखाता है।

  • macOS और Windows desktop app bundles बाइंड करते हैं 127.0.0.1 भी। सेट करें HOST=0.0.0.0 पिछले व्यवहार को बहाल करने के लिए।

अंतिम अपडेट

क्या यह उपयोगी था?