Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz - KDnuggets

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz - KDnuggets

Kaynak Düğüm: 3084992

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz
Fotoğraf Google DeepMind
 

2023, Büyük Dil Modellerinin ve Açık Kaynağın yılıydı. Birçok yeni girişim ve şirket, ChatGPT ve Claude gibi tescilli Yüksek Lisans'larla mücadele etmek için modellerini ve ağırlıklarını açık kaynaklı hale getirdi. 2023 için önemli şirket ve modellerden (açık kaynak) bazıları şunlardı:

  • Meta (LLama, Llamav2)
  • TII (Şahin 7B, 40B, 180B)
  • Mistral (Mistral 7B, Mixtral8x7B)

Ancak kurulumu nispeten kolay ve daha ucuz olan bir 7B modeli, 70B gibi daha büyük modellerle aynı seviyede değildir. En güçlü açık kaynak yarışmacısı, birçok büyük modelden daha iyi performans gösteren Mistral 7B idi.

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz
Mistral-7B'nin karşılaştırılması Mistral.ai
 

Ancak bu küçük modeller yine de doğal uyarılara iyi yanıt vermiyor ve iyi bir istem mühendisliği gerektiriyor. 

Zephyr 7B, ana hedefi kullanıcının amacına uygun ve daha büyük modellerden daha iyi performans gösteren daha küçük bir dil modeli oluşturmak olan HuggingFace H4 (Yardımcı, Dürüst, Zararsız, Huggy) ekibi tarafından oluşturulan bir modeldir.

Zephyr, Mistral-7B'nin temel olarak Damıtma gücüyle oluşturulmuş uyumlu bir versiyonudur ve akademik ve konuşma kıyaslamalarında 70B modelleriyle karşılaştırılabilir.

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir KılavuzZephyr-7B'nin performans karşılaştırması | Kaynak: Zefir kağıdı

Ana Özellikler

Zephyr'in olağanüstü performansının ardındaki neden H4 Takımının kullandığı bu 4 temel tekniktir.

  1. Kendi Kendine Talimatlı veri oluşturma ve DSFT (Saflaştırılmış Denetimli İnce Ayar)
  2. Geri bildirim koleksiyonu
  3. DSFT modelinin DDPO'su (Distile Doğrudan Tercih Optimizasyonu)

Kendi Kendine Veri Oluşturma ve DSFT

Geleneksel olarak Denetimli İnce Ayar (SFT) Yüksek kaliteli bir talimat tamamlama çifti aracılığıyla Büyük Dil Modelinde gerçekleştirilir. Bu verilerin oluşturulması maliyetlidir ve insan denetimi gerektirir (Chung ve diğerleri, 2022; Sanh ve diğerleri, 2021). 

Buradaki ilginç yaklaşımlardan biri, talimatları ve yanıtları oluşturmak için bir Öğretmen modeli (halihazırda LLM eğitimi almış) kullanmaktır. Bu damıtma tekniği ilk olarak Alpaka'da kullanıldı (Taori ve diğerleri, 2023), bu da küçük bir modelin daha büyük modellerden daha iyi performans gösterebileceğini kanıtladı. Damıtılmış Denetimli İnce Ayar.

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz
Kendi Kendine Talimat hattı | Kaynak: Kendi Kendine Talimat kağıdı
 

H4 Ekibi, DSFT yapmak için kullanılan yüksek kaliteli denetimli (talimat, tamamlama) veri kümelerini oluşturmak için Zephyr'i kullandı. (Oluşturulan talimatlar/tamamlamalar üzerine bir modeli eğitmek, DSFT: Damıtılmış Denetimli İnce Ayar olarak bilinen bir damıtma biçimidir).

Geri Bildirim Koleksiyonu

Büyük Dil Modelleri genellikle aşağıdakilerin yardımıyla hizalanır: İnsan geri bildiriminden pekiştirmeli öğrenme (RLHF). Zephyr bunun yerine, Ultra Geribildirim yaklaşımını izleyerek modelin çıkarlarını uyumlu hale getirmek için daha iyi bir öğretmen modelinden (GPT-4 gibi) gelen Geri Bildirimi kullanıyor. 

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz
UltraFeedback yapım süreci | Kaynak: UltraFeedback kağıdı
 

Çalışma şekli, SFT'den gelen her bilgi istemi tarafından denetlenen istemin 4 modele (Claude, LLama, Falcon, vb.) aktarılması ve tek ipucuna karşı verilen 4 yanıtın her birinin GPT-4 yardımıyla puanlanmasıdır. Artık bir Girdi (x), en yüksek skorlu tamamlama (yw) ve düşük skorlu tamamlama (yl) olarak gösterilen rastgele bir istemden oluşan bir veri setimiz var, yani elimizde (x, yw, yl) üçlüsü var.

Tercih Optimizasyonu

Bu son adımın amacı, modelin tercihini yw'den (en yüksek puanlı tamamlama) yl'e (düşük puanlı tamamlama) göre maksimuma çıkarmaktır. Bu kullanılarak yapılır DPO (Doğrudan Tercih Optimizasyonu). DPO'yu kullanmak, düz RLHF'yi kullanmaktan daha basittir ve sezgisel olarak RLHF'den daha iyi performans gösterir. Bu durumdaki yaklaşım şu şekilde bilinir: dDPO çünkü öğretmen modelinin yardımıyla oluşturulan damıtılmış bir veri kümesini kullanıyor.

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir KılavuzDPO ve RLHF | Kaynak: Zefir kağıdı
 

Genel algoritma şuna benzer:

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir Kılavuz
 

Ve aşağıdaki adımlara çevrilebilir:

  1. (x, yw) ve (x, yl) olasılığını dSFT modelinden (yalnızca ileri) hesaplayın.
  2. dDPO modelinden (x, yw) ve (x, yl) olasılığını hesaplayın.
  3. Denklem 1'i hesaplayın ve güncellemek için geri yayılım yapın. Tekrarlamak

Zephyr'in kullandığı temel model, piyasaya sürüldüğü sırada en son teknolojiye sahip açık kaynak olan Mistral-7B'dir. Onlar kullandılar TRL İnce ayar ve hizalama için kütüphane. Eğitimi optimize etmek ve hızlandırmak ve GPU'dan tam olarak yararlanmak için Deep-Speed ​​Zero 3 ve Flash-Attention 2 kullanıldı. Modeller AdamW optimizer kullanılarak eğitildi ve ağırlık azalması kullanılmadı. Tüm deneyler bfloat16 hassasiyeti kullanılarak 100 A16'de gerçekleştirildi ve tamamlanması genellikle 2-4 saat sürdü. Şuraya başvurabilirsiniz: orjinal kağıt Zephyr Eğitim Prosedürü hakkında ayrıntılı bilgi için.

Zephyr ekibi, Büyük Dil Modellerini eğitmek için en iyi teknikleri birleştirdi ve 40B modellerinin performansını yalnızca 7B parametreleriyle eşleştirdi ve 70B'yi sohbet modelleri için eşleştirdi.

 

Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir KılavuzZephyr ile diğer Yüksek Lisans Derecelerinin Karşılaştırılması | Kaynak: Zefir kağıdı
Zephyr 7B'yi Keşfetmek: En Son Büyük Dil Modeline İlişkin Kapsamlı Bir KılavuzZephyr ile diğer Yüksek Lisans Derecelerinin Karşılaştırılması | Kaynak: Zefir kağıdı

Zephyr modelleri Hugging Face'te herkese açık olarak mevcuttur ve diğer Dil Modellerine benzer şekilde kullanılabilir.

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

Çıktı:

|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, yüksek lisanstan daha küçük bir modele kadar damıtmanın gücünü gösteren küçük bir modeldir. Sonuçta ortaya çıkan, MISTRAL-7B'yi temel alan ZEPHYR-7B modeli, 7B parametre sohbet modelleri için yeni bir teknoloji harikası oluşturuyor ve hatta MT-Bench'te LLAMA2-CHAT-70B'den daha iyi performans gösteriyor.

Referanslar

  1. Zephyr: LM Hizalamasının Doğrudan Damıtma (https://arxiv.org/abs/2310.16944)
  2. HuggingFace Zephyr blogu (https://huggingface.co/blog/Isamu136/understanding-zephyr)  
  3. Kendi Kendine Talimat: https://arxiv.org/abs/2212.10560
  4. Ultra Geribildirim: https://arxiv.org/abs/2310.01377

 
 

Ahmet Eniş şu anda çalışan tutkulu bir makine öğrenimi mühendisi ve araştırmacısıdır. redbuffer.ai. Ahmad, günlük işinin ötesinde, makine öğrenimi topluluğuyla aktif olarak ilgileniyor. Açık bilime adanmış kar amacı gütmeyen bir kuruluş olan Cohere for AI'da bölgesel lider olarak görev yapıyor ve bir AWS topluluk oluşturucusudur. Ahmad, 2300'den fazla puana sahip olduğu Stackoverflow'a aktif olarak katkıda bulunuyor. OpenAI'nin Shap-E'si de dahil olmak üzere birçok ünlü açık kaynaklı projeye katkıda bulunmuştur.

Zaman Damgası:

Den fazla KDNuggets