```html ደራሲያን፦ Mayank Mishra⋆, IBM Matt Stallone⋆, IBM Gaoyuan Zhang⋆, IBM Yikang Shen, IBM Aditya Prasad, IBM Adriana Meza Soria, IBM Michele Merler, IBM Parameswaran Selvam, IBM Saptha Surendran, IBM Shivdeep Singh, IBM Manish Sethi, IBM Xuan-Hong Dang, IBM Pengyuan Li, IBM Kun-Lung Wu, IBM Syed Zawad, IBM Andrew Coleman, IBM Matthew White, IBM Mark Lewis, IBM Raju Pavuluri, IBM Yan Koyfman, IBM Boris Lublinsky, IBM Maximilien de Bayser, IBM Ibrahim Abdelaziz, IBM Kinjal Basu, IBM Mayank Agarwal, IBM Yi Zhou, IBM Chris Johnson, IBM Aanchal Goyal, IBM Hima Patel, IBM Yousaf Shah, IBM Petros Zerfos, IBM Heiko Ludwig, IBM Asim Munawar, IBM Maxwell Crouse, IBM Pavan Kapanipathi, IBM Shweta Salaria, IBM Bob Calio, IBM Sophia Wen, IBM Seetharami Seelam, IBM Brian Belgodere, IBM Carlos Fonseca, IBM Amith Singhee, IBM Nirmit Desai, IBM David D. Cox, IBM Ruchir Puri†, IBM Rameswar Panda†, IBM ማጠቃለያ በትልልቅ የቋንቋ ሞዴሎች (LLMs) በኮድ የሰለጠኑ የሶፍትዌር ልማት ሂደት አብዮታዊ ለውጥ እያመጡ ነው። ከጊዜ ወደ ጊዜ እየጨመረ የሚሄደው የኮድ LLMs ለሰው ፕሮግራመሮች ምርታማነትን ለማሻሻል በሶፍትዌር ልማት አካባቢዎች ውስጥ እየተዋሃዱ ነው፣ እና በኤልኤልኤም ላይ የተመሰረቱ ወኪሎች ውስብስብ ስራዎችን በራስ-ሰር ለመቆጣጠር ቃል መግባትን ጀምረዋል። የኮድ LLMsን ሙሉ አቅም መገንዘብ የኮድ ትውልድ፣ የሳንካ ጥገና፣ የኮድ ማብራሪያ እና ሰነድ ማድረግን፣ የማከማቻ ቦታዎችን ማስተዳደርን እና ሌሎችንም ጨምሮ ሰፊ የችሎታዎች ክልል ይጠይቃል። በዚህ ሥራ፣ በ116 የፕሮግራም ቋንቋዎች በኮድ የሰለጠነ የኮድ ማመንጨት ሥራዎችን ለማከናወን የግራናይት ተከታታይ ዲኮደር-ብቻ ኮድ ሞዴሎችን እናስተዋውቃለን። የግራናይት ኮድ ሞዴሎች ቤተሰብ መጠናቸው ከ3 እስከ 34 ቢሊዮን ፓራሜትሮች የሚደርስ ሲሆን፣ ከውስብስብ የመተግበሪያ ዘመናዊነት ስራዎች እስከ በሞባይል መሳሪያዎች ላይ ለሚሰሩ ውስን ማህደረ ትውስታ ለሆኑ አፕሊኬሽኖች ተስማሚ ነው። ሰፊ የችግሮች ስብስብ ላይ የተደረገው ግምገማ እንደሚያሳየው የግራናይት ኮድ ሞዴሎች ከሚገኙት ክፍት ምንጭ ኮድ LLMs መካከል የላቀ አፈጻጸም ያለማቋረጥ ይደርሳሉ። የግራናይት ኮድ ሞዴል ቤተሰብ ለድርጅት ሶፍትዌር ልማት የስራ ፍሰቶች የተመቻቸ ሲሆን በተለያዩ የኮድ ስራዎች (ለምሳሌ የኮድ ማመንጨት፣ ጥገና እና ማብራሪያ) ጥሩ አፈጻጸም ያሳያል፣ ይህም ሁለገብ "ሁሉን አቀፍ" የኮድ ሞዴል ያደርገዋል። ሁሉንም የግራናይት ኮድ ሞዴሎቻችንን ለአርም-ጥናት እና ለንግድ አገልግሎት በአፓቼ 2.0 ፈቃድ ስር እናደርሳለን። https://github.com/ibm-granite/granite-code-models 1 መግቢያ ባለፉት አስርት ዓመታት ውስጥ ሶፍትዌር የህብረተሰባችንን እያንዳንዱን ገጽታ ወደ ልብሱ ውስጥ ገብቷል። የሶፍትዌር ልማት ፍላጎት እየጨመረ በመምጣቱ፣ የሶፍትዌር ልማት ምርታማነትን ማሳደግ ከምንጊዜውም በላይ ወሳኝ ነው፣ እና LLMs የሰውን ፕሮግራመሮች ለማሳደግ ተስፋ ሰጪ መንገድ ይሰጣሉ። በሶፍትዌር ልማት ምርታማነት ውስጥ LLMs ጎልተው የሚታዩ የድርጅት አጠቃቀም ጉዳዮች የኮድ ማመንጨት፣ የኮድ ማብራሪያ፣ የኮድ ጥገና፣ የሙከራ እና የሰነድ ትውልድ፣ የመተግበሪያ ዘመናዊነት፣ የተጋላጭነት ምርመራ፣ የኮድ ትርጉም እና ሌሎችም ይገኙበታል። በቅርብ ዓመታት ውስጥ LLM's ኮድ የማመንጨት እና የመቆጣጠር ችሎታ በፍጥነት እየተሻሻለ መጥቷል፣ እና ዛሬ አስደናቂ የኮድ ችሎታዎች ያላቸው ሞዴሎች ይገኛሉ። ሞዴሎች ከነጠላ አሃዝ ቢሊዮን ፓራሜትሮች (ለምሳሌ Llama-7B (Touvron et al., 2023), Gemma-7B (Gemma-Team et al., 2024), ወዘተ) እስከ በመቶ ቢሊዮኖች የሚቆጠሩ ናቸው፡ DBRX (Databricks), Arctic (Snowflake), Grok, Mixtral 8x22B (MistralAI), Command R+ (Cohere), እና የታሰበው ጥቅም ላይ በሚውለው አጠቃላይ ጉዳይ ላይ ይለያያሉ፣ አንዳንድ ሞዴሎች ከኮድ ውጪ ለሆኑ ጉዳዮች ሰፊ ሽፋን ለመስጠት ሲሉ፣ ሌሎቹ ደግሞ በዋናነት በኮድ-ነክ ስራዎች ላይ ያተኩራሉ (ለምሳሌ StarCoder (Li et al., 2023a; Lozhkov et al., 2024), CodeGen (Nijkamp et al., 2023), CodeLlama (Rozie`re et al., 2023), CodeGemma (CodeGemma Team et al., 2024))። ሆኖም፣ በኮድ LLMs መስክ፣ በተለይም በድርጅት ሶፍትዌር ልማት አውድ ውስጥ አስፈላጊ ክፍተቶች ይቀራሉ። በመጀመሪያ፣ በጣም ትልቅ፣ አጠቃላይ LLMs እጅግ የላቀ የኮድ አፈጻጸም ሊያገኙ ቢችሉም፣ መጠናቸው ለማሰማራት ውድ ያደርጋቸዋል። አነስተኛ የኮድ-ማዕከል ሞዴሎች ( , ; , ; , ; , ; , ) አነስተኛ እና ተለዋዋጭ በሆነ እሽግ ውስጥ እጅግ የላቀ የኮድ ማመንጫ አፈጻጸም ሊያገኙ ይችላሉ፣ ነገር ግን ከማመንጨት ውጪ ባሉ የኮድ ስራዎች (ለምሳሌ፣ ጥገና እና ማብራሪያ) አፈጻጸም ከኮድ ማመንጫ አፈጻጸም ሊያንስ ይችላል። Li et al. 2023a Lozhkov et al. 2024 Nijkamp et al. 2023 Rozie`re et al. 2023 CodeGemma Team et al. 2024 በብዙ የድርጅት ሁኔታዎች፣ የኮድ ኤልኤልኤም ተቀባይነት ከሞዴሎቹ አፈጻጸም በተጨማሪ በሌሎች ምክንያቶች ሊወሳሰብ ይችላል። ለምሳሌ፣ ክፍት የሆኑ ሞዴሎች እንኳን አንዳንድ ጊዜ ስለ ውሂብ ምንጮች እና የውሂብ ሂደት ዘዴዎች ግልጽነት እጥረት ሊሰቃዩ ይችላሉ፣ ይህም በተልዕኮ ወሳኝ እና በተቆጣጠሩት ሁኔታዎች ውስጥ በሞዴሎች ላይ እምነት ሊያሳጣ ይችላል። ከዚህም በላይ፣ የዛሬዎቹ ክፍት LLMs የፈቃድ ውሎች የድርጅቶችን የሞዴል አጠቃቀም ችሎታ ሊያደናቅፉ እና ሊያወሳስቡ ይችላሉ። እዚህ ላይ፣ ለተለያዩ የኮድ ስራዎች የድርጅት ሶፍትዌር ልማትን ለመደገፍ የተነደፉ የhighly capable code LLMs ተከታታይ የሆነውን የግራናይት ኮድ ሞዴሎችን እናቀርባለን። የግራናይት ኮድ ሞዴሎች በአራት የተለያዩ መጠኖች (3B, 8B, 20B, እና 34B) የምንለቃቸው ሁለት ዋና ልዩነቶች አሏቸው: : ለኮድ-ነክ ስራዎች መሠረታዊ መሠረታዊ ሞዴሎች፤ ግራናይት ኮድ ቤዝ : የጊት ኮሚቶችን ከሰው መመሪያዎች እና ክፍት ምንጭ በሰው ሰራሽ የተፈጠረ የኮድ መመሪያ የውሂብ ስብስቦች ጋር በማጣመር የተስተካከሉ የትዕዛዝ ተከታታይ ሞዴሎች። ግራናይት ኮድ መመሪያ በተከታታዩ ውስጥ ያሉት የመሠረታዊ ሞዴሎች ከጭረት ጀምሮ በሁለት-ደረጃ የሥልጠና ስልት የሰለጠኑ ናቸው። በደረጃ 1፣ የእኛ ሞዴል ከ116 የፕሮግራም ቋንቋዎች ከተገኘው ከ3 እስከ 4 ትሪሊዮን ቶከኖች የሰለጠነ ነው፣ ይህም የፕሮግራም ቋንቋዎች እና ሰዋሰው ላይ የተሟላ ግንዛቤን ያረጋግጣል። በደረጃ 2፣ የእኛ ሞዴል ከ500 ቢሊዮን ቶከኖች ጋር በጥንቃቄ በተነደፈ የኮድ እና የተፈጥሮ ቋንቋ ዘርፎች ከፍተኛ ጥራት ባለው መረጃ ውህድ የበለጠ የሰለጠነ ነው ይህም የሞዴሉን የማመዛዘን ችሎታ ለማሻሻል። የሥልጠናውን ሁለቱንም ደረጃዎች ለመሠረታዊ ሞዴሎች የsupervised language modeling objective እንጠቀማለን። የመመሪያ ሞዴሎች ከላይ ከሰለጠኑ የመሠረታዊ ሞዴሎች በተጨማሪ በCommitPack ( , ) የተጣራ ልዩነት፣ የተፈጥሮ ቋንቋ መመሪያ ተከታታይ የውሂብ ስብስቦች (OASST ( , ), HelpSteer ( , )) እና የክፍት ምንጭ የሂሳብ የውሂብ ስብስቦች (MathInstruct ( , ) እና MetaMathQA ( , ))፣ የመመሪያ ተከታታይ እና የማመዛዘን ችሎታዎችን ለማሻሻል በሰው ሰራሽ የተፈጠረ የኮድ የውሂብ ስብስቦችን ጨምሮ፣ ተስተካክለዋል። Muennighoff et al. 2023 Ko¨ pf et al. 2023 Wang et al. 2023 Yue et al. 2023 Yu et al. 2023 በHumanEvalPack ( , ), MBPP(+) ( , ; , ), RepoBench ( , ), ReCode ( , ), እና ሌሎችም በሰፊው የችግሮች ስብስብ ላይ የኛን የኮድ LLMs ሰፊ ግምገማዎችን እናደርጋለን። ይህ የችግሮች ስብስብ በPython ውስጥ ከኮድ ውህደት ባሻገር ያሉ ብዙ አይነት የኮድ ስራዎችን ይሸፍናል፣ ለምሳሌ፣ የኮድ ጥገና፣ የኮድ ማብራሪያ፣ የኮድ ማረም፣ የኮድ ትርጉም፣ ወዘተ፣ በዋና ዋና የፕሮግራም ቋንቋዎች (Python, JavaScript, Java, Go, C++, Rust, ወዘተ)። Muennighoff et al. 2023 Austin et al. 2021 Liu et al. 2023a Liu et al. 2023b Wang et al. 2022 ግኝቶቻችን እንደሚያመለክቱት በክፍት ምንጭ ሞዴሎች መካከል፣ የግራናይት ኮድ ሞዴሎች በአጠቃላይ በሁሉም የሞዴል መጠኖች እና የችግሮች ስብስብ ላይ በጣም ጠንካራ አፈጻጸም ያሳያሉ (ብዙ ጊዜ ከግራናይት በእጥፍ የሚበልጡ ክፍት ምንጭ የኮድ ሞዴሎችን ይበልጣሉ)። እንደ ምሳሌ፣ ስእል 1 (ከላይ) የግራናይት-8B-Code-Base ከሌሎች ክፍት ምንጭ የመሠረታዊ ኮድ LLMs ጋር ንፅፅር ያሳያል፣ የቅርብ ጊዜውን ከፍተኛ አፈጻጸም ያለው አጠቃላይ ዓላማ የመሠረታዊ LLMs Mistral ( , ) እና LLama-3 ( , ) በHumanEvalPack ( , ) ላይ ጨምሮ። CodeGemma እና StarCoder2 ኮድ በማመንጨት ጥሩ አፈጻጸም ቢኖራቸውም፣ በHumanEvalPack የኮድ ጥገና እና ማብራሪያ ልዩነቶች ላይ በእጅጉ የከፋ አፈጻጸም ያሳያሉ። በአማካይ፣ የግራናይት-8B-Code-Base በጣም ተወዳዳሪ የሆነውን CodeGemma-8B ሞዴል በHumanEvalPack (33.2% vs 21.3%) ከ12 ነጥብ በላይ ይበልጣል፣ ምንም እንኳን በእጅጉ ያነሰ የቶከን መጠን (4.5T vs 7.5T ቶከኖች) ቢሰለጥንም። ከመሠረታዊ ሞዴሎች በተጨማሪ፣ የግራናይት ኮድ ሞዴሎቻችን የትዕዛዝ ልዩነቶች በHumanEvalPack ላይ ጠንካራ አፈጻጸም ያሳያሉ፣ ሌሎች ክፍት ምንጭ (ኮድ) የመመሪያ ሞዴሎችን ይበልጣሉ፣ ይህም በተፈጥሮ ቋንቋ መመሪያዎች ለተለያዩ የኮድ ስራዎች ጥቅሞችን ያሳያል (ስእል 1 (ከታች) ይመልከቱ)። Jiang et al. 2023b AI@Meta 2024 Muennighoff et al. 2023 በተጨማሪም፣ የማመዛዘን ችሎታ ለውስብስብ ጥያቄዎች እና ስራዎች ወሳኝ ስለሆነ፣ የግራናይት-8B-Code-Base ሞዴላችንን በMATH ( , ), GSM8K ( , ) እና የሂሳብ መሳሪያዎች ተደራሽነት ያለው ችግር መፍታት ጨምሮ በስድስት የሂሳብ የችግሮች ስብስብ ላይ እንፈትነዋለን፣ እዚያም የኛ የግራናይት 8B ሞዴል ከሌሎች አብዛኛዎቹ የstate-of-the-art 7B ወይም 8B LLMs የተሻለ አፈጻጸም ያሳያል። ለምሳሌ፣ የግራናይት-8B-Code-Base በGSM8K ከ∼12 ነጥብ እና በMATH ከ∼6 ነጥብ በላይ (ሠንጠረዥ 15 ይመልከቱ) Llama-3-8B-Baseን ይበልጣል። Cobbe et al. 2021 Cobbe et al. 2021 የግራናይት ኮድ ሞዴሎች ቁልፍ ጥቅሞች የሚከተሉትን ያካትታሉ: : የግራናይት ኮድ ሞዴሎች በተለያዩ የኮድ-ነክ ስራዎች ላይ ተወዳዳሪ ወይም የstate-of-the-art አፈጻጸም ይደርሳሉ፣ የኮድ ማመንጨት፣ ማብራሪያ፣ ጥገና፣ ማረም፣ ትርጉም፣ ወዘተ፣ ይህም የተለያዩ የኮድ ስራዎችን የመፍታት ችሎታቸውን ያሳያል፤ ሁሉን አቀፍ የኮድ LLM : ሁሉም ሞዴሎቻችን በ IBM's AI Ethics principles መሠረት የተሰበሰበውን ፈቃድ-አስማሚ በሆነ ውሂብ የሰለጠኑ ናቸው እና ለታማኝ የድርጅት አጠቃቀም በ IBM's Corporate Legal team መመሪያ ስር ናቸው። ሁሉም የግራናይት ኮድ ሞዴሎች በአፓቼ 2.0 ፈቃድ ስር ይለቀቃሉ። የሚታመን የድርጅት-ደረጃ LLM 1 የእኛን ሙሉ የውሂብ ስብስብ፣ ማጣሪያ እና ቅድመ-ማቀነባበሪያ መስመር በክፍል ላይ እንገልፃለን። ክፍል የሞዴልን አርክቴክቸር ዝርዝሮች ይገልጻል፣ በክፍል የሥልጠና ዝርዝሮች ይከተላሉ። ክፍል ስለ መመሪያ ማስተካከያ ዝርዝሮችን ይሰጣል፣ ክፍል የግራናይት ኮድ ሞዴሎችን ከሌሎች ክፍት ምንጭ LLMs ጋር በማነፃፀር ሙከራዎች እና ውጤቶችን ይገልጻል። 2 3 4 5 6 2 የውሂብ ስብስብ በዚህ ክፍል፣ ለሞዴል ማሰልጠኛ የኮድ ውሂብን ለማዘጋጀት ጥቅም ላይ የዋለውን የ crawl እና ማጣሪያ (ክፍል 2.1)፣ የደረጃ መውጣት (ክፍል 2.2)፣ የHAP/PII ማጣሪያ (ክፍል 2.3) ሂደቶችን እንገልፃለን። እንዲሁም የሞዴሉን የቋንቋ ግንዛቤ እና የሂሳብ የማመዛዘን ክህሎት ለማሻሻል ጥቅም ላይ የዋለውን የከፍተኛ ጥራት የተፈጥሮ ቋንቋ ውሂብ አጠቃላይ እይታ እናቀርባለን። 2.1 የውሂብ crawl እና ማጣሪያ ቅድመ-ሥልጠና የኮድ ውሂብ ከህዝብ ተደራሽ የውሂብ ስብስቦች እንደ Github Code Clean , StarCoderdata , እና ተጨማሪ የህዝብ ኮድ ማጠራቀሚያዎች እና የGitHub ጉዳዮች ጥምር ተገኝቷል። ከ300+ ቋንቋዎች ውስጥ የ116 የፕሮግራም ቋንቋዎችን ዝርዝር ለማቆየት ጥሬ ዳታውን እናጣራለን፣ ይህም በአባሪ A ላይ ተዘርዝሯል። የውሂብ ምደባ በፋይል ቅጥያ ብቻ ላይ ተመስርቶ በፕሮግራም ቋንቋዎች ይከናወናል፣ ልክ እንደ StarCoder ( , )። ከቋንቋ ማጣሪያ በኋላ፣ ዝቅተኛ ጥራት ያለው ኮድ ( , ) ለማጣራት አራት ቁልፍ የማጣሪያ ህጎችን እንጠቀማለን፡ (1) ከ25% በታች ፊደላት ያላቸውን ፋይሎች አስወግድ፣ (2) ከXSLT ቋንቋ በስተቀር፣ "<?xml version=” የሚለው ቃል በመጀመሪያዎቹ 100 ቁምፊዎች ውስጥ የሚገኝባቸውን ፋይሎች ያጣሩ፣ (3) ለHTML ፋይሎች፣ የሚታየው ጽሑፍ ከHTML ኮድ ቢያንስ 20% የሚሆነውን የሚይዝ እና ቢያንስ 100 ቁምፊዎች ርዝመት ያላቸውን ፋይሎች ብቻ ያቆዩ፣ (4) ለJSON እና YAML ፋይሎች፣ ከ50 እስከ 5000 ቁምፊዎች ባለው የቁምፊ ቆጠራ ውስጥ ያሉ ፋይሎችን ብቻ ያቆዩ። እንዲሁም የራስ-ሰር የተፈጠረ ጽሑፍን በማስወገድ፣ የእንግሊዝኛ ያልሆኑ ጉዳዮችን በማጣራት፣ ከቦቶች የሚመጡ አስተያየቶችን በማግለል፣ እና በውይይት ውስጥ የተሳተፉ ተጠቃሚዎችን ቁጥር እንደ ጥራት አመላካች በመጠቀም የGitHub ጉዳዮችን በበርካታ የጥራት መለኪያዎች እናጣራለን። እንዲሁም የሞዴል ማሰልጠኛን ለማስኬድ ከየማጠራቀሚያው ጋር የተገናኘ የፈቃድ መረጃን በእያንዳንዱ የኮድ ፋይል ላይ እንጨምራለን። 2 3 Li et al. 2023a Li et al. 2023a 2.2 ትክክለኛ እና Fuzzy የደረጃ መውጣት በአሠልጠና መቼት ውስጥ (ከሞላ ጎደል) ተመሳሳይ የኮድ ይዘት ያላቸውን ሰነዶች ለማስወገድ ትክክለኛ እና fuzzy የደረጃ መውጣትን ጨምሮ ጠበኛ የደረጃ መውጣት ስልት እንጠቀማለን። ለትክክለኛ የደረጃ መውጣት፣ በመጀመሪያ የSHA256 hashን በሰነድ ይዘት ላይ እናሰላለን እና ተመሳሳይ hash ያላቸውን መዝገቦች እናስወግዳለን። ከትክክለኛ የደረጃ መውጣት በኋላ፣ የትንሽ ልዩነቶች ሊኖሩ የሚችሉ የኮድ ፋይሎችን ለማስወገድ እና ውሂቡን የበለጠ አድልዎ ለማድረግ ዓላማ ባለው fuzzy የደረጃ መውጣት እንጠቀማለን። ለዚህም የሁለት-ደረጃ ዘዴን እንጠቀማለን፡ (1) የሁሉንም ሰነዶች MinHashes እናሰላለን እና ከዚያም ሰነዶችን በ MinHash ፊርማዎቻቸው መሰረት ለማድረግ Locally Sensitive Hashing (LSH) እንጠቀማለን፣ (2) በተመሳሳይ ባልዲ ውስጥ ባሉ የሰነዶች እያንዳንዱ ጥንድ መካከል የJaccard similarity እንለካለን እና ከ0.7 የsimilarity threshold ጋር በተያያዘ ድግግሞሾች እንደሆነ ምልክት ከተደረገባቸው ሰነዶች አንዱን በስተቀር ሌሎችን እንደ ድግግሞሽ እናስቀምጣለን። የአሠልጠና የውሂብ ስብስብን ጥልቀት እና ልዩነት ለማሳደግ ይህንን የቅርብ-ደረጃ መውጣት ሂደት ለሁሉም የፕሮግራም ቋንቋዎች እና የGitHub ጉዳዮች እንጠቀማለን። 2.3 HAP, PII, Malware ማጣሪያ ከሞዴሎች የጥላቻ፣ አጸያፊ ወይም የተሳደበ (HAP) ቋንቋ የመፍጠር ዕድልን ለመቀነስ፣ የHAP ይዘትን ከሠልጠና መቼት ለማጣራት ጥንቃቄ እናደርጋለን። በመጀመሪያ የHAP ቁልፍ ቃላትን መዝገበ-ቃላት እንፈጥራለን ከዚያም በእያንዳንዱ የኮድ ሰነድ ውስጥ ባሉ አስተያየቶች ውስጥ የSuch ቁልፍ ቃላት ብዛት እንመዘግባለን። በስርጭት ትንተና እና በኮድ ፋይሎች በእጅ ምርመራ ላይ የተመሠረተ የHAP ገደብ የሚያልፉ ሰነዶችን እናስወግዳለን። በተጨማሪም፣ ግላዊነትን ለመጠበቅ፣ ከስታር ኮደር ( , ) ጋር በመሆን የግል መረጃ (PII)ን ከሠልጠና መቼት ለማስወገድ ጥንቃቄ እናደርጋለን። በተለይም፣ በይዘቱ ውስጥ የሚገኙ የአይፒ አድራሻዎች፣ ቁልፎች፣ የኢሜይል አድራሻዎች፣ ስሞች፣ የተጠቃሚ ስሞች እና የይለፍ ቃሎች ለማግኘት የStarPII ሞዴልን እንጠቀማለን። የPII ማስወገድ ደረጃ፣ የPII ጽሑፍን ከሚዛመደው ቶከኖች NAME , EMAIL , KEY , PASSWORD ጋር በመተካት የIP አድራሻን በሰው ሰራሽ በሆነ የIP አድራሻ እንደ Li et al. (2023a) ይተካል። እንዲሁም የሶፍትዌር ኮድ ውስጥ የmalware ናሙናዎችን ለመለየት እና ለማስወገድ የኛን የውሂብ ስብስቦች እንቃኛለን። Li et al. 2023a 4 2.4 የተፈጥሮ ቋንቋ የውሂብ ስብስቦች ለሞዴል ማሰልጠኛ የኮድ ውሂብን ከመሰብሰብ በተጨማሪ፣ የሞዴሉን የቋንቋ ግንዛቤ እና የሂሳብ የማመዛዘን ክህሎት ለማሻሻል በርካታ ህዝባዊ ተደራሽ የሆነ ከፍተኛ ጥራት ያለው የተፈጥሮ ቋንቋ የውሂብ ስብስቦችን እናመሰርታለን። በዚህ ምድብ ስር ያሉ የተወካይ የውሂብ ስብስቦች የድር ሰነዶችን (Stackexchange, CommonCrawl)፣ የሂሳብ የድር ጽሑፍ (OpenWeb-Math; ( ), StackMathQA; ( ))፣ የአካዳሚክ ጽሑፍ (Arxiv, Wikipedia)፣ እና የመመሪያ ማስተካከያ የውሂብ ስብስቦችን (FLAN; ( ), HelpSteer ( , )) ያካትታሉ። እነዚህ አስቀድሞ የቅድመ-ማቀነባበሪያ የተደረጉ የተፈጥሮ ቋንቋ የውሂብ ስብስቦችን አይደገሙም። Paster et al. 2023 Zhang 2024 Longpre et al. 2023 Wang et al. 2023 3 የሞዴል አርክቴክቸር በTransformer decoder አርክቴክቸር ( , ) ላይ የተመሰረቱ የተለያዩ መጠኖች ያላቸውን የኮድ ሞዴሎች ተከታታይ እናሰለጥናለን። ለእነዚህ ሞዴሎች የሞዴል ሃይፐርፓራሜትሮች በሠንጠረዥ 1 ላይ ይገኛሉ። ለሁሉም የሞዴል አርክቴክቸሮች፣ ከትኩረት እና MLP ብሎኮች ግቤት ጋር የሚተገበር ቅድመ-መደበኛ ( , ) እንጠቀማለን። Vaswani et al. 2017 Xiong et al. 2020 : የግራናይት-ኮድ ሞዴል ቤተሰብ ውስጥ ትንሹ ሞዴል በRoPE embedding ( , ) እና Multi-Head Attention ( , ) የሰለጠነ ነው። ይህ ሞዴል ለMLP swiglu ተብሎም የሚጠራውን swish activation function ( , ) ከGLU ( , ) ጋር ይጠቀማል። ለማንኛውም መደበኛነት፣ ከLayerNorm ( , ) የበለጠ የኮምፒዩተር ብቃት ስላለው RMSNorm ( , ) እንጠቀማለን። የ3B ሞዴል በ2048 ቶከኖች የኮንቴክስት ርዝመት የሰለጠነ ነው። 3B Su et al. 2023 Vaswani et al. 2017 Ramachandran et al. 2017 Shazeer 2020 Ba et al. 2016 Zhang & Sennrich 2019 : የ8B ሞዴል ከ3B ሞዴል ጋር ተመሳሳይ አርክቴክቸር አለው፣ ከGrouped-Query Attention (GQA) ( , ) በስተቀር። GQAን መጠቀም በዚህ ልኬት መካከል የሞዴል አፈጻጸም እና የኢንፈረንስ ቅልጥፍናን የተሻለ ሚዛን ይሰጣል። የ8B ሞዴልን በ4096 ቶከኖች የኮንቴክስት ርዝመት እናሰለጥናለን። 8B Ainslie et al. 2023 : የ20B ኮድ ሞዴል በተማረ የፍፁም ቦታ embedding የሰለጠነ ነው። ለብቃት ያለው የመስመር ውጭ ኢንፈረንስ በሥልጠና ወቅት Multi-Query Attention ( , ) እንጠቀማለን። ለMLP ብሎክ፣ የGELU activation function ( , ) እንጠቀማለን። የመነሻዎችን መደበኛ ለማድረግ፣ LayerNorm ( , ) እንጠቀማለን። ይህ ሞዴል በ8192 ቶከኖች የኮንቴክስት ርዝመት የሰለጠነ ነው። 20B Shazeer 2019 Hendrycks & Gimpel 2023 Ba et al. 2016 : የ34B ሞዴልን ለማሰልጠን፣ የ20B ሞዴልን ጥልቀት ለማስፋት በ የቀረበውን አካሄድ እንከተላለን። በተለይም፣ በመጀመሪያ የ52 ንብርብሮች ያለው የ20B ኮድ ሞዴልን እናባዛለን ከዚያም የሁለት ሞዴሎችን ለመመስረት ከዋናው ሞዴል የመጨረሻ 8 ንብርብሮችን እና ከቅድመ-ሞዴሉ የመጀመሪያ 8 ንብርብሮችን እናስወግዳለን። 34B Kim et al. በመጨረሻም፣ የግራናይት-34B-Code ሞዴልን በ88 ንብርብሮች ለመመስረት ሁለቱንም ሞዴሎች እናገናኛለን (ለ