आउटबाउंड प्रॉक्सी
Часть моделей недоступна напрямую с серверов в России. Чтобы это не превращалось в ручную настройку у каждого оператора, AiHummer выдаёт адрес исходящего прокси при установке и сам решает, каким путём отправить запрос.
मुख्य दो वाक्यों में
प्रॉक्सी पता विक्रेता से मिलता है और सर्वर पर एक निजी फ़ाइल में रखा जाता है — यह gateway.env में नहीं रहता और लॉग में नहीं जाता। यदि प्रॉक्सी सेट नहीं है या उपलब्ध नहीं है, तो अनुरोध सीधे जाता है: इंस्टेंस काम करता रहता है, रुकता नहीं।
क्या कहाँ जाता है
| कहाँ | कैसे जाता है |
|---|---|
| बाहरी मॉडल (विदेशी प्रदाता) | प्रॉक्सी के माध्यम से, यदि यह सेट और उपयुक्त है |
| उसी मॉडल जब प्रॉक्सी उपलब्ध नहीं | सीधे, लॉग में चेतावनी के साथ |
localhost, *.localhost, इंस्टेंस का आंतरिक पता |
हमेशा सीधे, प्रॉक्सी को बायपास करके |
आखिरी पंक्ति महत्वपूर्ण है: इंस्टेंस का स्वयं से संपर्क कभी भी प्रॉक्सी में नहीं लपेटा जाता, अन्यथा स्थानीय कॉल्स बाहरी चैनल पर निर्भर हो जाते।
वैकल्पिक मार्ग: प्रॉक्सी की अनुपस्थिति — अस्वीकृति नहीं
संस्करण 1.2.8 से पहले अनसेट या गैर-कार्यशील प्रॉक्सी अनुरोध त्रुटि का कारण बनता था। अब व्यवहार अलग है:
- प्रॉक्सी सेट और उपयुक्त → अनुरोध इसके माध्यम से जाता है;
- प्रॉक्सी सेट नहीं है → अनुरोध सीधे जाता है, लॉग में एक बार चेतावनी लिखी जाती है कारण «सेट नहीं»;
- प्रॉक्सी सेट है, लेकिन मान्य नहीं → अनुरोध सीधे जाता है, कारण चेतावनी में — «सेटिंग मान्य नहीं».
चेतावनी प्रत्येक रन में एक बार दिखती है, प्रत्येक अनुरोध पर नहीं: अन्यथा यह लॉग को भर देगा और पढ़ने योग्य नहीं रहेगा।
:::note सीधा मार्ग प्रॉक्सी का विकल्प है, प्रतिस्थापन नहीं। यदि प्रदाता रूसी पतों से अनुरोध स्वीकार नहीं करता, तो सीधे अनुरोध विफल रहेगा — लेकिन प्रदाता ही अस्वीकृति देगा, और प्रतिक्रिया में यह दिखेगा, न कि सामान्य ‘सेटिंग लागू नहीं हुई’। :::
पता कहाँ संग्रहीत है
मान निजी फ़ाइल में रहता है, जिसका पथ AIHUMMER_OUTBOUND_PROXY_URL_FILE द्वारा निर्धारित होता है। फ़ाइल की आवश्यकताएँ:
- पूर्ण पथ;
- साधारण फ़ाइल, अधिकार
0600से अधिक नहीं; - आकार अधिकतम 4096 बाइट।
यह जानबूझकर किया गया है: प्रॉक्सी पता पासवर्ड रखता है, इसलिए इसे gateway.env में नहीं रखना चाहिए, जिसे रखरखाव के दौरान पढ़ा और कॉपी किया जाता है।
:::caution
वेरिएबल AIHUMMER_OUTBOUND_PROXY_URL जिसमें पता ‘सीधे मान में’ है, केवल विकास बिल्ड्स के लिए मौजूद है। रिलीज़ बिल्ड्स इसे नहीं पढ़ते — प्रोडक्शन में केवल फ़ाइल पथ स्वीकार किया जाता है।
:::
कौन से पते स्वीकार किए जाते हैं
जाँच सेटिंग जारी करने के समय और उपयोग के समय समान होती है, इसलिए अमान्य मान तुरंत अस्वीकृत हो जाता है, न कि बाद में ‘विदेशी मॉडल फिर से काम नहीं कर रहे’ जैसी स्थिति बनती है बिना किसी लॉग पंक्ति के।
स्वीकार्य: स्कीमा http या https, गैर-खाली होस्ट, बिना क्वेरी स्ट्रिंग के, बिना फ्रैगमेंट के, बिना पाथ के (सिवाय / के)।
🔴 गैर-एन्क्रिप्टेड http को गैर-लोकल होस्ट पर जानबूझकर अस्वीकार किया जाता है। असुरक्षित http पर Proxy-Authorization हेडर हर कनेक्शन पर स्पष्ट टेक्स्ट में जाता है — यानी प्रॉक्सी पासवर्ड लगातार लीक हो जाता। गैर-लोकल होस्ट के लिए https उपयोग करें।
कैसे जांचें कि क्या हो रहा है
# Что сейчас настроено (значение не печатается — только факт настройки)
aihummer doctor
# Журнал шлюза: предупреждение о прямом пути, если прокси не применён
journalctl -u aihummer-gateway -n 200 | grep -i прокси
सेटिंग लागू न होने पर कारण बताया जाता है — «सेट नहीं», «सेटिंग मान्य नहीं» — सामान्य «लागू नहीं किया जा सका» के बजाय। यह अंतर करता है «पता नहीं पहुँचा» और «पता पहुँचा, लेकिन गलत» में।
ऑपरेटर को क्या करना चाहिए
आमतौर पर — कुछ नहीं: पता इंस्टॉलेशन पर दिया जाता है। हस्तक्षेप दो मामलों में आवश्यक है।
- विक्रेता के बजाय अपना प्रॉक्सी। पता
0600अधिकारों वाली निजी फ़ाइल में रखें और पथAIHUMMER_OUTBOUND_PROXY_URL_FILEमें दें, फिर गेटवे को पुनः शुरू करें। - प्रॉक्सी बिल्कुल नहीं चाहिए (इंस्टेंस ऐसी जगह पर है जहाँ मॉडल सीधे उपलब्ध हैं)। कुछ भी निर्दिष्ट न करें: अनसेट प्रॉक्सी का मतलब सीधे अनुरोध है।