Yi-Coder

Yi-Coder-1.5B-Chat

by 01.AI · Saadaval olev avatud kaaludega mudel

01. AI kompaktne Yi-Coder-1.5B-Chat on Apache 2.0 litsentsiga avatud kaaludega kodeerimismudel, mida saab kasutada koodi genereerimiseks, lõpetamiseks, selgitamiseks, silumiseks ja muutmiseks. Selle kontekstiaken mahutab 128 000 tokenit ning mudel toetab väidetavalt 52 programmeerimiskeelt. See ühildub ka kohalike käituskeskkondadega, sealhulgas Transformersi, vLLM-i, SGLangi, Ollama ja llama.cpp-ga. Väikesed ressursinõuded muudavad selle atraktiivseks kohalikes tööriistades kasutamiseks ja katsetamiseks, kuid mudeli väike suurus, 2023. aastasse jääv teadmiste lõppkuupäev ning kontrollitud natiivsete tööriistade ja multimodaalse toe puudumine piiravad selle sobivust keerukaks või autonoomseks tarkvaraarenduseks.

Tekst Arutlusvõime Programmeerimine
Yi-Coder-1.5B-Chat on 01.AI 1,5 miljardi parameetriga Yi-Coderi mudeliperekonna juhiste järgi kohandatud vestlusversioon. See on loodud vestluspõhiseks programmeerimisabiks, mitte üldotstarbeliseks multimodaalseks tööks. Mudel suudab koodi genereerida ja selgitada, pakkuda parandusi, koodilõike lõpule viia ning töötada mahukate koodikontekstidega, olles samal ajal piisavalt väike kohalikuks järeldamiseks ja katsetamiseks.
Väljundid

Mida Yi-Coder-1.5B-Chat suudab teha

Tekst
Sisendid

Mida see mõistab

Tekst
Võimekused

Abifunktsioonid

Voogedastus Peenhäälestamine
Mudeli profiil

Jõudlusnäitajad

3/10 Arutlusvõime
6/10 Programmeerimine
8/10 Kiirus
9/10 Kulutõhusus
Detailid

Tehnilised andmed

Mudeliseeria Yi-Coder
Tüüp Kodeerimine
Konteksti maht 131K märki/tokenit
Teadmiste piirkuupäev 2023. aasta lõpp
Välja antud 2024-09-05
Olek Saadaval olev avatud kaaludega mudel
Teadmiste ajapiiri märkused

Yi-Coderi projekti dokumentatsiooni kohaselt ulatub selle treeningandmete lõppkuupäev 2023. aasta lõpuni. See on alusmudeli teadmiste lõppkuupäev ning väline teabeotsing või mis tahes kolmanda osapoole sirvimislõimimine seda ei muuda.

Mudeli selgitused

Vestluseks häälestatud 1,5 miljardi parameetriga Yi-Coderi perekonna liige. Ametliku projekti andmetel on selle kontekstiakna maht 128K ning see toetab 52 programmeerimiskeelt. Mudelit levitatakse Apache 2.0 litsentsi alusel ning seda saab kasutada koos Transformersi, vLLM-i, SGLangi ja kogukonna kvantiseerimiskäitusajamitega, nagu Ollama ja llama.cpp. Avaldatud treeningandmete lõpptähtaeg on 2023. aasta lõpp. Selle täpse avatud kaaludega mudeli puhul ei ole kinnitatud ametlikku esimese osapoole hostitud kasutuse hinnastust, loomulikku veebotsingut, loomulikku multimodaalset sisendit ega väljundit, struktureeritud väljundi garantiid ega teenusepakkuja partiilist API-t. Võrdlusskoorid on toimetuse hinnangud, mitte tarnija antud hinnangud.

COST

Hinnad

Sisend Ametlikult hostitud API hinnakiri puudub; mudeli kaalud on vabalt saadaval
Väljund Ametlikult majutatud API hinnakiri puudub; mudeli kaalud on avalikult saadaval
Mudeli juhend

Yi-Coder-1.5B-Chat: väike avatud kaaludega mudel kohalikuks programmeerimiseks

Yi-Coder-1.5B-Chat on 01.AI kompaktne Apache 2.0 litsentsiga kodeerimismudel koodi genereerimiseks, lõpuleviimiseks, selgitamiseks, silumiseks ja muutmiseks. Selle 128K tokeni suurune kontekstiaken ja tagasihoidlik maht muudavad selle sobivaks lokaalseks kasutuselevõtuks, kuigi suuremad mudelid on üldiselt keerukate arutlusülesannete ja kriitilise tähtsusega tarkvaraarenduse puhul paremad.

Mis on Yi-Coder-1.5B-Chat?

Yi-Coder-1.5B-Chat on avatud kaaludega programmeerimise keelemudel, mille 01.AI avaldas 2024. aasta septembris. Tähistus „Chat” tähendab, et see versioon on häälestatud vestluslikele juhistele reageerima, mistõttu sobib see baas- ehk ainult jätkamismudeliga võrreldes paremini päringuteks nagu „selgita seda funktsiooni”, „leia viga” või „kirjuta see kood ümber”.

Mudelil on ligikaudu 1,5 miljardit parameetrit. Parameetrid on õpitud väärtused, mis võimaldavad keelemudelil mustreid ära tunda ja teksti genereerida; üldiselt tähendavad väiksemad parameetrid väiksemaid riistvaranõudeid, kuid võivad vähendada suutlikkust keeruka arutluse ja nüansirohkete programmeerimisülesannete korral. Seetõttu paikneb Yi-Coder-1.5B-Chat praktiliselt lihtsamate kohalike koodi lõpetamise tööriistade ja palju suuremate majutatud programmeerimismudelite vahepeal.

01.AI levitab mudeli kaalusid Apache 2.0 litsentsi alusel. Litsentsitingimustest kinni pidades lubab see mudelit kasutada ärilistel ja mitteärilistel eesmärkidel, muuta, täiendavalt häälestada ning edasi levitada. Arendajad peavad siiski hindama tarkvaralitsentse, turvariske, genereeritud koodi kvaliteeti ja kõiki kohustusi, mis on seotud nende enda juurutusega.

Kuhu see 01.AI mudelivalikus sobitub?

Yi-Coder-1.5B-Chat kuulub 01.AI Yi-Coderi mudeliperre, mis keskendub spetsiaalselt programmeerimisülesannetele. Perre kuulub ka suurem 9B vestlusmudel, mille jõudlus on avaldatud andmete kohaselt 1,5B versioonist võrdlustestides parem, kuid mis vajab rohkem ressursse. See võrdlus aitab mõista praeguse mudeli rolli: maksimaalse programmeerimisvõimekuse asemel seab see esikohale kättesaadavuse, kiiruse ja kohaliku juurutuse.

See ei ole tarbijatele mõeldud vestlusroboti funktsioon ega teenusepakkuja majutatud tellimusmudel. Tegemist on avatud kaaludega mudeliga, mille arendajad laadivad alla ja käitavad ühilduva järeldustarkvara abil. Ametlikus projektimaterjalis on dokumenteeritud kasutamine koos Transformersi, vLLM-i ja SGLangiga, kogukonna loodud teisendused ja kvantiseeritud versioonid toetavad aga ka selliseid tööriistu nagu Ollama, llama.cpp ja LM Studio.

Tehnilised näitajad lühidalt

NäitajaÜksikasjad
Teenusepakkuja01.AI
MudelipereYi-Coder
Mudeli suurusLigikaudu 1,5 miljardit parameetrit
Mudeli tüüpJuhiste järgi häälestatud programmeerimise keelemudel
Kontekstiaken128K tokenit ehk 131 072 tokenit
Treeningandmete ajaline piir2023. aasta lõpp
LitsentsApache 2.0
SisendTekst, sealhulgas lähtekood
VäljundTekst ja lähtekood
Majutatud API hindSelle täpse mudeli ametlikku majutatud kasutuse hinda ei ole kinnitatud

128K tokeni suurune kontekstilimiit on teenusepakkuja dokumenteeritud näitaja. Token on mudeli kasutatav väike tekstiühik, mistõttu ei vasta see limiit täpselt kindlale sõnade või koodiridade arvule. Tegelikult kasutatava koodi hulk sõltub programmeerimiskeele süntaksist, kommentaaridest, failinimedest, viiba tekstist ja järelduskeskkonna mälupiirangutest.

Selle täpse avatud kaaludega mudeli maksimaalset väljundtokenite limiiti ei õnnestunud kinnitada. Tegelik vastuse pikkus võib sõltuda valitud käituskeskkonnast, genereerimisseadetest, saadaolevast mälust ja viiba jaoks alles jäävast kontekstimahust.

Programmeerimisvõimekus ja võrdlustestide kontekst

Yi-Coder-1.5B-Chat on mõeldud koodi genereerimiseks ja lõpetamiseks, koodi selgitamiseks, vigade otsimiseks, ümbertegemiseks, programmeerimiskeelte vahel tõlkimiseks, testide loomiseks ning vestluslikuks arendusabiks. Näiteks saab seda kasutada väikese funktsiooni kavandi koostamiseks, tundmatu klassi töö selgitamiseks, veale tõenäolise lahenduse pakkumiseks või koodi lõpetamiseks ümbritseva konteksti põhjal.

Yi-Coderi projekt väidab, et selle treening- või jätkutreeningu andmed hõlmavad 52 peamist programmeerimiskeelt. Loetletud keelte ja vormingute hulka kuuluvad näiteks Python, JavaScript, TypeScript, Java, C, C++, C#, Go, Rust, PHP, Ruby, Swift, Kotlin, SQL, HTML, CSS, YAML, JSON ja Shell. Hõlmatus ei taga kõigis keeltes võrdset kvaliteeti, eriti vähem levinud raamistike või spetsialiseeritud teekide puhul.

01.AI avaldatud hindamise kohaselt saavutas 1.5B vestlusmudel HumanEvali tulemuseks 67,7%. Tegemist on teenusepakkuja avaldatud võrdlustesti tulemusega, mitte garantiiga, et mudel genereerib konkreetse projekti jaoks korrektse koodi. HumanEvali tüüpi testid mõõdavad valitud koodigenereerimise ülesandeid ega kajasta täielikult vigade otsimist, hoidlate hooldamist, turbeanalüüsi, sõltuvuste haldamist ega tootmiskeskkonna arendust.

Milles mudel hästi toime tuleb?

  • Suhteliselt väikeste funktsioonide ja koodinäidete genereerimine.
  • Koodi lõpetamine lähedalasuva konteksti põhjal.
  • Koodi selgitamine vestluslikus keeles.
  • Silumise etappide ja tõenäoliste paranduste soovitamine.
  • Lihtsama koodi ümbertegemine või tõlkimine.
  • Kohalik käitamine rakendustes, mis toetavad selle mudelivormingut.
  • Pikki viipasid sisaldavate suurte failide või valitud hoidlamaterjali töötlemine.

Pikk kontekstiaken on eriti kasulik siis, kui ülesanne sõltub enamast kui ühest lühikesest koodilõigust. Arendaja saab koos küsimusega esitada mahuka faili, mitu seotud faili või dokumentatsiooni. Rohkema teksti lisamine viipa ei tähenda siiski automaatselt, et mudel mõistab kõiki sõltuvusi või leiab kõige asjakohasema rea. Viiba korrastamine ja õigete failide leidmine on endiselt olulised.

Arutlus, tööriistad ja toetatud modaalsused

Yi-Coder-1.5B-Chat on ainult tekstil põhinev mudel. See võtab vastu tekstiviipasid ja väljastab teksti, sealhulgas lähtekoodi. Esitatud mudeliteave ei kinnita loomulikku pildi-, heli- ega videosisendi või -väljundi tuge, mistõttu ei tohiks seda käsitleda multimodaalse programmeerimisabilisena.

Mudel suudab konteksti lisatud koodi ja juhiste üle tavapärasel keelemudeli viisil arutleda, kuid eraldi arutlusrežiimi ega spetsiaalset arutlusgarantiid ei ole kinnitatud. Selle kompaktsus muudab mudeli kasulikuks tavapärases programmeerimisabis, kuid keerukad arhitektuursed otsused, peened silumisülesanded ja mitmeetapiline analüüs võivad ületada selle usaldusväärsed võimed.

Selle täpse mudeli puhul ei ole kinnitatud loomulikku veebiotsingut, struktureeritud väljundi garantiid, teenusepakkuja partiilist API-t ega esimese osapoole tööriista- või funktsioonikutsete tuge. Mudeli võib integreerida suuremasse rakendusse, mis pakub otsingut, tööriistu, valideerijaid või struktureeritud viipamist, kuid need funktsioonid pärineksid ümbritsevast tarkvarast, mitte mudeli sisseehitatud ja kinnitatud võimekusest.

Juurutus, hinnastamine ja kulude kompromissid

Yi-Coder-1.5B-Chatil puudub ametlik sisend- või väljundtokeni hind, sest seda levitatakse avatud kaaludega mudelina, mitte dokumenteeritud majutatud lõpp-punktina, millel oleks kehtiv hinnakiri. Otsene rahaline kulu sõltub käituskohast: kohalikust riistvarast, renditud serverist, kolmanda osapoole majutusteenusest või organisatsiooni olemasolevast taristust.

Kohalik juurutus võib vähendada korduvaid API-tasusid ja aidata hoida lähtekoodi organisatsiooni enda keskkonnas. Samuti kaasneb sellega töökorralduslik vastutus, sealhulgas ühilduva käituskeskkonna paigaldamine, kvantiseerimise valimine, piisava mälumahu eraldamine, tarkvara uuendamine, jõudluse jälgimine ning masina või teenuse turvamine. Kvantiseerimine võib vähendada mälunõudeid, kuid selle mõju väljundi kvaliteedile ja kiirusele sõltub konkreetsest teostusest.

1,5 miljardi parameetri suurus on mudeli peamine tõhususe eelis. Suuremate programmeerimismudelitega võrreldes on see üldiselt praktilisem kandidaat tagasihoidlikuma riistvara, manustatud arendustööriistade või katsetamise jaoks. Kompromiss seisneb väiksemas võimevarus keeruka arutluse, ulatusliku hoidlamõistmise ja raske koodigenereerimise korral. Selle mudeli kohta antud toimetuslik hinnang hindab kiirust ja kulu soodsalt, kuid need on võrdlevad hinnangud, mitte 01.AI avaldatud tulemused, ning varieeruvad riistvara ja käituskeskkonna järgi.

Piirangud, mida arvestada

1,5 miljardi parameetriga mudel võib genereerida usutavana näivat koodi, mis on puudulik, vale, ebaturvaline või projektiga ühildumatu. Enne kasutamist tuleks genereeritud kood kompileerida, testida, üle vaadata ja kehtiva dokumentatsiooniga võrrelda. See on eriti oluline autentimise, autoriseerimise, krüptograafia, maksete töötlemise, taristu automatiseerimise ja muu suure mõjuga koodi puhul.

Teadaolev teadmiste ajaline piir on 2023. aasta lõpp. Seetõttu ei pruugi mudel teada teeke, API-sid, turvanõrkusi, keelemuudatusi ega raamistike tavasid, mis võeti kasutusele pärast seda aega. Asjakohasust võib parandada kehtiva dokumentatsiooni lisamine viipa või mudeli ühendamine välise otsingusüsteemiga, kuid selline otsing ei ole Yi-Coder-1.5B-Chati puhul sisseehitatud ja kinnitatud võimekus.

128K suurune kontekstiaken on mahukas, kuid ei kõrvalda konteksti valimisega seotud probleeme. Terve hoidla saatmine võib kulutada palju mälu ja raskendada mudelil keskendumist. Sageli on usaldusväärsem töövoog see, kui esitada struktureeritud viibas asjakohased failid, veateated, oodatav käitumine ja piirangud.

Millal valida Yi-Coder-1.5B-Chat?

Vali Yi-Coder-1.5B-Chat siis, kui kohalik käitamine, väike ressursikulu, avatud litsents või katsetamine on tähtsam kui suurim võimalik programmeerimistäpsus. See sobib mõistlikult järgmisteks kasutusjuhtudeks:

  • Koodi kohalik genereerimine ja lõpetamine.
  • Kerged IDE- või redaktorintegratsioonid.
  • Koodi selgitamine ja põhiline abi silumisel.
  • Võrguühenduseta või privaatsustundlikud arendustöövood.
  • Avatud koodimudeliga täiendava häälestamise katsetused.
  • Valitud failide või hoidlaosade analüüs pika konteksti abil.
  • Prototüübid, mis vajavad manustatud programmeerimismudelit ilma majutatud teenuse tokenipõhise tasuta.

Suurem programmeerimismudel on sobivam, kui ülesanne nõuab täiustatud arutlust, usaldusväärseid muudatusi mitmes failis, keerukat silumist või väga autonoomset tarkvaraarendust. Suurem Yi-Coder 9B vestlusmudel võib samas mudeliperes pakkuda võimekusest lähtuvat alternatiivi, kuid vajab samuti rohkem ressursse. Majutatud programmeerimisteenus võib olla eelistatav siis, kui kohaliku kontrolli asemel on prioriteediks mugavus, ajakohased teadmised, hallatud taristu või juurdepääs integreeritud tööriistadele.

Üldhinnang

Yi-Coder-1.5B-Chati on kõige parem mõista kui kompaktset kohalikku programmeerimisabilist, mitte autonoomset tarkvarainseneri ega täielikku arendusplatvormi. Selle kõige tugevamad kinnitatud eelised on Apache 2.0 litsents, ligikaudu 1,5 miljardit parameetrit, 128K tokeni suurune kontekstiaken, väidetavalt lai programmeerimiskeelte tugi ja ühilduvus mitme kohaliku järelduskeskkonnaga.

Nende eelistega kaasnevad selged kompromissid. Kinnitatud majutatud hinnastust, loomulikku multimodaalset tuge, veebiotsingut, struktureeritud väljundi garantiid ega sisseehitatud tööriistakutseid mudelil ei ole ning 2023. aasta lõpus lõppev teadmiste piir vähendab selle teadlikkust uuemast tarkvarast. Mõõdukate programmeerimisülesannete ja kohaliku katsetamise korral võib tõhusus olla väärtuslikum kui palju suurema mudeli lisavõimekus. Tootmiskriitilise või väga keeruka inseneritöö puhul tuleks seda kasutada abistava komponendina koos testimise ja inimese tehtava ülevaatusega, mitte lõpliku autoriteedina.


KKK - vastused sinu küsimustele

Mis on Yi-Coder-1.5B-Chat?
Yi-Coder-1.5B-Chat on avatud kaaludega juhiste järgi häälestatud programmeerimiskeelemudel, mille 01.AI avaldas 2024. aasta septembris. Sellel on ligikaudu 1,5 miljardit parameetrit ning see on loodud selliste ülesannete jaoks nagu koodi genereerimine, selgitamine, silumine, ümbertegemine ja koodi lõpetamine.
Millist litsentsi Yi-Coder-1.5B-Chat kasutab?
Yi-Coder-1.5B-Chat levitatakse Apache 2.0 litsentsi alusel, mis üldjuhul lubab seda kasutada ärilistel ja mitteärilistel eesmärkidel, muuta, täiendavalt treenida ning edasi levitada, järgides litsentsi tingimusi.
Kui suur on Yi-Coder-1.5B-Chat kontekstiaken?
Yi-Coder-1.5B-Chatil on pakkuja dokumentatsiooni kohaselt 128K tokeni ehk 131 072 tokeni suurune kontekstiaken. Lähtekoodi hulk, mida see suudab tõhusalt töödelda, sõltub programmeerimiskeelest, viiba sisust, käituskeskkonnast ja saadaolevast mälust.
Kas Yi-Coder-1.5B-Chati saab lokaalselt käitada?
Jah. Yi-Coder-1.5B-Chat on mõeldud kohapealseks juurutamiseks ühilduva mudelikäitustarkvara kaudu. Ametlikus dokumentatsioonis on märgitud Transformersi, vLLM-i ja SGLangi tugi, samas kui kogukonna loodud teisendused ja kvantiseeritud versioonid toetavad selliseid tööriistu nagu Ollama, llama.cpp ja LM Studio.
Kellele on Yi-Coder-1.5B-Chat mõeldud?
See sobib arendajatele, kes eelistavad lokaalset kasutust, privaatsust, vähest ressursikulu, avatud litsentsi, võrguühenduseta töövooge või katsetamist. See sobib hästi väiksemate programmeerimisülesannete, koodi selgitamise, lihtsa silumise, koodi lõpetamise ja valitud pika kontekstiga failianalüüsi jaoks, kuid keerukate tootmiskeskkonna tööde puhul tuleks teha teste ja turvakontrolle ning kaasata inimene tulemusi üle vaatama.


Allikad 4
AI ettevõte

Info 01.AI kohta