मुख्य कंटेंट तक स्किप करें

प्लगइन का उपयोग कैसे करें

यह गाइड संपूर्ण रनटाइम API को कवर करती है: एक LLM इंस्टेंस बनाना, मॉडल लोड करना, संदेश भेजना, रनटाइम पर मॉडल डाउनलोड करना, स्थिति प्रबंधित करना और उपयोगिता फ़ंक्शन।

एक LLM इंस्टेंस बनाएँ

सबसे पहले एक Runtime Local LLM ऑब्जेक्ट बनाएँ। इसका एक संदर्भ बनाए रखें (जैसे कि Blueprints में एक वेरिएबल के रूप में या C++ में एक UPROPERTY) ताकि समय से पहले गारबेज कलेक्शन को रोका जा सके।

Runtime Local LLM बनाएँ

एक मॉडल लोड करें

संदेश भेजने से पहले आपको एक मॉडल लोड करना होगा। प्लगइन आपके वर्कफ़्लो के आधार पर कई लोडिंग विधियाँ प्रदान करता है।

नाम से लोड करें

यदि आप एडिटर सेटिंग्स पैनल के माध्यम से मॉडल प्रबंधित करते हैं, तो Load Model (By Name) का उपयोग करें।

UE 5.4 और बाद के संस्करणों में, Load Model (By Name) डिस्क पर सभी मॉडलों का ड्रॉपडाउन प्रस्तुत करता है - बस उस मॉडल का चयन करें जिसे आप लोड करना चाहते हैं।

UE 5.4+ में नाम से मॉडल लोड करें

फ़ाइल पथ से लोड करें

किसी .gguf फ़ाइल के लिए एक निरपेक्ष फ़ाइल पथ से सीधे मॉडल लोड करें:

फ़ाइल से मॉडल लोड करें

URL से लोड करें (डाउनलोड करें और लोड करें)

एक URL से मॉडल डाउनलोड करें (यदि डिस्क पर पहले से मौजूद नहीं है) और इसे स्वचालित रूप से लोड करें। यदि फ़ाइल स्थानीय रूप से पहले से मौजूद है, तो डाउनलोड छोड़ दिया जाता है।

सबसे सरल प्रकार केवल एक URL लेता है - फ़ाइल नाम से मेटाडेटा प्राप्त किया जाता है:

सरल Load Model From URL

आप अधिक समृद्ध मॉडल जानकारी के लिए Load Model From URL का उपयोग पूर्ण मॉडल मेटाडेटा के साथ भी कर सकते हैं:

Load Model From URL

अतुल्यकालिक लोड (Blueprint)

लोड पूर्ण होने और त्रुटियों को डेलीगेट्स को मैन्युअली बाइंड करने के बजाय आउटपुट पिन्स के माध्यम से संभालने के लिए, दो अतुल्यकालिक नोड्स उपलब्ध हैं।

Load Model By Name (Async) Load Model (By Name) को दर्पित करता है - UE 5.4+ में यह डिस्क पर सभी मॉडलों की ड्रॉपडाउन प्रस्तुत करता है:

Load Model By Name Async UE 5.4+

Load Model From File (Async) इसके बजाय एक पूर्ण फ़ाइल पथ लेता है:

Load Model From File Async

इवेंट बाइंड करें

LLM इंस्टेंस के डेलीगेट्स से कॉलबैक प्राप्त करने के लिए बाइंड करें। सभी कॉलबैक गेम थ्रेड पर सक्रिय होते हैं।

Bind Events

उपलब्ध डेलीगेट्स:

  • On Token Generated: प्रत्येक आउटपुट टोकन पर सक्रिय होता है
  • On Generation Complete: पूर्ण प्रतिक्रिया तैयार होने पर, अवधि, टोकन गणना और प्रति सेकंड टोकन के साथ सक्रिय होता है
  • On Prompt Processed: प्रॉम्प्ट के प्रोसेस हो जाने के बाद, जनरेशन आरंभ होने से पहले सक्रिय होता है
  • On Error: किसी भी ऑपरेशन के दौरान त्रुटि होने पर सक्रिय होता है
  • On Model Loaded: मॉडल का लोड होना समाप्त होने पर सक्रिय होता है
  • On Model Unloaded: मॉडल अनलोड होने पर सक्रिय होता है
  • On Download Progress: मॉडल डाउनलोड के दौरान समय-समय पर सक्रिय होता है (प्रगति अंश, प्राप्त बाइट्स, कुल बाइट्स)
  • On Model Downloaded: डाउनलोड-मात्र ऑपरेशन पूर्ण होने पर सक्रिय होता है

संदेश भेजें

एक बार मॉडल लोड हो जाने के बाद, प्रतिक्रिया उत्पन्न करने के लिए एक उपयोगकर्ता संदेश भेजें:

Send Message

एक विशिष्ट संदेश के लिए सिस्टम प्रॉम्प्ट को ओवरराइड करने के लिए, Send Message With System Prompt का उपयोग करें:

Send Message With System Prompt

जैसे ही टोकन उत्पन्न होते हैं, वे OnTokenGenerated के माध्यम से स्ट्रीम होते हैं। जब जनरेशन समाप्त होता है, OnGenerationComplete पूर्ण प्रतिक्रिया, अवधि, टोकन गणना और tokens-per-second के साथ सक्रिय होता है।

Async संदेश भेजें (Blueprint)

Send LLM Message (Async) नोड टोकन, पूर्णता और त्रुटियों के लिए समर्पित आउटपुट पिन प्रदान करता है:

Async Send Message

रनटाइम पर मॉडल डाउनलोड करें

ऊपर वर्णित डाउनलोड-एंड-लोड प्रवाह के अलावा, आप किसी मॉडल को लोड किए बिना डिस्क पर डाउनलोड कर सकते हैं। यह लोडिंग स्क्रीन या सेटिंग्स मेनू में मॉडल को प्री-कैशिंग करने के लिए उपयोगी है।

Download Model

एक URL-केवल संस्करण भी उपलब्ध है:

Download Model From URL

Download LLM Model (Async) और Download LLM Model From URL (Async) नोड प्रगति, पूर्णता और त्रुटियों के लिए आउटपुट पिन प्रदान करता है:

Async Download Model

OnDownloadProgress delegate डाउनलोड के दौरान प्रगति की सूचना देता है। OnModelDownloaded तब सक्रिय होता है जब फ़ाइल डिस्क पर सहेजी जाती है।

प्रगति में डाउनलोड रद्द करने के लिए:

डाउनलोड रद्द करें

प्लगइन स्वचालित रूप से डुप्लिकेट डाउनलोड को रोकता है - यदि उसी मॉडल के लिए पहले से ही कोई डाउनलोड प्रगति पर है, तो बाद की कॉल्स को अनदेखा कर दिया जाता है।

जनरेशन रोकें

चल रही जनरेशन को बाधित करने के लिए:

Stop Generation

बातचीत संदर्भ रीसेट करें

नई बातचीत शुरू करने के लिए बातचीत इतिहास साफ़ करें:

संदर्भ रीसेट करें

मॉडल अनलोड करें

जब किसी मॉडल की आवश्यकता न हो, तब संसाधन मुक्त करें:

मॉडल अनलोड करें

क्वेरी स्थिति

LLM इंस्टेंस की वर्तमान स्थिति जाँचें:

क्वेरी स्थिति

  • Is Model Loaded: यदि कोई मॉडल अनुमान के लिए तैयार है तो सत्य
  • Is Generating: यदि जनरेशन प्रगति में है तो सत्य
  • Is Busy: यदि कोई ऑपरेशन (लोडिंग, जनरेटिंग, डाउनलोडिंग) सक्रिय है तो सत्य
  • Is Downloading: यदि कोई मॉडल डाउनलोड प्रगति में है तो सत्य
  • Get Loaded Model Metadata: वर्तमान मॉडल का मेटाडेटा लौटाता है
  • Get Applied Inference Params: लोड करते समय लागू किए गए पैरामीटर लौटाता है

मॉडल लाइब्रेरी फ़ंक्शन

मॉडल फ़ाइलों को डिस्क पर प्रबंधित करने के लिए स्थैतिक उपयोगिता फ़ंक्शन का एक सेट प्रदान किया गया है। ये मॉडल चयन UI बनाने या रनटाइम पर मॉडल उपलब्धता की जाँच करने के लिए उपयोगी हैं।

डाउनलोड किए गए मॉडल नाम / मेटाडेटा प्राप्त करें

डाउनलोड किए गए मॉडल नाम प्राप्त करें

सभी डाउनलोडेड मॉडल मेटाडेटा प्राप्त करें

जांचें कि मॉडल डिस्क पर है या नहीं

क्या मॉडल डिस्क पर है

मॉडल फ़ाइल पथ प्राप्त करें

मॉडल फ़ाइल पथ प्राप्त करें

मॉडल फ़ाइलें हटाएं

मॉडल फ़ाइलें हटाएं

पूर्व-निर्धारित और उपलब्ध मॉडल प्राप्त करें

पूर्वनिर्धारित मॉडल प्राप्त करें

सभी उपलब्ध मॉडल प्राप्त करें

एक URL से मेटाडेटा बनाएं

एक कच्चे URL से मॉडल मेटाडेटा बनाएँ (फ़ील्ड फ़ाइल नाम से प्राप्त होते हैं):

Make Metadata From URL

उपयोगिता फ़ंक्शन

स्वरूपण और त्रुटि प्रदर्शन के लिए सहायक फ़ंक्शनों का एक सेट प्रदान किया गया है।

Bytes to Readable String

बाइट गिनती को मानव-पठनीय स्ट्रिंग (जैसे "4.07 GB") में बदलता है। UI में मॉडल आकार प्रदर्शित करने के लिए उपयोगी।

Bytes to Readable String

Format Download Progress

डाउनलोड प्रगति स्ट्रिंग को "1.23 GB / 4.07 GB (30.2%)" की तरह फ़ॉर्मेट करता है। यदि कुल आकार अज्ञात है, तो केवल प्राप्त राशि लौटाता है।

Format Download Progress

Get Error Description / Error Code String

Get LLM Error Description किसी त्रुटि कोड के लिए मानव-पठनीय पाठ विवरण लौटाता है। Get LLM Error Code String एनम मान नाम को एक स्ट्रिंग के रूप में लौटाता है (लॉगिंग के लिए उपयोगी)।

Get Error Description

त्रुटि कोड संदर्भ

कोडमानविवरण
Unknown0एक अनिर्दिष्ट त्रुटि
ModelLoadFailed10GGUF फ़ाइल लोड होने में विफल रही (दूषित फ़ाइल, असंगत प्रारूप, आदि)
ContextCreateFailed11अनुमान संदर्भ बनाने में विफल
ModelNotLoaded20कोई मॉडल लोड किए बिना अनुमान का प्रयास किया गया
ChatTemplateFailed21मॉडल का चैट टेम्पलेट लागू करने में विफल
TokenizationFailed22इनपुट पाठ को टोकन में बदला नहीं जा सका
ContextOverflow23प्रॉम्प्ट + संदर्भ कॉन्फ़िगर किए गए संदर्भ आकार से अधिक है
PromptDecodeFailed24प्रॉम्प्ट टोकन डिकोड करने में विफल
ContextTooFullToGenerate25आउटपुट जनरेट करने के लिए पर्याप्त संदर्भ स्थान शेष नहीं है
GenerationDecodeFailed30जनरेशन के दौरान एक टोकन डिकोड करने में विफल
GenerationTruncated31अधिकतम टोकन सीमा तक पहुँचने के कारण जनरेशन रुक गई
LLMInstanceNull40LLM इंस्टेंस नल या अमान्य है
ModelNotFoundOnDisk41मॉडल फ़ाइल अपेक्षित पथ पर मौजूद नहीं है
ModelURLEmpty42खाली URL के साथ डाउनलोड का अनुरोध किया गया था
ModelDownloadCancelled43डाउनलोड रद्द कर दिया गया
ModelDownloadEmptyData44डाउनलोड पूरा हुआ लेकिन प्रतिक्रिया बॉडी खाली थी
ModelDownloadSaveFailed45डाउनलोड पूरा हुआ लेकिन फ़ाइल को डिस्क पर सहेजा नहीं जा सका