Granite Code

Granite-20B-Code-Instruct

by IBM watsonx · Saadaval avatud kaaludega mudelina ning dokumenteeritud IBM watsonx.ai nõudmisel juurutamiseks; IBM-i 2025. aasta elutsükliteatise kohaselt on see aegunud ja eemaldatud watsonx.ai mitme rentnikuga pakkumisest.

Granite-20B-Code-Instruct on IBM Researchi 20 miljardi parameetriga Apache 2.0 litsentsi alusel avaldatud koodimudel, mis on mõeldud juhiste järgimiseks programmeerimisülesannetes. See toetab tekstipõhist koodi genereerimist, teisendamist ja selgitamist ning programmeerimisabilise töövooge. Mudelil on 8192 tokeni suurune kontekstiaken ning watsonx.ai konfiguratsioonis dokumenteeritud maksimaalselt 4096 genereeritud tokenit. Avatud kaaludega kontrollpunkt võimaldab mudelit ise hostida, kuid varasem watsonx.ai mitme rentnikuga pakkumine lõpetati ja eemaldati 2025. aastal.

Tekst Arutlusvõime Programmeerimine
Granite-20B-Code-Instruct on IBM Researchi Granite Code’i perekonda kuuluv programmeerimisele keskendunud keelemudel. See on Granite-20B-Code-Base’i juhiste järgi häälestatud versioon, millel on ligikaudu 20 miljardit parameetrit ja Apache 2.0 litsents. Mudel on loodud järgima programmeerimisega seotud juhiseid, mitte pakkuma laiahaardelise multimodaalse assistendi võimalusi. Tüüpilised kasutusviisid hõlmavad funktsioonide genereerimist, koodi teisendamist ühest programmeerimiskeelest teise, tundmatu koodi selgitamist, teostusvalikute arutamist ning isemajutatavate kodeerimisassistentide toetamist.
Väljundid

Mida Granite-20B-Code-Instruct suudab teha

Tekst
Sisendid

Mida see mõistab

Tekst
Võimekused

Abifunktsioonid

Voogedastus Peenhäälestamine
Mudeli profiil

Jõudlusnäitajad

5/10 Arutlusvõime
6/10 Programmeerimine
4/10 Kiirus
8/10 Kulutõhusus
Detailid

Tehnilised andmed

Mudeliseeria Granite Code
Tüüp Programmeerimine
Konteksti maht 8K märki/tokenit
Maksimaalne väljundmärkide arv 4K märki/tokenit
Välja antud 6. mai 2024
Olek Saadaval avatud kaaludega mudelina ning dokumenteeritud IBM watsonx.ai nõudmisel juurutamiseks; IBM-i 2025. aasta elutsükliteatise kohaselt on see aegunud ja eemaldatud watsonx.ai mitme rentnikuga pakkumisest.
Kasutusest kõrvaldamine 2025-04-16
Sulgemine 2025-07-17
Teadmiste ajapiiri märkused

IBM-i avalikus mudelidokumentatsioonis ega mudelikaardil ei ole selle konkreetse mudeli usaldusväärset teadmiste lõppkuupäeva märgitud.

Mudeli selgitused

Kanooniline IBM watsonx.ai mudeli ID on granite-20b-code-instruct. IBMi avatud mudelite dokumentatsioonis on seotud Hugging Face’i kontrollpunktina nimetatud ka ibm-granite/granite-20b-code-instruct-8k. Mudelil on ligikaudu 20 miljardit parameetrit, see kasutab ainult dekooderiga GPTBigCode’i arhitektuuri ja seda levitatakse Apache 2.0 litsentsi alusel. IBM teatas mudeli kasutusest kõrvaldamisest 16. aprillil 2025 ning selle eemaldamisest mitme rentnikuga pakkumisest 17. juulil 2025, kuid IBMi praeguses dokumentatsioonis on endiselt märgitud saadavus nõudmisel juurutatava mudelina. IBMi dokumentatsiooni kohaselt toetab Granite Code’i mudelite perekond inglise keelt ja 116 programmeerimiskeelt. Toimetuse antud hinded on võrdlevad hinnangud, mitte IBMi võrdlustestide tulemused.

Mudeli juhend

Granite-20B-Code-Instruct: IBMi avatud kaaludega koodimudel koodi genereerimiseks

Granite-20B-Code-Instruct on IBM Researchi 20 miljardi parameetriga juhiste järgi häälestatud koodimudel. Apache 2.0 litsentsi alusel välja antud mudel on mõeldud koodi genereerimiseks, teisendamiseks, selgitamiseks ja arutamiseks ning programmeerimisassistentide loomiseks. See võtab vastu ja väljastab teksti, toetab 8192 märgist koosnevat kontekstiakent ning suudab dokumenteeritud watsonx.ai mitme rentnikuga konfiguratsioonis genereerida kuni 4096 märki. Mudel on endiselt kasulik ise hostitavates ja teadusuuringute juurutustes, kuigi selle varasem kättesaadavus watsonx.ai mitme rentnikuga keskkonnas aegus ja lõpetati 2025. aastal.

Mis on Granite-20B-Code-Instruct?

Granite-20B-Code-Instruct on ainult dekooderil põhinev juhiste järgi häälestatud kodeerimismudel, mille töötas välja IBM Research. Praktikas tähendab juhiste järgi häälestamine seda, et mudelit treeniti täiendavalt vastama tavakeeles esitatud päringutele, näiteks „teisenda see Java-funktsioon Pythoniks“, „selgita seda SQL-päringut“ või „kirjuta sellele meetodile ühiktest“. Selle aluseks olev mudeliperekond on Granite Code ning mudel sisaldab ligikaudu 20 miljardit parameetrit.

Mudelit levitatakse Apache 2.0 litsentsi alusel. See on lubav avatud lähtekoodiga litsents, mis üldjuhul võimaldab kommerts- ja erakasutust, kui järgitakse litsentsi tingimusi. IBM pakub Hugging Face’is Granite’i mudeliorganisatsiooni kaudu avatud kaaludega kontrollpunkti ning mudelit on dokumenteeritud ka IBM watsonx.ai alusmudelina. Seetõttu on see asjakohane nii IBM-i mudeliperekonda hindavatele organisatsioonidele kui ka meeskondadele, kes soovivad kodeerimismudelit oma keskkonnas käitada või kohandada.

Peamine eesmärk ja kodeerimisvõimekus

Granite-20B-Code-Instruct on spetsialiseerunud programmeerimisega seotud tekstülesannetele. Dokumenteeritud kasutusviiside hulka kuuluvad koodi genereerimine, koodi teisendamine, koodi selgitamine, kooditeemaline arutelu ja kodeerimisabilise rakendused. Näiteks saab seda kasutada loomulikus keeles esitatud kirjelduse põhjal lühikese funktsiooni loomiseks, olemasoleva koodilõigu tõenäolise käitumise selgitamiseks või teises programmeerimiskeeles kirjutatud teostuse teisendamiseks.

IBM kirjeldab Granite Code’i mudeliperekonda kui 116 programmeerimiskeelt toetavat perekonda. Esitatud dokumentatsioonis on näidetena nimetatud Python, JavaScript, Java, C++, Go ja Rust. See on kogu perekonna tasemel väide keelte toe kohta, mitte garantii, et kvaliteet on igas keeles ühesugune. Tulemused võivad erineda sõltuvalt sellest, kui levinud keel on mudeli treeningandmetes, kui spetsialiseeritud ülesanne on ja kui palju kontekstipäring sisaldab.

Juhiste järgi häälestamisel kasutatud andmed hõlmavad teadaolevalt lubava litsentsiga koodikinnitusi, matemaatilise arutluse andmekogumeid, koodijuhiste andmekogumeid, API-kutsete näiteid ja üldiseid keelejuhiste andmekogumeid. Selle häälestuse eesmärk on parandada juhiste järgimist ja probleemilahendust võrreldes vastava baasmudeliga. Seda ei tohiks tõlgendada garantiina, et iga genereeritud programm on korrektne, turvaline või ilma ülevaatuseta tootmiseks valmis.

Tehnilised andmed ja piirangud

SpetsifikatsioonDokumenteeritud väärtus
PakkujaIBM Research
MudeliperekondGranite Code
Mudeli tüüpJuhiste järgi häälestatud, ainult dekooderil põhinev kodeerimise keelemudel
ParameetridLigikaudu 20 miljardit
Kontekstiaken8192 tokenit
Maksimaalne väljundKuni 4096 tokenit dokumenteeritud watsonx.ai mitme rentniku konfiguratsioonis
SisendTekst
VäljundTekst
LitsentsApache 2.0
Väljalaskekuupäev6. mai 2024

Token on keelemudeli kasutatav tekstiühik; see võib tähistada tervet sõna, sõnaosa, kirjavahemärki või koodilõiku. 8192 tokeni suurune kontekstiaken hõlmab nii päringut kui ka genereeritud vastust ning sõltub kasutatava juurutuse piirangutest. See on piisav paljude üksikute funktsioonide, failide, selgituste ja keskendunud teisendusülesannete jaoks, kuid on piiratum kui paljude uuemate kodeerimismudelite pakutavad pika konteksti piirangud. Seetõttu võib suurte koodibaaside või pikkade mitme failiga vestluste korral olla vaja päringud väiksemateks osadeks jagada.

4096 tokeni suurune väljund on dokumenteeritud konkreetselt vastava watsonx.ai konfiguratsiooni kohta. Kohalik juurutus võib pakkuda teistsuguseid tööpiiranguid sõltuvalt teenindustarkvarast, riistvarast, konfiguratsioonist ja mälupiirangutest. Mudeli tegelik läbilaskevõime sõltub samuti juurutuskeskkonnast; esitatud uuring ei paku kiiruse kohta kontrollitud võrdlustulemust.

Sisend, väljund ja tööriistade tugi

Granite-20B-Code-Instruct on teksti sisendina vastu võttev ja tekstina väljundit andev mudel. Esitatud mudelikirje kohaselt ei võta see mudelisisendina vastu pilte, heli ega videot ning ei loo otse pilte, heli ega videot. Seetõttu sobib see lähtekoodi, juhiste, dokumentatsiooni, pinujälgede ja muu tekstilise materjali töötlemiseks, mitte visuaalsete koodikuvatõmmiste või häälepõhiste programmeerimise töövoogude jaoks.

Mudelikirje ei kinnita selle konkreetse mudeli loomupärast tööriista- ega funktsioonikutsete tuge. Seda ei tohiks käsitleda agendina, mis suudab iseseisvalt veebis sirvida, koodi käivitada, aktiivset koodivaramut uurida või väliseid teenuseid kutsuda. Ümbritsev rakendus võiks need funktsioonid lisada, edastades mudelile valitud tööriistade tulemused ja tõlgendades selle teksti, kuid see oleks rakenduse taseme orkestreerimine, mitte Granite-20B-Code-Instructi kinnitatud loomupärane võimekus.

Esitatud mudeliandmetes on voogedastus märgitud toetatuks, samas kui JSON-režiimi ja struktureeritud väljundit ei ole eraldiseisvate loomupäraste funktsioonidena kinnitatud. Kui rakendus vajab masinloetavat väljundit, peaks see mudeli vastust valideerima ning vigaste või puudulike andmetega toime tulema, mitte eeldama skeemile vastavust.

Juurutamine ja praegune kättesaadavus

Mudeli saab alla laadida IBM Granite’i Hugging Face’i organisatsioonist, sealhulgas ibm-granite/granite-20b-code-instruct-8k kontrollpunkti, ning seda saab kasutada kohalikuks või iseseisvalt hallatavaks juurutamiseks. IBM dokumenteerib ka granite-20b-code-instruct watsonx.ai mudelitunnusena ning on kirjeldanud nõudmisel juurutamise võimalust.

Kättesaadavust tuleb tõlgendada ettevaatlikult. IBM teatas watsonx.ai mitme rentniku pakkumise kasutuselt kõrvaldamisest 16. aprillil 2025 ning selle pakkumise lõpetamisest 17. juulil 2025. Muu IBM-i dokumentatsioon on jätkuvalt kirjeldanud nõudmisel juurutamise võimalust, mistõttu võib täpne staatus sõltuda watsonx.ai keskkonnast, piirkonnast, juurutusrežiimist ja dokumentatsiooni versioonist. Avatud kaaludega väljalase on jätkuvalt stabiilsem alus meeskondadele, kes kavandavad isemajutatud või teaduslikku juurutust.

Potentsiaalsed kasutajad peaksid enne majutatud lõpp-punktile toetuvat lahenduse kavandamist kontrollima mudeli kättesaadavust oma kavandatud IBM-i keskkonnas. Mudeli allalaaditavus ei tähenda tingimata, et IBM pakub sama mudelit praegu üldiselt kättesaadava hallatava mitme rentniku teenusena.

Hinnakujundus ja kuludega seotud kaalutlused

Granite-20B-Code-Instructi kohta ei ole esitatud kontrollitud avalikku sisendi- ega väljundihinda. Seetõttu ei ole selle konkreetse mudeli kohta usaldusväärset tokenipõhist hinda esitada. Majutatud kasutuse hind, kui mudel on konkreetse watsonx.ai juurutuse kaudu saadaval, võib sõltuda valitud juurutusrežiimist, kontost, piirkonnast ja IBM-i kehtivatest ärilistest tingimustest.

Isemajutatava paigalduse korral on peamised kulud taristu, salvestusruum, teenindustarkvara, inseneritöö, seire ja pidev hooldus, mitte dokumenteeritud tokenipõhine mudelitasu. 20 miljardi parameetriga mudel võib vajada väiksematest kodeerimismudelitest märksa rohkem mälu ja arvutusvõimsust, kuigi tegelik riistvaravajadus sõltub täpsusest, kvantimisest, pakktöötlusest ja teeninduskonfiguratsioonist. Esitatud uuring ei määra konkreetset riistvara miinimumnõuet, mistõttu tuleks juurutuse suurust testida, mitte tuletada seda üksnes parameetrite arvust.

Toimetuslikust vaatenurgast võivad mudeli Apache 2.0 litsents ja avatud kaaludega kättesaadavus muuta selle atraktiivseks olukordades, kus meeskonnad hindavad juurutuse üle kontrolli ja prognoositavat litsentsimist. See on praktiline kulu- ja haldusküsimus, mitte väide, et mudel on alati majutatud API-st odavam. Väiksemad mudelid võivad olla kiiremad ja odavamad käitada, samas kui uuemad majutatud mudelid võivad pakkuda päringu kohta paremaid tulemusi, ilma et organisatsioon peaks taristut ise haldama.

Tugevused ja piirangud

Tugevused

  • Programmeerimisele keskendumine: Mudel on spetsiaalselt häälestatud koodi genereerimiseks, teisendamiseks, selgitamiseks ja seotud kodeerimisjuhiste järgimiseks.
  • Avatud litsents: Apache 2.0 litsents on kasulik organisatsioonidele, kes otsivad lubava litsentsiga mudelit era- või kommertsjuurutuseks, järgides litsentsi ja muid kohaldatavaid kohustusi.
  • Isemajutatavuse võimalus: Avatud kaaludega kontrollpunkt võimaldab võrreldes ainult majutatud teenusega suuremat kontrolli juurutuskoha, andmekäitluse, mudeli teenindamise ja rakenduse integreerimise üle.
  • Lai keelte valik: IBM teatab, et Granite Code’i perekond toetab 116 programmeerimiskeelt, mille levinud näited on Python, JavaScript, Java, C++, Go ja Rust.
  • Juhiste järgimine: Häälestuse eesmärk on muuta programmeerimispäringute esitamine loomulikus keeles lihtsamaks kui häälestamata baasmudeli puhul.

Piirangud

  • Vanema põlvkonna mudel: Granite-20B-Code-Instruct avaldati 2024. aastal ega ole IBM-i uusim kodeerimisvõimalus. IBM ei soovita seda uute projektide jaoks, kui sobivad uuemad Granite’i keelemudelid.
  • Mõõdukas konteksti suurus: 8192 tokeni suurune aken piirab seda, kui palju koodibaasi konteksti, dokumentatsiooni ja vestlust saab korraga edastada.
  • Kinnitamata loomupärased agenditööriistad: Esitatud kirje ei kinnita selle mudeli sisseehitatud veebisirvimist, koodi käivitamist ega funktsioonikutseid.
  • Ainult tekstipõhine suhtlus: See ei suuda multimodaalse mudelina otse töödelda visuaalset või helilist programmeerimismaterjali.
  • Ebaselgus majutatud teenuse puhul: Endine watsonx.ai mitme rentniku juurutus kõrvaldati kasutusest ja lõpetati 2025. aastal, mistõttu tuleb hallatava kättesaadavuse kohta enne kasutuselevõttu järele kontrollida.
  • Kvaliteedi varieeruvus: Programmeerimise täpsus võib keelest ja ülesandest sõltuvalt erineda. Genereeritud kood vajab testimist, sõltuvuste ülevaatust, turvakontrolle ja inimese hinnangut.

Arutlusvõime, kiiruse ja kulude kompromissid

Granite-20B-Code-Instruct suudab teha kodeerimisega seotud arutlusi, näiteks programmeerimispäringut osadeks jagada, algoritmi selgitada või teisendust samm-sammult läbi töötada. Esitatud uuring ei paku siiski pakkuja avaldatud arutlusvõime võrdlustesti ega kinnitatud spetsiaalset arutlusrežiimi. Mudeliga seotud toimetuslikud arutlus- ja kodeerimisskoorid on võrdlevad hinnangud, mitte IBM-i antud hinnangud, ning neid ei tohiks esitada mõõdetud garantiidena.

20 miljardi parameetri suuruse mudelina paikneb see tõenäoliste taristunõuete poolest väga väikeste kodeerimismudelite ja palju suuremate tipptasemel süsteemide vahel. Väiksem mudel võib olla eelistatud suure mahuga automaattäienduseks, väikese latentsusega rakendusteks või piiratud riistvara korral. Uuem või suurem kodeerimismudel võib sobida paremini pika koodibaasi konteksti, keerukate agendipõhiste töövoogude või ülesannete jaoks, kus esimese katse täpsus on olulisem kui kohaliku juurutuse kontroll. Seevastu võib Granite-20B-Code-Instruct olla mõistlik valik siis, kui Apache 2.0 litsents, allalaaditavad kaalud ja keskendunud kodeerimiskäitumine on tähtsamad kui kõige uuemad võimekused.

Millal valida Granite-20B-Code-Instruct?

Vali see mudel, kui vajad avatud kaaludega kodeerimismudelit katsetamiseks, privaatseks juurutamiseks, koodi genereerimiseks, koodi teisendamiseks, koodi selgitamiseks või kontrollitud kodeerimisabiliseks. See on eriti asjakohane siis, kui organisatsioon soovib oma juurutust ise uurida ja hallata, mitte täielikult sõltuda majutatud mudelist, ning kui ülesande jaoks piisab 8192 tokeni suurusest kontekstist.

See võib sobida ka haridus- ja teadusprojektidele, mis vajavad dokumenteeritud kodeerimismudelit lubava litsentsiga. Keskendunud päring, näiteks funktsiooni genereerimine, klassi selgitamine, piiratud koodinäite teisendamine või testide koostamise alustamine, vastab selle piirangutele paremini kui kogu koodivaramu autonoomne kodeerimise töövoog.

Vali mõni muu võimalus, kui projekt vajab tänapäevast selgelt avaldatud hinnaga hallatavat lõpp-punkti, märksa suuremat kontekstiakent, loomupärast multimodaalset sisendit, töökindlaid tööriistakutseid, sisseehitatud koodi käivitamist või parimat saadaolevat jõudlust keerukates kodeerimisagendi ülesannetes. Uuemad Granite’i mudelid võivad olla uute IBM-il põhinevate projektide jaoks sobivamad, samas kui väiksemad mudelid võivad pakkuda lihtsate suure mahuga ülesannete puhul paremat latentsust ja väiksemaid kasutuskulusid. Igal juhul tuleks valikut hinnata sihtkeelte, koodivaramu suuruse, turvanõuete, juurutuseelarve ja hindamiskogumi põhjal.

Kokkuvõte

Granite-20B-Code-Instructi on kõige õigem käsitleda avatud kaaludega juhiste järgi häälestatud kodeerimismudelina, mitte tänapäevase universaalse tehisintellektiabilisena. Selle peamised eelised on programmeerimisele spetsialiseerumine, Apache 2.0 litsents, kuulumine IBM Granite’i perekonda ja sobivus iseseisvalt hallatavaks juurutuseks. Peamised kompromissid on piiratud 8192 tokeni suurune kontekst, ainult tekstipõhine ülesehitus, kinnitatud loomupärase tööriistatoe puudumine, vanema põlvkonna mudel ning ebaselgus selle jätkuva kättesaadavuse osas endise watsonx.ai mitme rentniku teenuse kaudu. Piiratud kodeerimisülesannete ja kontrollitud juurutuste puhul võib see endiselt kasulik olla; tänapäevaste pika kontekstiga kodeerimisagentide või uute tootmissüsteemide jaoks võib uuem või spetsialiseeritum alternatiiv siiski paremini sobida.


KKK - vastused sinu küsimustele

Mis on Granite-20B-Code-Instruct?
Granite-20B-Code-Instruct on IBM Researchi arendatud juhiste järgi häälestatud ainult dekooderiga koodimudel. See sisaldab ligikaudu 20 miljardit parameetrit ning on loodud koodi genereerimiseks, teisendamiseks, selgitamiseks ja arutamiseks ning kodeerimisabiliste rakenduste jaoks.
Milliseid programmeerimiskeeli Granite-20B-Code-Instruct toetab?
IBM kirjeldab Granite Code’i mudeliperekonda kui 116 programmeerimiskeelt toetavat, sealhulgas Pythonit, JavaScripti, Javat, C++, Got ja Rusti. Jõudlus võib erineda olenevalt keelest, ülesande keerukusest, treeningandmete katvusest ja esitatud konteksti mahust.
Millised on Granite-20B-Code-Instructi kontekstiakna ja väljundi piirangud?
Mudelil on 8192 tokeni suurune kontekstiaken, mis hõlmab nii sisendviipa kui ka genereeritud vastust. watsonx.ai mitme rentnikuga konfiguratsiooni puhul on dokumenteeritud maksimaalselt kuni 4096 tokeni pikkune väljund, samas kui kohalike juurutuste piirangud võivad kasutatava teenindustarkvara ja riistvara põhjal erineda.
Kas Granite-20B-Code-Instructi saab ise hostida ja millist litsentsi see kasutab?
Jah. IBM pakub Hugging Face’is oma Granite’i organisatsiooni kaudu avatud kaaludega mudeli kontrollpunkti ibm-granite/granite-20b-code-instruct-8k, mida saab kasutada kohalikuks või enda hallatavaks juurutamiseks. Mudelit levitatakse Apache 2.0 litsentsi alusel, järgides litsentsitingimusi ja muid kohaldatavaid kohustusi.
Kas Granite-20B-Code-Instruct toetab tööriistade kutsumist, koodi käivitamist või multimodaalset sisendit?
Granite-20B-Code-Instruct on teksti sisendina vastu võttev ja teksti väljundina genereeriv mudel ega toeta otseselt piltide, heli ega video sisendit. Selle konkreetse mudeli sisseehitatud veebisirvimise, koodi käivitamise ja funktsioonikutsete tugi ei ole kinnitatud. Rakendused saavad sellised võimalused lisada välise orkestreerimise abil, kuid ka genereeritud koodi ja struktureeritud vastuseid tuleks endiselt valideerida.


Allikad 6
AI ettevõte

Info IBM watsonx kohta