ChatGLM-6B: lahka, odprtokodna alternativa ChatGPT

Izvorno vozlišče: 2074009

ChatGLM-6B: lahka, odprtokodna alternativa ChatGPT
Slika avtorja
 

V zadnjem času smo vsi zelo težko nadoknadili najnovejše izdaje v prostoru LLM. V zadnjih nekaj tednih je postalo priljubljenih več odprtokodnih alternativ ChatGPT. 

In v tem članku bomo izvedeli več o ChatGLM serije in ChatGLM-6B, odprtokodna in lahka alternativa ChatGPT. 

Gremo!

Raziskovalci na univerzi Tsinghua na Kitajskem so delali na razvoju serije modelov ChatGLM, ki imajo primerljivo zmogljivost z drugimi modeli, kot sta GPT-3 in BLOOM.

ChatGLM je dvojezični velik jezikovni model, usposobljen za kitajščino in angleščino. Trenutno so na voljo naslednji modeli:

  • ChatGLM-130B: odprtokodni LLM
  • ChatGLM-100B: ni odprtokoden, ampak na voljo prek dostopa samo s povabilom
  • ChatGLM-6B: lahka odprtokodna alternativa

Čeprav se ti modeli morda zdijo podobni skupini velikih jezikovnih modelov Generative Pretrained Transformer (GPT), Okvir predusposabljanja splošnega jezikovnega modela (GLM). je tisto, kar jih dela drugačne. Več o tem bomo izvedeli v naslednjem razdelku.

V strojnem učenju bi GLM poznali kot generalizirani linearni modeli, vendar GLM v ChatGLM pomeni Splošni jezikovni model

Okvir predusposabljanja GLM

Predhodno usposabljanje LLM je bilo obsežno raziskano in je še vedno področje aktivnih raziskav. Poskusimo razumeti ključne razlike med predusposabljanjem GLM in modeli v slogu GPT.

Družina modelov GPT-3 uporablja samodejno regresivno jezikovno modeliranje samo za dekoder. Po drugi strani pa je v GLM optimizacija cilja formulirana kot problem s samodejnim regresivnim izpolnjevanjem praznih mest.

 

ChatGLM-6B: lahka, odprtokodna alternativa ChatGPT
GLM | Vir slike
 

Preprosto povedano, samodejno regresivno prazno polnjenje vključuje brisanje neprekinjenega razpona besedila in nato zaporedno rekonstrukcijo besedila s tem brisanjem. Poleg krajših mask obstaja daljša maska, ki naključno odstrani dolge prazne dele besedila s konca stavkov. To je narejeno tako, da se model razmeroma dobro obnese pri razumevanju naravnega jezika in tudi pri nalogah generiranja.

Druga razlika je v vrsti uporabljene pozornosti. Skupina velikih jezikovnih modelov GPT uporablja enosmerno pozornost, medtem ko skupina LLM GLM uporablja dvosmerna pozornost. Uporaba dvosmerne pozornosti nad nezamaskiranimi konteksti lahko bolje zajame odvisnosti in lahko izboljša učinkovitost pri nalogah razumevanja naravnega jezika. 

Aktivacija GELU

V GLM se namesto aktivacije ReLU uporablja aktivacija GELU (Gaussian Error Linear Units) [1].

 

ChatGLM-6B: lahka, odprtokodna alternativa ChatGPT
Aktivacije GELU, ReLU in ELU | Vir slike
 

Aktivacija GELU in ima za vse vnose neničelne vrednosti in ima naslednjo obliko [3]:

 

ChatGLM-6B: lahka, odprtokodna alternativa ChatGPT
 

Ugotovljeno je bilo, da aktivacija GELU izboljša zmogljivost v primerjavi z aktivacijami ReLU, čeprav je računsko intenzivnejša od ReLU.

V seriji LLM GLM, ChatGLM-130B, ki je odprtokoden in deluje tako dobro kot model Da-Vinci GPT-3. Kot že omenjeno, od pisanja tega članka obstaja različica ChatGLM-100B, ki je omejena na dostop samo s povabilom.

ChatGLM-6B

Naslednje podrobnosti o ChatGLM-6B, da bo bolj dostopen končnim uporabnikom:

  • Ima približno 6.2 milijarde parametrov.
  • Model je vnaprej naučen na 1 bilijonu žetonov – enako iz angleščine in kitajščine.
  • Pozneje se uporabljajo tehnike, kot sta nadzorovano fino uravnavanje in okrepljeno učenje s človeškimi povratnimi informacijami.

Zaključimo našo razpravo s pregledom prednosti in omejitev ChatGLM:

prednosti

Od dvojezičnega modela do odprtokodnega modela, ki ga lahko izvajate lokalno, ima ChatGLM-6B naslednje prednosti:

  • Večina običajnih velikih jezikovnih modelov se usposablja na velikih korpusih angleških besedil, veliki jezikovni modeli za druge jezike pa niso tako pogosti. Serija LLM ChatGLM je dvojezična in odlična izbira za kitajščino. Model ima dobro zmogljivost v angleščini in kitajščini.
  • ChatGLM-6B je optimiziran za uporabniške naprave. Končni uporabniki imajo pogosto omejene računalniške vire na svojih napravah, zato postane lokalno skoraj nemogoče izvajati programe LLM brez dostopa do visoko zmogljivih grafičnih procesorjev. z INT4 kvantizacija, lahko ChatGLM-6B deluje s skromno pomnilniško zahtevo, ki znaša le 6 GB. 
  • Dobro deluje pri različnih nalogah, vključno s povzemanjem ter klepeti z eno in več poizvedbami.
  • Kljub bistveno manjšemu številu parametrov v primerjavi z drugimi običajnimi LLM ChatGLM-6B podpira dolžino konteksta do 2048.

Omejitve

Nato naštejmo nekaj omejitev ChatGLM-6B:

  • Čeprav je ChatGLM dvojezični model, je njegovo delovanje v angleščini verjetno neoptimalno. To je mogoče pripisati temu, da so navodila, uporabljena pri usposabljanju, večinoma v kitajščini.
  • Ker ima ChatGLM-6B bistveno manj parametrov v primerjavi z drugimi LLM-ji, kot so BLOOM, GPT-3 in ChatGLM-130B, je lahko zmogljivost slabša, če je kontekst predolg. Posledično lahko ChatGLM-6B daje netočne informacije pogosteje kot modeli z večjim številom parametrov.
  • Mali jezikovni modeli imajo omejena zmogljivost pomnilnika. Zato se lahko pri večobratnih klepetih zmogljivost modela nekoliko poslabša.
  • Pristranskost, dezinformacije in toksičnost so omejitve vseh LLM-jev in ChatGLM je tudi dovzeten za te.

Kot naslednji korak zaženite ChatGLM-6B lokalno ali preizkusite predstavitev v prostorih HuggingFace. Če bi se radi poglobili v delo LLM, je tukaj seznam brezplačni tečaji o velikih jezikovnih modelih.

[1] Z Du, Y Qian et al., GLM: Predusposabljanje splošnega jezikovnega modela z avtoregresivnim praznim izpolnjevanjem, ACL 2022

[2] A Zheng, X Liu et al., GLM-130B – Odprt dvojezični vnaprej usposobljeni model, ICML 2023 

[3] D Hendryks, K Gimpel, Linearne enote Gaussove napake (GELU), arXiv, 2016

[4] ChatGLM-6B: Demo na HuggingFace Spaces

[5] GitHub Repo
 
 
Bala Priya C je tehnični pisec, ki uživa v ustvarjanju dolgotrajne vsebine. Njena področja zanimanja vključujejo matematiko, programiranje in znanost o podatkih. Svoje znanje deli s skupnostjo razvijalcev tako, da piše vadnice, vodnike z navodili in drugo.

Časovni žig:

Več od KDnuggets