# विज़ार्ड से रन शुरू करें

> सबमिट विज़ार्ड का हर चरण, टास्क से लेकर अनुबंध की जाँच तक।

सबमिट विज़ार्ड एक रन सेट अप करता है और उसे शुरू करता है। इसमें चार चरण हैं: **कार्य**, **इनपुट**, **ऑप्टिमाइज़र** और **मेट्रिक और रन**। हर चरण में एक या अधिक स्क्रीन होती हैं। यह गाइड कार्य से लेकर कॉन्ट्रैक्ट जाँच और रन की शुरुआत तक, हर स्क्रीन को समझाती है।

> [!NOTE]
> विज़ार्ड हर अनुभव स्तर के लिए कम या अधिक सेटिंग्स दिखाता है: **गाइडेड**, **स्टैंडर्ड** या **एक्सपर्ट**। गाइडेड डिफ़ॉल्ट है। स्तर **सेटिंग्स → खाता** में, **कितना दिखाना है** में बदलें। गाइडेड स्तर पर कुछ लेबल सरल होते हैं। यह गाइड स्टैंडर्ड और एक्सपर्ट लेबल इस्तेमाल करती है, और जहाँ गाइडेड लेबल अलग है, वहाँ उसे कोष्ठक में देती है।

## चरण 1: कार्य

### आप क्या ऑप्टिमाइज़ करना चाहते हैं?

**कार्य इंटरव्यू** चैट में सहायक को अपना कार्य बताएँ। सहायक आपके लिए दो फ़ील्ड लिखता है:

- **लक्ष्य** (गाइडेड: **उद्देश्य**): ऑप्टिमाइज़ किए गए आर्टिफ़ैक्ट को क्या अच्छी तरह करना चाहिए।
- **पृष्ठभूमि** (गाइडेड: **अतिरिक्त संदर्भ**): संदर्भ, सीमाएँ, और एक अच्छा परिणाम कैसा दिखता है।

आप दोनों फ़ील्ड संपादित कर सकते हैं। सहायक आपके संपादनों को अधिलेखित नहीं करता।

### क्या ऑप्टिमाइज़ होगा

**आर्टिफ़ैक्ट प्रकार** चुनें:

| आर्टिफ़ैक्ट प्रकार | क्या बदलता है                                             |
| --------------- | -------------------------------------------------------- |
| प्रॉम्प्ट         | किसी भाषा मॉडल को भेजे गए निर्देश                            |
| कोड             | किसी प्रोग्राम का सोर्स                                      |
| DSPy प्रोग्राम    | किसी DSPy मॉड्यूल के predictor निर्देश                       |
| टेक्स्ट           | कोई अन्य टेक्स्ट, जैसे कोई दस्तावेज़ या टेम्पलेट                  |

फिर **शुरुआती संस्करण** (गाइडेड: **शुरुआती बिंदु**) दें। मौजूदा संस्करण पेस्ट करें, या सहायक को एक ड्राफ़्ट लिखने दें।

### किसी रिपॉज़िटरी को ऑप्टिमाइज़ करें

आप किसी रिपॉज़िटरी का कोड भी ऑप्टिमाइज़ कर सकते हैं। ये फ़ील्ड सेट करें:

- **रिपॉज़िटरी**: कोई रिपॉज़िटरी चुनें, या उसे `owner/name` के रूप में लिखें।
- **कमिट**: 40 अक्षरों का SHA। ब्रांच के नवीनतम कमिट के लिए इसे खाली छोड़ें।
- **वे पाथ जिन्हें ऑप्टिमाइज़र बदल सकता है**: हर पंक्ति पर एक फ़ाइल या फ़ोल्डर। एक बिंदु का अर्थ है पूरी रिपॉज़िटरी।
- **सेटअप कमांड**: स्कोरिंग से पहले हर नए checkout में चलता है। इसे खाली छोड़ें और Skynet कमांड ढूँढ लेगा।

## चरण 2: इनपुट

### डेटा

रन के लिए केस जोड़ें। आप:

- CSV, JSON या Excel फ़ाइल अपलोड कर सकते हैं।
- अपनी लाइब्रेरी से कोई डेटासेट चुन सकते हैं।

[डेटासेट और विभाजन](/docs/hi/concepts/datasets) और [डेटासेट तैयार करें](/docs/hi/guides/datasets) पढ़ें।

### डेटा कैसे पढ़ा जाए

सहायक डेटा पढ़ता है और उसे इस्तेमाल करने का तरीका सुझाता है। उसके चुनावों की जाँच करें:

- हर कॉलम को इनपुट, अपेक्षित आउटपुट, या अनदेखा चिह्नित करें।
- आउटपुट कॉलम न होने पर, Skynet पहली पंक्ति को एक इनपुट के रूप में इस्तेमाल करता है।
- प्रशिक्षण, मान्यकरण और परीक्षण सेट में विभाजन सेट करें। विभाजन का योग 1 होना चाहिए।

> [!WARNING]
> जब तक **इनपुट** चरण में कोई समस्या है, आप बाद के चरण नहीं खोल सकते। विज़ार्ड जो समस्याएँ दिखाता है उन्हें ठीक करें, फिर आगे बढ़ें।

## चरण 3: ऑप्टिमाइज़र

स्टैंडर्ड स्तर पर, इस चरण में एक स्क्रीन होती है। यह ऑप्टिमाइज़र, बजट और, ज़रूरत होने पर, मॉडल दिखाती है। गाइडेड और एक्सपर्ट स्तरों पर, इस चरण में तीन स्क्रीन होती हैं: **ऑप्टिमाइज़र**, **मॉडल** और **बजट**।

### ऑप्टिमाइज़र

विज़ार्ड केवल वे ऑप्टिमाइज़र दिखाता है जो आपके कार्य और इनपुट के लिए उपयुक्त हैं। आपके लिए **Auto** चुना होता है। चाहें तो कोई दूसरा ऑप्टिमाइज़र चुनें। [इंजन](/docs/hi/concepts/engines) और [ऑप्टिमाइज़ेशन कैसे काम करता है](/docs/hi/concepts/optimization) पढ़ें।

### मॉडल

- **टास्क मॉडल**: वह मॉडल जिसे आपका रन कोड कॉल करता है। अगर आपका रन कोड कोई मॉडल कॉल नहीं करता, तो इसे खाली छोड़ें। DSPy प्रोग्राम में टास्क मॉडल होना ज़रूरी है।
- **रिफ़्लेक्शन मॉडल**: वह मॉडल जो स्कोर और फ़ीडबैक पढ़ता है और अगले उम्मीदवार लिखता है। कोडिंग-एजेंट ऑप्टिमाइज़र में, यह एजेंट का मॉडल होता है।

### बजट

सेट करें कि रन कितनी देर तक कोशिश करता रह सकता है, और कितना खर्च कर सकता है:

- **अधिकतम स्कोरर रन** (गाइडेड: **अधिकतम प्रयास**): Skynet अधिकतम कितने उम्मीदवारों को स्कोर करता है। कुछ ऑप्टिमाइज़र को एक न्यूनतम संख्या चाहिए।
- **इस स्कोर पर रुकें** (गाइडेड: **स्कोर इस मान तक पहुँचने पर जल्दी रुकें**): जब कोई संस्करण यह स्कोर पा लेता है, तो रन रुक जाता है।
- **अधिकतम इटरेशन** (गाइडेड: **अधिकतम राउंड**): उन ऑप्टिमाइज़र के लिए दिखता है जो इसका समर्थन करते हैं।
- **खर्च की सीमा**: रन अधिकतम कितना खर्च कर सकता है। डिफ़ॉल्ट $5 है, या **शुरू करने के लिए ज़रूरी** राशि, अगर वह अधिक हो। आप **कोई सीमा नहीं** भी चुन सकते हैं।

अगर सीमा या आपका बैलेंस शुरू करने के लिए ज़रूरी राशि से कम है, तो विज़ार्ड आपको आगे नहीं बढ़ने देता। [बजट और बिलिंग](/docs/hi/concepts/billing) पढ़ें।

## चरण 4: मेट्रिक और रन

### कोड और मेट्रिक

दो फ़ाइलें लिखें:

- `run.py`: रन कोड, जो आपके आर्टिफ़ैक्ट को एक केस पर चलाता है।
- `metric.py`: मेट्रिक, जो आउटपुट को स्कोर करता है और फ़ीडबैक लिखता है।

**कोडिंग एजेंट** आपके लिए कोई भी फ़ाइल लिख और बदल सकता है। वह अपने कोड की जाँच करता है और जो विफल होता है उसे ठीक करता है। आप अधिकतम 20 अतिरिक्त फ़ाइलें जोड़ सकते हैं। [मेट्रिक और स्कोरर](/docs/hi/concepts/scorers) पढ़ें।

अगर आपका मेट्रिक `llm()` को कॉल करता है, तो **मेट्रिक मॉडल** सेट करें। डिफ़ॉल्ट रूप से यह रिफ़्लेक्शन मॉडल इस्तेमाल करता है।

### कॉन्ट्रैक्ट जाँच

**कॉन्ट्रैक्ट जाँच** (गाइडेड: **टेस्ट रन**) आपके कोड और मेट्रिक को सैंडबॉक्स में 3 सैंपल केस पर चलाती है। यह जाँचती है:

- रन कोड का सिग्नेचर,
- मेट्रिक का सिग्नेचर,
- मेट्रिक मॉडल,
- सैंपल पर रन कोड,
- मेट्रिक का रिटर्न मान।

**जाँचें** (गाइडेड: **इसे टेस्ट करें**) चुनें। जाँच पास होने तक आप रन शुरू नहीं कर सकते। अगर पास होने के बाद आप कोड या सेटअप बदलते हैं, तो जाँच फिर से चलाएँ।

> [!TIP]
> हर सैंपल का इनपुट, आउटपुट और फ़ीडबैक देखने के लिए उसे खोलें। अच्छा फ़ीडबैक ऑप्टिमाइज़र को केवल स्कोर की तुलना में काम करने के लिए अधिक जानकारी देता है।

### निर्धारित रन

सफल होने के बाद आप ऑप्टिमाइज़ेशन को एक शेड्यूल पर फिर से चला सकते हैं। डिफ़ॉल्ट **बंद** है।

### चलाने के लिए तैयार

आखिरी स्क्रीन पाँच टैब में एक सारांश दिखाती है: **सामान्य**, **डेटा**, **मॉडल**, **बजट** और **रिवॉर्ड**। सेटअप जाँचें, फिर ऑप्टिमाइज़ेशन शुरू करें।

सारांश रन की दृश्यता भी दिखाता है। नए रन डिफ़ॉल्ट रूप से सार्वजनिक होते हैं। इसे बाद में रन पेज पर **साझाकरण और गोपनीयता** डायलॉग में बदलें। [साझा करें और प्रकाशित करें](/docs/hi/guides/sharing) पढ़ें।

> [!NOTE]
> रिपॉज़िटरी रन में इस चरण में केवल **कोड और मेट्रिक** स्क्रीन और सारांश होते हैं। रन शुरू करने पर Skynet रिपॉज़िटरी के अनुसार सेटअप की जाँच करता है।

## शुरू करने के बाद

रन पेज खुलता है। [रन](/docs/hi/concepts/runs) और [परिणाम पढ़ें](/docs/hi/guides/results) पढ़ें।

---

Source: https://staging.skynetml.com/docs/hi/guides/submit
