Vicuna: avoimen lähdekoodin chatbot, joka tekee vaikutuksen GPT-4:lle 90 %* ChatGPT-laadulla
Yleiskatsaus
Suurten kielimallien (LLM) nopea kehitys on mullistanut chatbot-järjestelmät, mikä on johtanut ennennäkemättömiin älykkyystasot, kuten OpenAI:n ChatGPT:ssä näkyy. Huolimatta sen vaikuttavasta suorituskyvystä, ChatGPT:n koulutus- ja arkkitehtuuritiedot ovat kuitenkin edelleen epäselviä, mikä haittaa tutkimusta ja avoimen lähdekoodin innovaatioita tällä alalla. Meta LLaMA- ja Stanford Alpaca -projektin inspiroimana esittelemme Vicuna-13B:n, avoimen lähdekoodin chatbotin, jonka taustalla on parannettu tietojoukko ja helppokäyttöinen, skaalautuva infrastruktuuri. Hienosäätämällä LLaMA-perusmallia ShareGPT.com-sivustolta kerätyissä käyttäjien jakamissa keskusteluissa Vicuna-13B on osoittanut kilpailukykyistä suorituskykyä muihin avoimen lähdekoodin malleihin, kuten Stanford Alpacaan, verrattuna. Tämä blogikirjoitus antaa alustavan arvion Vicuna-13B:n suorituskyvystä ja kuvaa sen koulutus- ja palveluinfrastruktuuria. Kehotamme myös yhteisöä olemaan vuorovaikutuksessa online-demomme kanssa tämän chatbotin ominaisuuksien testaamiseksi.
Kuinka hyvä Vicuna on?
Kun Vicuna on hienosäädetty 70 000 käyttäjän jakamalla ChatGPT-keskustelulla, huomaamme, että Vicunasta tulee kyvykäs luoda yksityiskohtaisempia ja hyvin jäsenneltyjä vastauksia Alpacaan verrattuna (katso esimerkit alla) ChatGPT:n laadulla.
Online-demo
Kokeile Vicuna-13B-demoa täällä!
Koulutus
Vicuna luodaan hienosäätämällä LLaMA-perusmallia käyttämällä noin 70 000 käyttäjien jakamaa keskustelua, jotka on kerätty ShareGPT.comista julkisten API-liittymien avulla. Tietojen laadun varmistamiseksi muunnamme HTML-koodin takaisin merkintään ja suodatamme pois sopimattomat tai huonolaatuiset näytteet. Lisäksi jaamme pitkät keskustelut pienempiin segmentteihin, jotka sopivat mallin enimmäiskontekstin pituuteen.
- Monikierroskeskustelut: Säädämme harjoitushäviön ottamaan huomioon monikäännökset keskustelut ja laskemme hienosäätöhäviön yksinomaan chatbotin tuotos.
- Muistin optimoinnit: Jotta Vicuna ymmärtäisi pitkän kontekstin, laajennamme kontekstin enimmäispituutta 512:sta alpakassa 2048:aan, mikä lisää huomattavasti GPU-muistin vaatimuksia. Selvitämme muistin paineen käyttämällä gradienttitarkistuspisteitä ja flash-tarkistusta.
- Kustannusten aleneminen Spot Instancen avulla: 40 kertaa suurempi tietojoukko ja 4x sekvenssin pituus harjoitteluun muodostavat huomattavan haasteen koulutuskuluissa. Käytämme SkyPilot-hallittua spottia kustannusten alentamiseksi hyödyntämällä halvempia spot-tapauksia automaattisella palautuksella ennaltaehkäisyä ja automaattista vyöhykevaihtoa varten. Tämä ratkaisu leikkaa 7B-mallin koulutuskustannuksia noin 140:sta ja 13B-mallin koulutuskustannuksista noin 300:sta.
Palvelu
Rakennamme palvelujärjestelmän, joka pystyy palvelemaan useita malleja hajautetusti. työntekijöitä. Se tukee GPU-työntekijöiden joustavia laajennuksia sekä paikallisista klustereista että pilvestä. Käyttämällä SkyPilotin vikasietoista ohjainta ja hallittua spottiominaisuutta tämä palvelujärjestelmä voi toimia hyvin halvempien spot-esiintymien kanssa useista pilvistä, mikä vähentää käyttökustannuksia. Se on tällä hetkellä kevyt toteutus, ja pyrimme integroimaan siihen lisää viimeisimpiä tutkimuksiamme.
Kuinka arvioida chatbotia?
Tekoälychatbottien arviointi on haastava tehtävä, koska se vaatii kielen ymmärtämisen, päättelyn, ja kontekstitietoisuus. Tekoälykeskustelubottien kehittyessä entistä kehittyneempiä, nykyiset avoimet vertailuarvot eivät ehkä enää riitä. Esimerkiksi SOTA-chatbotit voivat vastata tehokkaasti Stanfordin Alpacassa käytettyyn arviointitietoaineistoon, itseohjautuvaan, mikä tekee ihmisten vaikeaksi havaita suorituserot. Lisää rajoituksia ovat koulutus-/testitietojen saastuminen ja uusien vertailuarvojen luomisen mahdollisesti korkeat kustannukset. Näiden ongelmien ratkaisemiseksi ehdotamme GPT-4:ään perustuvaa arviointikehystä chatbotin suorituskyvyn arvioinnin automatisoimiseksi.
Rajoitukset
Olemme huomanneet, että kuten muissakin suurissa kielimalleissa, Vicunalla on tiettyjä rajoituksia. Se ei esimerkiksi ole hyvä päättelyä tai matematiikkaa sisältävissä tehtävissä, ja sillä voi olla rajoituksia itsensä tunnistamisessa tai tulostensa asiallisen tarkkuuden varmistamisessa. Lisäksi sitä ei ole optimoitu riittävästi turvallisuuden takaamiseksi tai mahdollisen myrkyllisyyden tai vinouden vähentämiseksi. Turvallisuusongelmien ratkaisemiseksi käytämme OpenAI-valvontasovellusliittymää suodattamaan sopimattomat käyttäjien syötteet online-demossamme. Odotamme kuitenkin, että Vicuna voi toimia avoimena lähtökohtana tuleville tutkimuksille näiden rajoitusten ratkaisemiseksi.
Julkaisu
Ensimmäisessä julkaisussamme jaamme koulutus-, käyttö- ja arviointikoodin GitHub-repossa: https://github.com/lm-sys/FastChat. Julkaisimme myös Vicuna-13B-mallin painot. Aineistoa ei ole tarkoitus julkaista. Liity Discord-palvelimellemme ja seuraa Twitterämme saadaksesi viimeisimmät päivitykset.
Kuinka hyvä Vicuna on?
Kun Vicuna on hienosäädetty 70 000 käyttäjien jakamilla ChatGPT-keskusteluilla, huomaamme, että Vicuna pystyy luomaan yksityiskohtaisempia ja paremmin jäsenneltyjä vastauksia kuin Alpaca (katso esimerkit alla ), jonka laatu on sama kuin ChatGPT.
Online-demo
Kokeile Vicuna-13B-demoa
täällä< /a>!
Yleiskatsaus
Suurten kielimallien (LLM) nopea kehitys on mullistanut chatbot-järjestelmät, mikä on johtanut ennennäkemättömään älykkyyteen, kuten OpenAI:n ChatGPT:ssä näkyy. Huolimatta sen vaikuttavasta suorituskyvystä, ChatGPT:n koulutus- ja arkkitehtuuritiedot ovat kuitenkin edelleen epäselviä, mikä haittaa tutkimusta ja avoimen lähdekoodin innovaatioita tällä alalla. Meta LLaMA- ja Stanford Alpaca -projektin inspiroimana esittelemme Vicuna-13B:n, avoimen lähdekoodin chatbotin, jonka taustalla on parannettu tietojoukko ja helppokäyttöinen, skaalautuva infrastruktuuri. Hienosäätämällä LLaMA-perusmallia ShareGPT.com-sivustolta kerätyissä käyttäjien jakamissa keskusteluissa Vicuna-13B on osoittanut kilpailukykyistä suorituskykyä muihin avoimen lähdekoodin malleihin, kuten Stanford Alpacaan, verrattuna. Tämä blogikirjoitus antaa alustavan arvion Vicuna-13B:n suorituskyvystä ja kuvaa sen koulutus- ja palveluinfrastruktuuria. Kehotamme myös yhteisöä olemaan vuorovaikutuksessa online-demomme kanssa tämän chatbotin ominaisuuksien testaamiseksi.
Koulutus
Vicuna luodaan hienosäätämällä LLaMA-perusmallia käyttäen noin 70 000 käyttäjää ShareGPT.comista kerätyt jaetut keskustelut julkisten sovellusliittymien kanssa. Tietojen laadun varmistamiseksi muunnamme HTML-koodin takaisin merkintään ja suodatamme pois sopimattomat tai huonolaatuiset näytteet. Lisäksi jaamme pitkät keskustelut pienempiin segmentteihin, jotka sopivat mallin enimmäiskontekstin pituuteen.
Palvelu
Rakennamme palvelujärjestelmän, joka pystyy palvelemaan useita malleja hajautettujen työntekijöiden kanssa. Se tukee GPU-työntekijöiden joustavia laajennuksia sekä paikallisista klustereista että pilvestä. Käyttämällä SkyPilotin vikasietoista ohjainta ja hallittua spottiominaisuutta tämä palvelujärjestelmä voi toimia hyvin halvempien spot-esiintymien kanssa useista pilvistä, mikä vähentää käyttökustannuksia. Se on tällä hetkellä kevyt toteutus, ja pyrimme integroimaan siihen lisää uusinta
tutkimustamme.
Miten Chatbotin arvioiminen?
Tekoälychatbottien arviointi on haastava tehtävä, koska se vaatii kielen ymmärtämisen, päättelyn ja kontekstitietoisuuden tutkimista. Tekoälykeskustelubottien kehittyessä entistä kehittyneempiä, nykyiset avoimet vertailuarvot eivät ehkä enää riitä. Esimerkiksi Stanfordin Alpakassa käytettyyn arviointitietoaineistoon
self-instruct
voidaan vastata tehokkaasti SOTA chatbotit, mikä vaikeuttaa ihmisten havaitsemaan suorituskyvyn eroja. Lisää rajoituksia ovat koulutus-/testitietojen saastuminen ja uusien vertailuarvojen luomisen mahdollisesti korkeat kustannukset. Näiden ongelmien ratkaisemiseksi ehdotamme GPT-4:ään perustuvaa arviointikehystä chatbotin suorituskyvyn arvioinnin automatisoimiseksi.
Rajoitukset
Olemme huomanneet, että Vicuna on muiden suurten kielimallien tapaan tiettyjä rajoituksia. Se ei esimerkiksi ole hyvä päättelyä tai matematiikkaa sisältävissä tehtävissä, ja sillä voi olla rajoituksia itsensä tunnistamisessa tai tulostensa asiallisen tarkkuuden varmistamisessa. Lisäksi sitä ei ole optimoitu riittävästi turvallisuuden takaamiseksi tai mahdollisen myrkyllisyyden tai vinouden vähentämiseksi. Turvallisuusongelmien ratkaisemiseksi käytämme OpenAI:n
valvontasovellusliittymää
suodattamaan sopimattomat käyttäjien syötteet online-demossamme. . Odotamme kuitenkin, että Vicuna voi toimia avoimena lähtökohtana tuleville tutkimuksille näiden rajoitusten ratkaisemiseksi.