दस्तावेज़
एआई सहायक
प्रोजेक्ट-स्कोप वाली बातचीत, टाइप की गई CAD/CAM क्रियाएं, स्पष्ट अनुमतियां और एप्लिकेशन द्वारा प्रबंधित प्रदाता क्रेडेंशियल।
अंग्रेज़ी से स्वचालित रूप से अनुवादित। अंग्रेज़ी मूल देखें
सहायक सेवाएँ
@cadcamfun/ai मॉडल एक्सेस, वार्तालाप ईवेंट, एक्शन कैटलॉग, संकेत, कौशल, संदर्भ असेंबली और होस्ट एकीकरण प्रदान करता है। डिफ़ॉल्ट वार्तालाप इंजन एम्बेडेड निकल्ली है; एआई एसडीके वी7 सीधे टेक्स्ट, स्ट्रीमिंग और संरचित-आउटपुट कॉल की आपूर्ति करता है। साइडकार प्रोजेक्ट म्यूटेशन, लाइब्रेरी, इतिहास और एप्लिकेशन स्टोरेज के लिए हैंडलर इंजेक्ट करता है।
चैट पंजीकृत क्रियाओं के माध्यम से किसी प्रोजेक्ट का निरीक्षण और परिवर्तन कर सकता है। स्टेटलेस शीर्षक निर्माण, डिज़ाइन विश्लेषण, पैरामीटर अनुशंसाएँ, जी-कोड अनुकूलन, और डिज़ाइन-सुझाव सारांश सलाह या संरचित आउटपुट लौटाते हैं; वे सेवा विधियाँ प्रोजेक्ट संपादनों को सहेजती नहीं हैं। इस पर भरोसा करने से पहले नियतात्मक सीएएम और सत्यापन के माध्यम से उत्पन्न मशीनिंग सलाह की समीक्षा करें।
बातचीत और सत्र नियंत्रण
POST /api/ai/chat/stream पाठ, तर्क, टर्न/स्टेप स्थिति, टूल कॉल और परिणाम, निदान, प्रश्न, अनुमति अनुरोध, पुनः प्रयास, संदर्भ परिवर्तन, लक्ष्य, पूर्णता और त्रुटियों के लिए टाइप किए गए ईवेंट उत्सर्जित करता है। क्लाइंट सत्र पहचानकर्ता सत्रों की मेजबानी करने के लिए बाध्य हैं और उनके प्रोजेक्ट के विरुद्ध जांचे जाते हैं। समान वार्तालाप जारी रखने के लिए सत्र आईडी बनाए रखें।
POST /api/ai/sessions/state डिस्कनेक्ट की गई स्ट्रीम के बाद व्यस्त स्थिति, संचित पाठ और कार्य जानकारी पुनर्प्राप्त करता है। /api/ai/chat/queue सक्रिय बातचीत के अनुवर्ती कार्रवाई को स्वीकार करता है; /api/ai/chat/abort टर्न और उससे जुड़े कर्मचारियों को रोक देता है। किसी सत्र को हटाने से मेजबान सत्र को हटाने से पहले वह रद्द हो जाता है और अपने बच्चों से जुड़ जाता है।
/api/ai/sessions/control स्थिति, विस्तृत संदर्भ निरीक्षण, संघनन, स्मृति समेकन, कार्य रद्दीकरण, अनुमति निर्णय और लंबित प्रश्नों का उत्तर देने या अस्वीकार करने का समर्थन करता है। अनुरोधों की जांच माता-पिता की बातचीत और उसके स्वीकृत बाल सत्रों के आधार पर की जाती है। जो प्रश्न अब लंबित नहीं है, उसका उत्तर उसके पुराने पहचानकर्ता का पुन: उपयोग करके नहीं दिया जा सकता है।
डायरेक्ट मॉडल निक्ली के समान वक्र के साथ पुन: प्रयास क्षणिक प्रदाता विफलताओं को कॉल करता है: पहली देरी 2 सेकंड है और प्रत्येक प्रयास पर दोगुनी हो जाती है, एक प्रदाता की अपनी retry-after हेडर का सम्मान किया जाता है, और ऐसे हेडर के बिना विलंब कभी भी 30 सेकंड से अधिक नहीं होता है। डिफ़ॉल्ट रूप से एक अनुरोध अधिकतम पांच कॉल करता है, जिसमें पहला भी शामिल है; retryAttempts सेटिंग इसे ओवरराइड कर सकती है (packages/ai/src/retry.ts, direct-model.ts). जब मॉडल कनेक्शन मध्य-मोड़ में बंद हो जाता है, तो चैट लूप उसी 2-30 दूसरे बैकऑफ़ के साथ पांच बार फिर से शुरू होता है और मॉडल को पूर्ण चरणों को दोहराए बिना जारी रखने के लिए कहता है।
प्रदाता और प्रमाण पत्र
GET /api/ai/providers प्रदाता मेटाडेटा और कॉन्फ़िगर स्थिति को सूचीबद्ध करता है; GET /api/ai/models वैकल्पिक के साथ मॉडल पिकर कैटलॉग को उजागर करता है configuredOnly=true. एंबेडेड-होस्ट कैटलॉग रीड्स को एक मिनट के लिए कैश किया जाता है। कॉन्फ़िगरेशन और नीति प्रभावित करते हैं कि कौन से प्रदाता सूचीबद्ध हैं और उपयोग करने योग्य हैं।
के साथ क्रेडेंशियल सेट करें PUT /api/ai/credentials और उन्हें हटा दें DELETE /api/ai/credentials/:provider. कुंजियाँ खाली नहीं होनी चाहिए, और आपूर्ति किया गया आधार URL HTTP या HTTPS होना चाहिए। डायरेक्ट मॉडल फैक्ट्री एंथ्रोपिक, ओपनएआई, मिनीमैक्स और एआई गेटवे का समर्थन करती है। अन्य प्रदाता आईडी को सीधे कॉल के लिए ओपनएआई-संगत आधार यूआरएल की आवश्यकता होती है। एम्बेडेड होस्ट अपने स्वयं के प्रदाता कैटलॉग और रूटिंग का उपयोग करता है।
साइडकार की साख बनी रहती है <dataDir>/ai/credentials.json एक अस्थायी फ़ाइल, केवल स्वामी मोड 0600 का उपयोग करके, और नाम बदलें। गुम या क्षतिग्रस्त फ़ाइल खाली के रूप में पढ़ी जाती है। एक असफल दृढ़ता लेखन वर्तमान प्रक्रिया के लिए उपलब्ध कुंजी को छोड़ देता है लेकिन यह गारंटी नहीं देता है कि यह पुनः आरंभ होने से बच जाएगा। स्थिति प्रतिक्रियाएँ कच्ची कुंजियों के बजाय कॉन्फ़िगरेशन स्थिति को उजागर करती हैं।
क्रेडेंशियल्स का प्रतिनिधित्व किया जाता है Redacted अंदर की सेवाओं और एक स्कोप्ड क्रेडेंशियल सिंक के माध्यम से होस्ट तक प्रचारित किया गया। स्कोप बंद करने से होस्ट की कॉपी साफ़ हो जाती है। क्रेडेंशियल परिवर्तन कैश्ड स्टेटलेस परिणामों को अलग करने के लिए उपयोग किए जाने वाले संशोधन को अद्यतन करते हैं।
डिफ़ॉल्ट मॉडल स्तर है balanced, और MiniMax अनुरोध पर जाएँ https://api.minimax.io/v1 जब तक CADCAMFUN_AI_MINIMAX_BASE_URL इसे ओवरराइड करता है (packages/ai/src/models.ts). मॉडल कैटलॉग को जनता से प्राप्त किया गया है https://models.dev/api.json समापन बिंदु केवल तभी जब कैश्ड फ़ाइल गुम हो और नेटवर्क पहुंच की अनुमति हो; कोई क्रेडेंशियल नहीं भेजा जाता है, प्रतिक्रियाओं को 8 MiB पर सीमित कर दिया जाता है, और 20 से कम प्रदाताओं को सूचीबद्ध करने वाली संस्था को काट-छाँट के रूप में अस्वीकार कर दिया जाता है।
क्रियाएँ और अनुमतियाँ
एक्शन कैटलॉग प्रत्येक एक्शन पहचानकर्ता, पैरामीटर स्कीमा, प्रभाव और निष्पादन पथ की घोषणा करता है। उपकरण समूह से संबंधित क्रियाओं के पीछे एक आवश्यक है action मैदान। होस्ट टूल इनपुट को मान्य करता है, और साइडकार हैंडलर परिवर्तनों को जारी रखने से पहले डोमेन सत्यापन और संसाधन पहुंच जांच करते हैं।
अनुमति मोड हैं approve, ask, और auto. वे प्रभावित करते हैं कि सामान्य टूल कॉल कैसे स्वीकार की जाती हैं; विनाशकारी कार्यों वाले उपकरण हर मोड में एक मानवीय अनुमोदन नियम बनाए रखते हैं। एक इनपुट फ़्लैग जैसे confirm: true उस अनुमति अनुरोध को प्रतिस्थापित नहीं करता. होस्ट एप्लिकेशन क्रियाओं के विकल्प के रूप में अप्रतिबंधित शेल या फ़ाइल-संपादन टूल का खुलासा नहीं करता है।
में नीतियां <dataDir>/ai/policy.json प्रदाता के उपयोग, उपकरण के उपयोग और ब्रिज एक्सेस को प्रतिबंधित करें। वे सेवा कॉन्फ़िगरेशन द्वारा लोड किए गए हैं; यह न मानें कि फ़ाइल का संपादन पहले से चल रही सेवा को अद्यतन करता है। प्रोजेक्ट-स्कोप्ड स्क्रैच निर्देशिकाएं और पृथक निकल्ली कॉन्फ़िगरेशन एम्बेडेड होस्ट को उपयोगकर्ता के स्टैंडअलोन एजेंट स्थिति से अलग रखते हैं।
कौशल सीएडी/सीएएम प्लेबुक और उपयोगकर्ता-लिखित निर्देश प्रदान करते हैं। वे मौजूदा उपकरणों के उपयोग का मार्गदर्शन करते हैं; एक कौशल जोड़ने से कोई नया उत्परिवर्तन एपीआई नहीं जुड़ता है। कौशल HTTP एंडपॉइंट समर्थित उपयोगकर्ता कौशल सामग्री को सूचीबद्ध करते हैं, सहेजते हैं और हटाते हैं।
पंजीकृत उपकरण समूह
अंतर्निर्मित समूह हैं cad, cad_edit, cam, cam_edit, library, parts, library_edit, memory, memory_edit, research, vcs, vcs_edit, और agent. cam_verify पूर्ण सीएएम संपादन उपकरण प्रदान किए बिना सत्यापनकर्ता भूमिका के लिए आवश्यक पीढ़ी और सत्यापन उपसमूह को उजागर करता है।
टूल ग्रुपिंग प्रभाव सीमाओं को सुरक्षित रखता है। केवल पढ़ने योग्य ज्यामिति निरीक्षण, लाइब्रेरी लुकअप और मेमोरी रिकॉल उन संसाधनों में परिवर्तन से अलग हैं। इंजेक्टेड रजिस्ट्री एक्सटेंशन टूल को भी स्वीकार कर सकती है; डुप्लिकेट पहचानकर्ता अस्वीकार कर दिए जाते हैं.
वर्तमान कैटलॉग खोजें
GET /api/ai/actions बाहरी कॉल करने वालों के लिए टूल विवरण, कार्रवाई के नाम और प्रकार और JSON पैरामीटर स्कीमा लौटाता है। किसी क्लाइंट में स्थिर सूची की प्रतिलिपि बनाने के बजाय चल रहे एप्लिकेशन की गतिविधियों को खोजने के लिए इसका उपयोग करें। POST /api/ai/actions/invoke एक प्रोजेक्ट आईडी, टूल आईडी और एक्शन डिस्क्रिमिनेटर वाला इनपुट लेता है।
अंतर्निहित कैटलॉग प्रविष्टियाँ इसके अंतर्गत रखी जाती हैं packages/ai/src/actions. उदाहरणों में सीएडी निरीक्षण और पैरामीट्रिक जांच, सीएडी संपादन, सीएएम योजना और निर्माण, लाइब्रेरी लुकअप और अपडेट, प्रोजेक्ट मेमोरी, अनुसंधान और वीसीएस प्रस्ताव शामिल हैं। किसी एप्लिकेशन सेवा की आवश्यकता वाले योगदान के लिए एक अनुपलब्ध परिणाम मिलता है जब उस होस्ट ने अपने हैंडलर की आपूर्ति नहीं की।
सार्वजनिक एकीकरण एपीआई
ACTION_CATALOGUE, ACTION_TOOL_IDS, EXPOSED_TOOL_IDS, actionById, toolKind, और runAction कैटलॉग उपभोक्ताओं का समर्थन करें। ToolHandlers साइडकार एकीकरण अनुबंध है; ToolRegistry अंतर्निर्मित और विस्तार उपकरण बनाता है। AiService वार्तालाप, मॉडल मेटाडेटा, वन-शॉट कॉल और सत्र संचालन की आपूर्ति करता है।
assembleContext 24,000 वर्णों के डिफ़ॉल्ट कुल बजट के साथ टर्न संदर्भ तैयार करता है। यह स्थायी आवश्यकताओं, वर्तमान टिप्पणियों, यूआई स्नैपशॉट, मेमोरी और सहायक संदर्भों, पहचान और सामग्री के आधार पर डिडुप्लिकेट और छोड़े गए या काटे गए स्रोतों को रिकॉर्ड करने का आदेश देता है। यह संदर्भ बजट मॉडल की पूर्ण टोकन विंडो और होस्ट संघनन सीमा से अलग है।
पृष्ठभूमि कार्य और साक्ष्य
रनटाइम शेड्यूलर चार सक्रिय पृष्ठभूमि कार्यों और सोलह कतारबद्ध कार्यों की अनुमति देता है। कार्य एक प्रोजेक्ट और मूल सत्र के स्वामित्व में होते हैं। जब तक कोई कर्मचारी रुक नहीं जाता तब तक रद्दीकरण सक्रिय स्वामित्व बरकरार रखता है; पेरेंट को रोकने या हटाने से उससे संबंधित कार्य भी रुक जाता है। रीड-वर्कर पुनर्प्राप्ति दो प्रयासों तक सीमित है, जबकि बाधित संपादन कार्य को आँख बंद करके दोबारा चलाने के बजाय अनिश्चित के रूप में चिह्नित किया गया है।
सहायक उपकरण की सफलता निरीक्षण का परिणाम है। सीएडी संचालन आंशिक ज्यामिति निदान लौटा सकता है; सीएएम कलाकृतियाँ अपने स्वयं के दावे और रिलीज़ स्तर रखती हैं; इतिहास सेवाएँ संरक्षित शाखाओं को लागू करती हैं। वार्तालाप पाठ, पूर्ण चिह्नित कार्य और ज्यामितीय सत्यापन परिणाम विभिन्न साक्ष्यों का वर्णन करते हैं।
मॉडल को भेजे गए प्रोजेक्ट संदर्भ का बजट होता है: एक संग्रहीत प्रोजेक्ट संदर्भ दस्तावेज़ में अधिकतम 8, 000 वर्ण हो सकते हैं, जिनमें से 2, 000 प्रॉम्प्ट तक पहुंचते हैं, प्रोजेक्ट मेमोरी और उपयोगकर्ता की आदतों के लिए प्रत्येक में 1, 500 वर्ण होते हैं। 90 दिनों से अधिक पुराने प्रोजेक्ट नोट्स, जिनका प्रोजेक्ट संदर्भ संदर्भ नहीं है, सत्र समाप्त होने पर काट दिए जाते हैं (packages/ai/src/project-context.ts).
रनटाइम चयन
CADCAMFUN_AI_HOST का चयन करता है nikcli डिफ़ॉल्ट रूप से या direct. सीधा पथ एम्बेडेड होस्ट के लगातार एजेंट टूल लूप और विशेषज्ञ शेड्यूलर के बिना एआई एसडीके कॉल का उपयोग करता है। एम्बेडेड होस्ट सक्षम होने पर भी स्टेटलेस ऑपरेशन प्रत्यक्ष मॉडल सेवा का उपयोग करते हैं।
होस्ट की XDG निर्देशिकाएँ और वैकल्पिक होम ओवरराइड नीचे निहित हैं <dataDir>/ai/nikcli. एसडीके आयात से पहले प्रोजेक्ट कॉन्फ़िगरेशन लोडिंग और असंबंधित इनहेरिटेड एजेंट सेटिंग्स अक्षम या स्क्रब की जाती हैं। इसका कार्यक्षेत्र उपयोगकर्ता की स्रोत निर्देशिका के बजाय प्रति-प्रोजेक्ट एप्लिकेशन स्क्रैच निर्देशिका है।
स्टैंडअलोन निकलि एक्सेस
@cadcamfunv2/cadcamfun-nikcli-plugin एक स्टैंडअलोन निकल्ली को एक चालू एप्लिकेशन से जोड़ता है। इसे कॉन्फ़िगर करें url, token, और डिफ़ॉल्ट projectId, या उपयोग करें CADCAMFUN_URL, CADCAMFUN_TOKEN, और CADCAMFUN_PROJECT. बाहरी पहुंच के लिए एप्लिकेशन द्वारा जारी स्कोप्ड ब्रिज टोकन की आपूर्ति करें।
ब्रिज टोकन एक प्रोजेक्ट और केवल-पढ़ने या पढ़ने/लिखने की क्रियाओं तक ही सीमित हैं। वे 30 दिनों के लिए डिफ़ॉल्ट होते हैं, 1-365 दिनों की अनुमति देते हैं, सूचीबद्ध और निरस्त किए जा सकते हैं, और जारी होने पर ही अपना रहस्य प्रकट करते हैं। वे केवल दो एक्शन ब्रिज मार्गों को स्वीकार करते हैं। नीति दृश्यमान उपकरणों और कार्रवाइयों को और अधिक संकीर्ण कर सकती है।
प्लगइन एप्लिकेशन से कैटलॉग लाता है और इसके स्कीमा को निकल्ली टूल तर्कों में परिवर्तित करता है। विनाशकारी कार्यों को पुष्टिकरण ध्वज और इन-प्रोसेस के साथ भी अस्वीकार कर दिया जाता है agent डेलिगेशन टूल को बाहर रखा गया है. लिखने-सक्षम प्लगइन एक्सटेंशन उपकरण इस बाहरी पुल के माध्यम से उजागर नहीं होते हैं। HTTP 401 अस्वीकृत टोकन की रिपोर्ट करता है; कार्रवाई से इनकार करने पर पढ़ने योग्य विफलता परिणाम मिलते हैं।
कार्यान्वयन मानचित्र
service.ts अनुप्रयोग-सामना करने वाले AI संचालन का स्वामी है; direct-model.ts एआई एसडीके कॉल का मालिक है; credentials.ts प्रमुख राज्य का मालिक है; nikcli/ अलगाव, सत्र, नीतियों, संदर्भ और कार्यकर्ताओं का मालिक है; actions/ और tools/ अपनी क्षमता परिभाषाएँ और एडेप्टर। साइडकार services/ai.ts वायर प्रोजेक्ट हैंडलर और स्टोरेज। packages/nikcli-plugin बाहरी HTTP क्लाइंट का स्वामी है।
बातचीत प्रारंभ करें और पुनर्प्राप्त करें
एक चालू साइडकार और एक कॉन्फ़िगर किए गए मॉडल के साथ, यह अनुरोध संग्रहीत कार्यस्थान संदर्भ को इंजेक्ट किए बिना एक वार्तालाप खोलता है। तय करना CADCAMFUN_URL खोजे गए लूपबैक बेस यूआरएल के लिए और CADCAMFUN_TOKEN इसके वर्तमान एप्लिकेशन टोकन के लिए। नीचे दिया गया सत्र पहचानकर्ता ग्राहक-चयनित है; इसे फॉलो-अप के लिए रखें।
curl --no-buffer --fail-with-body \
-H "Authorization: Bearer $CADCAMFUN_TOKEN" \
-H "Content-Type: application/json" \
--data '{"message":"Explain the difference between G0 and G1.","sessionId":"inspection-demo","includeContext":false,"mode":"gcode"}' \
"$CADCAMFUN_URL/api/ai/chat/stream" किसी प्रोजेक्ट टर्न के लिए उसकी वास्तविक आपूर्ति भी करें projectId, और वैकल्पिक रूप से ए drawingId उस परियोजना से संबंधित. ड्राइंग टर्न के टूल्स को उस ड्राइंग से जोड़ती है। किसी अन्य प्रोजेक्ट या खाते के अंतर्गत सत्र का पुन: उपयोग करने से इनकार कर दिया गया है।
curl --fail-with-body \
-H "Authorization: Bearer $CADCAMFUN_TOKEN" \
-H "Content-Type: application/json" \
--data '{"sessionId":"inspection-demo"}' \
"$CADCAMFUN_URL/api/ai/sessions/state" लौट आया busy, text, वैकल्पिक events, और tasks दृश्य का पुनर्निर्माण करें; उन संग्रहीत घटनाओं को दोबारा चलाने से उपकरण दोबारा निष्पादित नहीं होते हैं। काम रोकने के लिए, एक स्पष्ट गर्भपात भेजें। अकेले स्ट्रीम बंद करने से बातचीत के कार्यकर्ता शामिल नहीं हो जाते.
स्रोत: packages/api/src/groups/ai.ts, apps/sidecar/src/http/ai.ts, और packages/ai/src/service.ts.
राज्य को खोए बिना घटनाओं को संभालें
| आयोजन | उपभोक्ता व्यवहार |
|---|---|
delta / reasoning | संलग्न text मिलान सत्र के पाठ या तर्क चैनल पर। |
tool_call / tool_result | द्वारा सहसंबंधित करें callId; निरीक्षण करें ok और सहायक पाठ से स्वतंत्र रूप से निदान बनाए रखें। |
permission_request | अनुरोध दिखाएं और उसके अनुरोध/सत्र आईडी के साथ उत्तर दें once, always, या reject. |
question_request | इसकी अनुरोध आईडी और प्रश्न रखें; सत्र नियंत्रण के माध्यम से प्रति प्रश्न एक उत्तर सरणी भेजें। |
done | अंतिम का प्रयोग करें text और पूर्ण प्रतिक्रिया के रूप में वैकल्पिक उपयोग; संपूर्ण अंतिम पाठ को पहले से संचित डेल्टा में न जोड़ें। |
error | प्रदर्शन message साथ config, provider, aborted, या internal वर्गीकरण. |
heartbeat | सामग्री जोड़े बिना या टर्न पूर्ण घोषित किए बिना कनेक्शन को सक्रिय रखें। |
सत्र नियंत्रण उस वार्तालाप या उसके चाइल्ड सत्र में केवल लंबित अनुमति/प्रश्न आईडी स्वीकार करते हैं। किसी प्रश्न के लिए गैर-रिक्त उत्तरों की आवश्यकता होती है; एक एकल-विकल्प वाला प्रश्न एकाधिक चयनित मानों को अस्वीकार करता है, और एक प्रश्न जो कस्टम उत्तरों की अनुमति नहीं देता है वह केवल इसके सूचीबद्ध विकल्प लेबल को स्वीकार करता है।
स्रोत: packages/api/src/ai-events.ts, packages/ai/src/nikcli/session-controls.ts, और packages/ai/src/heartbeat.ts.
अनुलग्नक और उपयोगकर्ता कौशल
प्रत्येक चैट अनुरोध अधिकतम पाँच अनुलग्नक स्वीकार करता है। समर्थित छवियां पीएनजी, जेपीईजी, वेबपी और जीआईएफ हैं, जिनमें से प्रत्येक की सीमा 5 एमआईबी है; पीडीएफ़ में 10 MiB सीमा होती है। टेक्स्ट अनुलग्नक अधिकतम 2,000,000 वर्णों तक स्वीकार करते हैं, साथ ही 6,000 वर्णों तक के टेक्स्ट इनलाइन भी शामिल हैं। असमर्थित फ़ाइलें चुपचाप गायब होने के बजाय अस्वीकृति का कारण उत्पन्न करती हैं।
आयात टूल के लिए टेक्स्ट अटैचमेंट को प्रोजेक्ट-स्कोप इन-मेमोरी स्टोर में रखा जाता है: अधिकतम 32 नाम और प्रति प्रोजेक्ट 8, 000, 000 वर्ण, और अधिकतम 32 संग्रहित प्रोजेक्ट में 000, 000, 64 वर्ण। किसी नाम का पुन: उपयोग करने से उसका पिछला पाठ बदल जाता है। सेवा को पुनः आरंभ करने से यह अनुलग्नक संग्रह बरकरार नहीं रहता है. प्रदाता ट्रांसफॉर्म द्वारा मॉडल को एक पीडीएफ-क्षमता बेमेल की सूचना दी जाती है।
उपयोगकर्ता कौशल नाम छोटे अक्षर/अंकीय शब्द हैं जो हाइफ़न से जुड़े होते हैं, अधिकतम 64 वर्णों में। विवरण और मुख्य भाग की सीमाएँ क्रमशः 300 और 20,000 वर्ण हैं; अधिक से अधिक 50 उपयोगकर्ता कौशल लोड किए जा सकते हैं। उपयोगकर्ता कौशल एपीआई के माध्यम से अंतर्निहित कौशल को हटाया नहीं जा सकता। एक सहेजा गया कौशल live परिणाम इंगित करता है कि होस्ट पुनः लोड प्रभावी हुआ या नहीं।
स्रोत: packages/ai/src/attachments.ts, packages/ai/src/skills/user.ts, और apps/sidecar/src/http/ai.ts.
सहायक विफलताओं का निदान करें
- कोई कॉन्फ़िगर मॉडल नहीं: निरीक्षण करें
/api/ai/statusऔर/api/ai/providers, फिर सूचीबद्ध प्रदाता के लिए एक कुंजी सेट करें। एक कॉन्फ़िगर किया गया ध्वज साबित करता है कि संग्रहीत कुंजी मौजूद है, न कि यह कि विक्रेता ने इसे स्वीकार कर लिया है। - अज्ञात प्रदाता या अमान्य URL: विज्ञापित प्रदाता आईडी और HTTP(S) आधार URL का उपयोग करें। एक गैर-अंतर्निहित प्रत्यक्ष प्रदाता को अपनी कुंजी के अतिरिक्त एक संगत समापन बिंदु की आवश्यकता होती है।
- सत्र पहुंच योग्य नहीं: मूल प्रोजेक्ट/खाता/सत्र पहचान का उपयोग करके पुनर्प्राप्त करें। किसी मौजूदा होस्ट सत्र के लिए प्रतिस्थापन प्रोजेक्ट आईडी का आविष्कार न करें।
- एक मोड़ अनिश्चित काल तक प्रतीक्षा करता है: डुप्लिकेट प्रॉम्प्ट को पुनः प्रयास करने से पहले लंबित अनुमतियों या प्रश्नों के लिए सत्र नियंत्रण स्थिति का निरीक्षण करें। टर्न को रद्द करने और अपने कर्मचारियों से जुड़ने के लिए स्पष्ट गर्भपात का उपयोग करें।
- एक उपकरण ने मॉडल को आंशिक रूप से बदल दिया: इसका निरीक्षण करें
tool_diagnostic, शामिलmutationApplied, फिर वर्तमान ड्राइंग पढ़ें। किसी संपादन क्रिया के परिणाम का निरीक्षण किए बिना पुनः प्रयास करने से ज्यामिति की नकल हो सकती है।
टूल परिणाम और टाइप की गई विफलताएं उस चरण को सुरक्षित रखती हैं जो विफल हुआ। सफल टूल के बाद प्रदाता की त्रुटि उन प्रोजेक्ट म्यूटेशन को वापस नहीं लाती है। नियतात्मक सीएएम और इतिहास जांच मॉडल उत्तर से अलग से उपलब्ध रहती हैं।
सहायक समापन बिंदु संदर्भ
सभी सहायक मार्ग नीचे रहते हैं /api/ai और एप्लिकेशन वाहक टोकन की आवश्यकता है। एक स्टैंडअलोन निकल्ली के लिए एक ब्रिज टोकन केवल एक्शन लिस्टिंग और इनवोकेशन रूट खोलता है, और केवल इसके प्रोजेक्ट के लिए।
| मार्ग | उद्देश्य |
|---|---|
POST /api/ai/chat/stream | स्ट्रीमिंग टर्न प्रारंभ करें; प्रतिक्रिया सहायक घटनाओं की एक एसएसई स्ट्रीम है। |
POST /api/ai/chat/queue | किसी व्यस्त सत्र के लिए अनुवर्ती संदेश कतारबद्ध करें। |
POST /api/ai/chat/abort | किसी सत्र के चालू चरण को निरस्त करें. |
POST /api/ai/permission/reply | अनुमति अनुरोध का उत्तर दें: once, always, या reject. |
POST /api/ai/sessions/state, /sessions/control, /sessions/remove | सत्र स्थिति पढ़ें, एक सत्र नियंत्रित करें, एक हटाएं। |
GET /api/ai/status, /models, /providers, /agents, /prompts | खोज: तैयारी, मॉडल कैटलॉग, उनकी कॉन्फ़िगरेशन स्थिति के साथ प्रदाता, विशेषज्ञ एजेंट, त्वरित सुझाव। |
PUT /api/ai/credentials, DELETE /api/ai/credentials/:provider | प्रदाता क्रेडेंशियल संग्रहीत करें या साफ़ करें। |
GET/PUT /api/ai/skills, DELETE /api/ai/skills/:name | उपयोगकर्ता कौशलों को सूचीबद्ध करें, सहेजें और हटाएं। |
GET /api/ai/actions, POST /api/ai/actions/invoke | एक्शन कैटलॉग और प्रत्यक्ष आह्वान (निक्ली ब्रिज द्वारा भी उपयोग किया जाता है)। |
GET/POST /api/ai/bridge/tokens, DELETE /api/ai/bridge/tokens/:id | स्कोप्ड ब्रिज टोकन जारी करें, सूचीबद्ध करें और निरस्त करें। |
POST /api/ai/completion | एकल पूर्णता: prompt, systemPrompt, model, temperature; रिटर्न text और model. |
POST /api/ai/title | बातचीत के अंश का शीर्षक. |
POST /api/ai/design-analysis | सुझाव के साथ confidence, priority (निम्न/मध्यम/उच्च), और kind (अनुकूलन/चेतावनी/महत्वपूर्ण)। |
POST /api/ai/machining-parameters | Cutting speed (m/min), feed (mm/min), depth of cut (mm), stepover (%), coolant (flood/mist/none), engagement (conventional/climb), and warnings. |
POST /api/ai/gcode-optimization | प्रति-पंक्ति परिवर्तन और कारणों, अनुमानित समय और उपकरण-जीवन बचत और नोट्स के साथ अनुकूलित जी-कोड। |
POST /api/ai/design-suggestions | शीर्षक, तर्क और अगले चरण के साथ अगले चरण के सुझाव। |
POST /api/ai/analyze-gcode | मुद्दे (त्रुटि/चेतावनी/कोड, लाइन और संदेश के साथ जानकारी) और आँकड़े: लाइनें, तीव्र और कट चालें, उपकरण परिवर्तन और सीमाएँ। |
POST /api/ai/gcode, /toolpath-analysis, /feedback, /proxy | जी-कोड क्रियाएं, टूलपाथ अंतर्दृष्टि, फीडबैक और प्रदाता प्रॉक्सी। |
मॉडल-समर्थित विश्लेषण उत्तर टाइप किए गए आकार में मॉडल आउटपुट हैं। मशीनिंग पैरामीटर जैसे मान टूलींग डेटा और मशीन सीमाओं के विरुद्ध समीक्षा करने के सुझाव हैं, सत्यापित कटिंग डेटा नहीं।
स्ट्रीमिंग अनुरोध फ़ील्ड
| मैदान | मान | Effect |
|---|---|---|
message | डोरी | इस मोड़ के लिए उपयोगकर्ता का संदेश. |
sessionId | डोरी | मौजूदा सत्र जारी रखें; एक नई शुरुआत करना छोड़ें. |
projectId | डोरी | प्रोजेक्ट जिसका संदर्भ और उपकरण बारी का उपयोग करता है। |
drawingId | डोरी | यह मोड़ ड्राइंग पर कार्य कर सकता है। टर्न स्वीकार करने से पहले इसे प्रोजेक्ट के विरुद्ध जांचा जाता है, और टर्न के उपकरण इस ड्राइंग पर कार्य करते हैं और कुछ नहीं। |
mode | general, cad, cam, gcode, toolpath | मोड़ का फोकस. |
permissionMode | auto, ask, approve | टूल अनुमतियाँ कैसे मांगी जाती हैं. |
agent | डोरी | विशेषज्ञ एजेंट का नाम से /api/ai/agents. |
attachments | [{ name, mime?, data, encoding?: "base64" | "text" }] | अधिकतम 5 अनुलग्नक: छवियाँ 5 MB तक, PDF 10 MB तक, और पाठ 2,000,000 वर्णों तक (6,000 वर्णों तक की पाठ फ़ाइलें भी संदेश में लिखी जाती हैं)। |
context, includeContext | स्ट्रिंग, बूलियन | अतिरिक्त संदर्भ पाठ और इकट्ठे प्रोजेक्ट संदर्भ को शामिल करना है या नहीं। |
model | मॉडल चयनकर्ता | इस मोड़ के लिए कॉन्फ़िगर किए गए मॉडल को ओवरराइड करें। |
सीमाएँ और चूक
| आप LIMIT | कीमत |
|---|---|
| इकट्ठे संदर्भ बजट | 24,000 अक्षर; एक ब्लॉक जो फिट नहीं होता है उसे मार्कर से छोटा कर दिया जाता है, और एक ब्लॉक जो 400 वर्णों से नीचे काटा जाएगा उसे छोड़ दिया जाता है |
| परियोजना संदर्भ दस्तावेज़ | 8,000 तक संग्रहीत वर्ण, 2,000 मॉडल को भेजे गए |
| प्रोजेक्ट मेमोरी/उपयोगकर्ता की आदतें | प्रत्येक में 1,500 अक्षर |
| प्रोजेक्ट नोट्स | प्रोजेक्ट संदर्भ द्वारा संदर्भित नहीं होने पर 90 दिनों के बाद काट-छांट की गई |
| टूल आउटपुट मॉडल को भेजा गया | 24,000 अक्षर |
| प्रति कॉल बनाए गए तत्व | 40 |
| आउटपुट टोकन | 32,000 अधिकतम |
| दिल की धड़कन | स्ट्रीम सक्रिय होने पर प्रत्येक 5 सेकंड |
| सटीक-ज्यामिति क्रियाएँ | 60-दूसरा बजट; सटीक रिपोर्ट 1.5 सेकंड |
| कर्नेल नौकरियाँ | 120-दूसरी समय सीमा, कार्यकर्ता प्रारंभ शामिल है |
| नेपथ्य कार्य | 4 सक्रिय, 16 कतारबद्ध, 2 पढ़ने वाले श्रमिकों के लिए प्रयास, निपटाए गए कार्य 7 दिनों तक रखे गए |
| स्वचालित निरंतरता | 50 प्रति अनुरोध; 5 कनेक्शन 2–30 के बैकऑफ़ के साथ फिर से शुरू होता है |
| डायरेक्ट-कॉल पुनः प्रयास | 5 कॉल जिसमें पहली कॉल भी शामिल है; 2 s दोगुना होकर 30 s, सम्माननीय retry-after |
| उपयोगकर्ता कौशल | 50 कौशल; 64 वर्णों तक नाम (हाइफ़न से जुड़े छोटे शब्द), 300 तक विवरण, 20 तक मुख्य भाग, 000 |
| वेब खोज फ़ेच | प्रति प्रतिक्रिया 256 KB |
| ब्रिज टोकन | डिफ़ॉल्ट रूप से 30 दिन, अधिकतम 365 दिन |
परिणाम पढ़ें, गद्य नहीं
एक उपकरण का परिणाम सामने है tool_result और tool_diagnostic घटनाएँ. सहायक के सारांश पर भरोसा करने से पहले जांचें कि क्या उत्परिवर्तन लागू किया गया था।
पूरी कार्रवाई सूची
सहायक 83 परिवारों में 13 घोषित कार्यों के माध्यम से कार्य करता है। प्रत्येक क्रिया अपना परिणाम स्कीमा और उसकी घोषणा करती है प्रभाव: खुले दस्तावेज़ को पढ़ने से परे यह क्या बदलता है या पहुंचता है। परिवार पढ़ें (cad, cam, library, memory, research, vcs) अधिकतर कोई प्रभाव नहीं पड़ता; उनका _edit समकक्ष लगातार स्थिति बदलते रहते हैं। प्रभाव कोष्ठक में सूचीबद्ध हैं.
| परिवार | गिनती करना | क्रियाएँ (प्रभाव) |
|---|---|---|
cad | 20 | describe, check, relations, grep, vision (इंटरफ़ेस), inspect_elements, inspect_layers, inspect_search, inspect_property, drawing, parametric_validate, parametric_inspect, parametric_test, parametric_dfm, parametric_exact, exact, assembly, parametric_fastener, parametric_recipe, parametric_from_element |
cad_edit | 12 | add (चित्रकला), add_entities (चित्रकला), modify (चित्रकला), transform (चित्रकला), group (चित्रकला), delete (चित्रकला), editor (इंटरफ़ेस+ड्राइंग), import (चित्रकला), parametric_create (चित्रकला), parametric_update (चित्रकला), parametric_recipe_create (चित्रकला), parametric_convert (चित्रकला) |
cam | 14 | plan_check, review, machine, operations, suggest, compare_setups, analyze, stock, vision (इंटरफ़ेस), chain_suggest, materials, cutting_data, manufacture, chain_status |
cam_edit | 6 | manufacture (ऑपरेशन+प्रोग्राम), create (संचालन), update (संचालन), generate (कार्यक्रम), verify (प्रतिवेदन), stock_set (भंडार) |
library | 5 | component_list, lookup_component, lookup_material, lookup_tool, lookup_machine_config |
parts | 3 | save (अवयव), insert (चित्रकला), delete (अवयव) |
library_edit | 5 | upsert_material (पुस्तकालय), upsert_tool (पुस्तकालय), upsert_machine_config (पुस्तकालय), set_default (पुस्तकालय), delete (पुस्तकालय) |
memory | 2 | recall, context_read |
memory_edit | 2 | remember (याद), context_update (प्रसंग) |
research | 2 | search (बाहरी), read_attachment |
vcs | 3 | status, diff, list_pull_requests |
vcs_edit | 5 | start_change (इतिहास), commit (इतिहास), restore (इतिहास+चित्रांकन), open_pull_request (इतिहास), run_workflows (कार्यप्रवाह) |
agent | 4 | start (काम), list, read, cancel (काम) |
| Effect | अर्थ |
|---|---|
drawing, component, operation, program, stock, report | लगातार डिज़ाइन या विनिर्माण डेटा |
library, memory, context | लाइब्रेरी रिकॉर्ड, प्रोजेक्ट मेमोरी, कार्यक्षेत्र संदर्भ |
history, workflow | संस्करण नियंत्रण और वर्कफ़्लो चलता है |
task | प्रतिनिधिमंडल अनुसूचक (पृष्ठभूमि एजेंट) |
interface | स्क्रीन पर संपादक या व्यूपोर्ट; लगातार नहीं |
external | नेटवर्क (वेब अनुसंधान) |
एक पठनीय क्रिया ही हो सकती है interface या external; प्रत्येक नाम कम से कम एक सतत प्रभाव लिखें। प्रभाव प्रति क्रिया के अनुसार घोषित किए जाते हैं और इसे लागू करने वाले उपकरण से कभी भी अनुमान नहीं लगाया जाता है।
एक्शन कॉल कैसे समाप्त होती है
| नतीजा | कब |
|---|---|
succeeded | कार्रवाई ने वही किया जो कहा गया था। इसमें नकारात्मक परिणाम वाली रीडिंग शामिल हैं, जैसे कि विफल चेक। |
partial | उत्तर या बैच का भाग: complete: false, omitted > 0, गैर-खाली skipped, या ए nextOffset पेज पर |
refused | कुछ नहीं किया: ok: false किसी त्रुटि या टैग के साथ (अमान्य इनपुट, अस्वीकृत, अनुपलब्ध, करने के लिए कुछ नहीं) |
conflict | दस्तावेज़ आगे बढ़ा: ActionConflict या स्थिति stale/conflict. पुनः प्रयास करने से पहले दोबारा निरीक्षण करें. |
cancelled | ActionInterrupted |
uncertain | ActionUncertain: एक लेख प्रतिबद्ध हो सकता है लेकिन उसका उत्तर पढ़ा नहीं जा सका। निरीक्षण करके समाधान करें; कभी भी आँख मूंदकर पुनः प्रयास न करें। |
लेखन एक ड्राइंग संशोधन के लिए बाध्य हैं। एक प्रतिबद्ध लेखन रिटर्न देता है ActionCommitted के साथ रसीद previousRevision और revision; बासी के विरुद्ध एक लेख expectedRevision रिटर्न ActionConflict दोनों के साथ expectedRevision और actualRevision. वही वर्गीकरण (actionOutcome) होस्ट, कोड मोड, डेस्कटॉप और ब्रिज द्वारा साझा किया जाता है।
{
"ok": false,
"_tag": "ActionConflict",
"actionId": "cad_edit.modify",
"projectId": "…", "drawingId": "…",
"expectedRevision": 41, "actualRevision": 42,
"message": "…"
}