Yi-Coder

Yi-Coder-9B-Chat

by 01.AI · Avatud kaaludega ja avalikult kättesaadav; selle täpse mudeli kohta ei ole kinnitatud ametlikku hostitud API loendikirjet

Yi-Coder-9B-Chat on 01.AI ligikaudu 9 miljardi parameetriga vestluspõhine programmeerimismudel. Selle kontekstiaken mahutab 128 000 tokenit, väidetavalt toetab mudel 52 programmeerimiskeelt ning selle kaalud on Apache 2.0 litsentsi alusel avatud. Mudelit saab juurutada Transformersi, vLLM-i või SGLangi kaudu. See on mõeldud ise hostitavaks koodi genereerimiseks, selgitamiseks, silumiseks ja tõlkimiseks ning pika konteksti analüüsiks. Selle täpse mudeli ametlikku hostitud API hinda ei ole kinnitatud.

Tekst Arutlusvõime Programmeerimine
Yi-Coder-9B-Chat on 01.AI Yi-Coderi mudeliperekonna vestlusele häälestatud versioon. See avaldati 5. septembril 2024 ning ühendab suhteliselt kompaktse mudeli suuruse 128 000 tokeni kontekstiaknaga. See võimaldab arendajatel edastada ühe päringuga suuri lähtefaile, dokumentatsiooni, logisid või mitmest failist pärit koodikatkeid. Mudelit levitatakse allalaaditavate avatud kaaludena Apache 2.0 litsentsi alusel, mitte kontrollitud ametliku majutatud API-tootena, mille kohta oleks avaldatud tokenipõhine hinnakiri.
Väljundid

Mida Yi-Coder-9B-Chat suudab teha

Tekst
Sisendid

Mida see mõistab

Tekst
Võimekused

Abifunktsioonid

Voogedastus Peenhäälestamine
Mudeli profiil

Jõudlusnäitajad

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

Tehnilised andmed

Mudeliseeria Yi-Coder
Tüüp Kodeerimine
Konteksti maht 131K märki/tokenit
Välja antud 2024-09-05
Olek Avatud kaaludega ja avalikult kättesaadav; selle täpse mudeli kohta ei ole kinnitatud ametlikku hostitud API loendikirjet
Teadmiste ajapiiri märkused

Täpselt Yi-Coder-9B-Chat mudeli kohta ei leitud otsest autoriteetset teadmiste lõppkuupäeva. Selle väljalaskekuupäeva ega konteksti pikkust ei tohiks kasutada teadmiste lõppkuupäeva asemel.

Mudeli selgitused

Yi-Coder-9B-Chat on Yi-Coderi perekonna vestluseks kohandatud mudel ning seda ei tohiks segi ajada baasmudeliga Yi-Coder-9B. 01.AI andmetel toetab see 52 programmeerimiskeelt ja 128 000 märgi pikkust maksimaalset konteksti. Ametlikus repositooriumis näidatakse mudeli laadimist Transformersiga ning selle serveerimist vLLM-i või SGLangi kaudu. Avaldatud mudelifailid sisaldavad ligikaudu 9 miljardit parameetrit ja on BF16 Safetensorsi vormingus. Mudelit levitatakse Apache 2.0 litsentsi alusel. Läbi vaadatud 01.AI API dokumentatsioon loetleb teisi Yi mudeleid, kuid ei kinnita Yi-Coder-9B-Chatile ametlikku hostitud API hinnastust ega lõpp-punkti. Hinded on toimetuslikud võrdlevad hinnangud, mitte teenusepakkuja avaldatud reitingud.

COST

Hinnad

Sisend Ametlikult majutatud API hinda ei ole kinnitatud; allalaaditavad mudelikaalud on saadaval Apache 2.0 litsentsi alusel.
Väljund Ametlikult hostitud API hinda ei ole kinnitatud; isehostimise ja kolmandate osapoolte inferentsiteenuste kulud varieeruvad.
Mudeli juhend

Yi-Coder-9B-Chat: avatud kaaludega kodeerimismudel pikkade koodikontekstide jaoks

Yi-Coder-9B-Chat on 01.AI Apache 2.0 litsentsiga avatud parameetritega vestluspõhine programmeerimismudel. Ligikaudu 9 miljardi parameetri, 128K tokeni suuruse kontekstiakna ja 52 programmeerimiskeele toe abil on see mõeldud koodi genereerimiseks, selgitamiseks, silumiseks ja tõlkimiseks ning pika kontekstiga koodihoidlate analüüsimiseks enda hallatavates juurutustes.

Mis on Yi-Coder-9B-Chat?

Yi-Coder-9B-Chat on 01.AI välja töötatud avatud kaaludega programmeerimise keelemudel. Ligikaudu 9 miljardi parameetriga mudel on vestluspõhiseks kasutuseks juhiste järgi peenhäälestatud. See tähendab, et mudel on mõeldud vastama päringutele, näiteks „selgita seda funktsiooni“, „leia sellest koodist viga“ või „tõlgi see Pythoni skript JavaScripti“. See erineb baasmudelist Yi-Coder-9B, mis on mõeldud pigem koodi jätkamiseks ja lõpetamiseks kui otseseks vestluspõhiseks kasutuseks.

Mudel on saadaval Apache 2.0 litsentsi alusel. See tähendab, et avaldatud kaalud sobivad kohapealseks juurutamiseks, teadustööks, kommertsrakendusteks, kvantimiseks ja peenhäälestuseks, arvestades litsentsi tingimusi ja konkreetse kasutusviisiga kaasnevaid kohustusi. Avatud kaaludega levitamine tähendab ka seda, et kasutajad saavad ise valida riistvara, järeldusraamistiku, turvakontrollid ja andmekäitluse lahendused.

Milline on selle koht 01.AI tootekataloogis?

Yi-Coder-9B-Chat kuulub 01.AI Yi-Coderi mudeliperre, mis keskendub konkreetselt programmeerimisülesannetele. Chat-variant on mõeldud olukordadeks, kus suhtlus toimub vestluse või juhiste vormis. Baasmudel Yi-Coder-9B on seotud alternatiiv jätkamisstiilis töökoormustele, kuid seda ei tohiks käsitleda sama mudelina.

Kuigi 01.AI haldab laiemat platvormi ja dokumenteerib mitmele Yi-seeria mudelile hostitud juurdepääsu, ei kinnita kasutatud uurimismaterjal Yi-Coder-9B-Chatile praegu ametlikku hostitud API lõpp-punkti ega märgipõhist hinda. Praktilises mõttes on see mudel suunatud eelkõige allalaadimiseks ning ise või kolmanda osapoole järeldusteenuse kaudu majutamiseks, mitte tavapärase 01.AI hallatava API-pakkumisena.

Programmeerimisvõimekus ja 128K kontekst

Yi-Coder-9B-Chat toetab maksimaalselt 131 072 märgi suurust konteksti, mida kirjeldatakse tavaliselt kui 128K märki. Kontekstiaken tähistab sisendi ja vestlusajaloo mahtu, mida mudel suudab ühe päringu jooksul töödelda. Programmeerimismudeli puhul võib selline maht olla kasulik suure lähtefaili ülevaatamisel, mitme seotud faili esitamisel, logide ja rakenduskoodi kõrvutamisel või mahuka koodihoidla väljavõtte kohta küsimuste esitamisel.

Täielik kontekstilimiit ei taga, et iga pikk päring saab sama põhjaliku analüüsi. Tegelik jõudlus sõltub teenindusraamistikust, saadaolevast GPU-mälust, kvantimisest, seadistatud konteksti pikkusest ja sellest, kuidas asjakohane teave päringus paikneb. Pikad sisendid võivad suurendada ka mälukasutust ja vastuse viivitust.

01.AI loetleb toe 52 programmeerimiskeelele ja koodiga seotud vormingule. Kasutatud uurimismaterjalis nimetatud näited on Python, JavaScript, TypeScript, Java, C, C++, C#, Go, Rust, PHP, Ruby, Swift, Kotlin, SQL, HTML, CSS, JSON, YAML, Shell, Lua, R ja Verilog. Mudel on mõeldud muu hulgas järgmisteks ülesanneteks:

  • Funktsioonide, skriptide, klasside, päringute ja veebilehekülgede koodi genereerimine loomulikus keeles antud juhiste põhjal.
  • Tundmatu koodi selgitamine ja olemasolevate teostuste dokumenteerimine.
  • Tõenäoliste vigade leidmine ja paranduste soovitamine.
  • Koodi tõlkimine toetatud keelte vahel.
  • Koodi lõpetamine või viimistlemine ning loetavuse parandamine.
  • Kvaliteeditagamise töövoogude ja loomulikust keelest SQL-i ülesannete toetamine.

Need võimalused muudavad mudeli kasulikuks interaktiivsel arendamisel, kuid genereeritud kood vajab endiselt ülevaatamist ja testimist. Mudel ei tea automaatselt, kas pakutud parandus kompileerub, läbib testid või on ohutu käivitada.

Mida avaldatud hindamistulemused näitavad?

01.AI teatas, et Yi-Coder-9B-Chat saavutas LiveCodeBenchi testis 23% läbimismäära, ning esitles seda tulemust alla 10 miljardi parameetriga mudeli kohta konkurentsivõimelisena. Ettevõte avaldas ka CodeEditorBenchi tulemused, mis hõlmavad näiteks silumist, koodi tõlkimist, koodivahetust ja koodi viimistlemist. Kasutatud uurimismaterjalis kirjeldatakse neid tulemusi konkurentsivõimelistena, kuid siin ei esitata täielikku ülesannete kaupa tulemuste komplekti.

Need on teenusepakkuja avaldatud hindamisväited, mitte tootmiskeskkonna käitumise garantiid. Võrdlustulemused võivad erineda olenevalt päringu vormingust, hindamise versioonist, valimi seadetest ja kasutatud võrdlusmudelitest. Neid tuleks käsitleda tõendina konkreetsete testitingimuste kohta, mitte tõendina, et mudel lahendab usaldusväärselt konkreetse tarkvaraprojekti ülesanded.

Kuidas Yi-Coder-9B-Chat juurutada?

Ametlik mudelihoidla on saadaval Hugging Face'is aadressil 01-ai/Yi-Coder-9B-Chat. Avaldatud mudelifailid kasutavad BF16 Safetensorsi vormingut ja Llama-ühilduvat põhjusliku keelemudeli arhitektuuri. Ametlikud näited näitavad mudeli laadimist Transformersi abil ning selle teenindamist vLLM-i või SGLangi kaudu.

Transformers on kasulik siis, kui rakendus vajab mudeli laadimise ja genereerimise üle otsest kontrolli. vLLM ja SGLang on teenindusraamistikud, mis on mõeldud mudelite rakendustele kättesaadavaks tegemiseks ja järelduskoormuste tõhusamaks haldamiseks. Sobivaim valik sõltub riistvarast, pakkimise vajadusest, kvantimise toest, samaaegsusest ja juurutuskeskkonnast.

Ligikaudu 9 miljardi parameetriga mudel on väiksem kui paljud suuremad programmeerimismudelid, mistõttu võib selle kohapealne juurutamine olla praktilisem. 128K kontekstiseade võib siiski nõuda lühikese kontekstiga järeldamisest märksa rohkem mälu. Seetõttu tuleb eristada mudeli parameetrite arvu ja ressursse, mida nõuavad konkreetne konteksti pikkus, täpsus, pakkide suurus ja teeninduskonfiguratsioon.

Hind ja API kättesaadavus

Kasutatud uurimismaterjalis ei ole Yi-Coder-9B-Chatile kinnitatud ametlikku 01.AI märgipõhist hinda. Mudeli kaalud on Apache 2.0 litsentsi alusel allalaaditavad, kuid kaalude allalaadimine ei muuda järeldamist tasuta teenuseks: kasutajal võib olla vaja maksta GPU-de, pilveeksemplaride, salvestusruumi, ribalaiuse, seire ja arendustöö eest.

Kolmanda osapoole teenusepakkujad võivad pakkuda hostitud järeldamist, kuid nende hinnad, käideldavus, privaatsustingimused, toetatud kvantimine, päringulimiidid ja mudeliversioonid on 01.AI avaldatud tingimustest eraldi. Kuna need üksikasjad ei ole siin kinnitatud, ei tohiks selle täpse mudeli puhul eeldada kindlat hostitud hinda. Ise majutamine võib püsiva töökoormuse korral olla kulutõhus, samas kui hallatav järeldusteenuse pakkuja võib olla lihtsam juhukasutuse või muutliku liikluse puhul.

Modaalsused, tööriistad ja arutlusvõime

Yi-Coder-9B-Chat on ainult tekstipõhine mudel. See võtab vastu tekstisisendit ja väljastab teksti; algupäraselt ei toeta see pilte, heli ega videot ning ei genereeri mittetekstilist meediat. Ümbritsev rakendus võib lisada failidest andmete eraldamise, pildilt tekstiks teisendamise, koodi käivitamise, otsingu või muid teenuseid, kuid need võimalused pärinevad välistest tööriistadest, mitte mudelist endast.

Kasutatud mudeliandmed ei kinnita sisseehitatud funktsioonikutseid ega tööriistade kasutamise tuge. Seetõttu ei tohiks seda käsitleda agendina, mis suudab ilma integratsioonikihita veebis sirvida, koodi käivitada, koodihoidlat muuta või välisteenuseid kutsuda. Samuti ei ole kinnitatud ametlikku JSON-režiimi. Masinloetavat väljundit vajavad rakendused peaksid mudeli vastuseid valideerima ja vajaduse korral parandama, mitte eeldama skeemile vastavust.

Yi-Coder-9B-Chat suudab programmeerimisülesannete osana teha loogilisi järeldusi, näiteks jälgida funktsiooni tööd või pakkuda silumisstrateegiat. Toimetuslik uurimistöö hindab selle arutlusvõimet 6 punktiga 10-st ja programmeerimisvõimet 8 punktiga 10-st, kuid need on võrdlevad toimetuslikud hinnangud, mitte teenusepakkuja avaldatud tulemused. Mudelit tuleks hinnata nende keelte, raamistike ja koodibaasi mustrite põhjal, mis on konkreetse projekti jaoks olulised.

Peamised tugevused ja piirangud

Tugevused

  • Suur programmeerimiskontekst: 128K märgi suurune maksimum on kasulik pikkade failide, mitme faili väljavõtete, dokumentatsiooni ja koodhoidla taseme küsimuste puhul.
  • Keskendunud otstarve: Chat-variant on häälestatud programmeerimisvestlusteks, mitte ainult üldotstarbeliseks vestluseks.
  • Lai keelte tugi: 01.AI teatab toe olemasolust 52 programmeerimiskeelele ja koodiga seotud vormingule.
  • Avatud juurutamine: Apache 2.0 litsentsi alusel saadaval olevad kaalud võimaldavad litsentsi tingimusi järgides kohapealset, privaatset, ärilist ja kohandatud juurutamist.
  • Mitu teenindusvõimalust: Ametlikud näited hõlmavad Transformersi, vLLM-i ja SGLangi.
  • Paindlikum taristu: Ligikaudu 9 miljardi parameetri suurust mudelit võib olenevalt kontekstist ja teeninduskonfiguratsioonist olla lihtsam juurutada kui palju suuremaid programmeerimismudeleid.

Piirangud

  • Ametlik hostitud API ei ole kinnitatud: Kasutatud uurimismaterjal ei kinnita selle täpse mudeli praegust 01.AI lõpp-punkti ega hinda.
  • Ainult tekst: Piltide, heli ja video mõistmine või genereerimine ei kuulu mudeli algupäraste võimaluste hulka.
  • Sisseehitatud tööriistu ei ole kinnitatud: Veebiotsing, koodi käivitamine, koodihoidla muutmine ja muud välised toimingud nõuavad eraldi süsteeme.
  • Maksimaalne väljund ei ole määratud: Kasutatud uurimismaterjalis ei esitata autoriteetset maksimaalset väljundmärkide limiiti.
  • Konteksti suurus ei taga kvaliteeti: Suurem päring võib suurendada kulu ja viivitust, kuid sisaldada endiselt ebaolulist või raskesti leitavat teavet.
  • Koodi ohutus jääb kasutaja vastutuseks: Genereeritud kood võib olla vale, puudulik, ebaturvaline või vananenud ning seda tuleks testida ja kontrollida isoleeritud keskkonnas.

Millal valida Yi-Coder-9B-Chat?

Vali Yi-Coder-9B-Chat siis, kui soovid allalaaditavat vestluspõhist programmeerimismudelit, vajad kontrolli selle üle, kus päringuid ja lähtekoodi töödeldakse, või tahad analüüsida suuremaid programmeerimiskontekste ilma sellele täpsele mudelile kinnitatud suletud API-lõpp-punktile tuginemata. See sobib eriti hästi kohapealsetele programmeerimisassistentidele, koodi selgitamisele, silumisele, koodi tõlkimisele, pika konteksti ülevaatamisele ning peenhäälestuse või kvantimisega seotud katsetele.

See võib olla hea valik siis, kui taristu maksumus ja privaatsus on tähtsamad kui täielikult hallatava arendusplatvormi kasutamine. Ise majutatud juurutuse saab integreerida ka organisatsiooni enda redaktori, koodhoidla teenuse, testikäivitaja või turbeprotsessiga.

Teine lahendus võib olla sobivam siis, kui esmatähtsad on garanteeritud hallatav kättesaadavus, küps funktsioonikutsete tugi, sisseehitatud koodi käivitamine, veebiühendus, multimodaalne sisend või selgelt avaldatud kasutushinnad. Suurem programmeerimismudel võib olla eelistatav keeruka arutluse või väga keeruliste tarkvaraülesannete puhul, väiksem mudel aga võib pakkuda lihtsate lõpetamisülesannete korral väiksemat viivitust ja ressursikulu. Seega ei tohiks võrdlus piirduda ainult parameetrite arvuga: hinnata tuleb vastuste kvaliteeti, kontekstivajadusi, riistvara maksumust, viivitust, integratsioonifunktsioone ja järelevalve mahtu, mida teie töövoog võimaldab.

Praktiline kasutus ja ohutusjuhised

Usaldusväärsete tulemuste saamiseks esita asjakohane kood, kirjelda oodatavat käitumist, lisa veateated ja testide ebaõnnestumised ning palu mudelil eeldused välja tuua. Vaata soovitatud muudatused enne nende rakendamist üle. Käivita genereeritud kood liivakastis või muus isoleeritud keskkonnas, eriti siis, kui päringud või väljundid võivad sisaldada shellikäske, sõltuvuste muudatusi, failitoiminguid või juurdepääsu mandaatidele.

Suurte koodhoidlate puhul ei ole kogu saadaoleva konteksti saatmine alati parim lähenemisviis. Vali ülesandega seotud failid ja sümbolid, kirjelda sõltuvused selgelt ning kasuta otsingu- või kokkuvõttekihi, kui projekt on kasulikust kontekstist suurem. See võib vähendada viivitust ja hõlbustada kontrollimist, kas mudel kasutas õigeid lähteandmeid.


KKK - vastused sinu küsimustele

Mis on Yi-Coder-9B-Chat?
Yi-Coder-9B-Chat on 01.AI arendatud avatud kaaludega programmeerimise keelemudel, millel on ligikaudu 9 miljardit parameetrit. See on juhiste järgi peenhäälestatud vestluslike programmeerimisülesannete jaoks, nagu koodi selgitamine, vigade otsimine ja parandamine, programmeerimiskeelte vahel tõlkimine ning skriptide genereerimine.
Kui pikka konteksti Yi-Coder-9B-Chat toetab?
Yi-Coder-9B-Chat toetab maksimaalselt 131 072 tokeni pikkust konteksti, mida nimetatakse tavaliselt 128K-ks. See võib aidata analüüsida pikki lähtefaile, mitut omavahel seotud faili, logisid, dokumentatsiooni ja mahukaid väljavõtteid koodivaramutest, kuid pikem kontekst nõuab rohkem mälu ja võib suurendada latentsust.
Kuidas saab Yi-Coder-9B-Chat mudelit juurutada?
Mudeli saab alla laadida selle ametlikust Hugging Face’i repositooriumist ning juurutada kohapeal või pilvetaristus. Ametlikes näidetes näidatakse, kuidas mudelit Transformersiga laadida ning vLLM-i või SGLangi abil teenindada. Juurutusnõuded sõltuvad täpsusest, kvantimisest, konteksti pikkusest, pakisuurusest ja samaaegsete päringute arvust.
Kas Yi-Coder-9B-Chat on saadaval ametliku tasulise API kaudu?
Esitatud uuring ei kinnita, et Yi-Coder-9B-Chatil oleks praegu ametlikku 01.AI hallatavat API-lõpp-punkti või märgipõhist hinda. Mudeli kaalud on Apache 2.0 litsentsi alusel allalaaditavad, kuid mudeli oma taristus majutamisel tuleb kasutajatel siiski arvestada taristu-, salvestus-, ribalaiuse- ja käituskuludega.
Millised on Yi-Coder-9B-Chati peamised piirangud?
Yi-Coder-9B-Chat on ainult tekstipõhine mudel ega paku algupäraselt pildi-, heli- ega videovõimalusi. Sisseehitatud funktsioonikutsumise, veebisirvimise, koodi käivitamise, hoidlate muutmise ja ametliku JSON-režiimi tugi ei ole kinnitatud. Loodud kood tuleb üle vaadata, testida ja käivitada isoleeritud keskkonnas, sest see võib olla vigane või ebaturvaline.


Allikad 5
AI ettevõte

Info 01.AI kohta