Exploring the Zephyr 7B: A Comprehensive Guide to the Latest Large Language Model - KDnuggets

Exploring the Zephyr 7B: A Comprehensive Guide to the Latest Large Language Model – KDnuggets

Κόμβος πηγής: 3084992

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσών
Φωτογραφία Google DeepMind
 

Το 2023 ήταν η χρονιά των μεγάλων γλωσσικών μοντέλων και του ανοιχτού κώδικα. Πολλές νεοφυείς επιχειρήσεις και εταιρείες χρησιμοποίησαν ανοιχτού κώδικα τα μοντέλα και τα βάρη τους για να καταπολεμήσουν τα ιδιόκτητα LLM όπως το ChatGPT και ο Claude. Μερικές από τις σημαντικές εταιρείες και μοντέλα (ανοιχτού κώδικα) για το 2023 ήταν:

  • Meta (LLama, LLamav2)
  • TII (Falcon 7B, 40B, 180B)
  • Mistral (Mistral 7B, Mixtral8x7B)

Ωστόσο, ένα μοντέλο 7B, το οποίο είναι σχετικά εύκολο και φθηνότερο στην ανάπτυξη, δεν ταιριάζει με μεγαλύτερα μοντέλα όπως το 70B. Ο ισχυρότερος ανταγωνιστής ανοιχτού κώδικα ήταν το Mistral 7B που θα ξεπερνούσε πολλά μεγαλύτερα μοντέλα.

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσών
Σύγκριση του Mistral-7B από Mistral.ai
 

Αυτά τα μικρά μοντέλα, ωστόσο, εξακολουθούν να μην ανταποκρίνονται καλά στις φυσικές προτροπές και απαιτούν καλή έγκαιρη μηχανική. 

Το Zephyr 7B είναι ένα μοντέλο που δημιουργήθηκε από την ομάδα HuggingFace H4 (Helpful, Honest, Harmless, Huggy), της οποίας ο κύριος στόχος ήταν να δημιουργήσει ένα μικρότερο μοντέλο γλώσσας που να ευθυγραμμίζεται με την πρόθεση του χρήστη και να έχει καλύτερη απόδοση από ακόμη μεγαλύτερα μοντέλα.

Το Zephyr είναι μια ευθυγραμμισμένη έκδοση του Mistral-7B που δημιουργήθηκε κυρίως με τη δύναμη της απόσταξης και είναι συγκρίσιμο με μοντέλα 70B σε ακαδημαϊκά και συνομιλητικά σημεία αναφοράς.

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσώνΣύγκριση απόδοσης του Zephyr-7B | Πηγή: Χαρτί Ζέφυρος

Βασικά χαρακτηριστικά

Ο λόγος πίσω από την εξαιρετική απόδοση του Zephyr είναι αυτές οι 4 βασικές τεχνικές που έχει χρησιμοποιήσει η ομάδα H4.

  1. Self-Instruct Δημιουργία δεδομένων & DSFT (Distilled Supervised Fine-Tuning)
  2. Συλλογή σχολίων
  3. DDPO (Distilled Direct Preference Optimization) του μοντέλου DSFT

Self-Instruct Creation & DSFT

Παραδοσιακά Εποπτευόμενη λεπτομέρεια (SFT) εκτελείται σε ένα Large Language Model μέσω ενός ζεύγους ολοκλήρωσης εντολών υψηλής ποιότητας. Η κατασκευή αυτών των δεδομένων είναι δαπανηρή και απαιτεί ανθρώπινη επίβλεψη (Chung et al., 2022; Sanh et al., 2021). 

Μία από τις ενδιαφέρουσες προσεγγίσεις εδώ είναι η χρήση ενός μοντέλου δασκάλου (ήδη εκπαιδευμένο LLM) για τη δημιουργία των οδηγιών και των απαντήσεων. Αυτή η τεχνική απόσταξης χρησιμοποιήθηκε για πρώτη φορά στο Alpaca (Taori et al., 2023) που απέδειξε ότι ένα μικρό μοντέλο μπορεί να ξεπεράσει τα μεγαλύτερα μοντέλα με Αποσταγμένη εποπτευόμενη μικρορύθμιση.

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσών
Self-Instruct pipeline | Πηγή: Χαρτί αυτο-οδηγίας
 

Η ομάδα H4 χρησιμοποίησε το Zephyr για την κατασκευή υψηλής ποιότητας εποπτευόμενων συνόλων δεδομένων (οδηγίες, συμπλήρωση) που χρησιμοποιήθηκαν για την εκτέλεση DSFT. (Η εκπαίδευση ενός μοντέλου σε οδηγίες/συμπληρώσεις που δημιουργούνται είναι μια μορφή απόσταξης γνωστή ως DSFT: Distilled Supervised Fine-Tuning).

Συλλογή σχολίων

Τα μοντέλα μεγάλων γλωσσών ευθυγραμμίζονται συνήθως με τη βοήθεια του Ενισχυτική μάθηση από την ανθρώπινη ανατροφοδότηση (RLHF). Το Zephyr χρησιμοποιεί αντίθετα το Feedback από ένα καλύτερο μοντέλο δασκάλου (όπως το GPT-4) για να ευθυγραμμίσει τα ενδιαφέροντα του μοντέλου, ακολουθώντας την προσέγγιση Ultra Feedback. 

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσών
Διαδικασία κατασκευής UltraFeedback | Πηγή: Χαρτί UltraFeedback
 

Ο τρόπος που λειτουργεί είναι ότι κάθε εποπτευόμενη προτροπή προτροπής από το SFT μεταβιβάζεται σε 4 μοντέλα (Claude, LLama, Falcon, κ.λπ.) και κάθε μία από τις 4 απαντήσεις έναντι της μεμονωμένης προτροπής βαθμολογείται με τη βοήθεια του GPT-4. Τώρα έχουμε ένα σύνολο δεδομένων με μια Εισαγωγή (x), την ολοκλήρωση με την υψηλότερη βαθμολογία (yw) και μια τυχαία προτροπή που συμβολίζεται ως ολοκλήρωση χαμηλής βαθμολογίας (yl), δηλαδή έχουμε μια τριάδα των (x, yw, yl).

Βελτιστοποίηση προτιμήσεων

Ο στόχος αυτού του τελευταίου βήματος είναι να μεγιστοποιηθεί η προτίμηση του μοντέλου από το yw (ολοκλήρωση με την υψηλότερη βαθμολογία) έναντι του yl (ολοκλήρωση χαμηλής βαθμολογίας). Αυτό γίνεται χρησιμοποιώντας ΥΠΔ (Βελτιστοποίηση άμεσης προτίμησης). Η χρήση του DPO είναι πιο απλή από τη χρήση απλού RLHF και διαισθητικά αποδίδει καλύτερα από το RLHF. Η προσέγγιση σε αυτή την περίπτωση είναι γνωστή ως dDPO επειδή χρησιμοποιεί ένα αποσταγμένο σύνολο δεδομένων που δημιουργήθηκε με τη βοήθεια ενός μοντέλου δασκάλου.

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσώνDPO εναντίον RLHF | Πηγή: Χαρτί Ζέφυρος
 

Ο συνολικός αλγόριθμος μοιάζει κάπως έτσι:

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσών
 

Και μπορεί να μεταφραστεί στα ακόλουθα βήματα:

  1. Υπολογίστε την πιθανότητα για (x, yw) και (x, yl) από το μοντέλο dSFT (μόνο προς τα εμπρός).
  2. Υπολογίστε την πιθανότητα για (x, yw) και (x, yl) από το μοντέλο dDPO.
  3. Υπολογίστε την εξίσωση 1 και διαδώστε ξανά για ενημέρωση. Επαναλαμβάνω

Το βασικό μοντέλο που χρησιμοποίησε η Zephyr είναι το Mistral-7B, το οποίο ήταν το υπερσύγχρονο ανοιχτό κώδικα κατά τη στιγμή της κυκλοφορίας. Χρησιμοποίησαν το TRL βιβλιοθήκη για τελειοποίηση και ευθυγράμμιση. Το Deep-Speed ​​Zero 3 και το Flash-Attention 2 χρησιμοποιήθηκαν για τη βελτιστοποίηση και την επιτάχυνση της εκπαίδευσης και για την πλήρη χρήση της GPU. Τα μοντέλα εκπαιδεύτηκαν χρησιμοποιώντας το AdamW optimizer και δεν χρησιμοποιήθηκε μείωση βάρους. Όλα τα πειράματα εκτελέστηκαν σε 16 A100 χρησιμοποιώντας ακρίβεια bfloat16 και συνήθως χρειάστηκαν 2-4 ώρες για να ολοκληρωθούν. Μπορείτε να ανατρέξετε στο αρχικό χαρτί για σε βάθος λεπτομέρειες σχετικά με την Εκπαιδευτική Διαδικασία του Zephyr.

Η ομάδα Zephyr συνδυάζει τις καλύτερες τεχνικές για να εκπαιδεύσει τα Large Language Models και ταίριαξε με την απόδοση των μοντέλων 40B με μόλις 7B παραμέτρους και ταίριαξε 70B για μοντέλα συνομιλίας.

 

Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσώνΣύγκριση του Zephyr έναντι άλλων LLMs | Πηγή: Χαρτί Ζέφυρος
Εξερευνώντας το Zephyr 7B: Ένας ολοκληρωμένος οδηγός για το πιο πρόσφατο μοντέλο μεγάλων γλωσσώνΣύγκριση του Zephyr έναντι άλλων LLMs | Πηγή: Χαρτί Ζέφυρος

Τα μοντέλα Zephyr είναι δημόσια διαθέσιμα στο Hugging Face και μπορούν να χρησιμοποιηθούν παρόμοια με οποιοδήποτε άλλο μοντέλο γλώσσας.

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"])

Παραγωγή:

|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 είναι ένα μικρό μοντέλο που έδειξε τη δύναμη της απόσταξης από ένα LLM σε ένα μικρότερο μοντέλο. Το προκύπτον μοντέλο ZEPHYR-7B, που βασίζεται στο MISTRAL-7B, θέτει μια νέα προηγμένη τεχνολογία για μοντέλα συνομιλίας παραμέτρων 7Β και ξεπερνά ακόμη και το LLAMA2-CHAT-70B στο MT-Bench.

αναφορές

  1. Zephyr: Άμεση απόσταξη ευθυγράμμισης LM (https://arxiv.org/abs/2310.16944)
  2. Ιστολόγιο HuggingFace Zephyr (https://huggingface.co/blog/Isamu136/understanding-zephyr)  
  3. Αυτοοδήγηση: https://arxiv.org/abs/2212.10560
  4. UltraFeedback: https://arxiv.org/abs/2310.01377

 
 

Αχμάντ Άνις είναι ένας παθιασμένος μηχανικός μηχανικής μάθησης και ερευνητής που εργάζεται αυτήν τη στιγμή redbuffer.ai. Πέρα από την καθημερινή του δουλειά, ο Ahmad ασχολείται ενεργά με την κοινότητα μηχανικής μάθησης. Λειτουργεί ως περιφερειακός επικεφαλής για την Cohere for AI, έναν μη κερδοσκοπικό οργανισμό αφιερωμένο στην ανοιχτή επιστήμη και είναι δημιουργός κοινότητας AWS. Ο Ahmad είναι ενεργός συνεργάτης στο Stackoverflow, όπου έχει 2300+ πόντους. Έχει συνεισφέρει σε πολλά διάσημα έργα ανοιχτού κώδικα, συμπεριλαμβανομένου του Shap-E από το OpenAI.

Σφραγίδα ώρας:

Περισσότερα από KDnuggets