यहाँ वे सभी सेटिंग्स दी गई हैं जिन्हें ऑपरेटर AiHummer सर्वर पर बदल सकता है। यह पृष्ठ स्वयं उत्पाद की सूची से बनाया जाता है, इसलिए यह आपके सर्वर से मेल खाता है।
मान वेब-इंटरफ़ेस में या aihummer settings set KEY VALUE कमांड से दिया जाता है (कमांड लाइन)। डिफ़ॉल्ट मान वाला स्तंभ दिखाता है कि अपना मान देने तक सर्वर क्या उपयोग करता है।
[!NOTE]
गुप्त मान यहाँ कभी नहीं छापे जाते, और आपूर्तिकर्ता की सेवा-कुंजियाँ बिल्कुल सूचीबद्ध नहीं होतीं — उत्पाद उन्हें हर सूची से छिपाता है। डैश का अर्थ है खाली मान या ऐसा विवरण जो केवल वेब-इंटरफ़ेस में दिखता है।
API
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_PERSONAL_API_KEYS
OpenAI-compat के लिए व्यक्तिगत API कुंजी
bool
1
पुनः आरंभ के बाद
‘बंद’ ओपनएआई-संगत एंडपॉइंट पर व्यक्तिगत-कुंजी प्रमाणीकरण को अक्षम करता है = स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है।
Agent
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_AGENT_ANNOUNCE_SLOW_TOOLS
एजेंट: लंबे कार्यों से पहले बताना
bool
1
तुरंत
किसी लंबे कार्य (चित्र, गहन खोज, वीडियो, सबएजेंट को काम) से पहले एजेंट संक्षेप में लिखता है कि वह क्या कर रहा है, ताकि प्रतीक्षा चुपचाप न हो। ऐसे संदेश बाधा हों तो बंद करें।
AIHUMMER_AGENT_COMPACT_AT_PCT
एजेंट: इतिहास भरने पर संक्षिप्त करें, उसके बजट का %
int 50…99
85
तुरंत
जब बातचीत का इतिहास मॉडल विंडो में अपनी जगह का यह हिस्सा भर देता है, तो पुराने संदेश सारांश में समेटे जाते हैं — पृष्ठभूमि में, उत्तर के बाद; बारी प्रतीक्षा नहीं करती। कम — संक्षेपण अधिक बार, पर मॉडल शब्दशः कम याद रखता है; अधिक — कम बार, पर बारियाँ भारी होती हैं। 50–99; एजेंट अपना मान सेट कर सकता है।
AIHUMMER_AGENT_COMPACT_TO_PCT
एजेंट: संक्षेपण के बाद रखें, इतिहास बजट का %
int 10…90
50
तुरंत
संक्षेपण के बाद इतिहास की जगह का कितना हिस्सा शब्दशः रहता है; उससे पुराना सब सारांश में जाता है। संक्षेपण सीमा से कम होना चाहिए: दोनों के बीच का अंतर तय करता है कि अगले संक्षेपण तक कितनी बारियाँ बीतेंगी। 10–90; एजेंट अपना मान सेट कर सकता है।
AIHUMMER_AGENT_HISTORY_TURNS
एजेंट: शब्दशः रखे जाने वाले बातचीत टर्न
int 1…1000
30
तुरंत
मॉडल बातचीत के कितने हाल के टर्न शब्दशः देखता है (संक्षेपण से पहले 10 तक अधिक)। पुराने संदेशों का सारांश पृष्ठभूमि में बनता है; बातचीत स्वयं कभी नहीं हटती। मॉडल की संदर्भ विंडो का ध्यान अपने आप रखा जाता है। 1–1000; एजेंट के लिए अलग मान रखा जा सकता है।
AIHUMMER_AGENT_MAX_ITERATIONS
एजेंट: प्रति टर्न अधिकतम टूल चरण
int 1…256
25
तुरंत
उत्तर देने से पहले एक टर्न में एजेंट कितनी बार टूल बुला सकता है। सीमा पर टर्न विफल नहीं होता: एजेंट बताता है कि क्या हुआ और क्या बाकी है, और आप उससे जारी रखने को कह सकते हैं। एक ही परिणाम वाली तीन समान कॉल लगातार होने पर टर्न पहले रुक जाता है। 1–256; एजेंट के लिए अलग मान रखा जा सकता है।
AIHUMMER_AGENT_MEMORY_FLUSH
एजेंट: संक्षेपण से पहले मेमोरी नोट सहेजें
bool
1
तुरंत
पुराने संदेशों को सारांश में समेटने से पहले एजेंट लक्ष्यों, निर्णयों और खुले कामों पर एक छोटा नोट मेमोरी में सहेजता है। मॉडल कॉल बचाने के लिए बंद करें।
AIHUMMER_AGENT_MEMORY_FLUSH_PROMPT
एजेंट: संक्षेपण से पहले नोट में क्या सहेजें
text
—
तुरंत
संक्षेपण से पहले नोट के लिए आपका अपना कार्य: सारांश में जाने वाले संदेशों में से क्या सहेजना है (उदाहरण के लिए, “केवल ख़रीदारी, समय-सीमाएँ और समझौते लिखो”)। ख़ाली — अंतर्निर्मित: लक्ष्य, निर्णय, खुले काम। सुरक्षा बंद नहीं होती: बातचीत का पाठ डेटा रहता है, निर्देश नहीं, और पासवर्ड व कुंजियाँ सहेजी नहीं जातीं। 4000 वर्णों तक; एजेंट का अपना कार्य हो सकता है।
AIHUMMER_AGENT_NEW_REMINDERS_MEMORY
नए एजेंट: रिमाइंडर और मेमोरी में लिखना
bool
1
तुरंत
हाथ से बनाया गया नया एजेंट (पहली बार का विज़ार्ड, «एजेंट बनाएँ», API) पहले ही चरण से अपने ख़ुद के रिमाइंडर और शेड्यूल बनाता, बदलता और रद्द करता है और तथ्य अपनी मेमोरी में लिखता है — निजी सहायक टेम्पलेट की तरह। किसी एक एजेंट के लिए इसे उसके कार्ड («क्षमताएँ») में बंद करें। लाइब्रेरी टेम्पलेट अपना चुनाव ख़ुद तय करते हैं, एजेंट की प्रति मूल के अधिकार रखती है, किसी दूसरे एजेंट द्वारा बनाए गए एजेंट इनके बिना शुरू होते हैं; मौजूदा एजेंट नहीं बदलते। अगले बनाए जाने वाले एजेंट पर लागू होता है।
AIHUMMER_AGENT_PROMPT_PART_MAX_CHARS
एजेंट: प्रॉम्प्ट के प्रति भाग अधिकतम वर्ण
int 1000…1000000
20000
तुरंत
मॉडल एजेंट के व्यक्तित्व के एक भाग — प्रोफ़ाइल अनुभाग, प्रॉम्प्ट भाग या मुख्य प्रॉम्प्ट — से कितने वर्ण पाता है। लंबे भाग में शुरुआत (3/4) और अंत (1/4) रखे जाते हैं और एक टिप्पणी होती है कि कितना काटा गया; यह बातचीत कार्ड और एजेंट की प्रॉम्प्ट संरचना में दिखता है। नाम, संबोधन और व्यक्तित्व की सीमाएँ कभी नहीं काटी जातीं। 1000–1000000; एजेंट के लिए अपना मान रखा जा सकता है।
AIHUMMER_AGENT_PROMPT_TOTAL_MAX_CHARS
एजेंट: पूरे व्यक्तित्व के अधिकतम वर्ण
int 1000…2000000
60000
तुरंत
एजेंट के व्यक्तित्व की कुल सीमा: सभी भाग मिलाकर। इसके पार होने पर सबसे लंबे भाग पहले जगह छोड़ते हैं और छोटे भाग पूरे रहते हैं। 1000–2000000; एजेंट के लिए अपना मान रखा जा सकता है।
AIHUMMER_AGENT_SELF_INTRO
एजेंट: अपना परिचय देना
enum: first_contact \\| each_dialog \\| never
first_contact
तुरंत
«एक बार, पहली मुलाक़ात में» — एजेंट किसी व्यक्ति से पहली बातचीत में संक्षेप में अपना परिचय देता है, जब तक वह सीधे काम की बात न चाहे; परिचित व्यक्ति से दोबारा परिचय नहीं देता और अभिवादन का स्वाभाविक उत्तर देता है। «कभी परिचय न देना» — एजेंट कभी ख़ुद से अपना नाम नहीं बताता। «हर नई बातचीत की शुरुआत में» — हर नई बातचीत की शुरुआत में और लंबे विराम के बाद, संक्षेप में और पिछली बातों के सारांश के बिना। एजेंट अपने कार्ड («संदर्भ और व्यवहार») में अलग चुनाव कर सकता है।
AIHUMMER_AGENT_SESSION_IDLE_RESET_MINUTES
एजेंट: चुप्पी के बाद बातचीत नए सिरे से शुरू करें (मिनट)
int 0…525600
360
तुरंत
“मौन के बाद” और “हर दिन और मौन के बाद” के लिए: यदि व्यक्ति इससे लंबे मौन के बाद लिखता है, तो एजेंट बातचीत नए सिरे से शुरू करता है। उन एजेंटों पर लागू जिनके कार्ड पर अपना मान नहीं है। 0 — मौन के आधार पर नहीं। 0–525600; 360 = 6 घंटे, 1440 = एक दिन।
AIHUMMER_AGENT_SESSION_INDEX_MAX_ENTRIES
एजेंट: सूची में अधिकतम इतने सत्र रखें
int 0…100000
0
तुरंत
सबसे शांत पहले निकलते हैं; कुछ भी नहीं हटाया जाता। 0 — कोई सीमा नहीं। 0–100000। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है।
AIHUMMER_AGENT_SESSION_INDEX_PRUNE_DAYS
एजेंट: इतने दिनों की चुप्पी के बाद सत्र सूची से हटाएँ
int 0…3650
0
तुरंत
कुछ भी नहीं हटाया जाता: बातचीत सूची से निकल जाती है और नए संदेश के साथ लौट आती है। 0 — रखें। 0–3650। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है।
AIHUMMER_AGENT_SESSION_RESET_AT_HOUR
एजेंट: रोज़ाना नए सिरे से शुरुआत का घंटा
int 0…23
4
तुरंत
«हर दिन» वाले मोड के लिए: इस घंटे से पहले शुरू हुई बातचीत व्यक्ति के अगले संदेश से फिर से शुरू होती है। घंटा सर्वर के समय क्षेत्र के अनुसार है («सिस्टम और सेटिंग्स» में «समय क्षेत्र» सेटिंग)। 0–23; 4 यानी रात, जब लगभग कोई नहीं लिखता।
AIHUMMER_AGENT_SESSION_RESET_GROUP_IDLE_MINUTES
एजेंट: मौन के बाद समूह चैट नए सिरे से शुरू करें (मिनट)
int 0…525600
0
तुरंत
“मौन के बाद” और “हर दिन और मौन के बाद” मोड में समूह चैट के लिए: मौन के वे मिनट जिनके बाद समूह चैट नए सिरे से शुरू होती है। 0 का अर्थ है निजी चैट की तरह। 0–525600।
AIHUMMER_AGENT_SESSION_RESET_GROUP_MODE
एजेंट: समूह चैट कब नए सिरे से शुरू हो
enum: inherit \\| daily \\| idle \\| both \\| none
inherit
तुरंत
समूह चैट के लिए अलग नियम (Telegram समूह, VK बातचीत, MAX चैट और अन्य): निजी चैट की तरह, हर दिन रीसेट के घंटे पर, मौन के बाद, जो पहले हो, या कभी नहीं। रीसेट का घंटा साझा है। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना नियम नहीं है।
AIHUMMER_AGENT_SESSION_RESET_MODE
एजेंट: बातचीत नए सिरे से कब शुरू हो
enum: idle \\| daily \\| both \\| none
idle
तुरंत
एजेंट बातचीत नए सिरे से कब शुरू करे: हर दिन रीसेट के घंटे पर (सेटिंग्स के समयक्षेत्र के अनुसार), मौन के बाद, जो पहले हो, या कभी नहीं। नए सिरे से शुरू करते समय एजेंट पिछली बातचीत के बारे में अपनी स्मृति में एक नोट लिखता है, और उसकी पहली बारी को पिछला सारांश और आख़िरी संदेश मिलते हैं; संदेश स्वयं संग्रह और खोज में बने रहते हैं। उन एजेंटों पर लागू जिनके कार्ड पर अपना नियम नहीं है; वहाँ समूह चैट के लिए अलग नियम तय किया जा सकता है।
AIHUMMER_AGENT_SESSION_SCOPE
एजेंट: निजी बातचीत कहाँ जाती है
enum: chat \\| per-channel-peer \\| per-peer
chat
तुरंत
«हर व्यक्ति के लिए एक» एक ही व्यक्ति के Telegram, ऐप और अन्य निजी चैट को एक बातचीत में जोड़ देता है। समूह चैट हमेशा अपनी अलग रखते हैं। अगले संदेश से लागू होता है। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है।
AIHUMMER_AGENT_SILENT_REPLY
एजेंट: चुप रह सकता है
enum: groups \\| all \\| off
groups
तुरंत
समूह चैट में एजेंट चुप रह सकता है, यदि संदेश उसे संबोधित नहीं है या उसके पास जोड़ने को कुछ नहीं है; निजी चैट में वह हमेशा उत्तर देता है। आप निजी चैट में भी चुप रहने की अनुमति दे सकते हैं या इसे बंद कर सकते हैं। चुप रहा चरण कुछ नहीं भेजता, बातचीत के कार्ड में उसे “एजेंट चुप रहा” चिह्नित किया जाता है, और मॉडल उसे इतिहास में नहीं देखता। अगले चरण से लागू होता है।
AIHUMMER_AGENT_SKILLS_PROMPT_MAX_CHARS
एजेंट: प्रॉम्प्ट में कौशल सूची के अधिकतम वर्ण
int 1000…200000
18000
तुरंत
हर बारी में मॉडल कौशलों के पाठ नहीं, बल्कि उनकी सूची देखता है: पहचानकर्ता, नाम और कब लागू करना है; कार्य उपयुक्त होने पर एजेंट कौशल का निर्देश स्वयं लोड करता है। सूची लंबी हो तो पहले विवरण हटाए जाते हैं, फिर सूची का अंत — बाकी कौशल एजेंट अनुरोध पर ढूँढ लेता है। 1000–200000।
AIHUMMER_AGENT_STALE_GAP_HOURS
एजेंट: विराम जिसके बाद पिछली बातचीत इतिहास है (घंटे)
int 0…8760
12
तुरंत
यदि व्यक्ति इससे लंबे विराम के बाद लिखता है, तो एजेंट को एक टिप्पणी मिलती है: पहले की सारी चर्चा इतिहास है — बिना माँगे उसे दोहराया नहीं जाता और पुराने कार्य जारी नहीं किए जाते। हर संदेश में पहले से उसका समय और पिछले संदेश से बीता समय होता है। 0 = टिप्पणी नहीं। 0–8760।
AIHUMMER_AGENT_TOOL_HISTORY_TURNS
एजेंट: टूल परिणाम याद रखने वाले टर्न
int 0…100
5
तुरंत
कितने हाल के टर्न में मॉडल टूल कॉल और उनके परिणाम पूरे देखता है (परिणाम 16 KB तक रखा जाता है)। पुराने टर्न में कॉल और परिणाम की शुरुआत बनी रहती है। इस तरह एजेंट टूल दोबारा बुलाने के बजाय याद रखता है कि उसने क्या पाया और क्या किया। 0 = परिणाम अगले टर्न में न ले जाएँ। 0–100; एजेंट अपना मान तय कर सकता है।
AIHUMMER_APPROVAL_TOOLS
उपकरणों को अनुमोदन की आवश्यकता है
multiselect
—
तुरंत
अल्पविराम से अलग किए गए उपकरणों की सूची जिनके आह्वान के लिए निष्पादन से पहले संचालक की हस्तचालित स्वीकृति आवश्यक है। रिक्त = स्वीकृति आवश्यक नहीं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_SUBAGENT_MAX_DEPTH
subagent अधिकतम गहराई
int 0…10
2
तुरंत
सबएजेंट के नेस्टिंग की अधिकतम गहराई (एजेंट जो एजेंट को चलाता है)। डिफ़ॉल्ट 2 — अनंत पुनरावर्तन से सुरक्षा।
AIHUMMER_SUBAGENT_TIMEOUT_SEC
subagent टाइमआउट (सेकंड)
int 0…86400
180
तुरंत
एकल सबएजेंट रन के लिए अधिकतम समय, सेकंड में।
AIHUMMER_TOOL_SEARCH
टूल की आलसी लोडिंग
bool
false
तुरंत
टूल के कार्यशील कोर को सीधे दिखाता है और बड़े कैटलॉग के बाकी हिस्से को एक खोज टूल के पीछे छिपाता है, जो हर छिपे टूल का नाम बताता है। यह केवल बड़े कैटलॉग (दर्जनों प्लगइन, MCP या OpenAPI टूल) में फ़ायदेमंद है: आकार की सीमा से नीचे सभी टूल सीधे दिखाए जाते हैं, क्योंकि टूल खोजने के लिए मॉडल को एक अतिरिक्त कॉल स्कीमा से अधिक महँगी पड़ती है। अगले चरण से लागू होता है।
वे टूल जो लेज़ी मोड में हमेशा सीधे दिखते हैं। डिफ़ॉल्ट रूप से कार्यशील कोर: वेब खोज, पेज प्राप्त करना, मेमोरी, बातचीत का इतिहास, ज्ञान आधार, कोड, फ़ाइलें, संदेश, शेड्यूल और ऐप जोड़ना। मेमोरी और ज्ञान आधार की खोज (memory_search, memory_get, search_knowledge) हमेशा दिखती है, इस सूची में चाहे जो हो। खाली सूची इस कोर को वापस ले आती है।
AIHUMMER_TOOL_SEARCH_MIN_POOL_TOKENS
टूल की लेज़ी लोडिंग: छिपे टूल का न्यूनतम आकार (टोकन)
int 0…1000000
4000
तुरंत
टूल तभी छिपाएँ जब कोर के बाहर की स्कीमा कुल मिलाकर कम से कम इतने टोकन की हों (प्रत्येक लगभग 4 अक्षर)। इससे कम होने पर सभी टूल सीधे दिखाए जाते हैं: टूल खोजने के लिए मॉडल को एक अतिरिक्त कॉल स्कीमा दिखाने से अधिक महँगी पड़ती है।
AIHUMMER_TOOL_SEARCH_THRESHOLD
आलसी टूल लोडिंग: स्थगित करने के लिए न्यूनतम टूल
int 0…1000
12
तुरंत
केवल तभी स्थगित करें जब एजेंट के प्रोफ़ाइल फ़िल्टर में इससे अधिक टूल बचे हों।
Agent · Reasoning
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_AGENT_BEST_OF_N
N में से सर्वश्रेष्ठ: विकल्पों की संख्या
int 0…8
0
तुरंत
एजेंट इतने उत्तर विकल्प तैयार करता है और सबसे अच्छा रखता है। 0 या 1 — बंद, 2 से — चालू। हर विकल्प एक अलग उत्तर जितना खर्च करता है।
AIHUMMER_AGENT_DEBATE_JUDGE_PROMPT
बहस: जज प्रॉम्प्ट (ओवरराइड)
text
—
तुरंत
डिबेट जज प्रॉम्प्ट (रिक्त = बिल्ट-इन) को ओवरराइड करता है।
AIHUMMER_AGENT_DEBATE_N
बहस: उत्तर विकल्पों की संख्या
int 0…8
0
तुरंत
एजेंट इतने उत्तर विकल्प तैयार करता है, उनकी आपस में तुलना करता है और सबसे अच्छा देता है। 0 या 1 — बंद, 2 से — चालू। हर विकल्प एक अलग उत्तर जितना खर्च करता है।
AIHUMMER_AGENT_DEBATE_PROMPT
बहस: उम्मीदवार का संकेत (ओवरराइड)
text
—
तुरंत
वाद-विवाद उम्मीदवार के संकेत को ओवरराइड करता है (रिक्त = अंतर्निहित)।
AIHUMMER_AGENT_DEBATE_ROUNDS
बहस: दौर
int 1…10
1
तुरंत
उम्मीदवार पैनल के लिए बहस दौर की संख्या।
AIHUMMER_AGENT_JUDGE_PROMPT
बेस्ट-ऑफ-एन जज प्रॉम्प्ट (ओवरराइड)
text
—
तुरंत
बेस्ट-ऑफ-एन जज प्रॉम्प्ट (रिक्त = अंतर्निहित) को ओवरराइड करता है।
AIHUMMER_AGENT_PLAN_PROMPT
प्लानर प्रॉम्प्ट (ओवरराइड)
text
—
तुरंत
प्लानर प्रॉम्प्ट को ओवरराइड करता है (रिक्त = अंतर्निहित)।
AIHUMMER_AGENT_PLAN_STEPS
योजनाकार-निष्पादक: अधिकतम योजना चरण (0=बंद)
int 0…32
0
तुरंत
⟩0 एक अलग प्लानर→निष्पादक→सिंथेसिस पास चलाता है (जटिल बहु-चरणीय कार्यों के लिए अच्छा)। 0 अक्षम करता है. विशिष्ट 4-8.
AIHUMMER_AGENT_PLAN_STEP_ITERS
प्लानर: प्रति चरण टूल पुनरावृत्ति (0=डिफ़ॉल्ट)
int 0…64
0
तुरंत
प्रति योजना चरण में टूल-कॉलिंग पुनरावृत्तियों को कैप करता है। 0 = अंतर्निहित डिफ़ॉल्ट (4)।
AIHUMMER_AGENT_REFLECT
आत्म-आलोचना पास
bool
0
तुरंत
अंतिम उत्तर से पहले एक प्रतिबिंब/आत्म-आलोचना पास जोड़ता है।
AIHUMMER_AGENT_REFLECT_PROMPT
प्रतिबिंब संकेत (ओवरराइड)
text
—
तुरंत
आत्म-आलोचना संकेत को ओवरराइड करता है (रिक्त = अंतर्निहित)।
AIHUMMER_AGENT_SELF_HEAL
स्वयं-उपचार उपकरण-त्रुटि पुनः प्रयास (0=बंद)
int 0…10
0
तुरंत
⟩0 इस सीमा तक, सुधारात्मक संकेत के साथ विफल टूल कॉल का पुन: प्रयास करता है।
डिफ़ॉल्ट उत्तर भाषा/स्थान संकेत, उदा. आरयू-आरयू. व्यक्तित्व/संचालक निर्देश ओवरराइड।
AIHUMMER_TIMEZONE
समयक्षेत्र
text
UTC
तुरंत
एजेंट की वर्तमान तारीख और बिना अपने समयक्षेत्र वाली अनुसूचियों के लिए IANA समयक्षेत्र, जैसे Europe/Moscow। डिफ़ॉल्ट UTC।
Channels
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_CHANNEL_FAILURE_NOTICE
उत्तर विफल होने पर व्यक्ति को बताएँ
enum: always \\| once \\| off
always
तुरंत
एजेंट उत्तर न दे पाए तो चैनल (Telegram आदि) में व्यक्ति को क्या मिलता है: «हर बार» — उसकी भाषा में छोटा संदेश; «4 घंटे में अधिकतम एक बार» — 4 घंटे में प्रति बातचीत एक संदेश; «न बताएँ» — कुछ नहीं। संदेश में त्रुटि कोड या प्रदाता के नाम नहीं होते; विवरण आप «सत्र» और सूचनाओं में देखते हैं।
AIHUMMER_CHANNEL_FAILURE_TEXT_BLOCKED
विफलता संदेश: इंस्टेंस निलंबित है
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_BUDGET
विफलता संदेश: मालिक का बजट समाप्त हो गया
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_BUSY
विफलता संदेश: गेटवे पर अधिक भार है
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_CONFIG
विफलता संदेश: मॉडल कनेक्शन को मालिक की ज़रूरत है
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_FAILED
विफलता संदेश: कोई अन्य विफलता
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_QUOTA
विफलता संदेश: मॉडल की उपयोग सीमा समाप्त हो गई
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_STEP_LIMIT
विफलता संदेश: काम एक उत्तर में पूरा नहीं हुआ
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_TOO_LONG
विफलता संदेश: बातचीत मॉडल के लिए बहुत लंबी है
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CHANNEL_FAILURE_TEXT_UNAVAILABLE
विफलता संदेश: मॉडल अस्थायी रूप से उपलब्ध नहीं है
text
—
तुरंत
खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है।
AIHUMMER_CONFIDENTIAL_PERSONA
गोपनीय वेब व्यक्तित्व
bool
0
तुरंत
चालू होने पर, वेब-चैट एजेंट अपने व्यक्तित्व/पहचान विवरण का खुलासा नहीं करेगा या जारी नहीं रखेगा और कार्य के उत्तर हाथ में रखेगा - इसे गुमनाम या गोपनीयता-संवेदनशील वेब परिनियोजन के लिए उपयोग करें। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_INBOUND_COALESCE_MS
संदेश समूहन विंडो (मि.से.)
int
500
तुरंत
एक व्यक्ति द्वारा एक ही चैट में लगातार भेजे गए कई संदेशों (छोटे संदेश, फ़ोटो एल्बम, त्वरित सुधार) को एक ही उत्तर मिलता है, यदि उनके बीच का विराम इस विंडो से छोटा हो। उत्तर तैयार होते समय आए संदेशों का उत्तर उसके तुरंत बाद दिया जाता है, कभी समानांतर नहीं। डिफ़ॉल्ट 500 मि.से.; 0 = अलग-अलग संदेशों के बीच कोई प्रतीक्षा नहीं; फ़ोटो एल्बम फिर भी एकत्र किया जाता है (3 से. तक के विराम, अधिकतम 20 से.) ताकि उसे एक ही उत्तर मिले। संदेशों को जोड़ना Telegram में काम करता है; Slack, WhatsApp, VK, ईमेल और अन्य कनेक्टर जो हर संदेश के उत्तर की प्रतीक्षा करते हैं (और /v1/inbound/generic के ज़रिए इंटीग्रेशन), हर संदेश का अलग उत्तर पाते हैं — फिर भी एक-एक करके, क्रम से। तुरंत लागू होता है।
AIHUMMER_INBOUND_EDIT_MODE
जब कोई व्यक्ति उत्तर दिए जा चुके संदेश को संपादित करे
enum: correct \\| history
correct
तुरंत
correct — बॉट यह जानते हुए फिर से उत्तर देता है कि यह सुधार है («पहले / अब»); history — संपादन केवल बातचीत का इतिहास सुधारता है, नया उत्तर नहीं (टाइपो के लिए सुविधाजनक)। जिस संदेश का बॉट ने अभी उत्तर नहीं दिया, उसका संपादन हमेशा बस उसका पाठ बदल देता है। वहाँ काम करता है जहाँ चैनल संपादनों की सूचना देता है (Telegram)। तुरंत लागू होता है।
AIHUMMER_INBOUND_QUEUE_MODE
एजेंट के काम करते समय लिखे गए संदेश
enum: steer \\| collect \\| followup
steer
तुरंत
जब एजेंट अभी उत्तर तैयार कर रहा हो (खोज रहा हो, टूल चला रहा हो) तब वही व्यक्ति जो संदेश भेजता है, उसका क्या होता है: steer (डिफ़ॉल्ट) — एजेंट उसे अपने अगले कदम से पहले देखता है और उसी उत्तर में ध्यान में रखता है; collect — उसका जवाब अगले उत्तर में दिया जाता है। followup — ऐसे हर संदेश को बारी-बारी से अपना अलग उत्तर मिलता है। फ़ोटो, फ़ाइलें, किसी संदेश के जवाब और फ़ॉरवर्ड हमेशा अगले उत्तर की प्रतीक्षा करते हैं। तुरंत लागू होता है।
AIHUMMER_INBOUND_REQUIRE_BINDING
केवल प्रावधानित उपयोगकर्ताओं को उत्तर दें
bool
true
तुरंत
सही = बॉट किसी भी चैनल प्रेषक को अनदेखा करता है जो NOT एक प्रावधानित AiHummer उपयोगकर्ता (भूमिका बंधन वाला उपयोगकर्ता) है - यादृच्छिक चैट सदस्यों और अतिथि आमंत्रणों को कोई उत्तर नहीं मिलता है। गलत (डिफ़ॉल्ट) = सभी को उत्तर दें।
Integrations
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_A2A_PUBLISH
Agent2Agent (A2A) पर एजेंट प्रकाशित करें
bool
0
पुनः आरंभ के बाद
एजेंट को A2A सर्वर (एजेंट कार्ड + POST /a2a/message) के रूप में प्रकाशित करें। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
AIHUMMER_MCP_EXPORT_TOOLS
बाहरी सहायकों के लिए खुले टूल
multiselect
—
पुनः आरंभ के बाद
बाह्य MCP क्लाइंट के लिए अनुमत टूल नामों की एक स्पष्ट सूची, अल्पविराम द्वारा अलग की गई। खाली = कोई उपकरण प्रकाशित न करें। खतरनाक होस्ट-स्तरीय कक्षाएं सूचीबद्ध होने पर भी अंतर्निहित नीति द्वारा अतिरिक्त रूप से प्रतिबंधित हैं। प्रारंभ में/पुनः आरंभ होने पर लागू होता है।
AIHUMMER_MCP_PUBLISH
MCP पर टूल प्रकाशित करें
bool
0
पुनः आरंभ के बाद
बाहरी सहायकों (जैसे Claude Desktop) को आपके एजेंटों के टूल इस्तेमाल करने देता है। कौन-से टूल खोलने हैं, यह पास की सेटिंग में चुना जाता है: सूची खाली रहने तक कोई नहीं खुलता।
AIHUMMER_MODULE_CPU_QUOTA
प्लगइन CPU सीमा (प्रत्येक के लिए)
text
75%
तुरंत
हर प्लगइन प्रोसेसर का कितना हिस्सा ले सकता है (systemd CPUQuota): 75% एक कोर का तीन-चौथाई है, 150% डेढ़ कोर। नया मान प्लगइन को उसकी अगली इंस्टॉलेशन, अपडेट या सेटिंग्स सहेजने पर मिलता है; तब तक चल रहे प्लगइन पुरानी सीमा पर रहते हैं।
AIHUMMER_MODULE_MEMORY_MAX
प्लगइन मेमोरी सीमा (प्रत्येक के लिए)
text
512M
तुरंत
हर प्लगइन कितनी मेमोरी ले सकता है (systemd MemoryMax): 512M, 1G या 2048M जैसा आकार (कम से कम 64M), या बिना सीमा के लिए infinity। सीमा पार करने वाले प्लगइन को सिस्टम रोक देता है। नया मान प्लगइन को उसकी अगली इंस्टॉलेशन, अपडेट या सेटिंग्स सहेजने पर मिलता है; तब तक चल रहे प्लगइन पुरानी सीमा पर रहते हैं।
Knowledge connectors
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_KB_SYNC_INTERVAL
ज्ञानकोष को स्रोतों से कितनी बार अपडेट करें
text
—
तुरंत
सर्वर जुड़े ज्ञानकोष स्रोतों से बदलाव खुद कितनी बार लेता है। उदाहरण: 30m — हर 30 मिनट, 6h — हर 6 घंटे। खाली या 0 — केवल हाथ से। दोबारा लोड करने से डुप्लिकेट नहीं बनते। Slack निर्यात हाथ से अपलोड किया जाता है।
LLM
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_AUX_FALLBACK_MODELS
सेवा कार्य: बैकअप मॉडल
list
—
तुरंत
अल्पविराम से अलग मॉडल — सेवा मॉडल विफल होने (कोटा, खराबी) पर क्रम से आज़माए जाते हैं। सारांश न खोए, इसलिए अंत में हमेशा मुख्य मॉडल आज़माया जाता है। हर बदलाव लॉग में दर्ज होता है। तुरंत लागू होता है।
AIHUMMER_AUX_MODEL
सेवा कार्यों के लिए मॉडल (सारांश, नोट्स, शीर्षक)
text
—
तुरंत
पृष्ठभूमि सेवा कार्यों के लिए मॉडल: पुराने इतिहास को सारांश में समेटना, संक्षेपण से पहले स्मृति नोट, बातचीत के शीर्षक, तथ्य निकालना, खोज प्रश्नों को दोबारा लिखना और अनुवाद। खाली = स्वचालित: उसी प्रदाता का सस्ता मॉडल (Claude → claude-haiku-4-5, Codex → gpt-…-luna/mini); ऐसा न हो तो मुख्य मॉडल। “main” = हमेशा मुख्य मॉडल। तुरंत लागू होता है।
AIHUMMER_CASCADE_MIN_CHARS
कैस्केड: बढ़ाने के लिए न्यूनतम वर्ण
int
0
तुरंत
अनुरोध-लंबाई सीमा (अक्षर) जिस पर मजबूत कैस्केड मॉडल शुरू होता है। 0 = डिफ़ॉल्ट।
AIHUMMER_CASCADE_STRONG_MODEL
कैस्केड: मजबूत फ़ॉलबैक मॉडल
text
—
तुरंत
लंबे/जटिल अनुरोधों के लिए कैस्केड करने के लिए मॉडल (रिक्त = बंद)।
AIHUMMER_CLAUDE_AUTH_URL
Claude सदस्यता: साइन-इन पेज का पता
text
—
तुरंत
वह पेज जहाँ आप Claude सदस्यता जोड़ने की अनुमति देते हैं। खाली — मानक पता; केवल तभी बदलें जब सहायता टीम कहे।
AIHUMMER_CLAUDE_CLIENT_ID
Claude सदस्यता: OAuth क्लाइंट आईडी
text
—
तुरंत
Claude सदस्यता से साइन इन के लिए ऐप पहचानकर्ता। खाली — मानक; केवल तभी बदलें जब सहायता टीम कहे।
AIHUMMER_CLAUDE_EFFORT
Claude: सोच की गहराई
enum: low \\| medium \\| high \\| xhigh \\| max
medium
तुरंत
जब एजेंट इसे तय नहीं करता, तब Claude मॉडल उत्तर देने से पहले कितनी गहराई से सोचते हैं। अधिक गहराई कठिन कार्यों पर अधिक सटीक है, लेकिन धीमी है और अधिक कोटा खर्च करती है; कम गहराई तेज़ और सस्ती है। जो मॉडल चुने गए स्तर को नहीं जानता, उसे निकटतम निचला स्तर मिलता है; Haiku 4.5 और पुराने मॉडल सोच का समर्थन नहीं करते। एजेंट पर तय की गई गहराई को प्राथमिकता मिलती है। अगले चरण से लागू होता है।
AIHUMMER_CLAUDE_MAX_TOKENS
Claude: उत्तर की अधिकतम लंबाई (टोकन)
int
16000
तुरंत
एक Claude उत्तर कितने टोकन ले सकता है — सदस्यता और कुंजी दोनों से। मॉडल का सोचना भी इसी सीमा में गिना जाता है: बहुत कम मान उत्तर को बीच में काट देता है या खाली उत्तर देता है। एजेंट की अपनी उत्तर-लंबाई हो तो वही लागू होती है।
AIHUMMER_CLAUDE_REDIRECT_URI
Claude सदस्यता: यूआरआई रीडायरेक्ट करें
text
—
तुरंत
आपूर्तिकर्ता के पास पंजीकृत वापसी पता। इसके पक्ष में जो कॉन्फ़िगर किया गया है उससे मेल खाना चाहिए, अन्यथा कोड एक्सचेंज अस्वीकार कर दिया जाता है।
AIHUMMER_CLAUDE_TOKEN_URL
Claude सदस्यता: पहुँच पता
text
—
तुरंत
वह पता जहाँ से सर्वर Claude सदस्यता की पहुँच लेता और नवीनीकृत करता है। खाली — मानक पता; केवल तभी बदलें जब सहायता टीम कहे।
AIHUMMER_CODEX_BASE_URL
कोडेक्स आधार URL
text
—
आंशिक रूप से पुनः आरंभ के बाद
कोडेक्स (चैटजीपीटी सदस्यता) परिवहन का आधार। स्टार्टअप पर/पुनः आरंभ के बाद लागू किया गया।
AIHUMMER_CODEX_MAX_OUTPUT_TOKENS
अधिकतम आउटपुट टोकन (0 = कोई सीमा नहीं)
int
0
तुरंत
चैट टर्न के लिए max_output_tokens कैप। 0 = कोई सीमा नहीं. तर्क मॉडल पर तर्क टोकन भी इस बजट के विरुद्ध गिने जाते हैं, इसलिए बहुत छोटा मान एक खाली ‘अपूर्ण: max_output_tokens’ उत्तर देता है। तुरंत लागू (कोई पुनरारंभ नहीं)।
AIHUMMER_CODEX_MODEL
मॉडल आईडी (कोडेक्स / gpt-5.5 ट्रांसपोर्ट)
text
gpt-5.5
आंशिक रूप से पुनः आरंभ के बाद
प्राथमिक Codex/ChatGPT ट्रांसपोर्ट की मॉडल आईडी (उदाहरण के लिए gpt-5.5, gpt-5.5-codex)। स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है।
AIHUMMER_CODEX_REASONING_EFFORT
तर्क करने का प्रयास
enum: none \\| low \\| medium \\| high \\| xhigh
medium
तुरंत
एजेंट में सेट न होने पर ChatGPT (Codex) मॉडल उत्तर से पहले कितनी गहराई से सोचे। डिफ़ॉल्ट — «मध्यम»। अधिक — सटीक, पर धीमा और महँगा।
AIHUMMER_LLM_CALL_TIMEOUT_S
प्रति-कॉल टाइमआउट (सेकंड)
int
120
तुरंत
एक अनुरोध पर मॉडल के उत्तर का कितने सेकंड इंतज़ार करें। मॉडल इससे अधिक चुप रहे तो अनुरोध रोक दिया जाता है और उत्तर सूची के अगले मॉडल को जाता है। Claude के लिए पूरे उत्तर नहीं, उत्तर-धारा में विराम गिना जाता है: लंबा पर चलता उत्तर नहीं कटता। 0 — कोई सीमा नहीं।
AIHUMMER_LLM_FALLBACK_MODELS
बैकअप मॉडल (सभी एजेंटों के लिए)
text
auto
तुरंत
जब मुख्य मॉडल और बाकी प्रदाता विफल हों (उपयोग सीमा समाप्त, खराबी, बहुत अधिक अनुरोध), तब कौन जवाब देगा। auto — अंतिम विकल्प के रूप में हर प्रदाता का सस्ता मॉडल (Claude: claude-haiku-4-5, Codex: gpt-…-luna/mini); अल्पविराम से अलग सूची — आपका अपना क्रम, हर मॉडल अपने निर्माता के प्रदाताओं के पास जाता है; off — कोई बैकअप मॉडल नहीं। एजेंट का अपना बैकअप मॉडल प्राथमिक है। तुरंत लागू होता है।
AIHUMMER_LLM_GATEWAY_URL
LLM गेटवे URL
text
—
आंशिक रूप से पुनः आरंभ के बाद
OpenAI-संगत मॉडल एंडपॉइंट का बेस URL एजेंट कॉल करता है (आपका स्थानीय llama.cpp/vLLM/Ollama सर्वर या एक होस्टेड गेटवे)। प्रदाता के डिफ़ॉल्ट समापन बिंदु का उपयोग करने के लिए खाली छोड़ दें।
AIHUMMER_LLM_MODEL
LLM मॉडल
text
—
आंशिक रूप से पुनः आरंभ के बाद
प्रत्येक मोड़ पर प्रदाता को मॉडल नाम/आईडी भेजा जाता है (वह मॉडल जो आपका एंडपॉइंट कार्य करता है)। उस मॉडल से मेल खाना चाहिए जो समापन बिंदु वास्तव में उजागर करता है।
AIHUMMER_LLM_PAUSE_AUTH_MIN
क्रेडेंशियल अस्वीकार होने के बाद विराम, मिनट
int
10
तुरंत
क्रेडेंशियल अस्वीकार करने वाले प्रदाता से कितने मिनट तक न पूछा जाए। हर दोहराव विराम को दोगुना करता है, पर पहले के छह गुना से अधिक नहीं। सफल कनेक्शन जाँच या «अभी फिर शुरू करें» बटन प्रदाता को तुरंत लौटा देता है। अगली विफलता से लागू होता है।
AIHUMMER_LLM_PAUSE_MODEL_MIN
प्रदाता द्वारा न दिए जाने वाले मॉडल का विराम, मिनट
int
60
तुरंत
जिस मॉडल के बारे में प्रदाता ने कहा कि वह उसे नहीं देता, उसे कितने मिनट तक प्रदाता को न दिया जाए; उसके अन्य मॉडलों से सामान्य रूप से पूछा जाता है। अगली विफलता से लागू होता है।
AIHUMMER_LLM_PAUSE_QUOTA_MIN
सीमा समाप्त होने के बाद विराम, मिनट
int
300
तुरंत
जब उपयोग सीमा समाप्त हो जाए और प्रदाता रीसेट का समय न बताए, तो कितने मिनट तक मॉडल से (या खाते की सीमा समाप्त होने पर — Codex, OpenAI कुंजी, भुगतान — पूरे खाते से) न पूछा जाए। हर दोहराव विराम को दोगुना करता है, पर एक दिन से अधिक नहीं। प्रदाता द्वारा बताया गया समय प्राथमिक है। अगली विफलता से लागू होता है।
AIHUMMER_LLM_PAUSE_SHORT_S
गड़बड़ी के बाद प्रदाता का विराम, सेकंड
int
30
तुरंत
गड़बड़ी, कनेक्शन टूटने या «बहुत अधिक अनुरोध» के बाद कितने सेकंड तक प्रदाता से न पूछा जाए। लगातार दूसरी विफलता विराम को दोगुना करती है, तीसरी और आगे की दस गुना। यदि प्रदाता स्वयं समय बताए, तो उसी की प्रतीक्षा होती है। अगली विफलता से लागू होता है।
AIHUMMER_LLM_PROVIDER
LLM प्रदाता
text
—
आंशिक रूप से पुनः आरंभ के बाद
किस मॉडल बैकएंड का उपयोग करना है (एक OpenAI-संगत एंडपॉइंट या कोडेक्स/चैटजीपीटी-सब्सक्रिप्शन ट्रांसपोर्ट)। यह तय करता है कि अनुरोध कैसे भेजे जाएं और प्रमाणित किए जाएं।
AIHUMMER_LLM_RETRIES
LLM क्षणिक त्रुटि पर पुनः प्रयास करता है
int
3
तुरंत
एक क्षणिक त्रुटि पर LLM अनुरोध पुनः प्रयास की संख्या।
AIHUMMER_LLM_TEMPERATURE
तापमान
text
—
तुरंत
एजेंट में सेट न होने पर मॉडल के उत्तर कितने विविध हों (0–2): कम — अधिक सटीक और पूर्वानुमेय, अधिक — ज़्यादा जीवंत। खाली — मॉडल खुद तय करता है। सोचने वाले मॉडल (ChatGPT/Codex, Claude पीढ़ी 5) इसे स्वीकार नहीं करते — उनके लिए फ़ील्ड खाली छोड़ें।
AIHUMMER_LLM_TOP_P
टॉप-पी (नाभिक नमूनाकरण)
text
—
तुरंत
एजेंट में सेट न होने पर उत्तरों को विविध बनाने का एक और तरीका (0–1)। खाली — मॉडल खुद तय करता है। आम तौर पर एक ही सेट करते हैं: या तापमान, या यह; सोचने वाले मॉडल इसे स्वीकार नहीं करते।
AIHUMMER_MODEL_GUARD_INTERVAL_MIN
एजेंट मॉडल जाँच: अंतराल, मिनट
int
60
तुरंत
कितनी बार जाँचना है कि प्रत्येक एजेंट का मॉडल किसी सक्षम प्रदाता द्वारा दिया जाता है। एजेंट का मॉडल कभी नहीं बदला जाता: जब तक कोई उसे नहीं देता, उत्तर क्रम का पहला ऐसा मॉडल उत्तर देता है जो विराम पर नहीं है, और एक सूचना एजेंटों के नाम बताती है — और एक और, जब उनका मॉडल लौट आता है। गेटवे के शुरू होने पर जाँच सदैव होती है, और 0 केवल दोहराव बंद करता है। नया अंतराल एक मिनट के भीतर लागू होता है।
AIHUMMER_OPENAI_API
OpenAI API शैली (चैट | प्रतिक्रियाएँ)
enum: \\| chat \\| responses
—
आंशिक रूप से पुनः आरंभ के बाद
चैट = /चैट/पूर्णता, प्रतिक्रियाएं = /प्रतिक्रियाएं। रिक्त = स्वतः/डिफ़ॉल्ट. स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है।
AIHUMMER_OPENAI_API_KEY
नेटिव OpenAI API कुंजी (परिनियोजन डिफ़ॉल्ट)
text
—
आंशिक रूप से पुनः आरंभ के बाद
मूल OpenAI लूप के लिए आपकी OpenAI खाता कुंजी (यदि आप डिफ़ॉल्ट प्रदाता के रूप में OpenAI का उपयोग करते हैं)। मॉडल पृष्ठ पर प्रति-कार्यस्थान BYOK के साथ भ्रमित न हों। स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है।
AIHUMMER_OPENAI_BASE_URL
मूल OpenAI आधार URL
text
—
पुनः आरंभ के बाद
OpenAI-संगत का आधार API (उदाहरण के लिए https://api.openai.com/v1). स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है।
AIHUMMER_OPENAI_MODEL
नेटिव ओपनएआई मॉडल
text
—
पुनः आरंभ के बाद
मूल OpenAI लूप के लिए मॉडल (जब AIHUMMER_OPENAI_API_KEY पर लागू होता है)। स्टार्टअप/पुनरारंभ के बाद।
AIHUMMER_ROUTER_COMPLEX_MODEL
राउटर: जटिल मोड़ के लिए मॉडल
text
—
तुरंत
जिस एजेंट का अपना मॉडल नहीं है, उसके जटिल अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है।
AIHUMMER_ROUTER_SIMPLE_MODEL
राउटर: सरल मोड़ के लिए मॉडल
text
—
तुरंत
जिस एजेंट का अपना मॉडल नहीं है, उसके सरल अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है।
AIHUMMER_ROUTER_STANDARD_MODEL
राउटर: मानक मोड़ के लिए मॉडल
text
—
तुरंत
जिस एजेंट का अपना मॉडल नहीं है, उसके सामान्य अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है।
AIHUMMER_SUBSCRIPTION_QUOTA_REFRESH_MIN
सदस्यता कोटा: जाँच अवधि, मिनट
int
15
तुरंत
पैनल ChatGPT (Codex) से सदस्यता कोटा विंडो कितनी बार पूछता है: प्रति अवधि अधिकतम एक बार, 5 मिनट से अधिक बार नहीं, और केवल तब जब कोटा खुले हों; बीच में सहेजी गई प्रति दिखाई जाती है। Claude से कभी नहीं पूछा जाता: उसकी सीमाएँ हमारा अनुमान हैं। कोटा अगली बार खोलने पर लागू होता है।
Media
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_DEEPGRAM_API_KEY
डीपग्राम API कुंजी
text
—
तुरंत
Deepgram सेवा की कुंजी — ज़रूरी है अगर वॉइस संदेश Deepgram पहचानता है। खाली हो तो पास की सेटिंग की साझा वाक्-पहचान कुंजी ली जाती है। तुरंत लागू होता है।
AIHUMMER_DEEPGRAM_DETECT_LANGUAGE
Deepgram भाषा पहचान
bool
0
तुरंत
तय भाषा भेजने के बजाय भाषा पहचानें। तुरंत लागू होता है।
AIHUMMER_DEEPGRAM_MODEL
डीपग्राम मॉडल
text
nova-2
तुरंत
Deepgram मॉडल (जैसे nova-2, nova-3, base)। कुंजी के लिए प्रोजेक्ट की पहुंच पर निर्भर करता है। तुरंत लागू होता है।
AIHUMMER_DEEPGRAM_PUNCTUATE
Deepgram विराम चिह्न
bool
1
तुरंत
विराम चिह्न और बड़े अक्षर जोड़ें। तुरंत लागू होता है।
AIHUMMER_DEEPGRAM_SMART_FORMAT
Deepgram स्मार्ट फ़ॉर्मैटिंग
bool
1
तुरंत
पहचानी गई संख्याओं और तारीखों का प्रारूप सुधारें। तुरंत लागू होता है।
image_generate के लिए मॉडल (डिफ़ॉल्ट gpt-image-2)।
AIHUMMER_MEDIA_MAX_UPLOAD_MB
मीडिया अधिकतम अपलोड आकार (एमबी)
int
256
तुरंत
एक बार में अपलोड की जा सकने वाली सबसे बड़ी फ़ाइल (फ़ोटो, वॉइस संदेश, वीडियो), मेगाबाइट में। सर्वर डिस्क को भरने से बचाता है। डिफ़ॉल्ट 256। तुरंत लागू होता है।
AIHUMMER_SIDECAR_STT
इस सर्वर पर वाक् पहचान (faster-whisper)
bool
0
तुरंत
स्थानीय वाक् पहचान (faster-whisper)। पैकेज में शामिल नहीं: हस्ताक्षरित ऐड-ऑन डाउनलोड सक्षम करें (पायथन के सभी संस्करणों के लिए ~ 620 MiB) और होस्ट पर सेवा स्थापित करें। 🔴 ऐड-ऑन एक अलग विक्रेता निर्णय द्वारा प्रकाशित किया जाता है (इसके पैकेज जीपीएल के तहत एफएफएमपीईजी ले जाते हैं); यदि इसे आपकी रिलीज़ के लिए प्रकाशित नहीं किया गया है, तो यह इसके बारे में ईमानदार होगा और कुछ भी नहीं तोड़ेगा। क्लाउड योजना: पहचान प्रदाता द्वारा कॉन्फ़िगर की गई है।
AIHUMMER_SIDECAR_TTS
उत्तरों की आवाज़ (edge-tts)
bool
0
तुरंत
वाक् संश्लेषण (edge-tts, आवाजें Microsoft Edge)। पैकेज में शामिल नहीं है: सक्षम करने से हस्ताक्षरित ऐड-ऑन (~26 MiB) डाउनलोड होता है और होस्ट पर सेवा स्थापित होती है। वोटों के लिए संश्लेषण स्वयं ऑनलाइन हो जाता है - यहां “ऑफ़लाइन” का तात्पर्य पैकेज को स्थापित करने से है, काम करने से नहीं।
AIHUMMER_STT_API_KEY
STT API कुंजी (वैकल्पिक)
text
—
तुरंत
वाक्-पहचान सेवा की एक्सेस कुंजी, अगर वह माँगती है। इस सर्वर की सेवा के लिए इसे इंस्टॉलर सेट करता है — बदलने की ज़रूरत नहीं। तुरंत लागू होता है।
AIHUMMER_STT_ENGINE
STT इंजन
enum: auto \\| faster-whisper \\| deepgram \\| codex \\| off
auto
तुरंत
वॉइस संदेशों को किससे लिखित रूप में बदला जाए। ऑटो (डिफ़ॉल्ट): अगर Deepgram की कुंजी सेट है तो Deepgram, नहीं तो स्थानीय सेवा अगर वह इंस्टॉल है (ऊपर का स्विच), नहीं तो कुछ नहीं — और बॉट भेजने वाले को ईमानदारी से बताता है कि वह अभी सुन नहीं सकता। faster-whisper: स्थानीय सेवा या संगत बाहरी /v1/audio/transcriptions। deepgram: अपनी कुंजी के साथ क्लाउड Deepgram। codex: जुड़ी हुई ChatGPT सदस्यता (मॉडल → ChatGPT कनेक्ट करें), उसका कोटा खर्च होता है। off: लिखित रूप में न बदलें। तुरंत लागू होता है।
AIHUMMER_STT_LANGUAGE
STT भाषा
text
—
तुरंत
पहचान भाषा (BCP-47, उदाहरण के लिए ru/en)। deepgram इंजन (nova-2 मॉडल) द्वारा उपयोग की जाती है। रिक्त = स्वतः-पहचान/इंजन डिफ़ॉल्ट। तुरंत लागू होता है।
AIHUMMER_STT_MODEL
STT मॉडल
text
Systran/faster-whisper-small
तुरंत
तेज़-व्हिस्पर मॉडल (उदाहरण के लिए छोटा/मध्यम/बड़ा-v3 या सिस्ट्रान/तेज़-व्हिस्पर-⟨size⟩)। तुरंत लागू होता है।
AIHUMMER_TTS_API_KEY
TTS API कुंजी (edge-tts)
text
—
आंशिक रूप से पुनः आरंभ के बाद
आवाज़ सेवा की एक्सेस कुंजी। इंस्टॉलेशन के समय अपने-आप सेट होती है — बदलने की ज़रूरत नहीं।
AIHUMMER_TTS_ENABLED
पाठ-से-वाक् सक्षम
bool
1
आंशिक रूप से पुनः आरंभ के बाद
एजेंट को आवाज़ में उत्तर देने देता है। इसके लिए आवाज़ सेवा चाहिए — उसे ऊपर «अतिरिक्त सेवाएँ» अनुभाग में इंस्टॉल करें।
AIHUMMER_TTS_MODEL
TTS मॉडल
text
—
आंशिक रूप से पुनः आरंभ के बाद
एज-टीटीएस सेवा के लिए मॉडल नाम। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
डिफ़ॉल्ट एज-टीटीएस आवाज (बहुभाषी, रूसी सहित)। स्टार्टअप पर/पुनः आरंभ के बाद लागू किया गया।
AIHUMMER_VIDEO_API_KEY
वीडियो विश्लेषण API कुंजी
text
—
तुरंत
वीडियो विश्लेषण सेवा की एक्सेस कुंजी, अगर वह माँगती है। खाली — सेवा बिना कुंजी के उपयोग होती है।
Media · Voice
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_TTS_AUTO_REPLY
अपने आप ध्वनि में जवाब
enum: off \\| always \\| inbound \\| tagged
inbound
तुरंत
बंद, हमेशा, ऑडियो मिलने पर या स्पष्ट संकेत पर। हर बातचीत के लिए बदल सकते हैं।
AIHUMMER_TTS_MAX_CHARS
बोले जाने वाले जवाब की अक्षर सीमा
int
0
तुरंत
0: पूरा पाठ; 100–10000: बोले जाने वाले पाठ की सीमा। पूरा जवाब इतिहास में रहता है।
AIHUMMER_TTS_SUMMARIZE
लंबे ध्वनि जवाबों का सारांश
bool
1
तुरंत
लंबे जवाब का बोलने के लिए सारांश बनाएँ। विफल होने पर सीमा के भीतर शुरुआती भाग पढ़ें।
AIHUMMER_VOICE_AEC
इको रद्दीकरण (AEC)
bool
1
तुरंत
गूँज हटाता है: स्पीकर से एजेंट की अपनी आवाज़ माइक्रोफ़ोन में वापस नहीं जाती और बातचीत नहीं रोकती। केवल तभी बंद करें जब हेडसेट में आवाज़ विकृत लगे।
AIHUMMER_VOICE_AGC
ऑटो गेन नियंत्रण
bool
1
तुरंत
आवाज़ मोड में माइक्रोफ़ोन का स्वचालित गेन नियंत्रण (WebRTC autoGainControl) आवश्यक करें।
AIHUMMER_VOICE_BARGEIN_FRAMES
एजेंट को रोकना: कितनी देर बोलना होगा
int
5
तुरंत
एजेंट के चुप होकर सुनने के लिए कितना बोलना होगा (20 ms के फ़्रेम में)। डिफ़ॉल्ट 5 — लगभग 0.1 सेकंड।
AIHUMMER_VOICE_DUPLEX
लाइव फुल-डुप्लेक्स आवाज
bool
0
तुरंत
लाइव फुल-डुप्लेक्स मोड (स्ट्रीमिंग + VAD + बार्ज-इन) सक्षम करता है। तुरंत लागू होता है।
AIHUMMER_VOICE_NOISE_SUPPRESSION
शोर दमन
bool
1
तुरंत
आवाज़ मोड में माइक्रोफ़ोन से रिकॉर्डिंग के समय शोर दमन (WebRTC noiseSuppression) आवश्यक करें।
AIHUMMER_VOICE_VAD_THRESHOLD
आवाज़ संवेदनशीलता (0–1)
text
0.02
तुरंत
किस आवाज़ स्तर से ध्वनि को बोलना माना जाए। कम — अधिक संवेदनशील: एजेंट धीमी आवाज़ सुनेगा, पर आसपास का शोर भी। डिफ़ॉल्ट 0.02।
Memory
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_EMBEDDER_DIM
अर्थ-खोज मॉडल का आयाम
int
768
पुनः आरंभ के बाद
वेक्टर आयाम — मॉडल से मेल खाना चाहिए (बहुभाषी-e5-base=768, bge-m3=1024).
AIHUMMER_EMBEDDER_KEEPALIVE
एम्बेडर को जीवित रखें
text
5m
पुनः आरंभ के बाद
अंतिम अनुरोध के बाद अर्थ-खोज मॉडल कितनी देर लोड रहता है (केवल «अर्थ से» मोड में)। डिफ़ॉल्ट 5m — 5 मिनट: फिर मॉडल उतार दिया जाता है और मेमोरी व प्रोसेसर खाली करता है। हमेशा रखना (-1) अनुशंसित नहीं: अटका मॉडल दिनों तक एक प्रोसेसर कोर घेर सकता है। प्रारूप: 30s, 5m, 1h।
AIHUMMER_EMBEDDER_MODEL
अर्थ-खोज मॉडल
text
yxchia/multilingual-e5-base
पुनः आरंभ के बाद
वह मॉडल जो स्मृति में अर्थ से खोजने में मदद करता है। डिफ़ॉल्ट multilingual-e5-base रूसी समझता है, हल्का है और सामान्य प्रोसेसर पर तेज़ चलता है। GPU पर बेहतर गुणवत्ता के लिए bge-m3 उपयुक्त है, पर तब पास की आयाम सेटिंग में 1024 लिखें: संख्या मॉडल से मेल खानी चाहिए।
AIHUMMER_EMBEDDER_PASSAGE_PREFIX
एम्बेडर पैसेज उपसर्ग
text
—
पुनः आरंभ के बाद
संग्रहीत-दस्तावेज़ उपसर्ग को ओवरराइड करें (e5 मॉडल स्वचालित रूप से “पैसेज:”) का उपयोग करें। मॉडल नाम से स्वत: पता लगाने के लिए खाली छोड़ दें।
AIHUMMER_EMBEDDER_QUERY_PREFIX
एंबेडर क्वेरी उपसर्ग
text
—
पुनः आरंभ के बाद
पुनर्प्राप्ति-क्वेरी उपसर्ग को ओवरराइड करें (e5 मॉडल स्वचालित रूप से “क्वेरी:”) का उपयोग करते हैं। मॉडल नाम से स्वत: पता लगाने के लिए खाली छोड़ दें।
AIHUMMER_EMBEDDER_THREADS
एम्बेडर के प्रोसेसर थ्रेड
int 0…256
0
पुनः आरंभ के बाद
अर्थ से खोज वाला मॉडल एक अनुरोध के लिए प्रोसेसर के कितने थ्रेड लेता है। 0 — अपने आप: सर्वर के थ्रेड का आधा, पर कम से कम 2। सीमा के बिना कमज़ोर सर्वर पर ज्ञान आधार के वेक्टर दोबारा गिनना घंटों तक पूरा प्रोसेसर घेरे रखता था और एजेंटों के जवाब धीमे करता था। ज़्यादा — दोबारा गिनना तेज़, पर बोझ भारी।
AIHUMMER_MEMORY_AGENT_WRITES
एजेंट द्वारा स्वयं सहेजे गए तथ्य
enum: strangers \\| immediate \\| review
strangers
तुरंत
एजेंट जो खुद याद रखता है उसका क्या होता है — जैसे «याद रखो» अनुरोध पर। «सीधे स्मृति में; अजनबियों से — समीक्षा के लिए» (डिफ़ॉल्ट) — यदि मालिक या एजेंट के भरोसेमंद लोगों ने कहा हो तो सीधे स्मृति में; बाकी सभी से — समीक्षा के लिए। «सीधे स्मृति में» — एजेंट उसे तुरंत खोज लेगा। «समीक्षा के लिए» — पहले «स्मृति → समीक्षा» कतार में; उत्तरों में आपकी मंज़ूरी के बाद ही आता है। एजेंट कार्ड (स्मृति → सेटिंग्स) में अपना मोड चुना जा सकता है।
AIHUMMER_MEMORY_AUTOREPAIR
मेमोरी की स्वचालित मरम्मत
bool
1
तुरंत
स्व-जाँच के बाद मेमोरी की मरम्मत: डुप्लिकेट मिलाना, स्पष्ट विजेता वाले विरोधाभास बंद करना (किसी व्यक्ति की पुष्टि, बाद की घटना-तिथि, अधिक भरोसेमंद स्रोत), पुष्ट चिह्नित उन तथ्यों को उनके स्रोतों से दोबारा जाँचना जिनकी किसी व्यक्ति ने पुष्टि नहीं की (अपुष्ट समीक्षा में जाते हैं, कुछ भी हटाया नहीं जाता)। विवादित केवल कतार में जाता है। हर सुधार पूर्ववत बटन के साथ लॉग होता है; यदि दौर के बाद मेमोरी तथ्य बदतर ढूँढे, तो दौर खुद को वापस ले लेता है और आपको सूचना मिलती है। तुरंत लागू होता है, पुनः आरंभ की ज़रूरत नहीं।
AIHUMMER_MEMORY_CAPTURE
मेमोरी कैप्चर मोड
enum: auto \\| review \\| off
review
तुरंत
हर उत्तर के बाद बातचीत में एजेंट जो तथ्य खुद देखता है, उनका क्या करें। «समीक्षा के लिए» — «स्मृति → समीक्षा» कतार में: उत्तरों में वे आपकी मंज़ूरी के बाद ही आते हैं। «सीधे स्मृति में» — बिना जाँच: तेज़, पर ज़्यादा फालतू। «सहेजें नहीं» — बातचीत से तथ्य नहीं निकालना। अनुरोध पर एजेंट क्या याद रखे, यह अलग से सेट होता है।
AIHUMMER_MEMORY_CONTEXT_TIMEOUT
मेमोरी हाइड्रेशन टाइमआउट
text
3s
तुरंत
उत्तर शुरू करने से पहले एजेंट उपयुक्त यादें मिलने का कितनी देर इंतज़ार करता है। खोज समय पर न हो तो एजेंट अटकता नहीं, उनके बिना उत्तर देता है। उदाहरण: 2s — 2 सेकंड, 1500ms — 1.5 सेकंड। 0 — जितना चाहिए उतना इंतज़ार।
AIHUMMER_MEMORY_DIARY_BOOT
सत्र की शुरुआत में एजेंट की डायरी
bool
1
तुरंत
किसी भी चैनल पर सत्र की हर बारी में एजेंट के सामने आज और कल की उसकी डायरी रखें: पिछले सत्रों के नोट्स, रात का सारांश और एजेंट की अपनी प्रविष्टियाँ। केवल वर्तमान वार्ताकार से जुड़ी और साझा (आपकी, अपलोड की गई) प्रविष्टियाँ दिखाई जाती हैं — एक ग्राहक कभी दूसरे की प्रविष्टियाँ नहीं देखता। अधिकतम ~6000 अक्षर; बाकी एजेंट खुद पढ़ता है (memory_get)। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_DIARY_HOUR
रात के सारांश का समय (घंटा)
int
3
तुरंत
पिछले दिन का सारांश किस घंटे के बाद (0–23, इंस्टेंस के समय क्षेत्र के अनुसार) लिखा जाए। डिफ़ॉल्ट 3 — रात में, जब दिन की बातचीत खत्म हो जाती है। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_DIARY_NIGHTLY
एजेंट की डायरी में रात का दैनिक सारांश
bool
1
तुरंत
दिन में एक बार एजेंट की डायरी में पिछले दिन का सारांश लिखें — हर उस व्यक्ति के लिए अलग से जिससे उसने बात की (उस व्यक्ति के सभी चैनल एक साथ): क्या माँगा गया और क्या किया गया, सहमतियाँ, तारीखों वाले काम। हर एजेंट और व्यक्ति के लिए सेवा कार्यों वाले मॉडल की एक कॉल, हर 10 मिनट के एक रन में अधिकतम 3; छूटे हुए दिन एक सप्ताह पीछे तक पूरे किए जाते हैं। «याद मत रखो» वाली बातचीत छोड़ दी जाती है। मेमोरी कैप्चर बंद होने पर नहीं लिखा जाता। पिछले रन का परिणाम एजेंट कार्ड → मेमोरी → डायरी में दिखता है। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_DREAM_INTERVAL
ड्रीम पास अंतराल
string
1h
तुरंत
सेल्फ-मेंटेनिंग ड्रीम पास स्कैन कितनी बार सभी क्षेत्रों में विरोधाभासों के दावों की समीक्षा करता है (गो अवधि, उदाहरण के लिए 30 मिनट/1 घंटा/6 घंटा)। अक्षम करने के लिए 0 सेट करें। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_EXTRACT
LLM तथ्य निष्कर्षण
bool
1
तुरंत
कच्चे वाक्य अंशों को संग्रहीत करने के बजाय LLM (डिफ़ॉल्ट चालू) के माध्यम से सामान्यीकृत विषय/विधेय/वस्तु तथ्यों को निकालें - जो ग्राफ़/विरोधाभास/स्वप्न मशीनरी को सक्रिय करने के लिए आवश्यक है। प्रति कैप्चर किए गए संदेश में एक LLM कॉल जोड़ता है; कॉल को सेव करने के लिए निकल पड़ा। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_MEANING_TIMEOUT
अर्थ से खोज की समय सीमा
text
4s
तुरंत
स्मृति और ज्ञान आधार में खोज अर्थ से खोज के लिए कितनी देर प्रतीक्षा करती है। यदि अर्थ मॉडल व्यस्त है (जैसे आयात के बाद वेक्टर गिन रहा है) और समय पर उत्तर नहीं देता, तो एजेंट दसियों सेकंड प्रतीक्षा करने के बजाय शब्दों से मिला परिणाम टिप्पणी के साथ तुरंत पाता है। उदाहरण: 4s — 4 सेकंड, 1500ms — 1.5 सेकंड। 0 — जितनी ज़रूरत हो उतनी प्रतीक्षा। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_QUALITY_CHECK
मेमोरी की दैनिक स्व-जाँच
bool
1
तुरंत
दिन में एक बार मेमोरी अपने पुष्ट तथ्यों के बारे में खुद से जाँच-प्रश्न पूछती है (अधिकतम 60 तथ्य, हर दिन वही प्रश्न) और ऐसे प्रश्न भी जिनका उत्तर नहीं है, उन्हें मेमोरी खोज और स्वचालित स्मरण से गुज़ारती है और रिकॉल, प्रिसिज़न, MRR तथा गलत स्मरण मापती है। परिणाम और दिन-वार चार्ट: मेमोरी → मेमोरी की गुणवत्ता। नए तथ्यों के प्रश्न सेवा मॉडल एक बार लिखता है (वही जो बातचीत से तथ्य निकालता है; उसके बिना — टेम्पलेट से); परिणाम इंस्टेंस पर ही रहते हैं। तुरंत लागू होता है, पुनः आरंभ की ज़रूरत नहीं।
AIHUMMER_MEMORY_RECALL
स्वचालित मेमोरी स्मरण
enum: strong \\| always \\| off
strong
तुरंत
स्मृति में मिली चीज़ को उत्तर में अपने-आप जोड़ें या नहीं। «केवल मज़बूत मिलान» — तथ्य कम से कम दो ज़रूरी शब्दों में संदेश से मेल खाए; अभिवादन और «ok» पर स्मृति नहीं जुड़ती। «सब मिलता-जुलता» — जो कुछ भी मिला, और जुड़ी प्रविष्टियाँ: ज़्यादा फालतू। «न जोड़ें» — एजेंट ज़रूरत लगने पर खुद स्मृति में खोजता है।
AIHUMMER_MEMORY_RECALL_MAX
प्रति उत्तर तथ्य
int
5
तुरंत
एक उत्तर में जोड़े जाने वाले मेमोरी तथ्यों की अधिकतम संख्या (डिफ़ॉल्ट 5)। एक ही तथ्य के अलग-अलग रूप एक माने जाते हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_RECALL_MIN_SCORE
स्वचालित स्मरण के लिए न्यूनतम मिलान, %
int
10
तुरंत
किसी तथ्य को स्वचालित रूप से जोड़ने के लिए उसे संदेश के सार्थक शब्दों (दुर्लभता के अनुसार भारित) का कितना प्रतिशत कवर करना चाहिए। डिफ़ॉल्ट 10 — वास्तविक बातचीत पर समायोजित। अधिक = कम बार और अधिक सटीक, कम = अधिक बार और अधिक शोर। स्पष्ट memory_search खोज पर इसका असर नहीं होता। 0 = कोई सीमा नहीं: दो मेल खाते सार्थक शब्द काफ़ी हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_RECALL_MIN_SIMILARITY
स्वचालित समावेश के लिए न्यूनतम अर्थ-समानता, %
int
86
तुरंत
केवल अर्थ के आधार पर मेमोरी खोज (एम्बेडर) के लिए: स्वचालित रूप से जोड़े जाने के लिए कोई तथ्य संदेश से अर्थ में कितना निकट होना चाहिए, समानता प्रतिशत में। डिफ़ॉल्ट 86 — असली मेमोरी पर multilingual-e5-base मॉडल के लिए चुना गया: इससे नीचे लगभग हर संदेश में असंबंधित तथ्य जुड़ जाते हैं। अन्य मॉडल (जैसे bge-m3) समानता अलग तरह मापते हैं — एजेंट कार्ड में «मेमोरी से पूछें» से मान चुनें। 0 = कोई सीमा नहीं। स्पष्ट memory_search खोज पर इसका असर नहीं होता। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MEMORY_RETRIEVAL
मेमोरी पुनर्प्राप्ति मोड
enum: fulltext \\| embedding
fulltext
पुनः आरंभ के बाद
एजेंट स्मृति में ज़रूरी चीज़ कैसे खोजता है। «शब्दों से» — सामान्य टेक्स्ट खोज: तुरंत काम करती है और सर्वर पर भार नहीं डालती। «अर्थ से» — अर्थ में मिलती-जुलती चीज़ ढूँढती है, भले ही अलग शब्दों में कही हो, पर इसके लिए अर्थ-खोज मॉडल («अतिरिक्त सेवाएँ» अनुभाग) और प्रोसेसर पर उल्लेखनीय भार चाहिए।
AIHUMMER_QDRANT_API_KEY
Qdरेंट API कुंजी
text
—
पुनः आरंभ के बाद
Qdrant की API कुंजी, यदि वेक्टर भंडार को प्राधिकरण चाहिए। केवल तभी आवश्यक जब Qdrant का पता निर्धारित हो। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
AIHUMMER_QDRANT_URL
Qdvant URL (टिकाऊ वेक्टर स्टोर)
text
—
पुनः आरंभ के बाद
अर्थ-खोज के लिए Qdrant भंडार का पता। खाली — खोज डेटा मेमोरी में रहता है और सर्वर पुनः आरंभ होने पर खो जाता है; स्थायी उपयोग के लिए पता दें।
AIHUMMER_RAG_QUERY_EXPANSION
मॉडल से नॉलेज बेस के प्रश्न दोबारा लिखवाएँ
bool
0
तुरंत
नॉलेज बेस में खोजने से पहले सेवा कार्यों वाले मॉडल से प्रश्न के 3 वैकल्पिक रूप माँगें और सभी से खोजें। कभी-कभी अधिक मिलता है, पर यह हर खोज पर मॉडल को एक अतिरिक्त कॉल है (कोटा और देरी); मॉडल विफल हो तो केवल मूल शब्दों से खोजा जाता है, और विफलता लॉग व खोज परिणाम में दिखती है। डिफ़ॉल्ट रूप से बंद: शब्द पूर्ण-पाठ खोज से वैसे भी मिल जाते हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_RERANKER_URL
RAG रीरैंकर साइडकार URL
text
—
पुनः आरंभ के बाद
HTTP URL हाइब्रिड खोज को फिर से रैंक करने के लिए क्रॉस-एनकोडर साइडकार का। रिक्त = पुनः क्रमबद्ध करना। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
Moderation
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_MODERATION
इनपुट मॉडरेशन
bool
1
तुरंत
“off” jailbreak/prompt-injection के विरुद्ध अंतर्निहित गार्ड को अक्षम कर देता है। कोई अन्य मान = सक्षम। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
AIHUMMER_MODERATION_REFUSAL
मॉडरेशन इनकार संदेश
text
—
तुरंत
मॉडरेटर द्वारा अनुरोध ब्लॉक करने पर लौटाया जाने वाला इनकार पाठ (रिक्त = अंतर्निहित)। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं।
Network
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_OUTBOUND_PROXY_CUSTOM_URL
आउटबाउंड प्रॉक्सी: अपना पता
text
—
तुरंत
HTTPS प्रॉक्सी URL; HTTP केवल loopback पर, बिना पथ, क्वेरी या फ़्रैगमेंट के स्वीकार्य है। custom चुनने से पहले पता सहेजें। API में छिपाया जाता है; ऐप की सेटिंग में रखा जाता है।
AIHUMMER_OUTBOUND_PROXY_MODE
विदेशी मॉडल प्रदाताओं के लिए आउटबाउंड प्रॉक्सी
enum: auto \\| off \\| custom
auto
तुरंत
सर्वर विदेशी मॉडल प्रदाताओं तक कैसे पहुँचता है। «प्रदाता के अनुसार» — जैसा प्रदाता के खाते में सेट है; «सीधे, बिना प्रॉक्सी» — बिना बिचौलिये के; «अपने प्रॉक्सी से» — नीचे सहेजे पते से। यह काम करे या नहीं, यह हर प्रदाता के नियमों पर निर्भर है।
AIHUMMER_RUSSIAN_TRUSTED_EXTRA_HOSTS
रूस के डिजिटल विकास मंत्रालय की रूट के लिए .ru से बाहर के होस्ट
list
—
पुनः आरंभ के बाद
अल्पविराम द्वारा अलग किए गए होस्ट की सूची, जिन्हें रूसी डोमेन पर रूस के डिजिटल विकास मंत्रालय की जड़ों द्वारा जांचने की अनुमति है (.ru/.su/.рф - पहले से ही शामिल)। यदि रूस के डिजिटल विकास मंत्रालय प्रमाणपत्र वाला आपका नोड किसी भिन्न डोमेन पर रहता है तो इसकी आवश्यकता है। नाम या उपडोमेन सीमा से मिलान करें: example.com api.example.com को कवर करता है। खाली = केवल रूसी डोमेन। प्रारंभ में/पुनः आरंभ होने पर लागू होता है।
Performance
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_CHANNEL_TURN_QUEUE_WAIT_SEC
कतार में इंतज़ार: चैनल का संदेश (सेकंड)
int 10…1200
600
तुरंत
जब टर्न की सभी जगहें भरी हों, तब चैनल का संदेश (Telegram और अन्य) खाली जगह के लिए कितनी देर इंतज़ार करता है। समय पर जगह न मिले तो व्यक्ति को बताया जाता है कि सर्वर व्यस्त है और वह फिर से लिख सकता है। इंतज़ार टर्न की 30 मिनट की सीमा में गिना जाता है। 10–1200। तुरंत लागू होता है।
AIHUMMER_MAX_ACTIVE_TURNS
एक साथ चलने वाले एजेंट टर्न (पूरा सर्वर)
int 1…512
32
तुरंत
सर्वर एक साथ कितने एजेंट टर्न (चैनलों और वेब चैट में जवाब, शेड्यूल) चलाता है। बाकी कतार में उतनी देर इंतज़ार करते हैं जितनी नीचे की «कतार में इंतज़ार» सेटिंग्स अनुमति देती हैं, और व्यक्ति को «सर्वर व्यस्त, कतार में» दिखता है। अधिक मान से इंतज़ार कम होता है, पर मेमोरी, डेटाबेस कनेक्शन और मॉडल के एक साथ अनुरोध बढ़ते हैं। इस संख्या का आधा मॉडल की एक साथ सहायक कॉल (मेमोरी निष्कर्षण, सारांश) की सीमा है। 1–512। तुरंत लागू होता है।
AIHUMMER_SYNC_INBOUND_QUEUE_WAIT_SEC
कतार में इंतज़ार: सिंक्रोनस इंटीग्रेशन कॉल (सेकंड)
int 1…120
10
तुरंत
जब टर्न की सभी जगहें भरी हों, तब उसी अनुरोध में जवाब का इंतज़ार करने वाले इंटीग्रेशन की कॉल खाली जगह के लिए कितनी देर इंतज़ार करती है। जगह न मिले तो इंटीग्रेशन को उतने ही सेकंड बाद दोबारा प्रयास की सलाह के साथ «सर्वर व्यस्त» मिलता है; उसी संदेश संख्या के साथ दोबारा प्रयास संदेश को दो बार सहेजता नहीं। 1–120। तुरंत लागू होता है।
AIHUMMER_WEB_TURN_QUEUE_WAIT_SEC
कतार में इंतज़ार: वेब चैट का संदेश (सेकंड)
int 10…1200
180
तुरंत
जब टर्न की सभी जगहें भरी हों, तब वेब चैट का संदेश खाली जगह के लिए कितनी देर इंतज़ार करता है। इस दौरान चैट में «सर्वर व्यस्त, कतार में» दिखता है; समय पर जगह न मिले तो जवाब «पुनः प्रयास करें» बटन के साथ अस्वीकार होता है, जो पेज दोबारा लोड करने के बाद भी इतिहास में रहता है। 10–1200। तुरंत लागू होता है।
Public access
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_PUBLIC_URL
सर्वर का सार्वजनिक पता
text
—
आंशिक रूप से पुनः आरंभ के बाद
वह पता जिस पर पैनल और ऐप इंटरनेट से खुलते हैं, जैसे https://ai.example.com। इसे अपने प्रॉक्सी (nginx, Caddy) से सर्वर पोर्ट पर भेजें — डिफ़ॉल्ट 8780।
AIHUMMER_WIDGET_ALLOWED_ORIGINS
वेब विजेट: अनुमत साइट origin
list
—
तुरंत
वेब चैट विजेट एम्बेड करने की अनुमति वाले browser origin की कॉमा से अलग सूची, जैसे https://example.com,https://www.example.com। स्कीम और पोर्ट का बिल्कुल मेल होना चाहिए। खाली = कोई बाहरी साइट विजेट का उपयोग नहीं कर सकती। * प्रविष्टि जानबूझकर अनदेखी की जाती है, क्योंकि अन्यथा इंटरनेट का कोई भी पेज इस इंस्टेंस का बजट खर्च कर सकता है।
POCKET_AGENT_GATEWAY_BASE_URL
पॉकेट-एजेंट गेटवे सार्वजनिक URL
text
—
तुरंत
प्रॉक्सी → पॉकेट-एजेंट गेटवे पोर्ट (POCKET_AGENT_PORT, डिफ़ॉल्ट 8080)। रिमोट एजेंट इसे एक बार के टिकट के माध्यम से डायल करता है।
TELEGRAM_PUBLIC_URL
टेलीग्राम वेबहुक पब्लिक URL
text
—
तुरंत
केवल वेबहुक मोड - प्रॉक्सी → टेलीग्राम-कनेक्टर पोर्ट (डिफ़ॉल्ट 8091)। मतदान का उपयोग करने के लिए खाली छोड़ें (किसी सार्वजनिक URL की आवश्यकता नहीं है)।
SSO (LDAP/AD)
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_LDAP_BASE_DN
उपयोगकर्ता खोज आधार DN
text
—
पुनः आरंभ के बाद
रूट खोजें, उदाहरण के लिए। OU=उपयोगकर्ता,DC=corp,DC=उदाहरण.
AIHUMMER_LDAP_BIND_DN
सेवा बाइंड DN
text
—
पुनः आरंभ के बाद
प्रारंभिक खोज बाइंड के लिए उपयोग किया जाने वाला खाता, उदाहरण के लिए CN=svc-aihummer,OU=सेवा,DC=कॉर्प,DC=उदाहरण। रिक्त = अनाम खोज.
AIHUMMER_LDAP_DEFAULT_ROLE
LDAP: डिफ़ॉल्ट भूमिका (कोई समूह मिलान नहीं)
text
—
पुनः आरंभ के बाद
भूमिका तब दी जाती है जब कोई समूह मैपिंग से मेल नहीं खाता। रिक्त = कोई भूमिका नहीं।
AIHUMMER_LDAP_ENABLED
LDAP/AD लॉगिन सक्षम करें
bool
0
पुनः आरंभ के बाद
चालू होने पर, व्यवस्थापक लॉगिन निर्देशिका (LDAP) पर लौट आते हैं। बाइंड पासवर्ड रहस्यों में रहता है (स्कोप ldap, नाम bind_password)।
AIHUMMER_LDAP_GROUP_ATTR
समूह विशेषता (डिफ़ॉल्ट memberOf)
text
—
पुनः आरंभ के बाद
उपयोगकर्ता प्रविष्टि सूची समूह डीएन पर विशेषता। रिक्त समूह→भूमिका मानचित्रण को अक्षम कर देता है।
AIHUMMER_LDAP_ROLE_MAPPINGS
LDAP: समूह→भूमिका मैपिंग (JSON)
text
—
पुनः आरंभ के बाद
JSON समूह DN (या नंगे CN) → भूमिका का ऑब्जेक्ट, उदाहरण के लिए {“CN=Admins,OU=Groups,DC=corp,DC=example”:“admin”,“Operators”:“operator”}.
AIHUMMER_LDAP_SKIP_TLS_VERIFY
TLS सत्यापन छोड़ें (केवल प्रयोगशाला, 1/0)
bool
0
पुनः आरंभ के बाद
निर्देशिका प्रमाणपत्र सत्यापन अक्षम करता है। उत्पादन में कभी भी सक्षम न करें.
AIHUMMER_LDAP_URL
निर्देशिका URL
text
—
पुनः आरंभ के बाद
उदा. ldaps://ad.corp.example:636 (TLS) या ldap://dc1.corp.example:389.
AIHUMMER_LDAP_USER_ATTR
लॉगिन विशेषता (डिफ़ॉल्ट sAMAccountName)
text
—
पुनः आरंभ के बाद
LDAP/सक्रिय निर्देशिका विशेषता उपयोगकर्ता प्रकार के लॉगिन से मेल खाती है (डिफ़ॉल्ट sAMAccountName; OpenLDAP के लिए uid, UPN शैली लॉगिन के लिए userPrincipalName)।
AIHUMMER_LDAP_USER_FILTER
उपयोगकर्ता खोज फ़िल्टर
text
—
पुनः आरंभ के बाद
लॉगिन के लिए %s होना चाहिए। विज्ञापन: (sAMAccountName=%s); ओपनएलडीएपी: (uid=%s).
SSO (OIDC)
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_OIDC_AUDIENCE
OIDC दर्शक
text
—
पुनः आरंभ के बाद
अपेक्षित aud दावा - किसी अन्य भरोसेमंद पार्टी के लिए बनाए गए टोकन को अस्वीकार करने के लिए इसे THIS संसाधन के दर्शकों पर सेट करें। aud दावा अब डिफ़ॉल्ट रूप से प्रत्येक टोकन पर REQUIRED है (बिना ऑड वाला टोकन अस्वीकार कर दिया जाता है); जब इसे सेट किया जाता है, तो ऑड में भी यह शामिल होना चाहिए। उत्पादन में पुरजोर अनुशंसा की गई।
AIHUMMER_OIDC_ISSUER
OIDC जारीकर्ता URL
text
—
पुनः आरंभ के बाद
आईडीपी जारीकर्ता (उदाहरण के लिए https://login.example.com). सेट होने पर OIDC JWT प्रमाणीकरण सक्षम करता है।
AIHUMMER_OIDC_JWKS_URL
OIDC का JWKS URL
text
—
पुनः आरंभ के बाद
JSON वेब कुंजी सेट एंडपॉइंट का उपयोग टोकन हस्ताक्षरों को सत्यापित करने के लिए किया जाता है।
AIHUMMER_OIDC_TENANT_CLAIM
OIDC कार्यक्षेत्र दावा
text
—
पुनः आरंभ के बाद
कार्यक्षेत्र आईडी वाला JWT दावा (उदाहरण के लिए tenant_id / org)।
SSO (SAML)
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_SAML_DEFAULT_ROLE
SAML: डिफ़ॉल्ट भूमिका (कोई समूह मिलान नहीं)
text
—
पुनः आरंभ के बाद
भूमिका तब प्रदान की जाती है जब कोई अनुमानित मूल्य मानचित्र नहीं होता है। रिक्त = कोई भूमिका नहीं।
AIHUMMER_SAML_ENABLED
SAML 2.0 सक्षम करें SSO
bool
0
पुनः आरंभ के बाद
/saml/metadata, /saml/acs, /saml/login को उजागर करता है। एसपी निजी कुंजी रहस्य में रहती है (स्कोप सैमल, नाम sp_key)।
AIHUMMER_SAML_ENTITY_ID
SP इकाई आईडी
text
—
पुनः आरंभ के बाद
SP इकाई आईडी (रिक्त होने पर डिफ़ॉल्ट रूप से ⟨root⟩/saml/metadata होता है)।
AIHUMMER_SAML_IDP_METADATA
IdP मेटाडेटा XML
text
—
पुनः आरंभ के बाद
IdP के SAML मेटाडेटा दस्तावेज़ (Okta/Azure AD/ADFS) को चिपकाएँ।
AIHUMMER_SAML_ROLE_ATTRIBUTE
भूमिका/समूह विशेषता (डिफ़ॉल्ट) समूह)
text
—
पुनः आरंभ के बाद
अभिकथन विशेषता समूह/भूमिका मानों को ले जाती है।
AIHUMMER_SAML_ROLE_MAPPINGS
SAML: समूह→भूमिका मानचित्रण (JSON)
text
—
पुनः आरंभ के बाद
JSON अभिकथित मान की वस्तु → भूमिका, उदाहरण के लिए। {“AdminGroup”:“admin”,“Ops”:“operator”}.
AIHUMMER_SAML_ROOT_URL
SP रूट URL
text
—
पुनः आरंभ के बाद
इस गेटवे का बाहरी पहुंच योग्य आधार URL, उदा. https://app.example.com. ACS = ⟨root⟩/saml/acs.
AIHUMMER_SAML_SP_CERT
SP प्रमाणपत्र (PEM)
text
—
पुनः आरंभ के बाद
सार्वजनिक एसपी हस्ताक्षर प्रमाणपत्र (PEM)। मिलान करने वाली निजी कुंजी रहस्य (स्कोप सैमल, नाम sp_key) में जाती है।
Schedules
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_SCHEDULE_AGENT_MAX_ACTIVE
एजेंट: सक्रिय अनुसूचियों की सीमा
int
20
तुरंत
जब कोई एजेंट स्वयं (अपने अनुसूची टूल से) अनुसूची बनाता या चालू करता है, तब उसकी कितनी सक्रिय अनुसूचियाँ हो सकती हैं। पैनल में बनाई गई अनुसूचियाँ भी गिनी जाती हैं, पर पैनल को कभी मना नहीं किया जाता। सीमा पर एजेंट से पहले किसी एक को रोकने या हटाने को कहा जाता है। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_AGENT_MAX_FIRES_PER_DAY
एजेंट: प्रतिदिन अनुसूची रन
int
288
तुरंत
एक एजेंट की सभी अनुसूचियाँ मिलाकर प्रतिदिन (UTC) कितनी बार चल सकती हैं, जिनमें पैनल में बनाई गई अनुसूचियाँ और मैन्युअल रन भी शामिल हैं। सीमा से ऊपर के रन छोड़ दिए जाते हैं और रन लॉग में दिखते हैं। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_AGENT_MIN_INTERVAL_MINUTES
एजेंट: अनुसूची का न्यूनतम अंतराल, मिनट
int
5
तुरंत
किसी एजेंट द्वारा स्वयं बनाई या बदली गई दोहराई जाने वाली अनुसूची के दो रन के बीच का न्यूनतम अंतर। इससे अधिक बार चलने वाली अनुसूची अस्वीकार की जाती है। पैनल में बनाई गई अनुसूचियाँ इससे सीमित नहीं हैं। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_COMMANDS
अनुसूचियों में सर्वर कमांड
bool
0
तुरंत
अनुसूची को इस सर्वर पर कोई प्रोग्राम चलाने देता है — संग्राहक, रिपोर्ट, बैकअप जाँच। डिफ़ॉल्ट रूप से बंद। केवल «अनुमत कमांड» की कमांड, ठीक वैसे ही जैसे लिखी हैं, चलती हैं; कोई शेल नहीं है। आउटपुट एजेंट को या सीधे चैट में जाता है, और हर रन अनुसूची के रन लॉग में दिखता है। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_COMMANDS_ALLOWLIST
अनुमत कमांड
argvlist
—
तुरंत
वे सटीक कमांड जो अनुसूची चला सकती है: प्रोग्राम (df जैसा नाम या पूरा पथ) और उसके आर्ग्युमेंट। अनुसूची केवल वही कमांड चलाती है जो आर्ग्युमेंट सहित किसी प्रविष्टि से पूरी तरह मेल खाती है। हटाई गई कमांड उसका उपयोग करने वाली अनुसूचियों को रोक देती है, और उनके रन कारण बताते हैं। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_COMMANDS_MAX_OUTPUT_KB
अनुसूची कमांड आउटपुट सीमा, KB
int 1…1024
64
तुरंत
कमांड के आउटपुट का कितना हिस्सा (1–1024 KB) रन लॉग में रखा जाता है और एजेंट या चैट को भेजा जाता है; बाकी काट दिया जाता है, और लॉग यह बताता है। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_COMMANDS_SANDBOX
अनुसूची कमांड ओएस सैंडबॉक्स में चलाएँ
bool
1
तुरंत
चालू: कमांड कोड निष्पादन की तरह ओएस सैंडबॉक्स में चलती है — इंस्टॉलेशन के रहस्य और SSH कुंजियाँ छिपी रहती हैं, और वह केवल अपने अस्थायी फ़ोल्डर में लिख सकती है। सर्वर पर सैंडबॉक्स (bubblewrap) न हो तो कमांड नहीं चलती, और रन लॉग कारण बताता है। बंद: यह गेटवे के अधिकारों से चलती है। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_FAILURE_ADMIN
विफल कार्यों की सूचना व्यवस्थापक को दें
bool
1
तुरंत
जब कोई निर्धारित कार्य विफल हो जाता है या शुरू नहीं हो पाता, तो पैनल की सूचना घंटी में उसके नाम, कारण और उसे कहाँ ठीक करना है के साथ सूचना दिखती है, और यही संदेश मालिकों की अपनी चैनल चैट में भी भेजा जाता है (हर कार्य के लिए 6 घंटे में अधिकतम एक बार)। यह कार्य के प्राप्तकर्ता को भेजे गए संदेश के अतिरिक्त है। बंद: व्यवस्थापक को विफलताओं का पता केवल रन लॉग से चलता है। तुरंत लागू होता है।
AIHUMMER_SCHEDULE_FAILURE_NOTIFY
कार्य विफल होने पर प्राप्तकर्ता को बताएँ
bool
1
तुरंत
जब कोई अनुसूचित कार्य विफल होता है, उसी प्राप्तकर्ता को एक छोटा संदेश भेजा जाता है (पहली विफलता के बाद, 6 घंटे में अधिकतम एक बार)। बंद होने पर विफलताएँ केवल रन लॉग में दिखती हैं। कोई कार्य अपने फ़ॉर्म में इसे अपने लिए बंद कर सकता है। तुरंत लागू होता है।
Security
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_AIRGAPPED
पृथक मोड (बिना इंटरनेट)
bool
0
तुरंत
एजेंटों को इंटरनेट पर जाने से रोकता है: वेब खोज, पेज खोलना और अनुरोध केवल आंतरिक पतों और अनुमत सूचियों के पतों तक जाते हैं। बाहर की पहुँच के बिना बंद नेटवर्क के लिए चालू करें।
AIHUMMER_AUDIT_RETENTION_DAYS
कार्य लॉग कितने दिन रखें
int
0
पुनः आरंभ के बाद
ऑडिट लॉग और सेटिंग्स के बदलावों के इतिहास की इससे पुरानी प्रविष्टियाँ दिन में एक बार हटाई जाती हैं। 0 या खाली — हमेशा रखें।
AIHUMMER_CORS_ORIGINS
अनुमत CORS मूल
list
—
पुनः आरंभ के बाद
अनुमत मूल की अल्पविराम से अलग की गई सूची। रिक्त = CORS की अनुमति नहीं है (केवल समान-मूल)। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
AIHUMMER_CSP
सामग्री-सुरक्षा-नीति शीर्षलेख (ओवरराइड)
text
—
पुनः आरंभ के बाद
CSP हेडर को ओवरराइड करता है। रिक्त = एक सुरक्षित डिफ़ॉल्ट. स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया।
AIHUMMER_INBOUND_SECRET
चैनल प्लगइनों की सर्वर से जुड़ने की कुंजी
text
—
पुनः आरंभ के बाद
जुड़े चैनल (Telegram, VK आदि) इसी से पुष्टि करते हैं कि संदेश सच में उन्हीं से आए हैं। इंस्टॉलेशन के समय अपने-आप सेट होती है — बदलने की ज़रूरत नहीं। खाली होने पर, कुंजी सेट होने तक सर्वर सभी चैनलों को अस्वीकार करता है।
AIHUMMER_OPENAI_COMPAT_KEY
OpenAI-संगत इनबाउंड: स्थिर API कुंजी
text
—
पुनः आरंभ के बाद
उन प्रोग्रामों के लिए साझा कुंजी जो सर्वर से OpenAI-संगत सेवा की तरह जुड़ते हैं। खाली — साझा कुंजी बंद है; «API कुंजियाँ» पेज की निजी कुंजियों से जुड़ा जा सकता है।
AIHUMMER_OPENAI_COMPAT_WORKSPACE
OpenAI-संगत इनबाउंड: वर्कस्पेस आईडी
text
—
पुनः आरंभ के बाद
वर्कस्पेस आईडी, जो स्थिर OpenAI-संगत प्रमाणीकरण मैप करता है। रिक्त = AIHUMMER_DEFAULT_WORKSPACE_ID स्टार्टअप पर/पुनःप्रारंभ के बाद लागू होता है।
AIHUMMER_REQUIRE_2FA
ऑपरेटरों के लिए 2FA की आवश्यकता है
bool
0
तुरंत
ऑपरेटरों के लिए दूसरे कारक (TOTP/passkey) की आवश्यकता होती है। चालू होने पर, 2एफए के बिना ऑपरेटरों को इसे लॉगिन पर तुरंत सेट करने के लिए कहा जाता है (बिना ब्लॉक किए, ताकि मालिक कभी भी लॉक न हो)। तुरंत लागू किया गया.
AIHUMMER_REQUIRE_SECURE
केवल सुरक्षित स्वीकार करें (HTTPS/WSS) कनेक्शन
bool
0
पुनः आरंभ के बाद
चालू होने पर, सादे HTTP अनुरोधों को HTTPS पर पुनर्निर्देशित किया जाता है (GET/HEAD के लिए) या अस्वीकार कर दिया जाता है (403); लोकलहोस्ट एक्सेस की हमेशा अनुमति होती है इसलिए ऑपरेटर को कभी भी बाहर नहीं किया जाता है। TLS-टर्मिनेटिंग रिवर्स प्रॉक्सी से ऑनर्स एक्स-फॉरवर्डेड-प्रोटो। स्टार्टअप पर/पुनः आरंभ करने के बाद लागू किया गया।
AIHUMMER_TRUSTED_PROXIES
विश्वसनीय प्रॉक्सी
list
—
तुरंत
अगर सर्वर के आगे कोई प्रॉक्सी (nginx, Caddy, लोड बैलेंसर) है, तो उसका पता या नेटवर्क अल्पविराम से लिखें, जैसे 10.0.0.0/8। तब कार्य लॉग, अनुमत IP सूची और पासवर्ड अनुमान से सुरक्षा में आगंतुक का असली पता दिखेगा। खाली — केवल सीधे कनेक्शन का पता गिना जाता है, और उसे बदला नहीं जा सकता।
Tools
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_BROWSER_ALLOWED_HOSTNAMES
ब्राउज़र: निजी होस्टनाम के अपवाद
list
—
तुरंत
अल्पविराम से अलग सटीक होस्टनाम; वाइल्डकार्ड, URL या पोर्ट नहीं। अपने सर्वर के मूल CDP के लिए अतिरिक्त निजी अपवाद, web_fetch से अलग।
AIHUMMER_BROWSER_ALLOW_PRIVATE_NETWORK
ब्राउज़र: निजी नेटवर्क की अनुमति
bool
—
तुरंत
खाली रखने पर पुरानी नीति रहेगी; true या false से जाँचा गया मूल CDP चालू होता है। निजी पहुँच केवल अपने सर्वर पर। लूपबैक, लिंक-लोकल और मेटाडेटा बंद रहते हैं।
AIHUMMER_BROWSER_PROFILE_SOCKET
ब्राउज़र प्रोफ़ाइल नियंत्रण सॉकेट
text
—
तुरंत
वैकल्पिक। खाली छोड़ें — गेटवे मानक इंस्टॉल स्थान पर ब्राउज़र सेवा का managed-profiles.sock नियंत्रण सॉकेट स्वयं ढूँढ लेता है। साइटों पर लॉग इन की गई प्रोफ़ाइलें कनेक्शन → ब्राउज़र प्रोफ़ाइलें में बनाई जाती हैं। यह URL नहीं है और न ही स्रोत प्रोफ़ाइल का पथ।
AIHUMMER_CODE_EXEC
एजेंट द्वारा कोड चलाना
enum: off \\| host \\| sandbox
off
तुरंत
एजेंट का कोड निष्पादन टूल (code_exec)। डिफ़ॉल्ट «बंद» है। «इसी सर्वर पर»: कमांड गेटवे के सर्वर पर चलते हैं; OS सैंडबॉक्स (bubblewrap) इंस्टॉलेशन के रहस्य छिपाता है, लेकिन «कोई प्रतिबंध नहीं» मोड वाला एजेंट SSH कुंजियाँ देखता है और अपने फ़ोल्डर के बाहर लिख सकता है — केवल भरोसेमंद सर्वर के लिए। «केवल सैंडबॉक्स में»: हमेशा OS सैंडबॉक्स में — रहस्य और कुंजियाँ छिपी रहती हैं, लिखना केवल एजेंट के फ़ोल्डर में; bubblewrap (या कंटेनर इमेज) के बिना यह मोड सहेजा नहीं जा सकता। हर एजेंट क्या चला सकता है, यह एजेंट पर तय होता है: एजेंट → प्रोफ़ाइल → टूल।
AIHUMMER_CODE_EXEC_INTERPRETERS
कोड-निष्पादक दुभाषिए (JSON)
text
—
तुरंत
JSON object {language: path_to_binary}, उदाहरण के लिए। {“python”:“/usr/bin/python3”}. रिक्त = स्वतः पता लगाना।
AIHUMMER_CODE_EXEC_NET_PORTS
एजेंट कोड के लिए खुले नेटवर्क पोर्ट
list
53,80,443
तुरंत
वे TCP पोर्ट जिनसे OS सैंडबॉक्स में एजेंट का कोड (कोड निष्पादन और शेड्यूल कमांड) कनेक्ट कर सकता है, अल्पविराम से अलग। डिफ़ॉल्ट रूप से 53, 80 और 443: DNS और वेबसाइटें। इस सर्वर और इसके स्थानीय नेटवर्क की बाकी सेवाएँ (डेटाबेस, एडमिन पैनल, ब्राउज़र, adb, स्थानीय मॉडल, Home Assistant) एजेंट कोड के लिए बंद रहती हैं। सूची का पोर्ट हर पते पर खुला है, इस सर्वर पर भी, इसलिए केवल वही जोड़ें जिसकी कोड को ज़रूरत है, जैसे SSH के लिए 22। सीमा हटाने के लिए any लिखें। «कोई प्रतिबंध नहीं» मोड वाले एजेंट सीमित नहीं होते। Linux 6.7 या नया चाहिए; इसके बिना सीमा लागू नहीं होती, और एजेंट → टूल्स में यह बताया जाता है। तुरंत लागू होता है।
AIHUMMER_CODE_EXEC_READ_DIRS
एजेंट कोड के लिए पढ़ने हेतु खुले फ़ोल्डर
list
—
तुरंत
इस सर्वर के फ़ोल्डर जिन्हें एजेंट का कोड पढ़ सकता है: OS सैंडबॉक्स में कोड निष्पादन और शेड्यूल कमांड। अल्पविराम से अलग करें या हर पंक्ति में एक, उदाहरण के लिए ~/reports। आप एक अकेली फ़ाइल भी बता सकते हैं, उदाहरण के लिए ~/scripts/report.py। यहाँ खोली गई चीज़ें सभी एजेंटों के कोड को दिखती हैं, इसलिए केवल वही खोलें जिसकी कोड को ज़रूरत है। डिफ़ॉल्ट रूप से खाली: सैंडबॉक्स में कोड केवल अपने एजेंट का फ़ोल्डर और सिस्टम फ़ोल्डर देखता है; गेटवे उपयोगकर्ता का होम फ़ोल्डर, इंस्टॉलेशन का डेटा, अन्य एजेंटों के फ़ोल्डर, कुंजियाँ और कमांड इतिहास छिपे रहते हैं। रूट, पूरा होम फ़ोल्डर, इंस्टॉलेशन का डेटा और कुंजियों वाली जगहें नहीं खोली जा सकतीं। कोड इन फ़ोल्डरों में लिख नहीं सकता। तुरंत लागू होता है।
AIHUMMER_CODE_EXEC_SANDBOX_IMAGE
कोड-निष्पादन सैंडबॉक्स छवि
text
—
तुरंत
वैकल्पिक, केवल «केवल सैंडबॉक्स में» के लिए: OS सैंडबॉक्स की जगह Docker कंटेनर इमेज (बिना नेटवर्क, केवल-पढ़ने योग्य रूट, सीमाएँ); सर्वर पर Docker चाहिए। खाली = OS सैंडबॉक्स (bubblewrap)।
AIHUMMER_CODE_EXEC_TIMEOUT_SECONDS
कोड चलाने की समय सीमा (सेकंड)
int
1800
तुरंत
एजेंट का एक कमांड, पृष्ठभूमि वाले सहित, कितनी देर चल सकता है: 10 सेकंड से 24 घंटे तक। जो कमांड 30 सेकंड में जवाब नहीं देता, वह रुकता नहीं बल्कि पृष्ठभूमि में चला जाता है, जहाँ एजेंट उसे process टूल से जाँचता है। एजेंट कम सीमा माँग सकता है, अधिक नहीं।
AIHUMMER_DB_QUERY_DSN
«डेटाबेस क्वेरी» टूल के लिए डेटाबेस कनेक्शन
text
—
तुरंत
उस डेटाबेस की कनेक्शन स्ट्रिंग जिसे एजेंट पढ़ सकता है (केवल पढ़ना), जैसे postgres://reader:password@host/db। न्यूनतम अधिकारों वाला उपयोगकर्ता दें — डेटाबेस का मालिक नहीं। खाली — टूल बंद है।
AIHUMMER_FS_ROOT
फ़ाइलसिस्टम टूल रूट
text
—
तुरंत
वह फ़ोल्डर जिसके भीतर एजेंट सर्वर की फ़ाइलें पढ़ता है (filesystem_read; एजेंट फ़ाइलें नहीं लिख सकते)। खाली = गेटवे उपयोगकर्ता के अधिकारों के साथ पूरा सर्वर, उसके रहस्यों को छोड़कर: इंस्टॉलेशन सेटिंग्स (gateway.env), SSH/GPG कुंजियाँ और प्रक्रियाओं का परिवेश। पहुँच सीमित करने के लिए फ़ोल्डर दें।
AIHUMMER_HTTP_ALLOWLIST
एजेंट के HTTP अनुरोधों के पते
list
—
तुरंत
अल्पविराम से अलग किए गए होस्ट की सूची जिन तक http_request उपकरण पहुँच सकता है। रिक्त = आंतरिक और निजी पतों को छोड़कर सभी की अनुमति है।
AIHUMMER_HTTP_AUTH_JSON
http_request प्रमाणीकरण (JSON)
text
—
तुरंत
http_request उपकरण के लिए होस्ट को प्राधिकरण हेडर से जोड़ने वाला JSON मानचित्र, ताकि टोकन प्रॉम्प्ट में न रखे जाएँ। रिक्त = बिना प्राधिकरण।
AIHUMMER_MCP_SERVERS
MCP सर्वर (JSON)
text
—
तुरंत
उन बाहरी MCP सर्वरों का JSON विवरण जिनके उपकरण एजेंट से जुड़ते हैं। रिक्त = कोई बाहरी MCP नहीं।
AIHUMMER_PROJECT_STUDIOS_PUBLIC_NETWORK
प्रोजेक्ट स्टूडियो: सार्वजनिक नेटवर्क
bool
false
तुरंत
चुने गए प्रदाताओं और स्पष्ट रूप से माँगे गए मॉडल डाउनलोड के लिए सार्वजनिक HTTP(S) की अनुमति दें। निजी, स्थानीय और मेटाडेटा पते अवरुद्ध रहेंगे। ऑफ़लाइन मोड को प्राथमिकता मिलेगी। तुरंत लागू होता है।
AIHUMMER_SIDECAR_CLOAKBROWSER
एजेंट के लिए ब्राउज़र (CloakBrowser)
bool
0
तुरंत
एंटी-डिटेक्ट ब्राउज़र (CloakBrowser, browser/computer टूल)। डिलीवरी पैकेज में क्या शामिल नहीं है: समावेशन हस्ताक्षरित ऐड-ऑन (~477 MiB, जिसमें से Chromium ~207 MiB) डाउनलोड करता है और होस्ट पर सेवा स्थापित करता है। सबसे भारी साइडकार - केवल तभी सक्षम करें जब एजेंट को वेबसाइट खोलने की आवश्यकता हो।
AIHUMMER_SIDECAR_SEARXNG
वेब खोज (SearXNG)
bool
0
तुरंत
वेब खोज (SearXNG, web_search टूल)। पैकेज में शामिल नहीं: चालू करने से हस्ताक्षरित ऐड-ऑन (~154 MiB) डाउनलोड होता है और होस्ट पर सेवा स्थापित होती है, बंद करने से यह रुक जाती है और स्थान खाली हो जाता है। इंस्टॉलेशन पृष्ठभूमि में होता है और इसमें कुछ मिनट लगते हैं; यहां स्थिति दिखाती है कि सर्वर पर वास्तव में क्या है।
AIHUMMER_WEBFETCH_ALLOWLIST
वे साइटें जिन्हें एजेंट खोल सकता है
list
—
तुरंत
अल्पविराम से अलग किए गए डोमेन की सूची जिन तक web_fetch उपकरण पहुँच सकता है। रिक्त = आंतरिक और निजी पतों को छोड़कर सभी की अनुमति है।
AIHUMMER_WEB_SEARCH_LANGUAGE
वेब खोज: परिणामों की डिफ़ॉल्ट भाषा
text
auto
तुरंत
जब एजेंट भाषा न बताए तब परिणामों की भाषा: ru, en या de जैसा कोड, या क्वेरी से पहचानने के लिए auto (लगभग हमेशा उपयुक्त)। एजेंट किसी खास खोज के लिए दूसरी भाषा चुन सकता है।
AIHUMMER_WEB_SEARCH_RESULTS
वेब खोज: प्रति खोज परिणाम
int
5
तुरंत
जब एजेंट संख्या न मांगे तब खोज कितने परिणाम लौटाए: 1 से 10। अधिक परिणाम पूरा उत्तर देते हैं, पर संदर्भ लंबा होता है।
AIHUMMER_WEB_SEARCH_SOURCE
वेब खोज का स्रोत
enum: auto \\| searxng \\| provider
auto
तुरंत
एजेंट इंटरनेट पर कहाँ खोजता है (web_search टूल)। auto — SearXNG इंस्टॉल हो तो वही, अन्यथा मॉडल प्रदाता की अंतर्निहित खोज। searxng — केवल SearXNG: उसके बिना खोज नहीं होती। provider — जहाँ उपलब्ध हो वहाँ प्रदाता की अंतर्निहित खोज, बाकी मॉडलों के लिए SearXNG। अंतर्निहित खोज Codex (ChatGPT सदस्यता) और OpenAI (api.openai.com) में है; GigaChat, YandexGPT और अन्य OpenAI-संगत मॉडलों में नहीं है — SearXNG के बिना इन मॉडलों पर एजेंट खोज नहीं करते। Claude (api.anthropic.com और Claude सदस्यता) Anthropic की अंतर्निहित खोज इस्तेमाल करता है; अगर खाता इसे अस्वीकार करे, तो गेटवे यह लॉग में लिखता है और आगे एजेंट को केवल SearXNG देता है। कौन-से एजेंट खोज सकते हैं, यह पहले की तरह एजेंट कार्ड में तय होता है। अगले चरण से लागू।
AIHUMMER_WEB_SEARCH_TIMEOUT_SECONDS
वेब खोज समय सीमा (सेकंड)
int
30
तुरंत
हर खोज के लिए1–600 सेकंड। कार्य की छोटी समय सीमा लागू रहती है।
Updates
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_RESTART_APPLY
पुनः आरंभ की ज़रूरत वाली सेटिंग्स लागू करें
enum: quiet \\| manual
quiet
तुरंत
quiet (डिफ़ॉल्ट) — सहेजी गई वे सेटिंग्स जो गेटवे के नए आरंभ पर ही लागू होती हैं, अपने आप लागू होती हैं: गेटवे अगले शांत पल में पुनः आरंभ होता है, जब एजेंट कुछ नहीं कर रहे और लोग कम से कम मौन-अवधि तक चुप रहे हों। manual — केवल “पुनः आरंभ की प्रतीक्षा” चिह्न और बटन। पुनः आरंभ में कुछ सेकंड लगते हैं; बातचीत और कार्य नहीं खोते। तुरंत लागू होता है।
AIHUMMER_RESTART_QUIET_MINUTES
शांत पल: स्वचालित पुनः आरंभ से पहले मौन के मिनट
int 0…1440
10
तुरंत
सहेजी गई सेटिंग्स लागू करने के लिए गेटवे के अपने आप पुनः आरंभ होने से पहले लोगों को कितने मिनट चुप (और एजेंटों को खाली) रहना चाहिए। 0 — जैसे ही एजेंट मौजूदा काम पूरा करें। 0–1440। तुरंत लागू होता है।
Web UI (separate port)
कुंजी
नाम
प्रकार
डिफ़ॉल्ट
लागू होता है
क्या करता है
AIHUMMER_WEBUI_API_BASE
अलग से होस्ट किए गए पैनल के लिए सर्वर पता
text
—
पुनः आरंभ के बाद
केवल तभी ज़रूरी है जब पैनल सर्वर से अलग पते से खोला जाता हो। वह पता दें जिससे ब्राउज़र सर्वर तक पहुँचे, जैसे https://api.example.com। खाली — सर्वर का सार्वजनिक पता, और वह न हो तो स्थानीय पता उपयोग होता है।
AIHUMMER_WEBUI_ENABLED
अलग पोर्ट पर पैनल
bool
1
पुनः आरंभ के बाद
चालू — पैनल एक अलग आंतरिक पोर्ट पर खुलता है जिसे इंटरनेट से बंद किया जा सकता है, और सार्वजनिक पोर्ट केवल ऐप और चैनलों को सेवा देता है। पैनल को पूरी तरह बंद करने के लिए इसे बंद करें।
AIHUMMER_WEBUI_ORIGIN
वह पता जिस पर पैनल खोला जाता है
text
—
पुनः आरंभ के बाद
भरें, अगर पैनल किसी प्रॉक्सी से या उसके पोर्ट पते से अलग नाम से खोला जाता है, जैसे https://admin.example.com। सर्वर उस पते से ब्राउज़र को जुड़ने देगा। खाली — पैनल पोर्ट का पता लिया जाता है।
ऑपरेटर के लिए उपलब्ध सेटिंग्स: 237।
यहाँ वे सभी सेटिंग्स दी गई हैं जिन्हें ऑपरेटर AiHummer सर्वर पर बदल सकता है। यह पृष्ठ स्वयं उत्पाद की सूची से बनाया जाता है, इसलिए यह आपके सर्वर से मेल खाता है।
मान वेब-इंटरफ़ेस में या `aihummer settings set KEY VALUE` कमांड से दिया जाता है ([कमांड लाइन](/hi/v1.4/reference/cli/))। डिफ़ॉल्ट मान वाला स्तंभ दिखाता है कि अपना मान देने तक सर्वर क्या उपयोग करता है।
> [!NOTE]
> गुप्त मान यहाँ कभी नहीं छापे जाते, और आपूर्तिकर्ता की सेवा-कुंजियाँ बिल्कुल सूचीबद्ध नहीं होतीं — उत्पाद उन्हें हर सूची से छिपाता है। डैश का अर्थ है खाली मान या ऐसा विवरण जो केवल वेब-इंटरफ़ेस में दिखता है।
## API
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_PERSONAL_API_KEYS` | OpenAI-compat के लिए व्यक्तिगत API कुंजी | `bool` | `1` | पुनः आरंभ के बाद | 'बंद' ओपनएआई-संगत एंडपॉइंट पर व्यक्तिगत-कुंजी प्रमाणीकरण को अक्षम करता है = स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है। |
## Agent
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AGENT_ANNOUNCE_SLOW_TOOLS` | एजेंट: लंबे कार्यों से पहले बताना | `bool` | `1` | तुरंत | किसी लंबे कार्य (चित्र, गहन खोज, वीडियो, सबएजेंट को काम) से पहले एजेंट संक्षेप में लिखता है कि वह क्या कर रहा है, ताकि प्रतीक्षा चुपचाप न हो। ऐसे संदेश बाधा हों तो बंद करें। |
| `AIHUMMER_AGENT_COMPACT_AT_PCT` | एजेंट: इतिहास भरने पर संक्षिप्त करें, उसके बजट का % | `int 50…99` | `85` | तुरंत | जब बातचीत का इतिहास मॉडल विंडो में अपनी जगह का यह हिस्सा भर देता है, तो पुराने संदेश सारांश में समेटे जाते हैं — पृष्ठभूमि में, उत्तर के बाद; बारी प्रतीक्षा नहीं करती। कम — संक्षेपण अधिक बार, पर मॉडल शब्दशः कम याद रखता है; अधिक — कम बार, पर बारियाँ भारी होती हैं। 50–99; एजेंट अपना मान सेट कर सकता है। |
| `AIHUMMER_AGENT_COMPACT_TO_PCT` | एजेंट: संक्षेपण के बाद रखें, इतिहास बजट का % | `int 10…90` | `50` | तुरंत | संक्षेपण के बाद इतिहास की जगह का कितना हिस्सा शब्दशः रहता है; उससे पुराना सब सारांश में जाता है। संक्षेपण सीमा से कम होना चाहिए: दोनों के बीच का अंतर तय करता है कि अगले संक्षेपण तक कितनी बारियाँ बीतेंगी। 10–90; एजेंट अपना मान सेट कर सकता है। |
| `AIHUMMER_AGENT_HISTORY_TURNS` | एजेंट: शब्दशः रखे जाने वाले बातचीत टर्न | `int 1…1000` | `30` | तुरंत | मॉडल बातचीत के कितने हाल के टर्न शब्दशः देखता है (संक्षेपण से पहले 10 तक अधिक)। पुराने संदेशों का सारांश पृष्ठभूमि में बनता है; बातचीत स्वयं कभी नहीं हटती। मॉडल की संदर्भ विंडो का ध्यान अपने आप रखा जाता है। 1–1000; एजेंट के लिए अलग मान रखा जा सकता है। |
| `AIHUMMER_AGENT_MAX_ITERATIONS` | एजेंट: प्रति टर्न अधिकतम टूल चरण | `int 1…256` | `25` | तुरंत | उत्तर देने से पहले एक टर्न में एजेंट कितनी बार टूल बुला सकता है। सीमा पर टर्न विफल नहीं होता: एजेंट बताता है कि क्या हुआ और क्या बाकी है, और आप उससे जारी रखने को कह सकते हैं। एक ही परिणाम वाली तीन समान कॉल लगातार होने पर टर्न पहले रुक जाता है। 1–256; एजेंट के लिए अलग मान रखा जा सकता है। |
| `AIHUMMER_AGENT_MEMORY_FLUSH` | एजेंट: संक्षेपण से पहले मेमोरी नोट सहेजें | `bool` | `1` | तुरंत | पुराने संदेशों को सारांश में समेटने से पहले एजेंट लक्ष्यों, निर्णयों और खुले कामों पर एक छोटा नोट मेमोरी में सहेजता है। मॉडल कॉल बचाने के लिए बंद करें। |
| `AIHUMMER_AGENT_MEMORY_FLUSH_PROMPT` | एजेंट: संक्षेपण से पहले नोट में क्या सहेजें | `text` | — | तुरंत | संक्षेपण से पहले नोट के लिए आपका अपना कार्य: सारांश में जाने वाले संदेशों में से क्या सहेजना है (उदाहरण के लिए, “केवल ख़रीदारी, समय-सीमाएँ और समझौते लिखो”)। ख़ाली — अंतर्निर्मित: लक्ष्य, निर्णय, खुले काम। सुरक्षा बंद नहीं होती: बातचीत का पाठ डेटा रहता है, निर्देश नहीं, और पासवर्ड व कुंजियाँ सहेजी नहीं जातीं। 4000 वर्णों तक; एजेंट का अपना कार्य हो सकता है। |
| `AIHUMMER_AGENT_NEW_REMINDERS_MEMORY` | नए एजेंट: रिमाइंडर और मेमोरी में लिखना | `bool` | `1` | तुरंत | हाथ से बनाया गया नया एजेंट (पहली बार का विज़ार्ड, «एजेंट बनाएँ», API) पहले ही चरण से अपने ख़ुद के रिमाइंडर और शेड्यूल बनाता, बदलता और रद्द करता है और तथ्य अपनी मेमोरी में लिखता है — निजी सहायक टेम्पलेट की तरह। किसी एक एजेंट के लिए इसे उसके कार्ड («क्षमताएँ») में बंद करें। लाइब्रेरी टेम्पलेट अपना चुनाव ख़ुद तय करते हैं, एजेंट की प्रति मूल के अधिकार रखती है, किसी दूसरे एजेंट द्वारा बनाए गए एजेंट इनके बिना शुरू होते हैं; मौजूदा एजेंट नहीं बदलते। अगले बनाए जाने वाले एजेंट पर लागू होता है। |
| `AIHUMMER_AGENT_PROMPT_PART_MAX_CHARS` | एजेंट: प्रॉम्प्ट के प्रति भाग अधिकतम वर्ण | `int 1000…1000000` | `20000` | तुरंत | मॉडल एजेंट के व्यक्तित्व के एक भाग — प्रोफ़ाइल अनुभाग, प्रॉम्प्ट भाग या मुख्य प्रॉम्प्ट — से कितने वर्ण पाता है। लंबे भाग में शुरुआत (3/4) और अंत (1/4) रखे जाते हैं और एक टिप्पणी होती है कि कितना काटा गया; यह बातचीत कार्ड और एजेंट की प्रॉम्प्ट संरचना में दिखता है। नाम, संबोधन और व्यक्तित्व की सीमाएँ कभी नहीं काटी जातीं। 1000–1000000; एजेंट के लिए अपना मान रखा जा सकता है। |
| `AIHUMMER_AGENT_PROMPT_TOTAL_MAX_CHARS` | एजेंट: पूरे व्यक्तित्व के अधिकतम वर्ण | `int 1000…2000000` | `60000` | तुरंत | एजेंट के व्यक्तित्व की कुल सीमा: सभी भाग मिलाकर। इसके पार होने पर सबसे लंबे भाग पहले जगह छोड़ते हैं और छोटे भाग पूरे रहते हैं। 1000–2000000; एजेंट के लिए अपना मान रखा जा सकता है। |
| `AIHUMMER_AGENT_SELF_INTRO` | एजेंट: अपना परिचय देना | `enum: first_contact \\\| each_dialog \\\| never` | `first_contact` | तुरंत | «एक बार, पहली मुलाक़ात में» — एजेंट किसी व्यक्ति से पहली बातचीत में संक्षेप में अपना परिचय देता है, जब तक वह सीधे काम की बात न चाहे; परिचित व्यक्ति से दोबारा परिचय नहीं देता और अभिवादन का स्वाभाविक उत्तर देता है। «कभी परिचय न देना» — एजेंट कभी ख़ुद से अपना नाम नहीं बताता। «हर नई बातचीत की शुरुआत में» — हर नई बातचीत की शुरुआत में और लंबे विराम के बाद, संक्षेप में और पिछली बातों के सारांश के बिना। एजेंट अपने कार्ड («संदर्भ और व्यवहार») में अलग चुनाव कर सकता है। |
| `AIHUMMER_AGENT_SESSION_IDLE_RESET_MINUTES` | एजेंट: चुप्पी के बाद बातचीत नए सिरे से शुरू करें (मिनट) | `int 0…525600` | `360` | तुरंत | “मौन के बाद” और “हर दिन और मौन के बाद” के लिए: यदि व्यक्ति इससे लंबे मौन के बाद लिखता है, तो एजेंट बातचीत नए सिरे से शुरू करता है। उन एजेंटों पर लागू जिनके कार्ड पर अपना मान नहीं है। 0 — मौन के आधार पर नहीं। 0–525600; 360 = 6 घंटे, 1440 = एक दिन। |
| `AIHUMMER_AGENT_SESSION_INDEX_MAX_ENTRIES` | एजेंट: सूची में अधिकतम इतने सत्र रखें | `int 0…100000` | `0` | तुरंत | सबसे शांत पहले निकलते हैं; कुछ भी नहीं हटाया जाता। 0 — कोई सीमा नहीं। 0–100000। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है। |
| `AIHUMMER_AGENT_SESSION_INDEX_PRUNE_DAYS` | एजेंट: इतने दिनों की चुप्पी के बाद सत्र सूची से हटाएँ | `int 0…3650` | `0` | तुरंत | कुछ भी नहीं हटाया जाता: बातचीत सूची से निकल जाती है और नए संदेश के साथ लौट आती है। 0 — रखें। 0–3650। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है। |
| `AIHUMMER_AGENT_SESSION_RESET_AT_HOUR` | एजेंट: रोज़ाना नए सिरे से शुरुआत का घंटा | `int 0…23` | `4` | तुरंत | «हर दिन» वाले मोड के लिए: इस घंटे से पहले शुरू हुई बातचीत व्यक्ति के अगले संदेश से फिर से शुरू होती है। घंटा सर्वर के समय क्षेत्र के अनुसार है («सिस्टम और सेटिंग्स» में «समय क्षेत्र» सेटिंग)। 0–23; 4 यानी रात, जब लगभग कोई नहीं लिखता। |
| `AIHUMMER_AGENT_SESSION_RESET_GROUP_IDLE_MINUTES` | एजेंट: मौन के बाद समूह चैट नए सिरे से शुरू करें (मिनट) | `int 0…525600` | `0` | तुरंत | “मौन के बाद” और “हर दिन और मौन के बाद” मोड में समूह चैट के लिए: मौन के वे मिनट जिनके बाद समूह चैट नए सिरे से शुरू होती है। 0 का अर्थ है निजी चैट की तरह। 0–525600। |
| `AIHUMMER_AGENT_SESSION_RESET_GROUP_MODE` | एजेंट: समूह चैट कब नए सिरे से शुरू हो | `enum: inherit \\\| daily \\\| idle \\\| both \\\| none` | `inherit` | तुरंत | समूह चैट के लिए अलग नियम (Telegram समूह, VK बातचीत, MAX चैट और अन्य): निजी चैट की तरह, हर दिन रीसेट के घंटे पर, मौन के बाद, जो पहले हो, या कभी नहीं। रीसेट का घंटा साझा है। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना नियम नहीं है। |
| `AIHUMMER_AGENT_SESSION_RESET_MODE` | एजेंट: बातचीत नए सिरे से कब शुरू हो | `enum: idle \\\| daily \\\| both \\\| none` | `idle` | तुरंत | एजेंट बातचीत नए सिरे से कब शुरू करे: हर दिन रीसेट के घंटे पर (सेटिंग्स के समयक्षेत्र के अनुसार), मौन के बाद, जो पहले हो, या कभी नहीं। नए सिरे से शुरू करते समय एजेंट पिछली बातचीत के बारे में अपनी स्मृति में एक नोट लिखता है, और उसकी पहली बारी को पिछला सारांश और आख़िरी संदेश मिलते हैं; संदेश स्वयं संग्रह और खोज में बने रहते हैं। उन एजेंटों पर लागू जिनके कार्ड पर अपना नियम नहीं है; वहाँ समूह चैट के लिए अलग नियम तय किया जा सकता है। |
| `AIHUMMER_AGENT_SESSION_SCOPE` | एजेंट: निजी बातचीत कहाँ जाती है | `enum: chat \\\| per-channel-peer \\\| per-peer` | `chat` | तुरंत | «हर व्यक्ति के लिए एक» एक ही व्यक्ति के Telegram, ऐप और अन्य निजी चैट को एक बातचीत में जोड़ देता है। समूह चैट हमेशा अपनी अलग रखते हैं। अगले संदेश से लागू होता है। उन एजेंटों पर लागू होता है जिनके कार्ड पर अपना मान नहीं है। |
| `AIHUMMER_AGENT_SILENT_REPLY` | एजेंट: चुप रह सकता है | `enum: groups \\\| all \\\| off` | `groups` | तुरंत | समूह चैट में एजेंट चुप रह सकता है, यदि संदेश उसे संबोधित नहीं है या उसके पास जोड़ने को कुछ नहीं है; निजी चैट में वह हमेशा उत्तर देता है। आप निजी चैट में भी चुप रहने की अनुमति दे सकते हैं या इसे बंद कर सकते हैं। चुप रहा चरण कुछ नहीं भेजता, बातचीत के कार्ड में उसे “एजेंट चुप रहा” चिह्नित किया जाता है, और मॉडल उसे इतिहास में नहीं देखता। अगले चरण से लागू होता है। |
| `AIHUMMER_AGENT_SKILLS_PROMPT_MAX_CHARS` | एजेंट: प्रॉम्प्ट में कौशल सूची के अधिकतम वर्ण | `int 1000…200000` | `18000` | तुरंत | हर बारी में मॉडल कौशलों के पाठ नहीं, बल्कि उनकी सूची देखता है: पहचानकर्ता, नाम और कब लागू करना है; कार्य उपयुक्त होने पर एजेंट कौशल का निर्देश स्वयं लोड करता है। सूची लंबी हो तो पहले विवरण हटाए जाते हैं, फिर सूची का अंत — बाकी कौशल एजेंट अनुरोध पर ढूँढ लेता है। 1000–200000। |
| `AIHUMMER_AGENT_STALE_GAP_HOURS` | एजेंट: विराम जिसके बाद पिछली बातचीत इतिहास है (घंटे) | `int 0…8760` | `12` | तुरंत | यदि व्यक्ति इससे लंबे विराम के बाद लिखता है, तो एजेंट को एक टिप्पणी मिलती है: पहले की सारी चर्चा इतिहास है — बिना माँगे उसे दोहराया नहीं जाता और पुराने कार्य जारी नहीं किए जाते। हर संदेश में पहले से उसका समय और पिछले संदेश से बीता समय होता है। 0 = टिप्पणी नहीं। 0–8760। |
| `AIHUMMER_AGENT_TOOL_HISTORY_TURNS` | एजेंट: टूल परिणाम याद रखने वाले टर्न | `int 0…100` | `5` | तुरंत | कितने हाल के टर्न में मॉडल टूल कॉल और उनके परिणाम पूरे देखता है (परिणाम 16 KB तक रखा जाता है)। पुराने टर्न में कॉल और परिणाम की शुरुआत बनी रहती है। इस तरह एजेंट टूल दोबारा बुलाने के बजाय याद रखता है कि उसने क्या पाया और क्या किया। 0 = परिणाम अगले टर्न में न ले जाएँ। 0–100; एजेंट अपना मान तय कर सकता है। |
| `AIHUMMER_APPROVAL_TOOLS` | उपकरणों को अनुमोदन की आवश्यकता है | `multiselect` | — | तुरंत | अल्पविराम से अलग किए गए उपकरणों की सूची जिनके आह्वान के लिए निष्पादन से पहले संचालक की हस्तचालित स्वीकृति आवश्यक है। रिक्त = स्वीकृति आवश्यक नहीं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_SUBAGENT_MAX_DEPTH` | subagent अधिकतम गहराई | `int 0…10` | `2` | तुरंत | सबएजेंट के नेस्टिंग की अधिकतम गहराई (एजेंट जो एजेंट को चलाता है)। डिफ़ॉल्ट 2 — अनंत पुनरावर्तन से सुरक्षा। |
| `AIHUMMER_SUBAGENT_TIMEOUT_SEC` | subagent टाइमआउट (सेकंड) | `int 0…86400` | `180` | तुरंत | एकल सबएजेंट रन के लिए अधिकतम समय, सेकंड में। |
| `AIHUMMER_TOOL_SEARCH` | टूल की आलसी लोडिंग | `bool` | `false` | तुरंत | टूल के कार्यशील कोर को सीधे दिखाता है और बड़े कैटलॉग के बाकी हिस्से को एक खोज टूल के पीछे छिपाता है, जो हर छिपे टूल का नाम बताता है। यह केवल बड़े कैटलॉग (दर्जनों प्लगइन, MCP या OpenAPI टूल) में फ़ायदेमंद है: आकार की सीमा से नीचे सभी टूल सीधे दिखाए जाते हैं, क्योंकि टूल खोजने के लिए मॉडल को एक अतिरिक्त कॉल स्कीमा से अधिक महँगी पड़ती है। अगले चरण से लागू होता है। |
| `AIHUMMER_TOOL_SEARCH_CORE` | आलसी टूल लोडिंग: हमेशा चालू रहने वाले टूल | `multiselect` | `web_search,web_fetch,memory_search,memory_get,memory_store,search_history,search_knowledge,code_exec,process,filesystem_read,message,schedule_list,schedule_create,schedule_delete,generate_pairing_code` | तुरंत | वे टूल जो लेज़ी मोड में हमेशा सीधे दिखते हैं। डिफ़ॉल्ट रूप से कार्यशील कोर: वेब खोज, पेज प्राप्त करना, मेमोरी, बातचीत का इतिहास, ज्ञान आधार, कोड, फ़ाइलें, संदेश, शेड्यूल और ऐप जोड़ना। मेमोरी और ज्ञान आधार की खोज (memory_search, memory_get, search_knowledge) हमेशा दिखती है, इस सूची में चाहे जो हो। खाली सूची इस कोर को वापस ले आती है। |
| `AIHUMMER_TOOL_SEARCH_MIN_POOL_TOKENS` | टूल की लेज़ी लोडिंग: छिपे टूल का न्यूनतम आकार (टोकन) | `int 0…1000000` | `4000` | तुरंत | टूल तभी छिपाएँ जब कोर के बाहर की स्कीमा कुल मिलाकर कम से कम इतने टोकन की हों (प्रत्येक लगभग 4 अक्षर)। इससे कम होने पर सभी टूल सीधे दिखाए जाते हैं: टूल खोजने के लिए मॉडल को एक अतिरिक्त कॉल स्कीमा दिखाने से अधिक महँगी पड़ती है। |
| `AIHUMMER_TOOL_SEARCH_THRESHOLD` | आलसी टूल लोडिंग: स्थगित करने के लिए न्यूनतम टूल | `int 0…1000` | `12` | तुरंत | केवल तभी स्थगित करें जब एजेंट के प्रोफ़ाइल फ़िल्टर में इससे अधिक टूल बचे हों। |
## Agent · Reasoning
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AGENT_BEST_OF_N` | N में से सर्वश्रेष्ठ: विकल्पों की संख्या | `int 0…8` | `0` | तुरंत | एजेंट इतने उत्तर विकल्प तैयार करता है और सबसे अच्छा रखता है। 0 या 1 — बंद, 2 से — चालू। हर विकल्प एक अलग उत्तर जितना खर्च करता है। |
| `AIHUMMER_AGENT_DEBATE_JUDGE_PROMPT` | बहस: जज प्रॉम्प्ट (ओवरराइड) | `text` | — | तुरंत | डिबेट जज प्रॉम्प्ट (रिक्त = बिल्ट-इन) को ओवरराइड करता है। |
| `AIHUMMER_AGENT_DEBATE_N` | बहस: उत्तर विकल्पों की संख्या | `int 0…8` | `0` | तुरंत | एजेंट इतने उत्तर विकल्प तैयार करता है, उनकी आपस में तुलना करता है और सबसे अच्छा देता है। 0 या 1 — बंद, 2 से — चालू। हर विकल्प एक अलग उत्तर जितना खर्च करता है। |
| `AIHUMMER_AGENT_DEBATE_PROMPT` | बहस: उम्मीदवार का संकेत (ओवरराइड) | `text` | — | तुरंत | वाद-विवाद उम्मीदवार के संकेत को ओवरराइड करता है (रिक्त = अंतर्निहित)। |
| `AIHUMMER_AGENT_DEBATE_ROUNDS` | बहस: दौर | `int 1…10` | `1` | तुरंत | उम्मीदवार पैनल के लिए बहस दौर की संख्या। |
| `AIHUMMER_AGENT_JUDGE_PROMPT` | बेस्ट-ऑफ-एन जज प्रॉम्प्ट (ओवरराइड) | `text` | — | तुरंत | बेस्ट-ऑफ-एन जज प्रॉम्प्ट (रिक्त = अंतर्निहित) को ओवरराइड करता है। |
| `AIHUMMER_AGENT_PLAN_PROMPT` | प्लानर प्रॉम्प्ट (ओवरराइड) | `text` | — | तुरंत | प्लानर प्रॉम्प्ट को ओवरराइड करता है (रिक्त = अंतर्निहित)। |
| `AIHUMMER_AGENT_PLAN_STEPS` | योजनाकार-निष्पादक: अधिकतम योजना चरण (0=बंद) | `int 0…32` | `0` | तुरंत | ⟩0 एक अलग प्लानर→निष्पादक→सिंथेसिस पास चलाता है (जटिल बहु-चरणीय कार्यों के लिए अच्छा)। 0 अक्षम करता है. विशिष्ट 4-8. |
| `AIHUMMER_AGENT_PLAN_STEP_ITERS` | प्लानर: प्रति चरण टूल पुनरावृत्ति (0=डिफ़ॉल्ट) | `int 0…64` | `0` | तुरंत | प्रति योजना चरण में टूल-कॉलिंग पुनरावृत्तियों को कैप करता है। 0 = अंतर्निहित डिफ़ॉल्ट (4)। |
| `AIHUMMER_AGENT_REFLECT` | आत्म-आलोचना पास | `bool` | `0` | तुरंत | अंतिम उत्तर से पहले एक प्रतिबिंब/आत्म-आलोचना पास जोड़ता है। |
| `AIHUMMER_AGENT_REFLECT_PROMPT` | प्रतिबिंब संकेत (ओवरराइड) | `text` | — | तुरंत | आत्म-आलोचना संकेत को ओवरराइड करता है (रिक्त = अंतर्निहित)। |
| `AIHUMMER_AGENT_SELF_HEAL` | स्वयं-उपचार उपकरण-त्रुटि पुनः प्रयास (0=बंद) | `int 0…10` | `0` | तुरंत | ⟩0 इस सीमा तक, सुधारात्मक संकेत के साथ विफल टूल कॉल का पुन: प्रयास करता है। |
## Agent · System prompt
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_LOCALE` | डिफ़ॉल्ट स्थान | `enum: ru-RU \\\| en-US \\\| az-AZ \\\| hy-AM \\\| be-BY \\\| kk-KZ \\\| ky-KG \\\| tg-TJ \\\| tk-TM \\\| uz-UZ \\\| ka-GE \\\| ro-RO \\\| es-ES \\\| zh-CN \\\| fr-FR \\\| de-DE \\\| hi-IN \\\| pl-PL \\\| lt-LT \\\| lv-LV \\\| et-EE \\\| fi-FI \\\| sv-SE \\\| no-NO \\\| da-DK \\\| tr-TR \\\| mn-MN` | `ru-RU` | तुरंत | डिफ़ॉल्ट उत्तर भाषा/स्थान संकेत, उदा. आरयू-आरयू. व्यक्तित्व/संचालक निर्देश ओवरराइड। |
| `AIHUMMER_TIMEZONE` | समयक्षेत्र | `text` | `UTC` | तुरंत | एजेंट की वर्तमान तारीख और बिना अपने समयक्षेत्र वाली अनुसूचियों के लिए IANA समयक्षेत्र, जैसे Europe/Moscow। डिफ़ॉल्ट UTC। |
## Channels
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_CHANNEL_FAILURE_NOTICE` | उत्तर विफल होने पर व्यक्ति को बताएँ | `enum: always \\\| once \\\| off` | `always` | तुरंत | एजेंट उत्तर न दे पाए तो चैनल (Telegram आदि) में व्यक्ति को क्या मिलता है: «हर बार» — उसकी भाषा में छोटा संदेश; «4 घंटे में अधिकतम एक बार» — 4 घंटे में प्रति बातचीत एक संदेश; «न बताएँ» — कुछ नहीं। संदेश में त्रुटि कोड या प्रदाता के नाम नहीं होते; विवरण आप «सत्र» और सूचनाओं में देखते हैं। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BLOCKED` | विफलता संदेश: इंस्टेंस निलंबित है | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BUDGET` | विफलता संदेश: मालिक का बजट समाप्त हो गया | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BUSY` | विफलता संदेश: गेटवे पर अधिक भार है | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_CONFIG` | विफलता संदेश: मॉडल कनेक्शन को मालिक की ज़रूरत है | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_FAILED` | विफलता संदेश: कोई अन्य विफलता | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_QUOTA` | विफलता संदेश: मॉडल की उपयोग सीमा समाप्त हो गई | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_STEP_LIMIT` | विफलता संदेश: काम एक उत्तर में पूरा नहीं हुआ | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_TOO_LONG` | विफलता संदेश: बातचीत मॉडल के लिए बहुत लंबी है | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_UNAVAILABLE` | विफलता संदेश: मॉडल अस्थायी रूप से उपलब्ध नहीं है | `text` | — | तुरंत | खाली छोड़ें — व्यक्ति की अपनी भाषा में अंतर्निहित संदेश भेजा जाएगा। आपका पाठ जैसा लिखा है वैसा ही, उसी भाषा में भेजा जाता है जिसमें आप लिखते हैं; {ref} उत्तर का कोड जोड़ता है, जिससे आप सत्रों में टर्न ढूँढते हैं। तुरंत लागू होता है। |
| `AIHUMMER_CONFIDENTIAL_PERSONA` | गोपनीय वेब व्यक्तित्व | `bool` | `0` | तुरंत | चालू होने पर, वेब-चैट एजेंट अपने व्यक्तित्व/पहचान विवरण का खुलासा नहीं करेगा या जारी नहीं रखेगा और कार्य के उत्तर हाथ में रखेगा - इसे गुमनाम या गोपनीयता-संवेदनशील वेब परिनियोजन के लिए उपयोग करें। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_INBOUND_COALESCE_MS` | संदेश समूहन विंडो (मि.से.) | `int` | `500` | तुरंत | एक व्यक्ति द्वारा एक ही चैट में लगातार भेजे गए कई संदेशों (छोटे संदेश, फ़ोटो एल्बम, त्वरित सुधार) को एक ही उत्तर मिलता है, यदि उनके बीच का विराम इस विंडो से छोटा हो। उत्तर तैयार होते समय आए संदेशों का उत्तर उसके तुरंत बाद दिया जाता है, कभी समानांतर नहीं। डिफ़ॉल्ट 500 मि.से.; 0 = अलग-अलग संदेशों के बीच कोई प्रतीक्षा नहीं; फ़ोटो एल्बम फिर भी एकत्र किया जाता है (3 से. तक के विराम, अधिकतम 20 से.) ताकि उसे एक ही उत्तर मिले। संदेशों को जोड़ना Telegram में काम करता है; Slack, WhatsApp, VK, ईमेल और अन्य कनेक्टर जो हर संदेश के उत्तर की प्रतीक्षा करते हैं (और /v1/inbound/generic के ज़रिए इंटीग्रेशन), हर संदेश का अलग उत्तर पाते हैं — फिर भी एक-एक करके, क्रम से। तुरंत लागू होता है। |
| `AIHUMMER_INBOUND_EDIT_MODE` | जब कोई व्यक्ति उत्तर दिए जा चुके संदेश को संपादित करे | `enum: correct \\\| history` | `correct` | तुरंत | correct — बॉट यह जानते हुए फिर से उत्तर देता है कि यह सुधार है («पहले / अब»); history — संपादन केवल बातचीत का इतिहास सुधारता है, नया उत्तर नहीं (टाइपो के लिए सुविधाजनक)। जिस संदेश का बॉट ने अभी उत्तर नहीं दिया, उसका संपादन हमेशा बस उसका पाठ बदल देता है। वहाँ काम करता है जहाँ चैनल संपादनों की सूचना देता है (Telegram)। तुरंत लागू होता है। |
| `AIHUMMER_INBOUND_QUEUE_MODE` | एजेंट के काम करते समय लिखे गए संदेश | `enum: steer \\\| collect \\\| followup` | `steer` | तुरंत | जब एजेंट अभी उत्तर तैयार कर रहा हो (खोज रहा हो, टूल चला रहा हो) तब वही व्यक्ति जो संदेश भेजता है, उसका क्या होता है: steer (डिफ़ॉल्ट) — एजेंट उसे अपने अगले कदम से पहले देखता है और उसी उत्तर में ध्यान में रखता है; collect — उसका जवाब अगले उत्तर में दिया जाता है। followup — ऐसे हर संदेश को बारी-बारी से अपना अलग उत्तर मिलता है। फ़ोटो, फ़ाइलें, किसी संदेश के जवाब और फ़ॉरवर्ड हमेशा अगले उत्तर की प्रतीक्षा करते हैं। तुरंत लागू होता है। |
| `AIHUMMER_INBOUND_REQUIRE_BINDING` | केवल प्रावधानित उपयोगकर्ताओं को उत्तर दें | `bool` | `true` | तुरंत | सही = बॉट किसी भी चैनल प्रेषक को अनदेखा करता है जो NOT एक प्रावधानित AiHummer उपयोगकर्ता (भूमिका बंधन वाला उपयोगकर्ता) है - यादृच्छिक चैट सदस्यों और अतिथि आमंत्रणों को कोई उत्तर नहीं मिलता है। गलत (डिफ़ॉल्ट) = सभी को उत्तर दें। |
## Integrations
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_A2A_PUBLISH` | Agent2Agent (A2A) पर एजेंट प्रकाशित करें | `bool` | `0` | पुनः आरंभ के बाद | एजेंट को A2A सर्वर (एजेंट कार्ड + POST /a2a/message) के रूप में प्रकाशित करें। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
| `AIHUMMER_MCP_EXPORT_TOOLS` | बाहरी सहायकों के लिए खुले टूल | `multiselect` | — | पुनः आरंभ के बाद | बाह्य MCP क्लाइंट के लिए अनुमत टूल नामों की एक स्पष्ट सूची, अल्पविराम द्वारा अलग की गई। खाली = कोई उपकरण प्रकाशित न करें। खतरनाक होस्ट-स्तरीय कक्षाएं सूचीबद्ध होने पर भी अंतर्निहित नीति द्वारा अतिरिक्त रूप से प्रतिबंधित हैं। प्रारंभ में/पुनः आरंभ होने पर लागू होता है। |
| `AIHUMMER_MCP_PUBLISH` | MCP पर टूल प्रकाशित करें | `bool` | `0` | पुनः आरंभ के बाद | बाहरी सहायकों (जैसे Claude Desktop) को आपके एजेंटों के टूल इस्तेमाल करने देता है। कौन-से टूल खोलने हैं, यह पास की सेटिंग में चुना जाता है: सूची खाली रहने तक कोई नहीं खुलता। |
| `AIHUMMER_MODULE_CPU_QUOTA` | प्लगइन CPU सीमा (प्रत्येक के लिए) | `text` | `75%` | तुरंत | हर प्लगइन प्रोसेसर का कितना हिस्सा ले सकता है (systemd CPUQuota): 75% एक कोर का तीन-चौथाई है, 150% डेढ़ कोर। नया मान प्लगइन को उसकी अगली इंस्टॉलेशन, अपडेट या सेटिंग्स सहेजने पर मिलता है; तब तक चल रहे प्लगइन पुरानी सीमा पर रहते हैं। |
| `AIHUMMER_MODULE_MEMORY_MAX` | प्लगइन मेमोरी सीमा (प्रत्येक के लिए) | `text` | `512M` | तुरंत | हर प्लगइन कितनी मेमोरी ले सकता है (systemd MemoryMax): 512M, 1G या 2048M जैसा आकार (कम से कम 64M), या बिना सीमा के लिए infinity। सीमा पार करने वाले प्लगइन को सिस्टम रोक देता है। नया मान प्लगइन को उसकी अगली इंस्टॉलेशन, अपडेट या सेटिंग्स सहेजने पर मिलता है; तब तक चल रहे प्लगइन पुरानी सीमा पर रहते हैं। |
## Knowledge connectors
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_KB_SYNC_INTERVAL` | ज्ञानकोष को स्रोतों से कितनी बार अपडेट करें | `text` | — | तुरंत | सर्वर जुड़े ज्ञानकोष स्रोतों से बदलाव खुद कितनी बार लेता है। उदाहरण: 30m — हर 30 मिनट, 6h — हर 6 घंटे। खाली या 0 — केवल हाथ से। दोबारा लोड करने से डुप्लिकेट नहीं बनते। Slack निर्यात हाथ से अपलोड किया जाता है। |
## LLM
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AUX_FALLBACK_MODELS` | सेवा कार्य: बैकअप मॉडल | `list` | — | तुरंत | अल्पविराम से अलग मॉडल — सेवा मॉडल विफल होने (कोटा, खराबी) पर क्रम से आज़माए जाते हैं। सारांश न खोए, इसलिए अंत में हमेशा मुख्य मॉडल आज़माया जाता है। हर बदलाव लॉग में दर्ज होता है। तुरंत लागू होता है। |
| `AIHUMMER_AUX_MODEL` | सेवा कार्यों के लिए मॉडल (सारांश, नोट्स, शीर्षक) | `text` | — | तुरंत | पृष्ठभूमि सेवा कार्यों के लिए मॉडल: पुराने इतिहास को सारांश में समेटना, संक्षेपण से पहले स्मृति नोट, बातचीत के शीर्षक, तथ्य निकालना, खोज प्रश्नों को दोबारा लिखना और अनुवाद। खाली = स्वचालित: उसी प्रदाता का सस्ता मॉडल (Claude → claude-haiku-4-5, Codex → gpt-…-luna/mini); ऐसा न हो तो मुख्य मॉडल। "main" = हमेशा मुख्य मॉडल। तुरंत लागू होता है। |
| `AIHUMMER_CASCADE_MIN_CHARS` | कैस्केड: बढ़ाने के लिए न्यूनतम वर्ण | `int` | `0` | तुरंत | अनुरोध-लंबाई सीमा (अक्षर) जिस पर मजबूत कैस्केड मॉडल शुरू होता है। 0 = डिफ़ॉल्ट। |
| `AIHUMMER_CASCADE_STRONG_MODEL` | कैस्केड: मजबूत फ़ॉलबैक मॉडल | `text` | — | तुरंत | लंबे/जटिल अनुरोधों के लिए कैस्केड करने के लिए मॉडल (रिक्त = बंद)। |
| `AIHUMMER_CLAUDE_AUTH_URL` | Claude सदस्यता: साइन-इन पेज का पता | `text` | — | तुरंत | वह पेज जहाँ आप Claude सदस्यता जोड़ने की अनुमति देते हैं। खाली — मानक पता; केवल तभी बदलें जब सहायता टीम कहे। |
| `AIHUMMER_CLAUDE_CLIENT_ID` | Claude सदस्यता: OAuth क्लाइंट आईडी | `text` | — | तुरंत | Claude सदस्यता से साइन इन के लिए ऐप पहचानकर्ता। खाली — मानक; केवल तभी बदलें जब सहायता टीम कहे। |
| `AIHUMMER_CLAUDE_EFFORT` | Claude: सोच की गहराई | `enum: low \\\| medium \\\| high \\\| xhigh \\\| max` | `medium` | तुरंत | जब एजेंट इसे तय नहीं करता, तब Claude मॉडल उत्तर देने से पहले कितनी गहराई से सोचते हैं। अधिक गहराई कठिन कार्यों पर अधिक सटीक है, लेकिन धीमी है और अधिक कोटा खर्च करती है; कम गहराई तेज़ और सस्ती है। जो मॉडल चुने गए स्तर को नहीं जानता, उसे निकटतम निचला स्तर मिलता है; Haiku 4.5 और पुराने मॉडल सोच का समर्थन नहीं करते। एजेंट पर तय की गई गहराई को प्राथमिकता मिलती है। अगले चरण से लागू होता है। |
| `AIHUMMER_CLAUDE_MAX_TOKENS` | Claude: उत्तर की अधिकतम लंबाई (टोकन) | `int` | `16000` | तुरंत | एक Claude उत्तर कितने टोकन ले सकता है — सदस्यता और कुंजी दोनों से। मॉडल का सोचना भी इसी सीमा में गिना जाता है: बहुत कम मान उत्तर को बीच में काट देता है या खाली उत्तर देता है। एजेंट की अपनी उत्तर-लंबाई हो तो वही लागू होती है। |
| `AIHUMMER_CLAUDE_REDIRECT_URI` | Claude सदस्यता: यूआरआई रीडायरेक्ट करें | `text` | — | तुरंत | आपूर्तिकर्ता के पास पंजीकृत वापसी पता। इसके पक्ष में जो कॉन्फ़िगर किया गया है उससे मेल खाना चाहिए, अन्यथा कोड एक्सचेंज अस्वीकार कर दिया जाता है। |
| `AIHUMMER_CLAUDE_TOKEN_URL` | Claude सदस्यता: पहुँच पता | `text` | — | तुरंत | वह पता जहाँ से सर्वर Claude सदस्यता की पहुँच लेता और नवीनीकृत करता है। खाली — मानक पता; केवल तभी बदलें जब सहायता टीम कहे। |
| `AIHUMMER_CODEX_BASE_URL` | कोडेक्स आधार URL | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | कोडेक्स (चैटजीपीटी सदस्यता) परिवहन का आधार। स्टार्टअप पर/पुनः आरंभ के बाद लागू किया गया। |
| `AIHUMMER_CODEX_MAX_OUTPUT_TOKENS` | अधिकतम आउटपुट टोकन (0 = कोई सीमा नहीं) | `int` | `0` | तुरंत | चैट टर्न के लिए max_output_tokens कैप। 0 = कोई सीमा नहीं. तर्क मॉडल पर तर्क टोकन भी इस बजट के विरुद्ध गिने जाते हैं, इसलिए बहुत छोटा मान एक खाली 'अपूर्ण: max_output_tokens' उत्तर देता है। तुरंत लागू (कोई पुनरारंभ नहीं)। |
| `AIHUMMER_CODEX_MODEL` | मॉडल आईडी (कोडेक्स / gpt-5.5 ट्रांसपोर्ट) | `text` | `gpt-5.5` | आंशिक रूप से पुनः आरंभ के बाद | प्राथमिक Codex/ChatGPT ट्रांसपोर्ट की मॉडल आईडी (उदाहरण के लिए gpt-5.5, gpt-5.5-codex)। स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है। |
| `AIHUMMER_CODEX_REASONING_EFFORT` | तर्क करने का प्रयास | `enum: none \\\| low \\\| medium \\\| high \\\| xhigh` | `medium` | तुरंत | एजेंट में सेट न होने पर ChatGPT (Codex) मॉडल उत्तर से पहले कितनी गहराई से सोचे। डिफ़ॉल्ट — «मध्यम»। अधिक — सटीक, पर धीमा और महँगा। |
| `AIHUMMER_LLM_CALL_TIMEOUT_S` | प्रति-कॉल टाइमआउट (सेकंड) | `int` | `120` | तुरंत | एक अनुरोध पर मॉडल के उत्तर का कितने सेकंड इंतज़ार करें। मॉडल इससे अधिक चुप रहे तो अनुरोध रोक दिया जाता है और उत्तर सूची के अगले मॉडल को जाता है। Claude के लिए पूरे उत्तर नहीं, उत्तर-धारा में विराम गिना जाता है: लंबा पर चलता उत्तर नहीं कटता। 0 — कोई सीमा नहीं। |
| `AIHUMMER_LLM_FALLBACK_MODELS` | बैकअप मॉडल (सभी एजेंटों के लिए) | `text` | `auto` | तुरंत | जब मुख्य मॉडल और बाकी प्रदाता विफल हों (उपयोग सीमा समाप्त, खराबी, बहुत अधिक अनुरोध), तब कौन जवाब देगा। auto — अंतिम विकल्प के रूप में हर प्रदाता का सस्ता मॉडल (Claude: claude-haiku-4-5, Codex: gpt-…-luna/mini); अल्पविराम से अलग सूची — आपका अपना क्रम, हर मॉडल अपने निर्माता के प्रदाताओं के पास जाता है; off — कोई बैकअप मॉडल नहीं। एजेंट का अपना बैकअप मॉडल प्राथमिक है। तुरंत लागू होता है। |
| `AIHUMMER_LLM_GATEWAY_URL` | LLM गेटवे URL | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | OpenAI-संगत मॉडल एंडपॉइंट का बेस URL एजेंट कॉल करता है (आपका स्थानीय llama.cpp/vLLM/Ollama सर्वर या एक होस्टेड गेटवे)। प्रदाता के डिफ़ॉल्ट समापन बिंदु का उपयोग करने के लिए खाली छोड़ दें। |
| `AIHUMMER_LLM_MODEL` | LLM मॉडल | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | प्रत्येक मोड़ पर प्रदाता को मॉडल नाम/आईडी भेजा जाता है (वह मॉडल जो आपका एंडपॉइंट कार्य करता है)। उस मॉडल से मेल खाना चाहिए जो समापन बिंदु वास्तव में उजागर करता है। |
| `AIHUMMER_LLM_PAUSE_AUTH_MIN` | क्रेडेंशियल अस्वीकार होने के बाद विराम, मिनट | `int` | `10` | तुरंत | क्रेडेंशियल अस्वीकार करने वाले प्रदाता से कितने मिनट तक न पूछा जाए। हर दोहराव विराम को दोगुना करता है, पर पहले के छह गुना से अधिक नहीं। सफल कनेक्शन जाँच या «अभी फिर शुरू करें» बटन प्रदाता को तुरंत लौटा देता है। अगली विफलता से लागू होता है। |
| `AIHUMMER_LLM_PAUSE_MODEL_MIN` | प्रदाता द्वारा न दिए जाने वाले मॉडल का विराम, मिनट | `int` | `60` | तुरंत | जिस मॉडल के बारे में प्रदाता ने कहा कि वह उसे नहीं देता, उसे कितने मिनट तक प्रदाता को न दिया जाए; उसके अन्य मॉडलों से सामान्य रूप से पूछा जाता है। अगली विफलता से लागू होता है। |
| `AIHUMMER_LLM_PAUSE_QUOTA_MIN` | सीमा समाप्त होने के बाद विराम, मिनट | `int` | `300` | तुरंत | जब उपयोग सीमा समाप्त हो जाए और प्रदाता रीसेट का समय न बताए, तो कितने मिनट तक मॉडल से (या खाते की सीमा समाप्त होने पर — Codex, OpenAI कुंजी, भुगतान — पूरे खाते से) न पूछा जाए। हर दोहराव विराम को दोगुना करता है, पर एक दिन से अधिक नहीं। प्रदाता द्वारा बताया गया समय प्राथमिक है। अगली विफलता से लागू होता है। |
| `AIHUMMER_LLM_PAUSE_SHORT_S` | गड़बड़ी के बाद प्रदाता का विराम, सेकंड | `int` | `30` | तुरंत | गड़बड़ी, कनेक्शन टूटने या «बहुत अधिक अनुरोध» के बाद कितने सेकंड तक प्रदाता से न पूछा जाए। लगातार दूसरी विफलता विराम को दोगुना करती है, तीसरी और आगे की दस गुना। यदि प्रदाता स्वयं समय बताए, तो उसी की प्रतीक्षा होती है। अगली विफलता से लागू होता है। |
| `AIHUMMER_LLM_PROVIDER` | LLM प्रदाता | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | किस मॉडल बैकएंड का उपयोग करना है (एक OpenAI-संगत एंडपॉइंट या कोडेक्स/चैटजीपीटी-सब्सक्रिप्शन ट्रांसपोर्ट)। यह तय करता है कि अनुरोध कैसे भेजे जाएं और प्रमाणित किए जाएं। |
| `AIHUMMER_LLM_RETRIES` | LLM क्षणिक त्रुटि पर पुनः प्रयास करता है | `int` | `3` | तुरंत | एक क्षणिक त्रुटि पर LLM अनुरोध पुनः प्रयास की संख्या। |
| `AIHUMMER_LLM_TEMPERATURE` | तापमान | `text` | — | तुरंत | एजेंट में सेट न होने पर मॉडल के उत्तर कितने विविध हों (0–2): कम — अधिक सटीक और पूर्वानुमेय, अधिक — ज़्यादा जीवंत। खाली — मॉडल खुद तय करता है। सोचने वाले मॉडल (ChatGPT/Codex, Claude पीढ़ी 5) इसे स्वीकार नहीं करते — उनके लिए फ़ील्ड खाली छोड़ें। |
| `AIHUMMER_LLM_TOP_P` | टॉप-पी (नाभिक नमूनाकरण) | `text` | — | तुरंत | एजेंट में सेट न होने पर उत्तरों को विविध बनाने का एक और तरीका (0–1)। खाली — मॉडल खुद तय करता है। आम तौर पर एक ही सेट करते हैं: या तापमान, या यह; सोचने वाले मॉडल इसे स्वीकार नहीं करते। |
| `AIHUMMER_MODEL_GUARD_INTERVAL_MIN` | एजेंट मॉडल जाँच: अंतराल, मिनट | `int` | `60` | तुरंत | कितनी बार जाँचना है कि प्रत्येक एजेंट का मॉडल किसी सक्षम प्रदाता द्वारा दिया जाता है। एजेंट का मॉडल कभी नहीं बदला जाता: जब तक कोई उसे नहीं देता, उत्तर क्रम का पहला ऐसा मॉडल उत्तर देता है जो विराम पर नहीं है, और एक सूचना एजेंटों के नाम बताती है — और एक और, जब उनका मॉडल लौट आता है। गेटवे के शुरू होने पर जाँच सदैव होती है, और 0 केवल दोहराव बंद करता है। नया अंतराल एक मिनट के भीतर लागू होता है। |
| `AIHUMMER_OPENAI_API` | OpenAI API शैली (चैट \| प्रतिक्रियाएँ) | `enum: \\\| chat \\\| responses` | — | आंशिक रूप से पुनः आरंभ के बाद | चैट = /चैट/पूर्णता, प्रतिक्रियाएं = /प्रतिक्रियाएं। रिक्त = स्वतः/डिफ़ॉल्ट. स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है। |
| `AIHUMMER_OPENAI_API_KEY` | नेटिव OpenAI API कुंजी (परिनियोजन डिफ़ॉल्ट) | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | मूल OpenAI लूप के लिए आपकी OpenAI खाता कुंजी (यदि आप डिफ़ॉल्ट प्रदाता के रूप में OpenAI का उपयोग करते हैं)। मॉडल पृष्ठ पर प्रति-कार्यस्थान BYOK के साथ भ्रमित न हों। स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है। |
| `AIHUMMER_OPENAI_BASE_URL` | मूल OpenAI आधार URL | `text` | — | पुनः आरंभ के बाद | OpenAI-संगत का आधार API (उदाहरण के लिए https://api.openai.com/v1). स्टार्टअप पर/पुनरारंभ के बाद लागू किया जाता है। |
| `AIHUMMER_OPENAI_MODEL` | नेटिव ओपनएआई मॉडल | `text` | — | पुनः आरंभ के बाद | मूल OpenAI लूप के लिए मॉडल (जब AIHUMMER_OPENAI_API_KEY पर लागू होता है)। स्टार्टअप/पुनरारंभ के बाद। |
| `AIHUMMER_ROUTER_COMPLEX_MODEL` | राउटर: जटिल मोड़ के लिए मॉडल | `text` | — | तुरंत | जिस एजेंट का अपना मॉडल नहीं है, उसके जटिल अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है। |
| `AIHUMMER_ROUTER_SIMPLE_MODEL` | राउटर: सरल मोड़ के लिए मॉडल | `text` | — | तुरंत | जिस एजेंट का अपना मॉडल नहीं है, उसके सरल अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है। |
| `AIHUMMER_ROUTER_STANDARD_MODEL` | राउटर: मानक मोड़ के लिए मॉडल | `text` | — | तुरंत | जिस एजेंट का अपना मॉडल नहीं है, उसके सामान्य अनुरोधों के लिए मॉडल (रिक्त = स्तर बंद)। अगले चरण से लागू होता है। |
| `AIHUMMER_SUBSCRIPTION_QUOTA_REFRESH_MIN` | सदस्यता कोटा: जाँच अवधि, मिनट | `int` | `15` | तुरंत | पैनल ChatGPT (Codex) से सदस्यता कोटा विंडो कितनी बार पूछता है: प्रति अवधि अधिकतम एक बार, 5 मिनट से अधिक बार नहीं, और केवल तब जब कोटा खुले हों; बीच में सहेजी गई प्रति दिखाई जाती है। Claude से कभी नहीं पूछा जाता: उसकी सीमाएँ हमारा अनुमान हैं। कोटा अगली बार खोलने पर लागू होता है। |
## Media
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_DEEPGRAM_API_KEY` | डीपग्राम API कुंजी | `text` | — | तुरंत | Deepgram सेवा की कुंजी — ज़रूरी है अगर वॉइस संदेश Deepgram पहचानता है। खाली हो तो पास की सेटिंग की साझा वाक्-पहचान कुंजी ली जाती है। तुरंत लागू होता है। |
| `AIHUMMER_DEEPGRAM_DETECT_LANGUAGE` | Deepgram भाषा पहचान | `bool` | `0` | तुरंत | तय भाषा भेजने के बजाय भाषा पहचानें। तुरंत लागू होता है। |
| `AIHUMMER_DEEPGRAM_MODEL` | डीपग्राम मॉडल | `text` | `nova-2` | तुरंत | Deepgram मॉडल (जैसे nova-2, nova-3, base)। कुंजी के लिए प्रोजेक्ट की पहुंच पर निर्भर करता है। तुरंत लागू होता है। |
| `AIHUMMER_DEEPGRAM_PUNCTUATE` | Deepgram विराम चिह्न | `bool` | `1` | तुरंत | विराम चिह्न और बड़े अक्षर जोड़ें। तुरंत लागू होता है। |
| `AIHUMMER_DEEPGRAM_SMART_FORMAT` | Deepgram स्मार्ट फ़ॉर्मैटिंग | `bool` | `1` | तुरंत | पहचानी गई संख्याओं और तारीखों का प्रारूप सुधारें। तुरंत लागू होता है। |
| `AIHUMMER_DEEPGRAM_URL` | डीपग्राम बेस URL | `text` | — | तुरंत | डीपग्राम API आधार। रिक्त = https://api.deepgram.com. तुरंत लागू होता है। |
| `AIHUMMER_IMAGE_BASE_URL` | छवि API आधार URL (OpenAI फ़ॉलबैक) | `text` | — | तुरंत | OpenAI कुंजी के माध्यम से काम करते समय /images API का आधार (रिक्त = https://api.openai.com/v1). |
| `AIHUMMER_IMAGE_MODEL` | छवि-जनरेशन मॉडल | `text` | — | तुरंत | image_generate के लिए मॉडल (डिफ़ॉल्ट gpt-image-2)। |
| `AIHUMMER_MEDIA_MAX_UPLOAD_MB` | मीडिया अधिकतम अपलोड आकार (एमबी) | `int` | `256` | तुरंत | एक बार में अपलोड की जा सकने वाली सबसे बड़ी फ़ाइल (फ़ोटो, वॉइस संदेश, वीडियो), मेगाबाइट में। सर्वर डिस्क को भरने से बचाता है। डिफ़ॉल्ट 256। तुरंत लागू होता है। |
| `AIHUMMER_SIDECAR_STT` | इस सर्वर पर वाक् पहचान (faster-whisper) | `bool` | `0` | तुरंत | स्थानीय वाक् पहचान (faster-whisper)। पैकेज में शामिल नहीं: हस्ताक्षरित ऐड-ऑन डाउनलोड सक्षम करें (पायथन के सभी संस्करणों के लिए ~ 620 MiB) और होस्ट पर सेवा स्थापित करें। 🔴 ऐड-ऑन एक अलग विक्रेता निर्णय द्वारा प्रकाशित किया जाता है (इसके पैकेज जीपीएल के तहत एफएफएमपीईजी ले जाते हैं); यदि इसे आपकी रिलीज़ के लिए प्रकाशित नहीं किया गया है, तो यह इसके बारे में ईमानदार होगा और कुछ भी नहीं तोड़ेगा। क्लाउड योजना: पहचान प्रदाता द्वारा कॉन्फ़िगर की गई है। |
| `AIHUMMER_SIDECAR_TTS` | उत्तरों की आवाज़ (edge-tts) | `bool` | `0` | तुरंत | वाक् संश्लेषण (edge-tts, आवाजें Microsoft Edge)। पैकेज में शामिल नहीं है: सक्षम करने से हस्ताक्षरित ऐड-ऑन (~26 MiB) डाउनलोड होता है और होस्ट पर सेवा स्थापित होती है। वोटों के लिए संश्लेषण स्वयं ऑनलाइन हो जाता है - यहां "ऑफ़लाइन" का तात्पर्य पैकेज को स्थापित करने से है, काम करने से नहीं। |
| `AIHUMMER_STT_API_KEY` | STT API कुंजी (वैकल्पिक) | `text` | — | तुरंत | वाक्-पहचान सेवा की एक्सेस कुंजी, अगर वह माँगती है। इस सर्वर की सेवा के लिए इसे इंस्टॉलर सेट करता है — बदलने की ज़रूरत नहीं। तुरंत लागू होता है। |
| `AIHUMMER_STT_ENGINE` | STT इंजन | `enum: auto \\\| faster-whisper \\\| deepgram \\\| codex \\\| off` | `auto` | तुरंत | वॉइस संदेशों को किससे लिखित रूप में बदला जाए। ऑटो (डिफ़ॉल्ट): अगर Deepgram की कुंजी सेट है तो Deepgram, नहीं तो स्थानीय सेवा अगर वह इंस्टॉल है (ऊपर का स्विच), नहीं तो कुछ नहीं — और बॉट भेजने वाले को ईमानदारी से बताता है कि वह अभी सुन नहीं सकता। faster-whisper: स्थानीय सेवा या संगत बाहरी /v1/audio/transcriptions। deepgram: अपनी कुंजी के साथ क्लाउड Deepgram। codex: जुड़ी हुई ChatGPT सदस्यता (मॉडल → ChatGPT कनेक्ट करें), उसका कोटा खर्च होता है। off: लिखित रूप में न बदलें। तुरंत लागू होता है। |
| `AIHUMMER_STT_LANGUAGE` | STT भाषा | `text` | — | तुरंत | पहचान भाषा (BCP-47, उदाहरण के लिए ru/en)। deepgram इंजन (nova-2 मॉडल) द्वारा उपयोग की जाती है। रिक्त = स्वतः-पहचान/इंजन डिफ़ॉल्ट। तुरंत लागू होता है। |
| `AIHUMMER_STT_MODEL` | STT मॉडल | `text` | `Systran/faster-whisper-small` | तुरंत | तेज़-व्हिस्पर मॉडल (उदाहरण के लिए छोटा/मध्यम/बड़ा-v3 या सिस्ट्रान/तेज़-व्हिस्पर-⟨size⟩)। तुरंत लागू होता है। |
| `AIHUMMER_TTS_API_KEY` | TTS API कुंजी (edge-tts) | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | आवाज़ सेवा की एक्सेस कुंजी। इंस्टॉलेशन के समय अपने-आप सेट होती है — बदलने की ज़रूरत नहीं। |
| `AIHUMMER_TTS_ENABLED` | पाठ-से-वाक् सक्षम | `bool` | `1` | आंशिक रूप से पुनः आरंभ के बाद | एजेंट को आवाज़ में उत्तर देने देता है। इसके लिए आवाज़ सेवा चाहिए — उसे ऊपर «अतिरिक्त सेवाएँ» अनुभाग में इंस्टॉल करें। |
| `AIHUMMER_TTS_MODEL` | TTS मॉडल | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | एज-टीटीएस सेवा के लिए मॉडल नाम। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
| `AIHUMMER_TTS_VOICE` | TTS आवाज | `enum: de-DE-FlorianMultilingualNeural \\\| de-DE-SeraphinaMultilingualNeural \\\| en-US-AndrewMultilingualNeural \\\| en-US-AvaMultilingualNeural \\\| en-US-BrianMultilingualNeural \\\| en-US-EmmaMultilingualNeural \\\| fr-FR-RemyMultilingualNeural \\\| fr-FR-VivienneMultilingualNeural \\\| ru-RU-SvetlanaNeural \\\| ru-RU-DmitryNeural \\\| en-US-JennyNeural \\\| en-US-GuyNeural \\\| en-GB-SoniaNeural \\\| de-DE-KatjaNeural \\\| fr-FR-DeniseNeural \\\| es-ES-ElviraNeural \\\| tr-TR-EmelNeural \\\| pl-PL-ZofiaNeural \\\| zh-CN-XiaoxiaoNeural` | `de-DE-FlorianMultilingualNeural` | आंशिक रूप से पुनः आरंभ के बाद | डिफ़ॉल्ट एज-टीटीएस आवाज (बहुभाषी, रूसी सहित)। स्टार्टअप पर/पुनः आरंभ के बाद लागू किया गया। |
| `AIHUMMER_VIDEO_API_KEY` | वीडियो विश्लेषण API कुंजी | `text` | — | तुरंत | वीडियो विश्लेषण सेवा की एक्सेस कुंजी, अगर वह माँगती है। खाली — सेवा बिना कुंजी के उपयोग होती है। |
## Media · Voice
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_TTS_AUTO_REPLY` | अपने आप ध्वनि में जवाब | `enum: off \\\| always \\\| inbound \\\| tagged` | `inbound` | तुरंत | बंद, हमेशा, ऑडियो मिलने पर या स्पष्ट संकेत पर। हर बातचीत के लिए बदल सकते हैं। |
| `AIHUMMER_TTS_MAX_CHARS` | बोले जाने वाले जवाब की अक्षर सीमा | `int` | `0` | तुरंत | 0: पूरा पाठ; 100–10000: बोले जाने वाले पाठ की सीमा। पूरा जवाब इतिहास में रहता है। |
| `AIHUMMER_TTS_SUMMARIZE` | लंबे ध्वनि जवाबों का सारांश | `bool` | `1` | तुरंत | लंबे जवाब का बोलने के लिए सारांश बनाएँ। विफल होने पर सीमा के भीतर शुरुआती भाग पढ़ें। |
| `AIHUMMER_VOICE_AEC` | इको रद्दीकरण (AEC) | `bool` | `1` | तुरंत | गूँज हटाता है: स्पीकर से एजेंट की अपनी आवाज़ माइक्रोफ़ोन में वापस नहीं जाती और बातचीत नहीं रोकती। केवल तभी बंद करें जब हेडसेट में आवाज़ विकृत लगे। |
| `AIHUMMER_VOICE_AGC` | ऑटो गेन नियंत्रण | `bool` | `1` | तुरंत | आवाज़ मोड में माइक्रोफ़ोन का स्वचालित गेन नियंत्रण (WebRTC autoGainControl) आवश्यक करें। |
| `AIHUMMER_VOICE_BARGEIN_FRAMES` | एजेंट को रोकना: कितनी देर बोलना होगा | `int` | `5` | तुरंत | एजेंट के चुप होकर सुनने के लिए कितना बोलना होगा (20 ms के फ़्रेम में)। डिफ़ॉल्ट 5 — लगभग 0.1 सेकंड। |
| `AIHUMMER_VOICE_DUPLEX` | लाइव फुल-डुप्लेक्स आवाज | `bool` | `0` | तुरंत | लाइव फुल-डुप्लेक्स मोड (स्ट्रीमिंग + VAD + बार्ज-इन) सक्षम करता है। तुरंत लागू होता है। |
| `AIHUMMER_VOICE_NOISE_SUPPRESSION` | शोर दमन | `bool` | `1` | तुरंत | आवाज़ मोड में माइक्रोफ़ोन से रिकॉर्डिंग के समय शोर दमन (WebRTC noiseSuppression) आवश्यक करें। |
| `AIHUMMER_VOICE_VAD_THRESHOLD` | आवाज़ संवेदनशीलता (0–1) | `text` | `0.02` | तुरंत | किस आवाज़ स्तर से ध्वनि को बोलना माना जाए। कम — अधिक संवेदनशील: एजेंट धीमी आवाज़ सुनेगा, पर आसपास का शोर भी। डिफ़ॉल्ट 0.02। |
## Memory
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_EMBEDDER_DIM` | अर्थ-खोज मॉडल का आयाम | `int` | `768` | पुनः आरंभ के बाद | वेक्टर आयाम — मॉडल से मेल खाना चाहिए (बहुभाषी-e5-base=768, bge-m3=1024). |
| `AIHUMMER_EMBEDDER_KEEPALIVE` | एम्बेडर को जीवित रखें | `text` | `5m` | पुनः आरंभ के बाद | अंतिम अनुरोध के बाद अर्थ-खोज मॉडल कितनी देर लोड रहता है (केवल «अर्थ से» मोड में)। डिफ़ॉल्ट 5m — 5 मिनट: फिर मॉडल उतार दिया जाता है और मेमोरी व प्रोसेसर खाली करता है। हमेशा रखना (-1) अनुशंसित नहीं: अटका मॉडल दिनों तक एक प्रोसेसर कोर घेर सकता है। प्रारूप: 30s, 5m, 1h। |
| `AIHUMMER_EMBEDDER_MODEL` | अर्थ-खोज मॉडल | `text` | `yxchia/multilingual-e5-base` | पुनः आरंभ के बाद | वह मॉडल जो स्मृति में अर्थ से खोजने में मदद करता है। डिफ़ॉल्ट multilingual-e5-base रूसी समझता है, हल्का है और सामान्य प्रोसेसर पर तेज़ चलता है। GPU पर बेहतर गुणवत्ता के लिए bge-m3 उपयुक्त है, पर तब पास की आयाम सेटिंग में 1024 लिखें: संख्या मॉडल से मेल खानी चाहिए। |
| `AIHUMMER_EMBEDDER_PASSAGE_PREFIX` | एम्बेडर पैसेज उपसर्ग | `text` | — | पुनः आरंभ के बाद | संग्रहीत-दस्तावेज़ उपसर्ग को ओवरराइड करें (e5 मॉडल स्वचालित रूप से "पैसेज:") का उपयोग करें। मॉडल नाम से स्वत: पता लगाने के लिए खाली छोड़ दें। |
| `AIHUMMER_EMBEDDER_QUERY_PREFIX` | एंबेडर क्वेरी उपसर्ग | `text` | — | पुनः आरंभ के बाद | पुनर्प्राप्ति-क्वेरी उपसर्ग को ओवरराइड करें (e5 मॉडल स्वचालित रूप से "क्वेरी:") का उपयोग करते हैं। मॉडल नाम से स्वत: पता लगाने के लिए खाली छोड़ दें। |
| `AIHUMMER_EMBEDDER_THREADS` | एम्बेडर के प्रोसेसर थ्रेड | `int 0…256` | `0` | पुनः आरंभ के बाद | अर्थ से खोज वाला मॉडल एक अनुरोध के लिए प्रोसेसर के कितने थ्रेड लेता है। 0 — अपने आप: सर्वर के थ्रेड का आधा, पर कम से कम 2। सीमा के बिना कमज़ोर सर्वर पर ज्ञान आधार के वेक्टर दोबारा गिनना घंटों तक पूरा प्रोसेसर घेरे रखता था और एजेंटों के जवाब धीमे करता था। ज़्यादा — दोबारा गिनना तेज़, पर बोझ भारी। |
| `AIHUMMER_MEMORY_AGENT_WRITES` | एजेंट द्वारा स्वयं सहेजे गए तथ्य | `enum: strangers \\\| immediate \\\| review` | `strangers` | तुरंत | एजेंट जो खुद याद रखता है उसका क्या होता है — जैसे «याद रखो» अनुरोध पर। «सीधे स्मृति में; अजनबियों से — समीक्षा के लिए» (डिफ़ॉल्ट) — यदि मालिक या एजेंट के भरोसेमंद लोगों ने कहा हो तो सीधे स्मृति में; बाकी सभी से — समीक्षा के लिए। «सीधे स्मृति में» — एजेंट उसे तुरंत खोज लेगा। «समीक्षा के लिए» — पहले «स्मृति → समीक्षा» कतार में; उत्तरों में आपकी मंज़ूरी के बाद ही आता है। एजेंट कार्ड (स्मृति → सेटिंग्स) में अपना मोड चुना जा सकता है। |
| `AIHUMMER_MEMORY_AUTOREPAIR` | मेमोरी की स्वचालित मरम्मत | `bool` | `1` | तुरंत | स्व-जाँच के बाद मेमोरी की मरम्मत: डुप्लिकेट मिलाना, स्पष्ट विजेता वाले विरोधाभास बंद करना (किसी व्यक्ति की पुष्टि, बाद की घटना-तिथि, अधिक भरोसेमंद स्रोत), पुष्ट चिह्नित उन तथ्यों को उनके स्रोतों से दोबारा जाँचना जिनकी किसी व्यक्ति ने पुष्टि नहीं की (अपुष्ट समीक्षा में जाते हैं, कुछ भी हटाया नहीं जाता)। विवादित केवल कतार में जाता है। हर सुधार पूर्ववत बटन के साथ लॉग होता है; यदि दौर के बाद मेमोरी तथ्य बदतर ढूँढे, तो दौर खुद को वापस ले लेता है और आपको सूचना मिलती है। तुरंत लागू होता है, पुनः आरंभ की ज़रूरत नहीं। |
| `AIHUMMER_MEMORY_CAPTURE` | मेमोरी कैप्चर मोड | `enum: auto \\\| review \\\| off` | `review` | तुरंत | हर उत्तर के बाद बातचीत में एजेंट जो तथ्य खुद देखता है, उनका क्या करें। «समीक्षा के लिए» — «स्मृति → समीक्षा» कतार में: उत्तरों में वे आपकी मंज़ूरी के बाद ही आते हैं। «सीधे स्मृति में» — बिना जाँच: तेज़, पर ज़्यादा फालतू। «सहेजें नहीं» — बातचीत से तथ्य नहीं निकालना। अनुरोध पर एजेंट क्या याद रखे, यह अलग से सेट होता है। |
| `AIHUMMER_MEMORY_CONTEXT_TIMEOUT` | मेमोरी हाइड्रेशन टाइमआउट | `text` | `3s` | तुरंत | उत्तर शुरू करने से पहले एजेंट उपयुक्त यादें मिलने का कितनी देर इंतज़ार करता है। खोज समय पर न हो तो एजेंट अटकता नहीं, उनके बिना उत्तर देता है। उदाहरण: 2s — 2 सेकंड, 1500ms — 1.5 सेकंड। 0 — जितना चाहिए उतना इंतज़ार। |
| `AIHUMMER_MEMORY_DIARY_BOOT` | सत्र की शुरुआत में एजेंट की डायरी | `bool` | `1` | तुरंत | किसी भी चैनल पर सत्र की हर बारी में एजेंट के सामने आज और कल की उसकी डायरी रखें: पिछले सत्रों के नोट्स, रात का सारांश और एजेंट की अपनी प्रविष्टियाँ। केवल वर्तमान वार्ताकार से जुड़ी और साझा (आपकी, अपलोड की गई) प्रविष्टियाँ दिखाई जाती हैं — एक ग्राहक कभी दूसरे की प्रविष्टियाँ नहीं देखता। अधिकतम ~6000 अक्षर; बाकी एजेंट खुद पढ़ता है (memory_get)। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_DIARY_HOUR` | रात के सारांश का समय (घंटा) | `int` | `3` | तुरंत | पिछले दिन का सारांश किस घंटे के बाद (0–23, इंस्टेंस के समय क्षेत्र के अनुसार) लिखा जाए। डिफ़ॉल्ट 3 — रात में, जब दिन की बातचीत खत्म हो जाती है। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_DIARY_NIGHTLY` | एजेंट की डायरी में रात का दैनिक सारांश | `bool` | `1` | तुरंत | दिन में एक बार एजेंट की डायरी में पिछले दिन का सारांश लिखें — हर उस व्यक्ति के लिए अलग से जिससे उसने बात की (उस व्यक्ति के सभी चैनल एक साथ): क्या माँगा गया और क्या किया गया, सहमतियाँ, तारीखों वाले काम। हर एजेंट और व्यक्ति के लिए सेवा कार्यों वाले मॉडल की एक कॉल, हर 10 मिनट के एक रन में अधिकतम 3; छूटे हुए दिन एक सप्ताह पीछे तक पूरे किए जाते हैं। «याद मत रखो» वाली बातचीत छोड़ दी जाती है। मेमोरी कैप्चर बंद होने पर नहीं लिखा जाता। पिछले रन का परिणाम एजेंट कार्ड → मेमोरी → डायरी में दिखता है। तुरंत लागू, पुनरारंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_DREAM_INTERVAL` | ड्रीम पास अंतराल | `string` | `1h` | तुरंत | सेल्फ-मेंटेनिंग ड्रीम पास स्कैन कितनी बार सभी क्षेत्रों में विरोधाभासों के दावों की समीक्षा करता है (गो अवधि, उदाहरण के लिए 30 मिनट/1 घंटा/6 घंटा)। अक्षम करने के लिए 0 सेट करें। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_EXTRACT` | LLM तथ्य निष्कर्षण | `bool` | `1` | तुरंत | कच्चे वाक्य अंशों को संग्रहीत करने के बजाय LLM (डिफ़ॉल्ट चालू) के माध्यम से सामान्यीकृत विषय/विधेय/वस्तु तथ्यों को निकालें - जो ग्राफ़/विरोधाभास/स्वप्न मशीनरी को सक्रिय करने के लिए आवश्यक है। प्रति कैप्चर किए गए संदेश में एक LLM कॉल जोड़ता है; कॉल को सेव करने के लिए निकल पड़ा। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_MEANING_TIMEOUT` | अर्थ से खोज की समय सीमा | `text` | `4s` | तुरंत | स्मृति और ज्ञान आधार में खोज अर्थ से खोज के लिए कितनी देर प्रतीक्षा करती है। यदि अर्थ मॉडल व्यस्त है (जैसे आयात के बाद वेक्टर गिन रहा है) और समय पर उत्तर नहीं देता, तो एजेंट दसियों सेकंड प्रतीक्षा करने के बजाय शब्दों से मिला परिणाम टिप्पणी के साथ तुरंत पाता है। उदाहरण: 4s — 4 सेकंड, 1500ms — 1.5 सेकंड। 0 — जितनी ज़रूरत हो उतनी प्रतीक्षा। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_QUALITY_CHECK` | मेमोरी की दैनिक स्व-जाँच | `bool` | `1` | तुरंत | दिन में एक बार मेमोरी अपने पुष्ट तथ्यों के बारे में खुद से जाँच-प्रश्न पूछती है (अधिकतम 60 तथ्य, हर दिन वही प्रश्न) और ऐसे प्रश्न भी जिनका उत्तर नहीं है, उन्हें मेमोरी खोज और स्वचालित स्मरण से गुज़ारती है और रिकॉल, प्रिसिज़न, MRR तथा गलत स्मरण मापती है। परिणाम और दिन-वार चार्ट: मेमोरी → मेमोरी की गुणवत्ता। नए तथ्यों के प्रश्न सेवा मॉडल एक बार लिखता है (वही जो बातचीत से तथ्य निकालता है; उसके बिना — टेम्पलेट से); परिणाम इंस्टेंस पर ही रहते हैं। तुरंत लागू होता है, पुनः आरंभ की ज़रूरत नहीं। |
| `AIHUMMER_MEMORY_RECALL` | स्वचालित मेमोरी स्मरण | `enum: strong \\\| always \\\| off` | `strong` | तुरंत | स्मृति में मिली चीज़ को उत्तर में अपने-आप जोड़ें या नहीं। «केवल मज़बूत मिलान» — तथ्य कम से कम दो ज़रूरी शब्दों में संदेश से मेल खाए; अभिवादन और «ok» पर स्मृति नहीं जुड़ती। «सब मिलता-जुलता» — जो कुछ भी मिला, और जुड़ी प्रविष्टियाँ: ज़्यादा फालतू। «न जोड़ें» — एजेंट ज़रूरत लगने पर खुद स्मृति में खोजता है। |
| `AIHUMMER_MEMORY_RECALL_MAX` | प्रति उत्तर तथ्य | `int` | `5` | तुरंत | एक उत्तर में जोड़े जाने वाले मेमोरी तथ्यों की अधिकतम संख्या (डिफ़ॉल्ट 5)। एक ही तथ्य के अलग-अलग रूप एक माने जाते हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_RECALL_MIN_SCORE` | स्वचालित स्मरण के लिए न्यूनतम मिलान, % | `int` | `10` | तुरंत | किसी तथ्य को स्वचालित रूप से जोड़ने के लिए उसे संदेश के सार्थक शब्दों (दुर्लभता के अनुसार भारित) का कितना प्रतिशत कवर करना चाहिए। डिफ़ॉल्ट 10 — वास्तविक बातचीत पर समायोजित। अधिक = कम बार और अधिक सटीक, कम = अधिक बार और अधिक शोर। स्पष्ट memory_search खोज पर इसका असर नहीं होता। 0 = कोई सीमा नहीं: दो मेल खाते सार्थक शब्द काफ़ी हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_RECALL_MIN_SIMILARITY` | स्वचालित समावेश के लिए न्यूनतम अर्थ-समानता, % | `int` | `86` | तुरंत | केवल अर्थ के आधार पर मेमोरी खोज (एम्बेडर) के लिए: स्वचालित रूप से जोड़े जाने के लिए कोई तथ्य संदेश से अर्थ में कितना निकट होना चाहिए, समानता प्रतिशत में। डिफ़ॉल्ट 86 — असली मेमोरी पर multilingual-e5-base मॉडल के लिए चुना गया: इससे नीचे लगभग हर संदेश में असंबंधित तथ्य जुड़ जाते हैं। अन्य मॉडल (जैसे bge-m3) समानता अलग तरह मापते हैं — एजेंट कार्ड में «मेमोरी से पूछें» से मान चुनें। 0 = कोई सीमा नहीं। स्पष्ट memory_search खोज पर इसका असर नहीं होता। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MEMORY_RETRIEVAL` | मेमोरी पुनर्प्राप्ति मोड | `enum: fulltext \\\| embedding` | `fulltext` | पुनः आरंभ के बाद | एजेंट स्मृति में ज़रूरी चीज़ कैसे खोजता है। «शब्दों से» — सामान्य टेक्स्ट खोज: तुरंत काम करती है और सर्वर पर भार नहीं डालती। «अर्थ से» — अर्थ में मिलती-जुलती चीज़ ढूँढती है, भले ही अलग शब्दों में कही हो, पर इसके लिए अर्थ-खोज मॉडल («अतिरिक्त सेवाएँ» अनुभाग) और प्रोसेसर पर उल्लेखनीय भार चाहिए। |
| `AIHUMMER_QDRANT_API_KEY` | Qdरेंट API कुंजी | `text` | — | पुनः आरंभ के बाद | Qdrant की API कुंजी, यदि वेक्टर भंडार को प्राधिकरण चाहिए। केवल तभी आवश्यक जब Qdrant का पता निर्धारित हो। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
| `AIHUMMER_QDRANT_URL` | Qdvant URL (टिकाऊ वेक्टर स्टोर) | `text` | — | पुनः आरंभ के बाद | अर्थ-खोज के लिए Qdrant भंडार का पता। खाली — खोज डेटा मेमोरी में रहता है और सर्वर पुनः आरंभ होने पर खो जाता है; स्थायी उपयोग के लिए पता दें। |
| `AIHUMMER_RAG_QUERY_EXPANSION` | मॉडल से नॉलेज बेस के प्रश्न दोबारा लिखवाएँ | `bool` | `0` | तुरंत | नॉलेज बेस में खोजने से पहले सेवा कार्यों वाले मॉडल से प्रश्न के 3 वैकल्पिक रूप माँगें और सभी से खोजें। कभी-कभी अधिक मिलता है, पर यह हर खोज पर मॉडल को एक अतिरिक्त कॉल है (कोटा और देरी); मॉडल विफल हो तो केवल मूल शब्दों से खोजा जाता है, और विफलता लॉग व खोज परिणाम में दिखती है। डिफ़ॉल्ट रूप से बंद: शब्द पूर्ण-पाठ खोज से वैसे भी मिल जाते हैं। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_RERANKER_URL` | RAG रीरैंकर साइडकार URL | `text` | — | पुनः आरंभ के बाद | HTTP URL हाइब्रिड खोज को फिर से रैंक करने के लिए क्रॉस-एनकोडर साइडकार का। रिक्त = पुनः क्रमबद्ध करना। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
## Moderation
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_MODERATION` | इनपुट मॉडरेशन | `bool` | `1` | तुरंत | "off" jailbreak/prompt-injection के विरुद्ध अंतर्निहित गार्ड को अक्षम कर देता है। कोई अन्य मान = सक्षम। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
| `AIHUMMER_MODERATION_REFUSAL` | मॉडरेशन इनकार संदेश | `text` | — | तुरंत | मॉडरेटर द्वारा अनुरोध ब्लॉक करने पर लौटाया जाने वाला इनकार पाठ (रिक्त = अंतर्निहित)। तुरंत लागू होता है, पुनः आरंभ की आवश्यकता नहीं। |
## Network
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_OUTBOUND_PROXY_CUSTOM_URL` | आउटबाउंड प्रॉक्सी: अपना पता | `text` | — | तुरंत | HTTPS प्रॉक्सी URL; HTTP केवल loopback पर, बिना पथ, क्वेरी या फ़्रैगमेंट के स्वीकार्य है। custom चुनने से पहले पता सहेजें। API में छिपाया जाता है; ऐप की सेटिंग में रखा जाता है। |
| `AIHUMMER_OUTBOUND_PROXY_MODE` | विदेशी मॉडल प्रदाताओं के लिए आउटबाउंड प्रॉक्सी | `enum: auto \\\| off \\\| custom` | `auto` | तुरंत | सर्वर विदेशी मॉडल प्रदाताओं तक कैसे पहुँचता है। «प्रदाता के अनुसार» — जैसा प्रदाता के खाते में सेट है; «सीधे, बिना प्रॉक्सी» — बिना बिचौलिये के; «अपने प्रॉक्सी से» — नीचे सहेजे पते से। यह काम करे या नहीं, यह हर प्रदाता के नियमों पर निर्भर है। |
| `AIHUMMER_RUSSIAN_TRUSTED_EXTRA_HOSTS` | रूस के डिजिटल विकास मंत्रालय की रूट के लिए .ru से बाहर के होस्ट | `list` | — | पुनः आरंभ के बाद | अल्पविराम द्वारा अलग किए गए होस्ट की सूची, जिन्हें रूसी डोमेन पर रूस के डिजिटल विकास मंत्रालय की जड़ों द्वारा जांचने की अनुमति है (.ru/.su/.рф - पहले से ही शामिल)। यदि रूस के डिजिटल विकास मंत्रालय प्रमाणपत्र वाला आपका नोड किसी भिन्न डोमेन पर रहता है तो इसकी आवश्यकता है। नाम या उपडोमेन सीमा से मिलान करें: example.com api.example.com को कवर करता है। खाली = केवल रूसी डोमेन। प्रारंभ में/पुनः आरंभ होने पर लागू होता है। |
## Performance
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_CHANNEL_TURN_QUEUE_WAIT_SEC` | कतार में इंतज़ार: चैनल का संदेश (सेकंड) | `int 10…1200` | `600` | तुरंत | जब टर्न की सभी जगहें भरी हों, तब चैनल का संदेश (Telegram और अन्य) खाली जगह के लिए कितनी देर इंतज़ार करता है। समय पर जगह न मिले तो व्यक्ति को बताया जाता है कि सर्वर व्यस्त है और वह फिर से लिख सकता है। इंतज़ार टर्न की 30 मिनट की सीमा में गिना जाता है। 10–1200। तुरंत लागू होता है। |
| `AIHUMMER_MAX_ACTIVE_TURNS` | एक साथ चलने वाले एजेंट टर्न (पूरा सर्वर) | `int 1…512` | `32` | तुरंत | सर्वर एक साथ कितने एजेंट टर्न (चैनलों और वेब चैट में जवाब, शेड्यूल) चलाता है। बाकी कतार में उतनी देर इंतज़ार करते हैं जितनी नीचे की «कतार में इंतज़ार» सेटिंग्स अनुमति देती हैं, और व्यक्ति को «सर्वर व्यस्त, कतार में» दिखता है। अधिक मान से इंतज़ार कम होता है, पर मेमोरी, डेटाबेस कनेक्शन और मॉडल के एक साथ अनुरोध बढ़ते हैं। इस संख्या का आधा मॉडल की एक साथ सहायक कॉल (मेमोरी निष्कर्षण, सारांश) की सीमा है। 1–512। तुरंत लागू होता है। |
| `AIHUMMER_SYNC_INBOUND_QUEUE_WAIT_SEC` | कतार में इंतज़ार: सिंक्रोनस इंटीग्रेशन कॉल (सेकंड) | `int 1…120` | `10` | तुरंत | जब टर्न की सभी जगहें भरी हों, तब उसी अनुरोध में जवाब का इंतज़ार करने वाले इंटीग्रेशन की कॉल खाली जगह के लिए कितनी देर इंतज़ार करती है। जगह न मिले तो इंटीग्रेशन को उतने ही सेकंड बाद दोबारा प्रयास की सलाह के साथ «सर्वर व्यस्त» मिलता है; उसी संदेश संख्या के साथ दोबारा प्रयास संदेश को दो बार सहेजता नहीं। 1–120। तुरंत लागू होता है। |
| `AIHUMMER_WEB_TURN_QUEUE_WAIT_SEC` | कतार में इंतज़ार: वेब चैट का संदेश (सेकंड) | `int 10…1200` | `180` | तुरंत | जब टर्न की सभी जगहें भरी हों, तब वेब चैट का संदेश खाली जगह के लिए कितनी देर इंतज़ार करता है। इस दौरान चैट में «सर्वर व्यस्त, कतार में» दिखता है; समय पर जगह न मिले तो जवाब «पुनः प्रयास करें» बटन के साथ अस्वीकार होता है, जो पेज दोबारा लोड करने के बाद भी इतिहास में रहता है। 10–1200। तुरंत लागू होता है। |
## Public access
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_PUBLIC_URL` | सर्वर का सार्वजनिक पता | `text` | — | आंशिक रूप से पुनः आरंभ के बाद | वह पता जिस पर पैनल और ऐप इंटरनेट से खुलते हैं, जैसे https://ai.example.com। इसे अपने प्रॉक्सी (nginx, Caddy) से सर्वर पोर्ट पर भेजें — डिफ़ॉल्ट 8780। |
| `AIHUMMER_WIDGET_ALLOWED_ORIGINS` | वेब विजेट: अनुमत साइट origin | `list` | — | तुरंत | वेब चैट विजेट एम्बेड करने की अनुमति वाले browser origin की कॉमा से अलग सूची, जैसे https://example.com,https://www.example.com। स्कीम और पोर्ट का बिल्कुल मेल होना चाहिए। खाली = कोई बाहरी साइट विजेट का उपयोग नहीं कर सकती। `*` प्रविष्टि जानबूझकर अनदेखी की जाती है, क्योंकि अन्यथा इंटरनेट का कोई भी पेज इस इंस्टेंस का बजट खर्च कर सकता है। |
| `POCKET_AGENT_GATEWAY_BASE_URL` | पॉकेट-एजेंट गेटवे सार्वजनिक URL | `text` | — | तुरंत | प्रॉक्सी → पॉकेट-एजेंट गेटवे पोर्ट (POCKET_AGENT_PORT, डिफ़ॉल्ट 8080)। रिमोट एजेंट इसे एक बार के टिकट के माध्यम से डायल करता है। |
| `TELEGRAM_PUBLIC_URL` | टेलीग्राम वेबहुक पब्लिक URL | `text` | — | तुरंत | केवल वेबहुक मोड - प्रॉक्सी → टेलीग्राम-कनेक्टर पोर्ट (डिफ़ॉल्ट 8091)। मतदान का उपयोग करने के लिए खाली छोड़ें (किसी सार्वजनिक URL की आवश्यकता नहीं है)। |
## SSO (LDAP/AD)
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_LDAP_BASE_DN` | उपयोगकर्ता खोज आधार DN | `text` | — | पुनः आरंभ के बाद | रूट खोजें, उदाहरण के लिए। OU=उपयोगकर्ता,DC=corp,DC=उदाहरण. |
| `AIHUMMER_LDAP_BIND_DN` | सेवा बाइंड DN | `text` | — | पुनः आरंभ के बाद | प्रारंभिक खोज बाइंड के लिए उपयोग किया जाने वाला खाता, उदाहरण के लिए CN=svc-aihummer,OU=सेवा,DC=कॉर्प,DC=उदाहरण। रिक्त = अनाम खोज. |
| `AIHUMMER_LDAP_DEFAULT_ROLE` | LDAP: डिफ़ॉल्ट भूमिका (कोई समूह मिलान नहीं) | `text` | — | पुनः आरंभ के बाद | भूमिका तब दी जाती है जब कोई समूह मैपिंग से मेल नहीं खाता। रिक्त = कोई भूमिका नहीं। |
| `AIHUMMER_LDAP_ENABLED` | LDAP/AD लॉगिन सक्षम करें | `bool` | `0` | पुनः आरंभ के बाद | चालू होने पर, व्यवस्थापक लॉगिन निर्देशिका (LDAP) पर लौट आते हैं। बाइंड पासवर्ड रहस्यों में रहता है (स्कोप ldap, नाम bind_password)। |
| `AIHUMMER_LDAP_GROUP_ATTR` | समूह विशेषता (डिफ़ॉल्ट memberOf) | `text` | — | पुनः आरंभ के बाद | उपयोगकर्ता प्रविष्टि सूची समूह डीएन पर विशेषता। रिक्त समूह→भूमिका मानचित्रण को अक्षम कर देता है। |
| `AIHUMMER_LDAP_ROLE_MAPPINGS` | LDAP: समूह→भूमिका मैपिंग (JSON) | `text` | — | पुनः आरंभ के बाद | JSON समूह DN (या नंगे CN) → भूमिका का ऑब्जेक्ट, उदाहरण के लिए {"CN=Admins,OU=Groups,DC=corp,DC=example":"admin","Operators":"operator"}. |
| `AIHUMMER_LDAP_SKIP_TLS_VERIFY` | TLS सत्यापन छोड़ें (केवल प्रयोगशाला, 1/0) | `bool` | `0` | पुनः आरंभ के बाद | निर्देशिका प्रमाणपत्र सत्यापन अक्षम करता है। उत्पादन में कभी भी सक्षम न करें. |
| `AIHUMMER_LDAP_URL` | निर्देशिका URL | `text` | — | पुनः आरंभ के बाद | उदा. ldaps://ad.corp.example:636 (TLS) या ldap://dc1.corp.example:389. |
| `AIHUMMER_LDAP_USER_ATTR` | लॉगिन विशेषता (डिफ़ॉल्ट sAMAccountName) | `text` | — | पुनः आरंभ के बाद | LDAP/सक्रिय निर्देशिका विशेषता उपयोगकर्ता प्रकार के लॉगिन से मेल खाती है (डिफ़ॉल्ट sAMAccountName; OpenLDAP के लिए uid, UPN शैली लॉगिन के लिए userPrincipalName)। |
| `AIHUMMER_LDAP_USER_FILTER` | उपयोगकर्ता खोज फ़िल्टर | `text` | — | पुनः आरंभ के बाद | लॉगिन के लिए %s होना चाहिए। विज्ञापन: (sAMAccountName=%s); ओपनएलडीएपी: (uid=%s). |
## SSO (OIDC)
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_OIDC_AUDIENCE` | OIDC दर्शक | `text` | — | पुनः आरंभ के बाद | अपेक्षित `aud` दावा - किसी अन्य भरोसेमंद पार्टी के लिए बनाए गए टोकन को अस्वीकार करने के लिए इसे THIS संसाधन के दर्शकों पर सेट करें। `aud` दावा अब डिफ़ॉल्ट रूप से प्रत्येक टोकन पर REQUIRED है (बिना ऑड वाला टोकन अस्वीकार कर दिया जाता है); जब इसे सेट किया जाता है, तो ऑड में भी यह शामिल होना चाहिए। उत्पादन में पुरजोर अनुशंसा की गई। |
| `AIHUMMER_OIDC_ISSUER` | OIDC जारीकर्ता URL | `text` | — | पुनः आरंभ के बाद | आईडीपी जारीकर्ता (उदाहरण के लिए https://login.example.com). सेट होने पर OIDC JWT प्रमाणीकरण सक्षम करता है। |
| `AIHUMMER_OIDC_JWKS_URL` | OIDC का JWKS URL | `text` | — | पुनः आरंभ के बाद | JSON वेब कुंजी सेट एंडपॉइंट का उपयोग टोकन हस्ताक्षरों को सत्यापित करने के लिए किया जाता है। |
| `AIHUMMER_OIDC_TENANT_CLAIM` | OIDC कार्यक्षेत्र दावा | `text` | — | पुनः आरंभ के बाद | कार्यक्षेत्र आईडी वाला JWT दावा (उदाहरण के लिए tenant_id / org)। |
## SSO (SAML)
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_SAML_DEFAULT_ROLE` | SAML: डिफ़ॉल्ट भूमिका (कोई समूह मिलान नहीं) | `text` | — | पुनः आरंभ के बाद | भूमिका तब प्रदान की जाती है जब कोई अनुमानित मूल्य मानचित्र नहीं होता है। रिक्त = कोई भूमिका नहीं। |
| `AIHUMMER_SAML_ENABLED` | SAML 2.0 सक्षम करें SSO | `bool` | `0` | पुनः आरंभ के बाद | /saml/metadata, /saml/acs, /saml/login को उजागर करता है। एसपी निजी कुंजी रहस्य में रहती है (स्कोप सैमल, नाम sp_key)। |
| `AIHUMMER_SAML_ENTITY_ID` | SP इकाई आईडी | `text` | — | पुनः आरंभ के बाद | SP इकाई आईडी (रिक्त होने पर डिफ़ॉल्ट रूप से ⟨root⟩/saml/metadata होता है)। |
| `AIHUMMER_SAML_IDP_METADATA` | IdP मेटाडेटा XML | `text` | — | पुनः आरंभ के बाद | IdP के SAML मेटाडेटा दस्तावेज़ (Okta/Azure AD/ADFS) को चिपकाएँ। |
| `AIHUMMER_SAML_ROLE_ATTRIBUTE` | भूमिका/समूह विशेषता (डिफ़ॉल्ट) समूह) | `text` | — | पुनः आरंभ के बाद | अभिकथन विशेषता समूह/भूमिका मानों को ले जाती है। |
| `AIHUMMER_SAML_ROLE_MAPPINGS` | SAML: समूह→भूमिका मानचित्रण (JSON) | `text` | — | पुनः आरंभ के बाद | JSON अभिकथित मान की वस्तु → भूमिका, उदाहरण के लिए। {"AdminGroup":"admin","Ops":"operator"}. |
| `AIHUMMER_SAML_ROOT_URL` | SP रूट URL | `text` | — | पुनः आरंभ के बाद | इस गेटवे का बाहरी पहुंच योग्य आधार URL, उदा. https://app.example.com. ACS = ⟨root⟩/saml/acs. |
| `AIHUMMER_SAML_SP_CERT` | SP प्रमाणपत्र (PEM) | `text` | — | पुनः आरंभ के बाद | सार्वजनिक एसपी हस्ताक्षर प्रमाणपत्र (PEM)। मिलान करने वाली निजी कुंजी रहस्य (स्कोप सैमल, नाम sp_key) में जाती है। |
## Schedules
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_SCHEDULE_AGENT_MAX_ACTIVE` | एजेंट: सक्रिय अनुसूचियों की सीमा | `int` | `20` | तुरंत | जब कोई एजेंट स्वयं (अपने अनुसूची टूल से) अनुसूची बनाता या चालू करता है, तब उसकी कितनी सक्रिय अनुसूचियाँ हो सकती हैं। पैनल में बनाई गई अनुसूचियाँ भी गिनी जाती हैं, पर पैनल को कभी मना नहीं किया जाता। सीमा पर एजेंट से पहले किसी एक को रोकने या हटाने को कहा जाता है। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_AGENT_MAX_FIRES_PER_DAY` | एजेंट: प्रतिदिन अनुसूची रन | `int` | `288` | तुरंत | एक एजेंट की सभी अनुसूचियाँ मिलाकर प्रतिदिन (UTC) कितनी बार चल सकती हैं, जिनमें पैनल में बनाई गई अनुसूचियाँ और मैन्युअल रन भी शामिल हैं। सीमा से ऊपर के रन छोड़ दिए जाते हैं और रन लॉग में दिखते हैं। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_AGENT_MIN_INTERVAL_MINUTES` | एजेंट: अनुसूची का न्यूनतम अंतराल, मिनट | `int` | `5` | तुरंत | किसी एजेंट द्वारा स्वयं बनाई या बदली गई दोहराई जाने वाली अनुसूची के दो रन के बीच का न्यूनतम अंतर। इससे अधिक बार चलने वाली अनुसूची अस्वीकार की जाती है। पैनल में बनाई गई अनुसूचियाँ इससे सीमित नहीं हैं। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_COMMANDS` | अनुसूचियों में सर्वर कमांड | `bool` | `0` | तुरंत | अनुसूची को इस सर्वर पर कोई प्रोग्राम चलाने देता है — संग्राहक, रिपोर्ट, बैकअप जाँच। डिफ़ॉल्ट रूप से बंद। केवल «अनुमत कमांड» की कमांड, ठीक वैसे ही जैसे लिखी हैं, चलती हैं; कोई शेल नहीं है। आउटपुट एजेंट को या सीधे चैट में जाता है, और हर रन अनुसूची के रन लॉग में दिखता है। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_COMMANDS_ALLOWLIST` | अनुमत कमांड | `argvlist` | — | तुरंत | वे सटीक कमांड जो अनुसूची चला सकती है: प्रोग्राम (df जैसा नाम या पूरा पथ) और उसके आर्ग्युमेंट। अनुसूची केवल वही कमांड चलाती है जो आर्ग्युमेंट सहित किसी प्रविष्टि से पूरी तरह मेल खाती है। हटाई गई कमांड उसका उपयोग करने वाली अनुसूचियों को रोक देती है, और उनके रन कारण बताते हैं। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_COMMANDS_MAX_OUTPUT_KB` | अनुसूची कमांड आउटपुट सीमा, KB | `int 1…1024` | `64` | तुरंत | कमांड के आउटपुट का कितना हिस्सा (1–1024 KB) रन लॉग में रखा जाता है और एजेंट या चैट को भेजा जाता है; बाकी काट दिया जाता है, और लॉग यह बताता है। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_COMMANDS_SANDBOX` | अनुसूची कमांड ओएस सैंडबॉक्स में चलाएँ | `bool` | `1` | तुरंत | चालू: कमांड कोड निष्पादन की तरह ओएस सैंडबॉक्स में चलती है — इंस्टॉलेशन के रहस्य और SSH कुंजियाँ छिपी रहती हैं, और वह केवल अपने अस्थायी फ़ोल्डर में लिख सकती है। सर्वर पर सैंडबॉक्स (bubblewrap) न हो तो कमांड नहीं चलती, और रन लॉग कारण बताता है। बंद: यह गेटवे के अधिकारों से चलती है। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_FAILURE_ADMIN` | विफल कार्यों की सूचना व्यवस्थापक को दें | `bool` | `1` | तुरंत | जब कोई निर्धारित कार्य विफल हो जाता है या शुरू नहीं हो पाता, तो पैनल की सूचना घंटी में उसके नाम, कारण और उसे कहाँ ठीक करना है के साथ सूचना दिखती है, और यही संदेश मालिकों की अपनी चैनल चैट में भी भेजा जाता है (हर कार्य के लिए 6 घंटे में अधिकतम एक बार)। यह कार्य के प्राप्तकर्ता को भेजे गए संदेश के अतिरिक्त है। बंद: व्यवस्थापक को विफलताओं का पता केवल रन लॉग से चलता है। तुरंत लागू होता है। |
| `AIHUMMER_SCHEDULE_FAILURE_NOTIFY` | कार्य विफल होने पर प्राप्तकर्ता को बताएँ | `bool` | `1` | तुरंत | जब कोई अनुसूचित कार्य विफल होता है, उसी प्राप्तकर्ता को एक छोटा संदेश भेजा जाता है (पहली विफलता के बाद, 6 घंटे में अधिकतम एक बार)। बंद होने पर विफलताएँ केवल रन लॉग में दिखती हैं। कोई कार्य अपने फ़ॉर्म में इसे अपने लिए बंद कर सकता है। तुरंत लागू होता है। |
## Security
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AIRGAPPED` | पृथक मोड (बिना इंटरनेट) | `bool` | `0` | तुरंत | एजेंटों को इंटरनेट पर जाने से रोकता है: वेब खोज, पेज खोलना और अनुरोध केवल आंतरिक पतों और अनुमत सूचियों के पतों तक जाते हैं। बाहर की पहुँच के बिना बंद नेटवर्क के लिए चालू करें। |
| `AIHUMMER_AUDIT_RETENTION_DAYS` | कार्य लॉग कितने दिन रखें | `int` | `0` | पुनः आरंभ के बाद | ऑडिट लॉग और सेटिंग्स के बदलावों के इतिहास की इससे पुरानी प्रविष्टियाँ दिन में एक बार हटाई जाती हैं। 0 या खाली — हमेशा रखें। |
| `AIHUMMER_CORS_ORIGINS` | अनुमत CORS मूल | `list` | — | पुनः आरंभ के बाद | अनुमत मूल की अल्पविराम से अलग की गई सूची। रिक्त = CORS की अनुमति नहीं है (केवल समान-मूल)। स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
| `AIHUMMER_CSP` | सामग्री-सुरक्षा-नीति शीर्षलेख (ओवरराइड) | `text` | — | पुनः आरंभ के बाद | CSP हेडर को ओवरराइड करता है। रिक्त = एक सुरक्षित डिफ़ॉल्ट. स्टार्टअप पर/पुनरारंभ के बाद लागू किया गया। |
| `AIHUMMER_INBOUND_SECRET` | चैनल प्लगइनों की सर्वर से जुड़ने की कुंजी | `text` | — | पुनः आरंभ के बाद | जुड़े चैनल (Telegram, VK आदि) इसी से पुष्टि करते हैं कि संदेश सच में उन्हीं से आए हैं। इंस्टॉलेशन के समय अपने-आप सेट होती है — बदलने की ज़रूरत नहीं। खाली होने पर, कुंजी सेट होने तक सर्वर सभी चैनलों को अस्वीकार करता है। |
| `AIHUMMER_OPENAI_COMPAT_KEY` | OpenAI-संगत इनबाउंड: स्थिर API कुंजी | `text` | — | पुनः आरंभ के बाद | उन प्रोग्रामों के लिए साझा कुंजी जो सर्वर से OpenAI-संगत सेवा की तरह जुड़ते हैं। खाली — साझा कुंजी बंद है; «API कुंजियाँ» पेज की निजी कुंजियों से जुड़ा जा सकता है। |
| `AIHUMMER_OPENAI_COMPAT_WORKSPACE` | OpenAI-संगत इनबाउंड: वर्कस्पेस आईडी | `text` | — | पुनः आरंभ के बाद | वर्कस्पेस आईडी, जो स्थिर OpenAI-संगत प्रमाणीकरण मैप करता है। रिक्त = AIHUMMER_DEFAULT_WORKSPACE_ID स्टार्टअप पर/पुनःप्रारंभ के बाद लागू होता है। |
| `AIHUMMER_REQUIRE_2FA` | ऑपरेटरों के लिए 2FA की आवश्यकता है | `bool` | `0` | तुरंत | ऑपरेटरों के लिए दूसरे कारक (TOTP/passkey) की आवश्यकता होती है। चालू होने पर, 2एफए के बिना ऑपरेटरों को इसे लॉगिन पर तुरंत सेट करने के लिए कहा जाता है (बिना ब्लॉक किए, ताकि मालिक कभी भी लॉक न हो)। तुरंत लागू किया गया. |
| `AIHUMMER_REQUIRE_SECURE` | केवल सुरक्षित स्वीकार करें (HTTPS/WSS) कनेक्शन | `bool` | `0` | पुनः आरंभ के बाद | चालू होने पर, सादे HTTP अनुरोधों को HTTPS पर पुनर्निर्देशित किया जाता है (GET/HEAD के लिए) या अस्वीकार कर दिया जाता है (403); लोकलहोस्ट एक्सेस की हमेशा अनुमति होती है इसलिए ऑपरेटर को कभी भी बाहर नहीं किया जाता है। TLS-टर्मिनेटिंग रिवर्स प्रॉक्सी से ऑनर्स एक्स-फॉरवर्डेड-प्रोटो। स्टार्टअप पर/पुनः आरंभ करने के बाद लागू किया गया। |
| `AIHUMMER_TRUSTED_PROXIES` | विश्वसनीय प्रॉक्सी | `list` | — | तुरंत | अगर सर्वर के आगे कोई प्रॉक्सी (nginx, Caddy, लोड बैलेंसर) है, तो उसका पता या नेटवर्क अल्पविराम से लिखें, जैसे 10.0.0.0/8। तब कार्य लॉग, अनुमत IP सूची और पासवर्ड अनुमान से सुरक्षा में आगंतुक का असली पता दिखेगा। खाली — केवल सीधे कनेक्शन का पता गिना जाता है, और उसे बदला नहीं जा सकता। |
## Tools
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_BROWSER_ALLOWED_HOSTNAMES` | ब्राउज़र: निजी होस्टनाम के अपवाद | `list` | — | तुरंत | अल्पविराम से अलग सटीक होस्टनाम; वाइल्डकार्ड, URL या पोर्ट नहीं। अपने सर्वर के मूल CDP के लिए अतिरिक्त निजी अपवाद, web_fetch से अलग। |
| `AIHUMMER_BROWSER_ALLOW_PRIVATE_NETWORK` | ब्राउज़र: निजी नेटवर्क की अनुमति | `bool` | — | तुरंत | खाली रखने पर पुरानी नीति रहेगी; true या false से जाँचा गया मूल CDP चालू होता है। निजी पहुँच केवल अपने सर्वर पर। लूपबैक, लिंक-लोकल और मेटाडेटा बंद रहते हैं। |
| `AIHUMMER_BROWSER_PROFILE_SOCKET` | ब्राउज़र प्रोफ़ाइल नियंत्रण सॉकेट | `text` | — | तुरंत | वैकल्पिक। खाली छोड़ें — गेटवे मानक इंस्टॉल स्थान पर ब्राउज़र सेवा का managed-profiles.sock नियंत्रण सॉकेट स्वयं ढूँढ लेता है। साइटों पर लॉग इन की गई प्रोफ़ाइलें कनेक्शन → ब्राउज़र प्रोफ़ाइलें में बनाई जाती हैं। यह URL नहीं है और न ही स्रोत प्रोफ़ाइल का पथ। |
| `AIHUMMER_CODE_EXEC` | एजेंट द्वारा कोड चलाना | `enum: off \\\| host \\\| sandbox` | `off` | तुरंत | एजेंट का कोड निष्पादन टूल (code_exec)। डिफ़ॉल्ट «बंद» है। «इसी सर्वर पर»: कमांड गेटवे के सर्वर पर चलते हैं; OS सैंडबॉक्स (bubblewrap) इंस्टॉलेशन के रहस्य छिपाता है, लेकिन «कोई प्रतिबंध नहीं» मोड वाला एजेंट SSH कुंजियाँ देखता है और अपने फ़ोल्डर के बाहर लिख सकता है — केवल भरोसेमंद सर्वर के लिए। «केवल सैंडबॉक्स में»: हमेशा OS सैंडबॉक्स में — रहस्य और कुंजियाँ छिपी रहती हैं, लिखना केवल एजेंट के फ़ोल्डर में; bubblewrap (या कंटेनर इमेज) के बिना यह मोड सहेजा नहीं जा सकता। हर एजेंट क्या चला सकता है, यह एजेंट पर तय होता है: एजेंट → प्रोफ़ाइल → टूल। |
| `AIHUMMER_CODE_EXEC_INTERPRETERS` | कोड-निष्पादक दुभाषिए (JSON) | `text` | — | तुरंत | JSON object {language: path_to_binary}, उदाहरण के लिए। {"python":"/usr/bin/python3"}. रिक्त = स्वतः पता लगाना। |
| `AIHUMMER_CODE_EXEC_NET_PORTS` | एजेंट कोड के लिए खुले नेटवर्क पोर्ट | `list` | `53,80,443` | तुरंत | वे TCP पोर्ट जिनसे OS सैंडबॉक्स में एजेंट का कोड (कोड निष्पादन और शेड्यूल कमांड) कनेक्ट कर सकता है, अल्पविराम से अलग। डिफ़ॉल्ट रूप से 53, 80 और 443: DNS और वेबसाइटें। इस सर्वर और इसके स्थानीय नेटवर्क की बाकी सेवाएँ (डेटाबेस, एडमिन पैनल, ब्राउज़र, adb, स्थानीय मॉडल, Home Assistant) एजेंट कोड के लिए बंद रहती हैं। सूची का पोर्ट हर पते पर खुला है, इस सर्वर पर भी, इसलिए केवल वही जोड़ें जिसकी कोड को ज़रूरत है, जैसे SSH के लिए 22। सीमा हटाने के लिए any लिखें। «कोई प्रतिबंध नहीं» मोड वाले एजेंट सीमित नहीं होते। Linux 6.7 या नया चाहिए; इसके बिना सीमा लागू नहीं होती, और एजेंट → टूल्स में यह बताया जाता है। तुरंत लागू होता है। |
| `AIHUMMER_CODE_EXEC_READ_DIRS` | एजेंट कोड के लिए पढ़ने हेतु खुले फ़ोल्डर | `list` | — | तुरंत | इस सर्वर के फ़ोल्डर जिन्हें एजेंट का कोड पढ़ सकता है: OS सैंडबॉक्स में कोड निष्पादन और शेड्यूल कमांड। अल्पविराम से अलग करें या हर पंक्ति में एक, उदाहरण के लिए ~/reports। आप एक अकेली फ़ाइल भी बता सकते हैं, उदाहरण के लिए ~/scripts/report.py। यहाँ खोली गई चीज़ें सभी एजेंटों के कोड को दिखती हैं, इसलिए केवल वही खोलें जिसकी कोड को ज़रूरत है। डिफ़ॉल्ट रूप से खाली: सैंडबॉक्स में कोड केवल अपने एजेंट का फ़ोल्डर और सिस्टम फ़ोल्डर देखता है; गेटवे उपयोगकर्ता का होम फ़ोल्डर, इंस्टॉलेशन का डेटा, अन्य एजेंटों के फ़ोल्डर, कुंजियाँ और कमांड इतिहास छिपे रहते हैं। रूट, पूरा होम फ़ोल्डर, इंस्टॉलेशन का डेटा और कुंजियों वाली जगहें नहीं खोली जा सकतीं। कोड इन फ़ोल्डरों में लिख नहीं सकता। तुरंत लागू होता है। |
| `AIHUMMER_CODE_EXEC_SANDBOX_IMAGE` | कोड-निष्पादन सैंडबॉक्स छवि | `text` | — | तुरंत | वैकल्पिक, केवल «केवल सैंडबॉक्स में» के लिए: OS सैंडबॉक्स की जगह Docker कंटेनर इमेज (बिना नेटवर्क, केवल-पढ़ने योग्य रूट, सीमाएँ); सर्वर पर Docker चाहिए। खाली = OS सैंडबॉक्स (bubblewrap)। |
| `AIHUMMER_CODE_EXEC_TIMEOUT_SECONDS` | कोड चलाने की समय सीमा (सेकंड) | `int` | `1800` | तुरंत | एजेंट का एक कमांड, पृष्ठभूमि वाले सहित, कितनी देर चल सकता है: 10 सेकंड से 24 घंटे तक। जो कमांड 30 सेकंड में जवाब नहीं देता, वह रुकता नहीं बल्कि पृष्ठभूमि में चला जाता है, जहाँ एजेंट उसे process टूल से जाँचता है। एजेंट कम सीमा माँग सकता है, अधिक नहीं। |
| `AIHUMMER_DB_QUERY_DSN` | «डेटाबेस क्वेरी» टूल के लिए डेटाबेस कनेक्शन | `text` | — | तुरंत | उस डेटाबेस की कनेक्शन स्ट्रिंग जिसे एजेंट पढ़ सकता है (केवल पढ़ना), जैसे postgres://reader:password@host/db। न्यूनतम अधिकारों वाला उपयोगकर्ता दें — डेटाबेस का मालिक नहीं। खाली — टूल बंद है। |
| `AIHUMMER_FS_ROOT` | फ़ाइलसिस्टम टूल रूट | `text` | — | तुरंत | वह फ़ोल्डर जिसके भीतर एजेंट सर्वर की फ़ाइलें पढ़ता है (filesystem_read; एजेंट फ़ाइलें नहीं लिख सकते)। खाली = गेटवे उपयोगकर्ता के अधिकारों के साथ पूरा सर्वर, उसके रहस्यों को छोड़कर: इंस्टॉलेशन सेटिंग्स (gateway.env), SSH/GPG कुंजियाँ और प्रक्रियाओं का परिवेश। पहुँच सीमित करने के लिए फ़ोल्डर दें। |
| `AIHUMMER_HTTP_ALLOWLIST` | एजेंट के HTTP अनुरोधों के पते | `list` | — | तुरंत | अल्पविराम से अलग किए गए होस्ट की सूची जिन तक http_request उपकरण पहुँच सकता है। रिक्त = आंतरिक और निजी पतों को छोड़कर सभी की अनुमति है। |
| `AIHUMMER_HTTP_AUTH_JSON` | http_request प्रमाणीकरण (JSON) | `text` | — | तुरंत | http_request उपकरण के लिए होस्ट को प्राधिकरण हेडर से जोड़ने वाला JSON मानचित्र, ताकि टोकन प्रॉम्प्ट में न रखे जाएँ। रिक्त = बिना प्राधिकरण। |
| `AIHUMMER_MCP_SERVERS` | MCP सर्वर (JSON) | `text` | — | तुरंत | उन बाहरी MCP सर्वरों का JSON विवरण जिनके उपकरण एजेंट से जुड़ते हैं। रिक्त = कोई बाहरी MCP नहीं। |
| `AIHUMMER_PROJECT_STUDIOS_PUBLIC_NETWORK` | प्रोजेक्ट स्टूडियो: सार्वजनिक नेटवर्क | `bool` | `false` | तुरंत | चुने गए प्रदाताओं और स्पष्ट रूप से माँगे गए मॉडल डाउनलोड के लिए सार्वजनिक HTTP(S) की अनुमति दें। निजी, स्थानीय और मेटाडेटा पते अवरुद्ध रहेंगे। ऑफ़लाइन मोड को प्राथमिकता मिलेगी। तुरंत लागू होता है। |
| `AIHUMMER_SIDECAR_CLOAKBROWSER` | एजेंट के लिए ब्राउज़र (CloakBrowser) | `bool` | `0` | तुरंत | एंटी-डिटेक्ट ब्राउज़र (CloakBrowser, browser/computer टूल)। डिलीवरी पैकेज में क्या शामिल नहीं है: समावेशन हस्ताक्षरित ऐड-ऑन (~477 MiB, जिसमें से Chromium ~207 MiB) डाउनलोड करता है और होस्ट पर सेवा स्थापित करता है। सबसे भारी साइडकार - केवल तभी सक्षम करें जब एजेंट को वेबसाइट खोलने की आवश्यकता हो। |
| `AIHUMMER_SIDECAR_SEARXNG` | वेब खोज (SearXNG) | `bool` | `0` | तुरंत | वेब खोज (SearXNG, web_search टूल)। पैकेज में शामिल नहीं: चालू करने से हस्ताक्षरित ऐड-ऑन (~154 MiB) डाउनलोड होता है और होस्ट पर सेवा स्थापित होती है, बंद करने से यह रुक जाती है और स्थान खाली हो जाता है। इंस्टॉलेशन पृष्ठभूमि में होता है और इसमें कुछ मिनट लगते हैं; यहां स्थिति दिखाती है कि सर्वर पर वास्तव में क्या है। |
| `AIHUMMER_WEBFETCH_ALLOWLIST` | वे साइटें जिन्हें एजेंट खोल सकता है | `list` | — | तुरंत | अल्पविराम से अलग किए गए डोमेन की सूची जिन तक web_fetch उपकरण पहुँच सकता है। रिक्त = आंतरिक और निजी पतों को छोड़कर सभी की अनुमति है। |
| `AIHUMMER_WEB_SEARCH_LANGUAGE` | वेब खोज: परिणामों की डिफ़ॉल्ट भाषा | `text` | `auto` | तुरंत | जब एजेंट भाषा न बताए तब परिणामों की भाषा: ru, en या de जैसा कोड, या क्वेरी से पहचानने के लिए auto (लगभग हमेशा उपयुक्त)। एजेंट किसी खास खोज के लिए दूसरी भाषा चुन सकता है। |
| `AIHUMMER_WEB_SEARCH_RESULTS` | वेब खोज: प्रति खोज परिणाम | `int` | `5` | तुरंत | जब एजेंट संख्या न मांगे तब खोज कितने परिणाम लौटाए: 1 से 10। अधिक परिणाम पूरा उत्तर देते हैं, पर संदर्भ लंबा होता है। |
| `AIHUMMER_WEB_SEARCH_SOURCE` | वेब खोज का स्रोत | `enum: auto \\\| searxng \\\| provider` | `auto` | तुरंत | एजेंट इंटरनेट पर कहाँ खोजता है (web_search टूल)। auto — SearXNG इंस्टॉल हो तो वही, अन्यथा मॉडल प्रदाता की अंतर्निहित खोज। searxng — केवल SearXNG: उसके बिना खोज नहीं होती। provider — जहाँ उपलब्ध हो वहाँ प्रदाता की अंतर्निहित खोज, बाकी मॉडलों के लिए SearXNG। अंतर्निहित खोज Codex (ChatGPT सदस्यता) और OpenAI (api.openai.com) में है; GigaChat, YandexGPT और अन्य OpenAI-संगत मॉडलों में नहीं है — SearXNG के बिना इन मॉडलों पर एजेंट खोज नहीं करते। Claude (api.anthropic.com और Claude सदस्यता) Anthropic की अंतर्निहित खोज इस्तेमाल करता है; अगर खाता इसे अस्वीकार करे, तो गेटवे यह लॉग में लिखता है और आगे एजेंट को केवल SearXNG देता है। कौन-से एजेंट खोज सकते हैं, यह पहले की तरह एजेंट कार्ड में तय होता है। अगले चरण से लागू। |
| `AIHUMMER_WEB_SEARCH_TIMEOUT_SECONDS` | वेब खोज समय सीमा (सेकंड) | `int` | `30` | तुरंत | हर खोज के लिए1–600 सेकंड। कार्य की छोटी समय सीमा लागू रहती है। |
## Updates
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_RESTART_APPLY` | पुनः आरंभ की ज़रूरत वाली सेटिंग्स लागू करें | `enum: quiet \\\| manual` | `quiet` | तुरंत | quiet (डिफ़ॉल्ट) — सहेजी गई वे सेटिंग्स जो गेटवे के नए आरंभ पर ही लागू होती हैं, अपने आप लागू होती हैं: गेटवे अगले शांत पल में पुनः आरंभ होता है, जब एजेंट कुछ नहीं कर रहे और लोग कम से कम मौन-अवधि तक चुप रहे हों। manual — केवल “पुनः आरंभ की प्रतीक्षा” चिह्न और बटन। पुनः आरंभ में कुछ सेकंड लगते हैं; बातचीत और कार्य नहीं खोते। तुरंत लागू होता है। |
| `AIHUMMER_RESTART_QUIET_MINUTES` | शांत पल: स्वचालित पुनः आरंभ से पहले मौन के मिनट | `int 0…1440` | `10` | तुरंत | सहेजी गई सेटिंग्स लागू करने के लिए गेटवे के अपने आप पुनः आरंभ होने से पहले लोगों को कितने मिनट चुप (और एजेंटों को खाली) रहना चाहिए। 0 — जैसे ही एजेंट मौजूदा काम पूरा करें। 0–1440। तुरंत लागू होता है। |
## Web UI (separate port)
| कुंजी | नाम | प्रकार | डिफ़ॉल्ट | लागू होता है | क्या करता है |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_WEBUI_API_BASE` | अलग से होस्ट किए गए पैनल के लिए सर्वर पता | `text` | — | पुनः आरंभ के बाद | केवल तभी ज़रूरी है जब पैनल सर्वर से अलग पते से खोला जाता हो। वह पता दें जिससे ब्राउज़र सर्वर तक पहुँचे, जैसे https://api.example.com। खाली — सर्वर का सार्वजनिक पता, और वह न हो तो स्थानीय पता उपयोग होता है। |
| `AIHUMMER_WEBUI_ENABLED` | अलग पोर्ट पर पैनल | `bool` | `1` | पुनः आरंभ के बाद | चालू — पैनल एक अलग आंतरिक पोर्ट पर खुलता है जिसे इंटरनेट से बंद किया जा सकता है, और सार्वजनिक पोर्ट केवल ऐप और चैनलों को सेवा देता है। पैनल को पूरी तरह बंद करने के लिए इसे बंद करें। |
| `AIHUMMER_WEBUI_ORIGIN` | वह पता जिस पर पैनल खोला जाता है | `text` | — | पुनः आरंभ के बाद | भरें, अगर पैनल किसी प्रॉक्सी से या उसके पोर्ट पते से अलग नाम से खोला जाता है, जैसे https://admin.example.com। सर्वर उस पते से ब्राउज़र को जुड़ने देगा। खाली — पैनल पोर्ट का पता लिया जाता है। |
ऑपरेटर के लिए उपलब्ध सेटिंग्स: 237।