AI-mallit ja alustat
Llama 2: Syvä Analyysi Avoimen Lähteen Haastajasta ChatGPT:lle
Suuret kielimallit (LLM) (jotka pystyvät monimutkaisiin päättelytehtäviin) ovat osoittaneet lupaavia tuloksia erikoistuneilla aloilla, kuten ohjelmoinnissa ja luovassa kirjoittamisessa. Kuitenkin suurten kielimallien maailma ei ole yksinkertaista “liitä ja toimi” -paratiisia; haasteita ovat mm. käytettävyys, turvallisuus ja laskennalliset vaatimukset. Tässä artikkelissa syvennymme Llama 2:n ominaisuuksiin ja tarjoamme yksityiskohtaisen ohjeen tämän korkean suorituskyvyn suuren kielimallin asettamiseen Hugging Facen ja T4-grafiikkaprosessorien avulla Google (GOOGL ) Colabissa.
Metan kehittämä ja Microsoftin kanssa yhteistyössä toteutettu avoimen lähdekoodin suuri kielimalli pyrkii uudelleenmäärittelemään generatiivisen tekoälyn ja luonnollisen kielen ymmärtämisen alueet. Llama 2 ei ole vain tilastollinen malli, joka on koulutettu teratavuuden verran dataa; se on filosofian ruumiillistuma. Tämä filosofia korostaa avoimen lähdekoodin lähestymistapaa tekoälykehityksen perustana, erityisesti generatiivisessa tekoälyssä.
Llama 2 ja sen vuoropuhelupainotteinen vastine, Llama 2-Chat, on varustettu jopa 70 miljardin parametrin kanssa. Ne käyvät läpi hienosäätöprosessin, joka on suunniteltu vastaamaan läheisesti ihmisten preferenssejä, mikä tekee niistä sekä turvallisempia että tehokkaampia useita muita julkisesti saatavilla olevia malleja. Tämänkaltaista hienosäätöä pidetään usein suljettujen “tuote”-suurten kielimallien ominaisuutena, kuten ChatGPT ja BARD, jotka eivät yleensä ole saatavilla julkiselle tarkastelulle tai mukauttamiselle.
Llama 2:n Tekninen Syvä Analyysi
Llama 2 -mallin kouluttamiseen käytetään, kuten sen edeltäjien tapauksessa, itsestään riippuvaa transformer-arkkitehtuuri, joka on esikoulutettu laajalle itsestään ohjatulle aineistolle. Se kuitenkin lisää arkkitehtuuriin yhden tason monimutkaisuutta käyttämällä vahvistusoppimista ihmisten palautteen avulla (RLHF) paremman ihmiskäyttäytyminen ja preferenssien mukaisuuden saavuttamiseksi. Tämä on laskennallisesti kallista, mutta välttämätöntä mallin turvallisuuden ja tehokkuuden parantamiseksi.
Esikoulutus ja Datatehokkuus
Llama 2:n perusrakenteellinen innovaatio piilee sen esikoulutusjärjestelmässä. Malli ottaa vihjeitä edeltäjältään, Llama 1:ltä, mutta tuo useita ratkaisevia parannuksia sen suorituskyvyn korostamiseksi. Huomattavasti, 40 %:n kasvu koulutettujen tokenien kokonaismäärässä ja kaksinkertainen laajennus kontekstin pituudessa erottuvat. Lisäksi malli hyödyntää ryhmiteltyä kyselyhuomiota (GQA) vahvistamaan johtopäätöksen skaalautuvuutta.
Valvottu Hienosäätö (SFT) ja Vahvistusoppiminen Ihmisten Palautteen avulla (RLHF)
Llama-2-Chat on käynyt läpi tiukkaa hienosäätöä sekä valvotun hienosäädön (SFT) että vahvistusoppimisen ihmisten palautteen avulla (RLHF). Tässä yhteydessä SFT toimii olennaisena osana RLHF-kehyksessä, tarkentamalla mallin vastauksia vastaamaan läheisesti ihmisten preferenssejä ja odotuksia.
OpenAI on tarjonnut viisauden, joka selittää SFT- ja RLHF-menetelmiä, joita käytetään InstructGPT:ssä. Samalla tavoin kuin LLaMa 2, InstructGPT käyttää näitä edistyneitä koulutustekniikoita optimoidakseen mallin suorituskykyä.
Askeltapa 1 alla olevassa kuvassa keskittyy valvottuun hienosäätöön (SFT), kun taas seuraavat askelmat täydentävät vahvistusoppimisen ihmisten palautteen (RLHF) prosessin.
Valvottu hienosäätö (SFT) on erikoistunut prosessi, jolla optimoidaan esikoulutettu suuri kielimalli tiettyyn alimäärittelytehtävään. Toisin kuin valvomattomat menetelmät, jotka eivät vaadi datan validointia, SFT käyttää esivalittua ja merkittyä aineistoa.
Yleensä näiden aineistojen luominen on kallista ja aikaa vievää. Llama 2:n lähestymistapa oli laatu ylitse määrän. Vain 27 540 annotaatiolla Meta sai aikaan suorituskyvyn, joka oli kilpailukykyinen ihmisten annotaattorien kanssa. Tämä sopii hyvin viimeaikaisiin tutkimuksiin, jotka osoittavat, että jopa rajoitetut mutta puhtaat aineistot voivat johtaa korkealaatuisten tuloksien saavuttamiseen.
SFT-prosessissa esikoulutettu suuri kielimalli altistetaan merkitylle aineistolle, jossa valvottu oppimisen algoritmi tulee peliin. Mallin sisäiset painot mukautetaan tehtäväkohtaisen menetetyn funktion perusteella laskettujen gradientien mukaan. Tämä menetetyn funktio kvantifioi eroja mallin ennustettujen tulosteen ja todellisten ground truth -merkintöjen välillä.
Tämä optimointi mahdollistaa suuren kielimallin ymmärtämisen monimutkaisia malleja ja hienouksia, jotka on upotettu merkittyyn aineistoon. Seurauksena malli ei ole vain yleinen työkalu, vaan se kehittyy erikoistuneeksi resursiksi, joka on taitava suorittamaan kohdetilan tehtävän korkealla tarkkuudella.
Vahvistusoppiminen on seuraava askel, jolla mallin käyttäytyminen saadaan vastaamaan ihmisten preferenssejä läheisemmin.
Säätövaihe hyödynsi vahvistusoppimista ihmisten palautteen avulla (RLHF), käyttäen tekniikoita kuten Tärkeä otos ja Lähellä toimintapolitiikan optimointia johdattaakseen algoritminen melu, välttääkseen paikallisia optimeja. Tämä iteratiivinen hienosäätö ei ainoastaan parantanut mallia, vaan myös kohdisti sen tulosteen ihmisten odotuksiin.
Llama 2-Chat käytti binääristä vertailuprotokollaa kerätäkseen ihmisten preferenssidataa, joka merkitsee merkittävää trendiä laadukkaampiin lähestymistapoihin. Tämä mekanismi kertoi palkkio-malleille, jotka käytettiin hienosäätämään vuoropuhelu-ai-mallia.
Häikäisevä Huomio: Monivuoropuhelut
Meta esitteli uuden ominaisuuden, Häikäisevä Huomio (GAtt), joka on suunniteltu parantamaan Llama 2:n suorituskykyä monivuoropuheluissa. Tämä ratkaisee tehokkaasti jatkuvaan keskusteluun liittyvän kontekstin menetysongelman. GAtt toimii ankkurina, joka linkittää alkuperäiset ohjeet kaikkiin myöhempiin käyttäjän viesteihin. Yhdistettynä vahvistusoppimisen tekniikoiden kanssa, se auttaa tuottamaan johdonmukaisia, merkityksellisiä ja käyttäjälähtöisiä vastauksia pidempien keskustelujen aikana.
Metan Git-arkistosta käyttäen download.sh
- Fourumilla Metan verkkosivuille: Siirry Metan viralliseen Llama 2 -sivustolle ja valitse ‘Lataa malli’
- Täytä tiedot: Lue ehdot ja hyväksy ne jatkaaksesi.
- Vahvistusviesti sähköpostiin: Kun lomake on lähetetty, saat sähköpostin Metalta, jossa on linkki mallin lataamiseen heidän Git-arkistosta.
- Suorita download.sh: Kloonaa Git-arkisto ja suorita
download.sh-skripti. Tämä skripti pyytää sinua todentamaan URL:n kautta, joka vanhenee 24 tunnissa. Valitset myös mallin koon – 7B, 13B tai 70B.
Hugging Facen kautta
- Vastaanota hyväksymisviesti: Metan pääsyluvan saatuaan, mene Hugging Faceen.
- Pyydä pääsyä: Valitse haluamasi malli ja lähetä pyyntö pääsyluvan saamiseksi.
- Vahvistus: Odottele “pääsy myönnetty” -sähköpostia 1-2 päivän kuluessa.
- Luo pääsykoodi: Siirry “Asetukset” -osiolle Hugging Face -tilissäsi luodaksesi pääsykoodin.
Transformers 4.31 -julkaisu on täysin yhteensopiva LLaMa 2:n kanssa ja avaa useita työkaluja ja ominaisuuksia Hugging Face -ekosysteemissä. Koulutus- ja inference-skripteistä 4-bittiseen kvantitointiin bitsandbytesin ja Parametric Efficient Fine-tuningin (PEFT) kautta, työkalupakki on laaja. Aloittaaksesi, varmista, että olet viimeisimmän Transformers-julkaisun ja kirjautunut Hugging Face -tiliisi.
Tässä on suoraviivainen opas LLaMa 2 -mallin suorittamiseen Google Colab -ympäristössä, hyödyntäen GPU-suoritusaikaa:
Pakettien Asennus
<p>!pip install transformers !huggingface-cli login
Tärkeiden Python-kirjastojen Tuonti.
from transformers import AutoTokenizer import transformers import torch
Mallin ja Tokenizerin Alustus
Tässä vaiheessa määrittele, mitä Llama 2 -mallia käytät. Tässä opetusohjeessa käytetään meta-llama/Llama-2-7b-chat-hf.
model = "meta-llama/Llama-2-7b-chat-hf" tokenizer = AutoTokenizer.from_pretrained(model)
Putken Määrittely
Käytä Hugging Face -putkia tekstin luomiseen tietyillä asetuksilla:
pipeline = transformers.pipeline( "tekstin-luonti", model=model, torch_dtype=torch.float16, device_map="auto")
Tekstin Luonti
Lopulta, suorita putki ja luo tekstin aikaisen syötteen perusteella:
sequences = pipeline(
'Kuka ovat avainosapuolet tekoälyalan kehittämisessä?\n',
do_sample=True,
top_k=10,
num_return_sequences=1,
eos_token_id=tokenizer.eos_token_id,
max_length=200)
for seq in sequences:
print(f"Tulos: {seq['generated_text']}")
A16Z:n Käyttöliittymä LLaMa 2:lle
Andreessen Horowitz (A16Z) on vastikään julkaissut uuden Streamlit-pohjaisen chatbot-käyttöliittymän, joka on suunniteltu Llama 2:lle. GitHubissa isännöity tämä käyttöliittymä säilyttää istunnon keskusteluhistorian ja tarjoaa joustavuuden valita useista Llama 2 -API-päistä, jotka ovat isännöity Replicatessa. Tämä käyttäjälähtöinen suunnittelu pyrkii yksinkertaismaan Llama 2:n kanssa vuorovaikuttamista, mikä tekee siitä ihanteellisen työkalun sekä kehittäjille että loppukäyttäjille. Niille, jotka ovat kiinnostuneita kokeilemaan tätä, on saatavilla live-demo osoitteessa Llama2.ai.
Llama 2: Mitä tekee siitä erilaisen kuin GPT-mallit ja sen edeltäjä Llama 1?
Mittakaavan Moninaisuus
Toisin kuin monet kielimallit, jotka tarjoavat rajoitetun skaalautuvuuden, Llama 2 tarjoaa useita eri mallivaihtoehtoja, joissa on vaihtelevat parametriarvot. Malli skaalautuu 7 miljardista 70 miljardiin parametriin, tarjoamalla erilaisia konfiguraatioita, jotka sopivat erilaisiin laskennallisiin tarpeisiin.
Kontekstin Pituuden Parannus
Mallissa on 4K tokenin kontekstin pituus, joka on pidempi kuin Llama 1:ssä. Tämä mahdollistaa sen, että se pitää enemmän tietoa muistissa, parantaen siten sen kykyä ymmärtää ja luoda monimutkaisempaa ja laajempaa sisältöä.
Ryhmittyvä Kyselyhuomio (GQA)
Arkkitehtuuri käyttää ryhmittyvän kyselyhuomion (GQA) käsitettä, joka on suunniteltu nopeuttamaan huomion laskentaprosessia välimuistin kautta. Tämä parantaa mallin johtopäätöksen skaalautuvuutta ja tekee siitä helpommin saatavilla.
Suorituskykyvertailu
Llama 2 on asettanut uuden standardin suorituskykymittareissa. Se ei ainoastaan ylitä edeltäjänsä, Llama 1:n, suorituskyvyn, vaan tarjoaa myös merkittävää kilpailua muiden mallien, kuten Falconin ja GPT-3.5, kanssa.
Llama 2-Chatin suurin malli, 70B, ylittää myös ChatGPT:n suorituskyvyn 36 %:ssa tapauksista ja vastaa suorituskykyä 31,5 %:ssa tapauksista. Lähde: Paperi
Avoimen Lähteen Voima: Yhteisön Voima
Meta ja Microsoft (MSFT ) aikovat Llama 2:sta enemmän kuin vain tuotteena; he näkevät sen yhteisölähtöisenä työkaluna. Llama 2 on vapaasti saatavilla sekä tutkimus- että ei-kaupallisiin tarkoituksiin. He pyrkivät demokratisoimaan tekoälyominaisuuksia, tehdessä siitä saatavilla aloille, tutkijoille ja yrityksille. Avoimen lähdekoodin lähestymistapa mahdollistaa mallin “joukkoälyllisen vianetsinnän”. Kehittäjät ja tekoälyetiikka voivat testata, tunnistaa haavoittuvuuksia ja tarjota ratkaisuja kiihtyvällä vauhdilla.
Vaikka LLaMa 2:n lisenssiehdot ovat yleisesti ottaen permissiivisiä, poikkeuksia on olemassa. Suuret yritykset, joilla on yli 700 miljoonaa kuukausittaista käyttäjää, kuten Google, vaativat nimenomaisen luvan Metalta sen käyttämiseen. Lisäksi lisenssi kieltää LLaMa 2:n käytön muiden kielimallien parantamiseen.
Nykyiset Haasteet Llama 2:ssa
- Datatiedon Yleistettävyys: Sekä Llama 2 että GPT-4 epäonnistuvat toisinaan yhdenmukaisessa korkeassa suorituskyvyssä erilaisissa tehtävissä. Datatiedon laatu ja monimuotoisuus ovat yhtä tärkeitä kuin määrä näissä tilanteissa.
- Mallin Avoinnäkymäisyys: Ottaen huomioon aiemmat vastuut tekoälystä, joka tuottaa harhaanjohtavia tuloksia, on tärkeää tutkia näiden monimutkaisten mallien päätöksenteon perusteita.
Code Llama – Metan Uusin Julkaisu
Meta ilmoitti vastikään Code Llama:n, joka on suuri kielimalli, joka on erikoistunut ohjelmointiin, ja sen parametriarvot vaihtelevat 7B:sta 34B:een. Samoin kuin ChatGPT:n koodin tulkitin; Code Llama voi sujuvoittaa kehittäjien työvirran ja tehdä ohjelmoinnista helpompaa. Se tukee useita ohjelmointikieliä ja tulee erikoistuneina versioina, kuten Code Llama – Python Pythonin kieleen liittyvissä tehtävissä. Malli tarjoaa myös eri suorituskykytasoa erilaisiin viivevaatimuksiin. Avoimesti lisensoitu, Code Llama kutsuu yhteisöä osallistumaan jatkuvaan parantamiseen.
https://about.fb.com/news/2023/08/code-llama-ai-for-coding/
Johtopäätös
Tämä artikkeli on opastanut sinua Llama 2 -mallin asettamisessa tekstien luontiin Google Colabissa Hugging Facen avulla. Llama 2:n suorituskyky perustuu useisiin edistyneisiin tekniikoihin, alkaen itsestään riippuvaisesta transformer-arkkitehtuurista ja vahvistusoppimisesta ihmisten palautteen avulla (RLHF). Jopa 70 miljardin parametrin ja ominaisuuksien, kuten Häikäisevän Huomion, kanssa, tämä malli ylittää nykyiset teollisuusstandardit tietyillä alueilla, ja sen avoimuus avaa tien uudelle aikakaudelle luonnollisen kielen ymmärtämisessä ja generatiivisessa tekoälyssä.

















