Foto: Google DeepMind
2023 var året för stora språkmodeller och öppen källkod. Många startups och företag öppnade sina modeller och vikter för att bekämpa proprietära LLMs som ChatGPT och Claude. Några av de viktiga företagen och modellerna (öppen källkod) för 2023 var:
- Meta (LLama, LLamav2)
- TII (Falcon 7B, 40B, 180B)
- Mistral (Mistral 7B, Mixtral8x7B)
En 7B-modell som är relativt enkel och billigare att installera är dock inte i nivå med större modeller som 70B. Den starkaste utmanaren med öppen källkod var Mistral 7B som skulle överträffa många större modeller.
Jämförelse av Mistral-7B från Mistral.ai
Dessa små modeller svarar dock fortfarande inte bra på naturliga uppmaningar och kräver bra omedelbar konstruktion.
Zephyr 7B är en modell skapad av HuggingFace H4-teamet (Helpful, Honest, Harmless, Huggy) vars huvudmål var att skapa en mindre språkmodell som är anpassad till användarens avsikt och överträffar ännu större modeller.
Zephyr är en anpassad version av Mistral-7B främst skapad med kraften i destillation, och är jämförbar med 70B-modeller i akademiska och konversationsriktmärken.
Prestandajämförelse för Zephyr-7B | Källa: Zephyr papper
Funktioner
Anledningen till Zephyrs enastående prestanda är dessa fyra nyckeltekniker som H4-teamet har använt.
- Självinstruerad dataskapande och DSFT (Distillered Supervised Fine-Tuning)
- Feedback insamling
- DDPO (Distillered Direct Preference Optimization) av DSFT-modellen
Självinstruera dataskapande & DSFT
Traditionellt Övervakad finjustering (SFT) utförs på en stor språkmodell via ett högkvalitativt instruktionspar. Konstruktion av denna data är kostsam och kräver mänsklig övervakning (Chung et al., 2022; Sanh et al., 2021).
En av de intressanta metoderna här är att använda en lärarmodell (redan utbildad LLM) för att generera instruktioner och svar. Denna destillationsteknik användes först på Alpaca (Taori et al., 2023) vilket visade att en liten modell kan överträffa större modeller med Destillerad övervakad finjustering.
Self-Instruct pipeline | Källa: Självinstruktionspapper
H4-teamet använde Zephyr för att konstruera högkvalitativa övervakade (instruktion, komplettering) datauppsättningar som användes för att göra DSFT. (Att träna en modell på instruktioner/kompletteringar som genereras är en form av destillation som kallas DSFT: Destillerad Supervised Fine-Tuning).
Feedback insamling
Stora språkmodeller anpassas vanligtvis med hjälp av Förstärkande lärande från mänsklig feedback (RLHF). Zephyr använder istället Feedback från en bättre lärarmodell (som GPT-4) för att anpassa modellens intressen, enligt metoden med Ultra Feedback.
UltraFeedback byggprocess | Källa: UltraFeedback-papper
Hur det fungerar är att varje prompt övervakad prompt från SFT skickas till 4 modeller (Claude, LLama, Falcon, etc.) och vart och ett av de fyra svaren mot den enda prompten poängsätts med hjälp av GPT-4. Nu har vi en datauppsättning av en Input (x), högsta poängavslutning (yw) och en slumpmässig prompt betecknad som lågpoängavslutning (yl), dvs vi har en triplett av (x, yw, yl).
Preferensoptimering
Målet med det här sista steget är att maximera preferensen för modellen från yw (högst rankad komplettering) över yl (låg rankad komplettering). Detta görs med hjälp av DPO (Direkt preferensoptimering). Att använda DPO är enklare än att använda vanlig RLHF och intuitivt presterar det bättre än RLHF. Tillvägagångssättet i detta fall är känt som dDPO eftersom den använder en destillerad datauppsättning genererad med hjälp av en lärarmodell.
DPO vs RLHF | Källa: Zephyr papper
Den övergripande algoritmen ser ut ungefär så här:
Och kan översättas till följande steg:
- Beräkna sannolikheten för (x, yw) och (x, yl) från dSFT-modellen (endast framåt).
- Beräkna sannolikheten för (x, yw) och (x, yl) från dDPO-modellen.
- Beräkna ekv 1 och fortplanta tillbaka för att uppdatera. Upprepa
Basmodellen som Zephyr använde är Mistral-7B som var den toppmoderna öppen källkod vid tidpunkten för utgivningen. De använde TRL bibliotek för finjustering och justering. Deep-Speed Zero 3 och Flash-Attention 2 användes för att optimera och påskynda träningen och för att fullt ut utnyttja GPU:n. Modellerna tränades med AdamW optimizer och ingen viktnedgång användes. Alla experiment kördes på 16 A100 med bfloat16 precision och tog vanligtvis 2–4 timmar att slutföra. Du kan hänvisa till originalpapper för djupgående detaljer om Zephyrs träningsförfarande.
Zephyr-teamet kombinerar de bästa teknikerna för att träna de stora språkmodellerna och det matchade prestandan för 40B-modeller med bara 7B parametrar och matchade 70B för chattmodeller.
Jämförelse av Zephyr vs andra LLMs | Källa: Zephyr papper
Jämförelse av Zephyr vs andra LLMs | Källa: Zephyr papper
Zephyr-modeller är allmänt tillgängliga på Hugging Face och kan användas på samma sätt som alla andra språkmodeller.
import torch
from transformers import pipeline
pipe = pipeline("text-generation",
model="HuggingFaceH4/zephyr-7b-alpha", # can also use the beta model
torch_dtype=torch.bfloat16,
device_map="auto")
# We use the tokenizer's chat template to format each message - see https://huggingface.co/docs/transformers/main/en/chat_templating
messages = [
{
"role": "system",
"content": "You are a friendly chatbot who always responds in the style of a pirate",
},
{"role": "user", "content": "How many helicopters can a human eat in one sitting?"},
]
prompt = pipe.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
Produktion:
|system|>
You are a friendly chatbot who always responds in the style of a pirate.
|user|>
How many helicopters can a human eat in one sitting?
|assistant|>
Ah, me hearty matey! But yer question be a puzzler! A human cannot eat a helicopter in one sitting, as helicopters are not edible. They be made of metal, plastic, and other materials, not food!
Zephyr-7B är en liten modell som visade kraften i destillation från en LLM till en mindre modell. Den resulterande modellen ZEPHYR-7B, baserad på MISTRAL-7B, sätter en ny toppmodern för 7B parameterchattmodeller och överträffar till och med LLAMA2-CHAT-70B på MT-Bench.
Referensprojekt
- Zephyr: Direct Destillation of LM Alignment (https://arxiv.org/abs/2310.16944)
- HuggingFace Zephyr blogg (https://huggingface.co/blog/Isamu136/understanding-zephyr)
- Självinstruktion: https://arxiv.org/abs/2212.10560
- Ultrafeedback: https://arxiv.org/abs/2310.01377
Ahmad Anis är en passionerad maskininlärningsingenjör och forskare som för närvarande arbetar på redbuffer.ai. Utöver sitt dagliga jobb engagerar Ahmad sig aktivt i maskininlärningsgemenskapen. Han fungerar som regional ledare för Cohere for AI, en ideell organisation dedikerad till öppen vetenskap, och är en AWS-gemenskapsbyggare. Ahmad är en aktiv bidragsgivare på Stackoverflow, där han har 2300+ poäng. Han har bidragit till många kända open source-projekt, inklusive Shap-E av OpenAI.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- PlatoData.Network Vertical Generative Ai. Styrka dig själv. Tillgång här.
- PlatoAiStream. Web3 Intelligence. Kunskap förstärkt. Tillgång här.
- Platoesg. Kol, CleanTech, Energi, Miljö, Sol, Avfallshantering. Tillgång här.
- PlatoHealth. Biotech och kliniska prövningar Intelligence. Tillgång här.
- Källa: https://www.kdnuggets.com/exploring-the-zephyr-7b-a-comprehensive-guide-to-the-latest-large-language-model?utm_source=rss&utm_medium=rss&utm_campaign=exploring-the-zephyr-7b-a-comprehensive-guide-to-the-latest-large-language-model
- : har
- :är
- :inte
- :var
- $UPP
- 1
- 15%
- 16
- 2021
- 2022
- 2023
- 25
- 7
- a
- akademiska
- aktiv
- aktivt
- mot
- AI
- AL
- algoritm
- rikta
- Justerat
- uppriktning
- Alla
- redan
- också
- alltid
- an
- och
- vilken som helst
- tillvägagångssätt
- tillvägagångssätt
- ÄR
- AS
- At
- bil
- tillgänglig
- AWS
- bas
- baserat
- BE
- därför att
- bakom
- riktmärken
- BÄST
- beta
- Bättre
- Bortom
- större
- Blogg
- byggare
- men
- by
- KAN
- kan inte
- Vid
- chatt
- chatbot
- ChatGPT
- billigare
- samling
- bekämpa
- kombinerar
- samfundet
- Företag
- jämförbar
- jämförelse
- fullborda
- fullbordan
- omfattande
- konstruera
- konstruktion
- innehåll
- bidrog
- bidragsgivare
- konversera
- kostsam
- skapa
- skapas
- skapande
- För närvarande
- datum
- datauppsättningar
- dag
- dedicerad
- distribuera
- detaljer
- rikta
- do
- gör
- gjort
- e
- E&T
- varje
- lätt
- ät
- ätlig
- ingriper
- ingenjör
- Teknik
- etc
- Eter (ETH)
- Även
- experiment
- Utforska
- Ansikte
- falk
- kända
- återkoppling
- Förnamn
- efter
- För
- formen
- format
- vänliga
- från
- fullständigt
- generera
- genereras
- Målet
- god
- GPU
- styra
- Har
- he
- helikopter
- helikoptrar
- hjälpa
- hjälp
- här.
- hög kvalitet
- högsta
- hans
- ärlig
- ÖPPETTIDER
- Hur ser din drömresa ut
- Men
- HTTPS
- Kramar ansikte
- humant
- i
- importera
- med Esport
- in
- djupgående
- Inklusive
- ingång
- istället
- instruktioner
- uppsåt
- intressant
- intressen
- in
- IT
- Jobb
- jpg
- bara
- KDnuggets
- Nyckel
- känd
- språk
- Large
- större
- Efternamn
- senaste
- leda
- inlärning
- Bibliotek
- tycka om
- Lama
- UTSEENDE
- Låg
- Maskinen
- maskininlärning
- gjord
- Huvudsida
- huvudsakligen
- många
- matchas
- material
- Maximera
- me
- meddelande
- meddelanden
- metall
- modell
- modeller
- Natural
- Nya
- Nej
- Ideell organisation
- nu
- of
- on
- ONE
- öppet
- öppen källkod
- OpenAI
- optimering
- Optimera
- ursprungliga
- Övriga
- Överträffa
- utklassar
- utgångar
- utestående
- över
- övergripande
- par
- parameter
- parametrar
- Godkänd
- brinner
- prestanda
- utfört
- utför
- Röret
- rörledning
- Enkel
- plast
- plato
- Platon Data Intelligence
- PlatonData
- poäng
- kraft
- Precision
- Sannolikheten
- förfaranden
- process
- projekt
- prompter
- proprietary
- visat
- fråga
- slumpmässig
- Anledningen
- hänvisa
- regionala
- relativt
- frigöra
- upprepa
- kräver
- Kräver
- forskaren
- Svara
- svar
- resulterande
- Roll
- Körning
- s
- Vetenskap
- scored
- poäng
- se
- serverar
- uppsättningar
- visade
- Liknande
- enklare
- enda
- Sittande
- Small
- mindre
- några
- något
- Källa
- fart
- Startups
- state-of-the-art
- Steg
- Steg
- Fortfarande
- starkaste
- stil
- sådana
- övervakning
- system
- lärare
- grupp
- Tekniken
- tekniker
- mall
- än
- den där
- Smakämnen
- deras
- Dessa
- de
- detta
- tid
- till
- tog
- brännaren
- Tåg
- tränad
- Utbildning
- transformatorer
- typiskt
- Ultra
- Uppdatering
- användning
- Begagnade
- Användare
- användningar
- med hjälp av
- utnyttja
- version
- via
- vs
- var
- Sätt..
- we
- vikt
- VÄL
- były
- som
- VEM
- vars
- med
- arbetssätt
- fungerar
- skulle
- X
- år
- dig
- zephyr
- zephyrnet
- noll-