StarCoder

StarCoder is a powerful 15B parameter model trained on 80+ programming languages. Generate, complete, or fill in the middle of code with high accuracy using Hugging Face’s open-source model.

एआई पर जाएं
StarCoder cover

स्टारकोडर के बारे में

अगली पीढ़ी का कोड जनरेशन मॉडल

स्टारकोडर बिगकोड परियोजना द्वारा निर्मित एक बड़ा भाषा मॉडल है, जिसे 80 से अधिक प्रोग्रामिंग भाषाओं में स्रोत कोड बनाने और पूरा करने के लिए डिज़ाइन किया गया है। 15.5 बिलियन मापदंडों और फिल-इन-द-मिडिल प्रशिक्षण पर ध्यान देने के साथ, स्टारकोडर उन्नत कोड जनरेशन कार्यों का समर्थन करता है और डेवलपर्स को उच्च-गुणवत्ता, संदर्भ-जागरूक पूर्णता के साथ सहायता करता है।

डेवलपर्स और शोधकर्ताओं के लिए बनाया गया

आधुनिक हार्डवेयर पर कुशलतापूर्वक चलाने के लिए डिज़ाइन किया गया और हगिंग फेस के माध्यम से तैनात किया गया, स्टारकोडर कोड सहायता चाहने वाले डेवलपर्स और ओपन-सोर्स कोडिंग मॉडल का मूल्यांकन करने वाले शोधकर्ताओं दोनों के लिए सुलभ है।

विशेषताएं और क्षमताएं

Multi-Language Support

StarCoder को डीडुप्लिकेट किए गए डेटासेट द स्टैक (v1.2) पर प्रशिक्षित किया गया था और इसमें 80 से अधिक प्रोग्रामिंग भाषाओं के कोड शामिल हैं। चाहे आप पायथन, जावास्क्रिप्ट, C++ या विशिष्ट भाषाओं में काम कर रहे हों, मॉडल आपके परिवेश के अनुकूल हो सकता है।

मध्य भाग भरें उद्देश्य

पारंपरिक बाएं से दाएं जेनरेशन के विपरीत, स्टारकोडर फिल-इन-द-मिडल (FIM) कार्यों का समर्थन करता है। यह डेवलपर्स को मौजूदा अनुभागों के बीच कोड के लापता ब्लॉक डालने की अनुमति देता है, जिससे ऑटो-कम्प्लीशन और स्निपेट जेनरेशन की लचीलापन बढ़ जाती है।

तकनीकी मुख्य बिंदु

उन्नत मॉडल वास्तुकला

StarCoder मल्टी-क्वेरी अटेंशन और एक बड़ी 8192-टोकन संदर्भ विंडो के साथ GPT-2 आर्किटेक्चर का उपयोग करता है। यह लंबे, संरचित कोड अनुक्रमों को समझने और उत्पन्न करने के लिए अनुकूलित है, जो इसे वास्तविक दुनिया के सॉफ़्टवेयर विकास कार्यों के लिए आदर्श बनाता है।

विशाल प्रशिक्षण डेटासेट

1 ट्रिलियन से ज़्यादा टोकन पर प्रशिक्षित, StarCoder को 24-दिन के प्रशिक्षण चक्र में 512 A100 GPU का उपयोग करके बनाया गया था। ऑप्ट-आउट सामग्री को बाहर करने के लिए डेटासेट को फ़िल्टर किया गया था और इसमें केवल अनुमतिपूर्वक लाइसेंस प्राप्त कोड शामिल है।

Use Cases and Applications

कोड पूर्णता और निर्माण

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

अनुसंधान और प्रयोग

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

ट्रांसफॉर्मर के साथ संगत

डेवलपर्स सिर्फ़ कुछ कोड लाइनों के साथ हगिंग फेस ट्रांसफॉर्मर्स के ज़रिए सीधे स्टारकोडर का इस्तेमाल कर सकते हैं। यह स्थानीय या क्लाउड परिनियोजन के लिए GPU त्वरण के साथ पूरी तरह से सुलभ है।

लाइसेंसिंग और जिम्मेदार उपयोग

ओपनरेल-एम लाइसेंस

StarCoder को BigCode OpenRAIL-M लाइसेंस के तहत जारी किया गया है। हालाँकि प्रशिक्षण डेटा को खुले तौर पर लाइसेंस प्राप्त कोड से प्राप्त किया गया था, लेकिन उपयोगकर्ता जेनरेट किए गए कोड का उपयोग करते समय उचित एट्रिब्यूशन सुनिश्चित करने और लाइसेंस आवश्यकताओं का सम्मान करने के लिए जिम्मेदार हैं।

एट्रिब्यूशन और पारदर्शिता

किसी भी उत्पन्न कोड खंड के मूल का पता लगाने के लिए एक खोज योग्य सूचकांक उपलब्ध है, जिससे डेवलपर्स को आवश्यक होने पर उचित श्रेय प्रदान करने की सुविधा मिलती है।

मूल्यांकन और प्रदर्शन

प्रतिस्पर्धी बेंचमार्क

स्टारकोडर ने कोडिंग बेंचमार्क पर मजबूत प्रदर्शन प्रदर्शित किया है, जिसमें शामिल हैं:

  • मानव मूल्यांकन (पास@1): 0.408 (प्रॉम्प्ट किया गया)
  • एमबीपीपी (पास@1): 0.527
  • मल्टीपीएल (जावा, सी++, गो): कई भाषाओं में प्रतिस्पर्धी

ये स्कोर सामान्य प्रयोजन प्रोग्रामिंग कार्यों में मॉडल की प्रभावशीलता को उजागर करते हैं।

वैकल्पिक उपकरण