CodeGemma मॉडल कार्ड

मॉडल पेज: CodeGemma

संसाधन और तकनीकी दस्तावेज़:

इस्तेमाल की शर्तें: शर्तें

लेखक: Google

मॉडल की जानकारी

मॉडल की खास जानकारी

ब्यौरा

CodeGemma, Gemma पर बने लाइटवेट ओपन कोड मॉडल का एक फ़ैमिली ग्रुप है. CodeGemma मॉडल, टेक्स्ट-टू-टेक्स्ट और टेक्स्ट-टू-कोड डिकोडर मॉडल होते हैं. साथ ही, ये 7 अरब पहले से ट्रेन किए गए वैरिएंट के रूप में उपलब्ध है, जो कोड को पूरा करने में माहिर है और कोड जेनरेशन टास्क, एक 7 अरब पैरामीटर वाले निर्देश हैं, जो कोड चैट और निर्देश का पालन किया जा रहा है. साथ ही, पहले से ट्रेन किया गया दो अरब पैरामीटर वाला वैरिएंट का इस्तेमाल करें.

इनपुट और आउटपुट

  • इनपुट: पहले से ट्रेन किए गए मॉडल के वैरिएंट के लिए: कोड प्रीफ़िक्स और वैकल्पिक तौर पर सफ़िक्स का इस्तेमाल किया जा सकता है. निर्देश के मुताबिक मॉडल के वैरिएंट के लिए: आम भाषा में लिखा गया टेक्स्ट या प्रॉम्प्ट.

  • आउटपुट: पहले से ट्रेन किए गए मॉडल के वैरिएंट के लिए: फ़िल-इन-द-मिडल कोड पूरा कोड, कोड, और आम भाषा. निर्देशों के हिसाब से तैयार किए गए मॉडल वैरिएंट के लिए: कोड और सामान्य भाषा.

उद्धरण

@article{codegemma_2024,
    title={CodeGemma: Open Code Models Based on Gemma},
    url={https://goo.gle/codegemma},
    author={ {CodeGemma Team} and Hartman, Ale Jakse and Hu, Andrea and Choquette-Choo, Christopher A. and Zhao, Heri and Fine, Jane and Hui,
    Jeffrey and Shen, Jingyue and Kelley, Joe and Howland, Joshua and Bansal, Kshitij and Vilnis, Luke and Wirth, Mateo and Nguyen, Nam, and Michel, Paul and Choy, Peter and Joshi, Pratik and Kumar, Ravin and Hashmi, Sarmad and Agrawal, Shubham and Zuo, Siqi and Warkentin, Tris and Gong, Zhitao et al.},
    year={2024}
}

मॉडल डेटा

ट्रेनिंग के लिए डेटासेट

Gemma का बेस मॉडल के तौर पर इस्तेमाल करने से, CodeGemma 2B और पहले से ट्रेन किए गए 7B वैरिएंट को मुख्य रूप से अंग्रेज़ी के 500 से 1,000 अरब टोकन पर ट्रेनिंग दी गणित के ओपन सोर्स डेटासेट से लिया गया और एआई की मदद से जनरेट किया गया भाषा का डेटा कोड.

डेटा प्रोसेसिंग के लिए ट्रेनिंग

CodeGemma को ट्रेनिंग देने के लिए, डेटा प्री-प्रोसेसिंग से जुड़ी ये तकनीकें इस्तेमाल की गई हैं:

  • एफ़आईएम - पहले से ट्रेन किए गए CodeGemma मॉडल, फ़िल इन द मिडल (एफ़आईएम) वाले टास्क पर फ़ोकस करते हैं. इन मॉडल को पीएसएम और एसपीएम, दोनों मोड के साथ काम करने के लिए ट्रेनिंग दी गई है. एफ़आईएम की हमारी सेटिंग ये हैं 50 से 50 पीएसएम/एसपीएम के साथ 80% से 90% एफ़आईएम दर.
  • डिपेंडेंसी ग्राफ़ पर आधारित पैकिंग और यूनिट टेस्ट पर आधारित लेक्सिकल पैकिंग तकनीकें: असल दुनिया में इस्तेमाल होने वाले ऐप्लिकेशन के साथ मॉडल अलाइनमेंट को बेहतर बनाने के लिए, हमने ट्रेनिंग सबसे काम के सोर्स को जोड़ने के लिए, प्रोजेक्ट/डेटा स्टोर करने की जगह के लेवल पर उदाहरण फ़ाइलें मौजूद हैं. खास तौर पर, हमने दो अनुमान और तकनीक: डिपेंडेंसी ग्राफ़ पर आधारित पैकिंग और यूनिट टेस्ट के आधार पर लेक्सिकल पैकिंग.
  • हमने दस्तावेज़ों को प्रीफ़िक्स में बांटने के लिए, एक नई तकनीक विकसित की है, बीच में, और सफ़िक्स को इस तरह से शुरू करें कि सफ़िक्स पूरी तरह से रैंडम डिस्ट्रिब्यूशन के बजाय पॉइंट का इस्तेमाल करना.
  • सुरक्षा: Gemma की तरह ही, हमने सुरक्षा के लिए बेहतरीन फ़िल्टर लागू किए हैं, जैसे कि निजी डेटा और सीएसएएम फ़िल्टर करने की सुविधा, और कॉन्टेंट के आधार पर अन्य फ़िल्टर करना सुरक्षा और क्वालिटी को ध्यान में रखकर बनाया गया है हमारी नीतियों का पालन करें.

लागू करने के बारे में जानकारी

ट्रेनिंग के दौरान इस्तेमाल किए जाने वाले हार्डवेयर और फ़्रेमवर्क

जेमा की तरह, CodeGemma को टेनसर प्रोसेसिंग यूनिट (टीपीयू) हार्डवेयर (TPUv5e), JAX और ML का इस्तेमाल करके पाथवे.

इवैलुएशन की जानकारी

बेंचमार्क नतीजे

आकलन करने का तरीका

  • कोड पूरा करने के मानदंड: HumanEval (HE) (सिंगल लाइन और मल्टी लाइन इनफ़िलिंग)
  • कोड जनरेट करने के मानदंड: HumanEval, MBPP, BabelCode (BC) [C++, C#, Go, Java, JavaScript, Kotlin, Python, Rust]
  • सवाल और जवाब: BoolQ, PIQA, TriviaQA
  • नैचुरल लैंग्वेज: ARC-Challenge, HellaSwag, MMLU, WinoGrande
  • मैथ रीज़निंग: GSM8K, MATH

कोडिंग के मानदंड के नतीजे

मानदंड 2B 2B (1.1) 7 अरब 7बी-आईटी 7B-IT (1.1)
HumanEval 31.1 37.8 44.5 56.1 60.4
MBPP 43.6 49.2 56.2 54.2 55.6
HumanEval सिंगल लाइन 78.4 79.3 76.1 68.3 77.4
HumanEval मल्टी लाइन 51.4 51.0 58.4 20.1 23.7
बीसी एचई सी++ 24.2 19.9 32.9 42.2 46.6
बीसी एचई सी# 10.6 26.1 22.4 26.7 54.7
बीसी हे गो 20.5 18.0 21.7 28.6 34.2
बीसी एचई जावा 29.2 29.8 41 48.4 50.3
BC HE JavaScript 21.7 28.0 39.8 46.0 48.4
बीसी एचई कोटलिन 28.0 32.3 39.8 51.6 47.8
बीसी एचई पाइथन 21.7 36.6 42.2 48.4 54.0
बीसी एचई रस्ट 26.7 24.2 34.1 36.0 37.3
बीसी एमबीपीपी सी++ 47.1 38.9 53.8 56.7 63.5
बीसी एमबीपीपी सी# 28.7 45.3 32.5 41.2 62.0
बीसी एमबीपीपी गो 45.6 38.9 43.3 46.2 53.2
बीसी एमबीपीपी जावा 41.8 49.7 50.3 57.3 62.9
BC MBPP JavaScript 45.3 45.0 58.2 61.4 61.4
बीसी एमबीपीपी कोटलिन 46.8 49.7 54.7 59.9 62.6
बीसी एमबीपीपी Python 38.6 52.9 59.1 62.0 60.2
बीसी एमबीपीपी रस्ट 45.3 47.4 52.9 53.5 52.3

स्वाभाविक भाषा के मानदंड (7B मॉडल पर)

अलग-अलग भाषा की क्षमता वाली मेट्रिक के हिसाब से, Gemma, CodeGemma PT, और CodeGemma IT की तुलना करने वाला बार चार्ट. CodeGemma के साथ तीनों मॉडल की तुलना की जा सकती है, क्योंकि यह सामान्य भाषा की समझ को बनाए रखता है.

नैतिकता और सुरक्षा

नैतिकता और सुरक्षा की जांच

इवैलुएशन अप्रोच

आकलन करने के हमारे तरीकों में, स्ट्रक्चर्ड इवैलुएशन और इंटरनल रेड-टीमिंग शामिल है प्रासंगिक सामग्री नीतियों का परीक्षण करते हैं. रेड-टीमिंग का आयोजन कई संगठनों ने किया था अलग-अलग टीमों के लिए बनाई गई हैं. हर टीम के लक्ष्य और मैन्युअल आकलन की मेट्रिक अलग-अलग हैं. इन मॉडल का आकलन, उन अलग-अलग कैटगरी के आधार पर किया गया जो नैतिकता और सुरक्षा से जुड़ी नीतियां. इनमें ये शामिल हैं:

  • कॉन्टेंट की सुरक्षा और प्रतिनिधित्व से जुड़े प्रॉम्प्ट का मानवीय मूल्यांकन नुकसान पहुंचाता है. ज़्यादा जानकारी के लिए, जेमा मॉडल कार्ड पर जाएं.

  • सायबर अपराध क्षमताओं की खास जांच, स्वायत्त जांच पर फ़ोकस हैकिंग की क्षमता और संभावित नुकसान को कम करना.

जांच के नतीजे

नैतिकता और सुरक्षा से जुड़े आकलन के नतीजे, मान्य थ्रेशोल्ड में होते हैं मीटिंग के लिए इंटरनल नीतियां बच्चों की सुरक्षा, कॉन्टेंट की सुरक्षा, और प्रतिनिधित्व से जुड़े नुकसान जैसी कैटगरी के लिए याद रखना, बड़े स्तर पर नुकसान पहुंचाना. ज़्यादा जानकारी के लिए, जेमा मॉडल कार्ड देखें.

मॉडल के इस्तेमाल और सीमाएं

सीमाएं

बड़े लैंग्वेज मॉडल (एलएलएम) की कुछ सीमाएं होती हैं. ये सीमाएं, ट्रेनिंग डेटा और चीज़ों को अलग-अलग तरह से नहीं दिखाना चाहिए. ज़्यादा जानकारी के लिए, जेमा मॉडल कार्ड पर जाकर, एलएलएम की सीमाओं के बारे में ज़्यादा जानें.

नैतिक पहलुओं और जोखिमों से जुड़ी जानकारी

लार्ज लैंग्वेज मॉडल (एलएलएम) का विकास, कई नैतिक मुद्दों को दर्शाता है. हमने इन प्रॉडक्ट को बेहतर बनाते समय कई पहलुओं पर सावधानी से विचार किया है मॉडल.

कृपया एक ही चर्चा देखें देखें.

इस्तेमाल का मकसद

ऐप्लिकेशन

Code Gemma मॉडल में कई तरह के ऐप्लिकेशन मौजूद होते हैं. ये अलग-अलग होते हैं और आईटी और PT मॉडल. नीचे दी गई सूची में प्रॉडक्ट के संभावित इस्तेमाल के बारे में पूरी जानकारी नहीं दी गई है. कॉन्टेंट बनाने इस सूची का मकसद, उन कीवर्ड के बारे में ज़रूरी जानकारी देना है जो ऐसे इस्तेमाल के उदाहरण जिन्हें मॉडल क्रिएटर्स ने मॉडल ट्रेनिंग का हिस्सा माना हो और डेवलपमेंट.

  • कोड को पूरा करना: IDE एक्सटेंशन की मदद से कोड को पूरा करने के लिए, पीटी मॉडल इस्तेमाल किए जा सकते हैं
  • कोड जनरेशन: आईटी मॉडल का इस्तेमाल, आईडीई के साथ या उसके बिना कोड जनरेट करने के लिए किया जा सकता है एक्सटेंशन
  • कोड बातचीत: आईटी मॉडल, बातचीत वाले इंटरफ़ेस को बेहतर बना सकता है कोड
  • Code Education: आईटी मॉडल, इंटरैक्टिव कोड लर्निंग के अनुभव और सहायता के साथ काम करता है जो सिंटैक्स में सुधार करता हो या कोडिंग की प्रैक्टिस करता हो

फ़ायदे

रिलीज़ के समय, मॉडल का यह परिवार उच्च-परफ़ॉर्मेंस वाला ओपनिंग उपलब्ध कराता है शुरुआत से डिज़ाइन किए गए, कोड पर आधारित लार्ज लैंग्वेज मॉडल को लागू करना ज़िम्मेदार एआई डेवलपमेंट के लिए, बाज़ार में मौजूद मॉडल की तुलना में ज़्यादा अहम है.

इस दस्तावेज़ में बताई गई कोडिंग बेंचमार्क इवैलुएशन मेट्रिक का इस्तेमाल करके, ये अन्य मॉडल की तुलना में, अन्य डिवाइसों की तुलना में बेहतर परफ़ॉर्मेंस .