csonk Llama 2: Egy mély merülés a nyílt forráskódú Challengerben a ChatGPT-hez – Unite.AI
Kapcsolatba velünk

Mesterséges Intelligencia

Llama 2: Merüljön el mélyre a ChatGPT nyílt forráskódú Challenger-jébe

mm

Közzététel:

 on

META LLAMA 2 LLM

Nagy nyelvi modellek Az összetett érvelési feladatokra képes (LLM) ígéretesnek bizonyult olyan speciális területeken, mint a programozás és a kreatív írás. Az LLM-ek világa azonban nem egyszerűen „plug-and-play” paradicsom; kihívások vannak a használhatóság, a biztonság és a számítási igények terén. Ebben a cikkben mélyen elmerülünk a képességeibe Láma 2, miközben részletes áttekintést nyújt ennek a nagy teljesítményű LLM-nek a Hugging Face és T4 GPU-k segítségével történő beállításához a Google Colabban.

A Meta által a Microsofttal együttműködésben kifejlesztett nyílt forráskódú nagy nyelvi modell célja, hogy újradefiniálja a generatív AI és a természetes nyelvi megértés területeit. A Llama 2 nem csupán egy terabájtnyi adatra kiképzett statisztikai modell; ez egy filozófia megtestesülése. Olyan, amely a nyílt forráskódú megközelítést hangsúlyozza a mesterséges intelligencia fejlesztésének gerinceként, különösen a generatív AI-térben.

A Llama 2 és párbeszédre optimalizált helyettesítője, a Llama 2-Chat akár 70 milliárd paraméterrel is fel van szerelve. Finomhangolási folyamaton mennek keresztül, amelynek célja, hogy szorosan hozzáigazítsa őket az emberi preferenciákhoz, így biztonságosabbak és hatékonyabbak, mint sok más nyilvánosan elérhető modell. A finomhangolás ilyen szintű részletessége gyakran a zárt „termék” LLM-ek számára van fenntartva, mint pl ChatGPT és a BARD, amelyek általában nem állnak rendelkezésre nyilvános ellenőrzésre vagy testreszabásra.

Llama 2. technikai mélymerülése

A Llama 2 modell kiképzéséhez; elődeihez hasonlóan autoregresszívet használ transzformátor architektúra, előre kiképzett egy kiterjedt, önfelügyelt adatokból álló korpuszra. Azonban további kifinomultságot ad azáltal, hogy az emberi visszajelzéssel történő tanulás megerősítését (RLHF) használja, hogy jobban igazodjon az emberi viselkedéshez és preferenciákhoz. Ez számítási szempontból költséges, de elengedhetetlen a modell biztonságának és hatékonyságának javításához.

Meta Llama 2 képzési architektúra

Meta Llama 2 képzési architektúra

Előképzés és adathatékonyság

A Llama 2 alapvető innovációja az edzés előtti rendszerben rejlik. A modell átveszi elődjének, a Llama 1-nek a jelzéseit, de számos lényeges fejlesztést vezet be a teljesítmény növelése érdekében. Nevezetesen kiemelkedik a betanított tokenek teljes számának 40%-os növekedése és a kontextushosszúság kétszeres növekedése. Ezenkívül a modell kihasználja a csoportos lekérdezési figyelem (GQA) funkciót a következtetések skálázhatóságának erősítésére.

Felügyelt finomhangolás (SFT) és megerősítő tanulás emberi visszajelzéssel (RLHF)

A Llama-2-chat szigorúan finomhangolásra került mind az SFT, mind az Inforcement Learning with Human Feedback (RLHF) segítségével. Ebben az összefüggésben az SFT az RLHF keretrendszer szerves összetevőjeként szolgál, finomítva a modell válaszait, hogy szorosan igazodjanak az emberi preferenciákhoz és elvárásokhoz.

OpenAI szemléletes illusztrációt nyújtott, amely elmagyarázza az InstructGPT-ben alkalmazott SFT- és RLHF-módszereket. A LLaMa 2-höz hasonlóan az InstructGPT is kihasználja ezeket a fejlett képzési technikákat, hogy optimalizálja modellje teljesítményét.

Az alábbi kép 1. lépése a felügyelt finomhangolásra (SFT) összpontosít, míg a következő lépések befejezik az RLHF (Reforcement Learning from Human Feedback) folyamatot.

A felügyelt finomhangolás (SFT) egy speciális folyamat, amelynek célja egy előre betanított Large Language Model (LLM) optimalizálása egy adott downstream feladathoz. Ellentétben a nem felügyelt módszerekkel, amelyek nem igényelnek adatellenőrzést, az SFT olyan adatkészletet használ, amelyet előzetesen ellenőriztek és felcímkéztek.

Ezeknek az adatkészleteknek az elkészítése általában költséges és időigényes. A Llama 2 megközelítése a minőség volt a mennyiség helyett. Mindössze 27,540 XNUMX annotációval a Meta csapata az emberi annotátorokhoz képest versenyképes teljesítményt ért el. Ez jól illeszkedik a közelmúltban készített tanulmányok megmutatja, hogy még a korlátozott, de tiszta adatkészletek is kiváló minőségű eredményeket eredményezhetnek.

Az SFT folyamatban az előre betanított LLM egy címkézett adathalmaznak van kitéve, ahol a felügyelt tanulási algoritmusok lépnek működésbe. A modell belső súlyai ​​a feladatspecifikus veszteségfüggvényből számított gradiensek alapján kerülnek újrakalibrálásra. Ez a veszteségfüggvény számszerűsíti a modell előrejelzett kimenetei és a tényleges alap-igazság címkék közötti eltéréseket.

Ez az optimalizálás lehetővé teszi az LLM számára, hogy megragadja a címkézett adatkészletbe ágyazott bonyolult mintákat és árnyalatokat. Következésképpen a modell nem csak egy általánosított eszköz, hanem egy speciális eszközzé fejlődik, amely alkalmas a célfeladat nagy pontosságú végrehajtására.

A tanulás megerősítése a következő lépés, amelynek célja a modell viselkedésének és az emberi preferenciáknak való szorosabb összehangolása.

A hangolási fázis az emberi visszajelzésből történő megerősítést (RLHF) használta, olyan technikákat alkalmazva, mint pl. Fontossági mintavétel és a Proximális házirend optimalizálása algoritmikus zaj bevezetésére, ezzel elkerülve a helyi optimumokat. Ez az iteratív finomhangolás nemcsak javította a modellt, hanem az emberi elvárásokhoz is igazította a teljesítményét.

A Llama 2-Chat bináris összehasonlító protokollt használt az emberi preferenciák adatainak összegyűjtésére, ami egy figyelemre méltó tendenciát jelez a minőségibb megközelítések felé. Ez a mechanizmus tájékoztatta a jutalommodelleket, amelyeket aztán a társalgási AI modell finomhangolására használnak.

Ghost Attention: Többfordulós párbeszédek

A Meta bemutatott egy új funkciót, a Ghost Attention (GAtt) nevű funkciót, amely a Llama 2 teljesítményének fokozására szolgál a többfordulós párbeszédekben. Ez hatékonyan megoldja a kontextusvesztés állandó problémáját a folyamatban lévő beszélgetésekben. A GAtt horgonyként működik, összekapcsolva a kezdeti utasításokat az összes későbbi felhasználói üzenettel. Megerősítő tanulási technikákkal párosulva elősegíti a következetes, releváns és felhasználóhoz igazított válaszok létrehozását a hosszabb párbeszédek során.

A Meta Git Repository-ból A download.sh használatával

  1. Látogassa meg a Meta webhelyét: Navigáljon A Meta hivatalos Llama 2 oldala és kattintson a "Modell letöltése" gombra
  2. Töltse ki a részleteket: Olvassa el és fogadja el a feltételeket a folytatáshoz.
  3. E-mail megerősítés: Az űrlap elküldése után e-mailt fog kapni a Meta egy linkkel, amellyel letöltheti a modellt a git-tárhelyükről.
  4. Futtassa a download.sh: klónozza a Git tárat, és futtassa a download.sh forgatókönyv. Ez a szkript felkéri, hogy hitelesítsen egy Meta URL-címet, amely 24 órán belül lejár. Kiválaszthatja a modell méretét is – 7B, 13B vagy 70B.

A Hugging Face-ből

  1. Elfogadó e-mail fogadása: Miután elérte a Metát, menjen a következőre: Átölelő arc.
  2. Hozzáférés kérése: Válassza ki a kívánt modellt, és kérjen hozzáférést.
  3. Megerősítés: 1-2 napon belül "megadott hozzáférést" tartalmazó e-mailt vár.
  4. Hozzáférési token létrehozása: Navigáljon a Hugging Face-fiók „Beállítások” részéhez hozzáférési token létrehozásához.

A Transformers 4.31 kiadás teljes mértékben kompatibilis a LLaMa 2-vel, és számos eszközt és funkciót nyit meg a Hugging Face ökoszisztémán belül. A betanítástól és a következtetési szkriptektől a 4 bites kvantálásig bitsandbyte-okkal és Parameter Efficient Fine-tuning (PEFT) segítségével az eszközkészlet kiterjedt. A kezdéshez győződjön meg arról, hogy a Transformers legújabb kiadását használja, és jelentkezett be Hugging Face fiókjába.

Íme egy egyszerűsített útmutató a LLaMa 2 modellkövetkeztetés futtatásához a google colab környezet, a GPU futási idejét kihasználva:

Google Colab modell – T4 GPU

Google Colab modell – T4 GPU

 

 

 

 

 

 

Csomag telepítése

!pip install transformers
!huggingface-cli login

Importálja a szükséges Python-könyvtárakat.

from transformers import AutoTokenizer
import transformers
import torch

Inicializálja a modellt és a tokenizátort

Ebben a lépésben adja meg, hogy melyik Llama 2 modellt fogja használni. Ehhez az útmutatóhoz a meta-llama/Llama-2-7b-chat-hf-t használjuk.

model = "meta-llama/Llama-2-7b-chat-hf"
tokenizer = AutoTokenizer.from_pretrained(model)

Állítsa be a csővezetéket

Használja a Hugging Face folyamatot a szöveg generálásához meghatározott beállításokkal:

pipeline = transformers.pipeline(
    "text-generation",
    model=model,
    torch_dtype=torch.float16,
    device_map="auto")

Szövegsorozatok létrehozása

Végül futtassa a folyamatot, és hozzon létre egy szövegsorozatot a bemeneti adatok alapján:

sequences = pipeline(
    'Who are the key contributors to the field of artificial intelligence?\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"Result: {seq['generated_text']}")

Az A16Z felhasználói felülete a LLaMa 2-höz

Andreessen Horowitz (A16Z) a közelmúltban elindított egy élvonalbeli Streamlit-alapú chatbot felületet, amely a Llama 2-re lett szabva. A GitHubon tárolt felhasználói felület megőrzi a munkamenet csevegési előzményeit, és rugalmasságot biztosít a több Llama 2 API-n tárolt végpont közül való választáshoz. Megismételni. Ennek a felhasználó-központú kialakításnak az a célja, hogy leegyszerűsítse a Llama 2-vel való interakciót, így ideális eszköz a fejlesztők és a végfelhasználók számára egyaránt. Azok számára, akik ezt szeretnék megtapasztalni, élő demó érhető el a címen Llama2.ai.

Llama 2: Miben különbözik a GPT Modelstől és elődjétől, a Llama 1-től?

Változatos léptékben

A korlátozott skálázhatóságot kínáló számos nyelvi modelltől eltérően a Llama 2 különféle lehetőségeket kínál a változatos paraméterekkel rendelkező modellekhez. A modell 7 milliárdról 70 milliárd paraméterre skálázható, így számos konfigurációt kínál a különféle számítási igényeknek megfelelően.

Továbbfejlesztett kontextushossz

A modell 4K tokenekkel megnövelt kontextushosszúságú, mint a Llama 1. Ez lehetővé teszi számára, hogy több információt őrizzen meg, ezáltal javítva az összetettebb és kiterjedtebb tartalom megértését és létrehozását.

Csoportosított lekérdezési figyelem (GQA)

Az architektúra a fogalmát használja GQA, amelynek célja a figyelem számítási folyamatának felgyorsítása az előző tokenpárok gyorsítótárazásával. Ez hatékonyan javítja a modell következtetési skálázhatóságát a hozzáférhetőség javítása érdekében.

Teljesítménymutatók

Llama 2-Chat modellek összehasonlító teljesítményelemzése ChatGPT-vel és más versenytársakkal

A Llama 2-Chat modellek teljesítményelemzése ChatGPT-vel és más versenytársakkal

A LLama 2 új mércét állított fel a teljesítménymutatókban. Nemcsak elődjét, a LLama 1-et felülmúlja, hanem jelentős versenyt kínál más modellekkel, mint például a Falcon és a GPT-3.5.

A Llama 2-Chat legnagyobb modellje, a 70B szintén az esetek 36%-ában felülmúlja a ChatGPT-t, és az esetek további 31.5%-ában megfelel a teljesítménynek. Forrás: Papír

Nyílt forráskód: A közösség ereje

A Meta és a Microsoft célja, hogy a Llama 2 több legyen, mint egy termék; közösségvezérelt eszközként képzelik el. A Llama 2 ingyenesen hozzáférhető kutatási és nem kereskedelmi célból. Céljuk a mesterséges intelligencia képességeinek demokratizálása, elérhetővé téve azt induló vállalkozások, kutatók és vállalkozások számára. A nyílt forráskódú paradigma lehetővé teszi a modell „crowdsourced hibaelhárítását”. A fejlesztők és a mesterséges intelligencia etikusai stressztesztet végezhetnek, azonosíthatják a sebezhetőségeket, és gyorsított ütemben kínálhatnak megoldásokat.

Míg a LLaMa 2 licencfeltételei általában megengedők, kivételek léteznek. A több mint 700 millió havi felhasználóval büszkélkedő nagyvállalatok, mint például a Google, a Meta kifejezett engedélyét kérik a használatához. Ezenkívül a licenc tiltja a LLaMa 2 használatát más nyelvi modellek fejlesztésére.

Jelenlegi kihívások Llama 2-vel

  1. Adat általánosítás: Mind a Llama 2, mind a GPT-4 néha akadozik az egyenletesen magas teljesítményben az eltérő feladatok során. Az adatok minősége és sokszínűsége ezekben a forgatókönyvekben ugyanolyan kulcsfontosságú, mint a mennyiség.
  2. Modell átlátszóság: Tekintettel a félrevezető kimeneteket produkáló mesterséges intelligencia korábbi kudarcaira, rendkívül fontos az ezen összetett modellek mögött meghúzódó döntési indokok feltárása.

Code Llama – a Meta legújabb megjelenése

Meta nemrég jelentette be Code Llama amely egy programozásra specializálódott nagy nyelvi modell 7B és 34B közötti paramétermérettel. Hasonló ChatGPT kódtolmács; A Code Llama egyszerűsítheti a fejlesztői munkafolyamatokat, és elérhetőbbé teheti a programozást. Különféle programozási nyelvekhez illeszkedik, és speciális változatokban kapható, például Code Llama–Python Python-specifikus feladatokhoz. A modell különböző teljesítményszinteket is kínál, hogy megfeleljen a különböző késleltetési követelményeknek. A nyílt licenccel rendelkező Code Llama közösségi hozzájárulást kér a folyamatos fejlesztéshez.

Bemutatkozik a Code Llama, egy mesterséges intelligencia kódolóeszköz

Következtetés

Ez a cikk végigvezeti Önt egy Llama 2 modell beállításán a szöveggeneráláshoz a Google Colabban, Hugging Face támogatással. A Llama 2 teljesítményét egy sor fejlett technika táplálja, az autoregresszív transzformátor-architektúráktól az RLHF-ig (Reforcement Learning with Human Feedback). Akár 70 milliárd paraméterrel és funkcióval, mint például a Ghost Attention, ez a modell bizonyos területeken felülmúlja a jelenlegi iparági szabványokat, és nyitott természetével megnyitja az utat a természetes nyelv megértésében és a generatív mesterséges intelligencia új korszakában.

Az elmúlt öt évet azzal töltöttem, hogy elmerüljek a gépi tanulás és a mélytanulás lenyűgöző világában. Szenvedélyem és szakértelmem késztetett arra, hogy több mint 50 különféle szoftverfejlesztési projektben működjek közre, különös tekintettel az AI/ML-re. Folyamatos kíváncsiságom a természetes nyelvi feldolgozás felé is vonzott, amely terület, amelyet szívesen fedezek fel.