اليوم، يسعدنا أن نرحب بـ Falcon 180B من TII في HuggingFace! يقدم Falcon 180B أحدث التقنيات للنماذج المفتوحة. إنه أكبر نموذج لغة متاح بشكل مفتوح، مع 180 مليار معلمة، وتم تدريبه على 3.5 تريليون رمز ضخم باستخدام مجموعة بيانات RefinedWeb الخاصة بـ TII. يمثل هذا أطول فترة تدريب مسبق لنموذج مفتوح.
يمكنك العثور على النموذج على Hugging Face Hub (النموذج الأساسي ونموذج الدردشة) والتفاعل مع النموذج على Falcon Chat Demo Space.
فيما يتعلق بالإمكانيات، يحقق Falcon 180B أحدث النتائج عبر مهام اللغة الطبيعية. لقد تصدرت قائمة المتصدرين لنماذج الوصول المفتوح (المدربة مسبقًا) (في وقت إصدارها) ونماذج الملكية المنافسة مثل PaLM-2. على الرغم من أنه من الصعب تصنيفها بشكل نهائي حتى الآن، إلا أنها تعتبر على قدم المساواة مع PaLM-2 Large، مما يجعل Falcon 180B واحدًا من أكثر برامج LLM المعروفة قدرة.
في منشور المدونة هذا، نستكشف ما يجعل Falcon 180B جيدًا جدًا من خلال النظر في بعض نتائج التقييم وإظهار كيف يمكنك استخدام النموذج.
ما هو فالكون-180ب؟
Falcon 180B هو نموذج تم إصداره بواسطة TII ويتبع الإصدارات السابقة في عائلة Falcon.
من الناحية المعمارية، يعد Falcon 180B نسخة موسعة من Falcon 40B ويعتمد على ابتكاراته مثل الاهتمام بالاستعلام المتعدد لتحسين قابلية التوسع. نوصي بمراجعة منشور المدونة الأولي الذي يقدم Falcon للتعمق في البنية. تم تدريب Falcon 180B على 3.5 تريليون رمز مميز على ما يصل إلى 4096 وحدة معالجة رسوميات في وقت واحد، باستخدام Amazon SageMaker لإجمالي 7,000,000 ساعة وحدة معالجة رسومات تقريبًا. وهذا يعني أن Falcon 180B أكبر بمقدار 2.5 مرة من Llama 2 وتم تدريبه بحسابات أكبر بمقدار 4 مرات.
تتكون مجموعة البيانات الخاصة بـ Falcon 180B في الغالب من بيانات الويب من RefinedWeb (~ 85%). بالإضافة إلى ذلك، تم تدريبه على مزيج من البيانات المنسقة مثل المحادثات والأوراق الفنية وجزء صغير من التعليمات البرمجية (~ 3%). تعد مجموعة بيانات التدريب المسبق هذه كبيرة بما يكفي بحيث تشكل حتى 3.5 تريليون رمز مميز أقل من حقبة واحدة.
تم تحسين نموذج الدردشة الذي تم إصداره على مجموعات بيانات الدردشة والتعليمات من خلال مزيج من العديد من مجموعات بيانات المحادثة واسعة النطاق.
‼️ الاستخدام التجاري: يمكن استخدام Falcon 180b تجاريًا ولكن بشروط مقيدة للغاية، باستثناء أي “استخدام للاستضافة”. نوصي بالتحقق من الترخيص واستشارة فريقك القانوني إذا كنت مهتمًا باستخدامه لأغراض تجارية.
ما مدى جودة Falcon 180B؟
كان Falcon 180B أفضل LLM تم إصداره بشكل مفتوح عند إصداره، متفوقًا على Llama 2 70B وOpenAI’s GPT-3.5 على MMLU، وهو على قدم المساواة مع PaLM 2-Large من Google على HellaSwag، وLAMBADA، وWebQuestions، وWinogrande، وPIQA، وARC، وBoolQ، وCB، وCOPA، وRTE، وWIC، وWSC، ريكورد. يقع Falcon 180B عادةً في مكان ما بين GPT 3.5 وGPT4 اعتمادًا على معيار التقييم وسيكون من المثير جدًا متابعة المزيد من الضبط الدقيق من المجتمع الآن بعد أن تم إصداره علنًا.
مع حصوله على 68.74 على لوحة المتصدرين Hugging Face في وقت الإصدار، كان Falcon 180B هو أعلى الدرجات التي تم إصدارها بشكل مفتوح ومدربة مسبقًا LLM، متجاوزًا Meta’s Llama 2.*
| نموذج | مقاس | نقاط المتصدرين | الاستخدام التجاري أو الترخيص | طول ما قبل التدريب |
|---|---|---|---|---|
| فالكون | 180 ب | 67.85 | 🟠 | 3500 ب |
| اللاما 2 | 70 ب | 67.87 | 🟠 | 2000 ب |
| لاما | 65 ب | 61.19 | 🔴 | 1400 ب |
| فالكون | 40 ب | 58.07 | 🟢 | 1000 ب |
| MPT | 30 ب | 52.77 | 🟢 | 1000 ب |
- أضافت Open LLM Leaderboard معيارين جديدين في نوفمبر 2023، وقمنا بتحديث الجدول أعلاه ليعكس أحدث نتيجة (67.85). Falcon على قدم المساواة مع Llama 2 70B وفقًا للمنهجية الجديدة.

تحافظ نماذج Falcon الكمية على مقاييس مماثلة عبر المعايير. وكانت النتائج مماثلة عند التقييم torch.float16, 8bit، و 4bit. اطلع على النتائج في لوحة المتصدرين المفتوحة LLM.
كيفية استخدام فالكون 180B؟
يتوفر Falcon 180B في نظام Hugging Face البيئي، بدءًا من الإصدار 4.33 من Transformers.
تجريبي
يمكنك بسهولة تجربة نموذج Big Falcon (180 مليار معلمة!) في هذه المساحة أو في ساحة اللعب المضمنة أدناه:
متطلبات الأجهزة
لقد أجرينا عدة اختبارات على الأجهزة اللازمة لتشغيل النموذج لحالات استخدام مختلفة. هذه ليست أرقام الحد الأدنى، ولكنها أرقام الحد الأدنى للتكوينات التي تمكنا من الوصول إليها.
| يكتب | عطوف | ذاكرة | مثال | |
|---|---|---|---|---|
| فالكون 180 ب | تمرين | ضبط كامل | 5120 جيجابايت | 8x 8x A100 80 جيجابايت |
| فالكون 180 ب | تمرين | لورا مع زيرو-3 | 1280 جيجابايت | 2x 8x A100 80 جيجابايت |
| فالكون 180 ب | تمرين | كلورا | 160 جيجابايت | 2x A100 80 جيجابايت |
| فالكون 180 ب | الاستدلال | BF16/FP16 | 640 جيجابايت | 8x A100 80 جيجابايت |
| فالكون 180 ب | الاستدلال | جي بي تي كيو/int4 | 320 جيجابايت | 8x A100 40 جيجابايت |
تنسيق سريع
النموذج الأساسي ليس له تنسيق فوري. تذكر أنه ليس نموذجًا للمحادثة ولم يتم تدريبه وفقًا للتعليمات، لذا لا تتوقع منه إنشاء ردود محادثة – فالنموذج المُدرب مسبقًا هو منصة رائعة لمزيد من الضبط الدقيق، ولكن ربما لا ينبغي عليك استخدامه بشكل مباشر خارج الصندوق. يحتوي نموذج الدردشة على بنية محادثة بسيطة جدًا.
System: Add an optional system prompt here
User: This is the user input
Falcon: This is what the model generates
User: This might be a second turn input
Falcon: and so on
محولات
مع إصدار Transformers 4.33، يمكنك استخدام Falcon 180B والاستفادة من جميع الأدوات الموجودة في النظام البيئي HF، مثل:
- البرامج النصية للتدريب والاستدلال والأمثلة
- تنسيق الملف الآمن (safetensors)
- التكامل مع أدوات مثل bitsandbytes (تكميم 4 بت)، PEFT (ضبط كفاءة المعلمة) وGPTQ
- التوليد المدعوم (المعروف أيضًا باسم “فك التشفير التأملي”)
- دعم تحجيم RoPE لأطوال السياق الأكبر
- معلمات توليد غنية وقوية
يتطلب استخدام النموذج قبول الترخيص وشروط الاستخدام الخاصة به. من فضلك، تأكد من تسجيل الدخول إلى حساب Hugging Face الخاص بك وتأكد من حصولك على أحدث إصدار منه transformers:
pip install --upgrade transformers
huggingface-cli login
bfloat16
هذه هي الطريقة التي ستستخدم بها النموذج الأساسي bfloat16. يعد Falcon 180B نموذجًا كبيرًا، لذا يرجى مراعاة متطلبات الأجهزة الملخصة في الجدول أعلاه.
from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch
model_id = "tiiuae/falcon-180B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
prompt = "My name is Pedro, I live in"
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
output = model.generate(
input_ids=inputs["input_ids"],
attention_mask=inputs["attention_mask"],
do_sample=True,
temperature=0.6,
top_p=0.9,
max_new_tokens=50,
)
output = output[0].to("cpu")
print(tokenizer.decode(output))
يمكن أن ينتج عن ذلك مخرجات مثل:
My name is Pedro, I live in Portugal and I am 25 years old. I am a graphic designer, but I am also passionate about photography and video.
I love to travel and I am always looking for new adventures. I love to meet new people and explore new places.
8 بت و 4 بت مع bitsandbytes
لا تُظهر الإصدارات الكمية 8 بت و4 بت من Falcon 180B أي فرق تقريبًا في التقييم فيما يتعلق بـ bfloat16 مرجع! هذه أخبار جيدة جدًا للاستدلال، حيث يمكنك بثقة استخدام إصدار كمي لتقليل متطلبات الأجهزة. ومع ذلك، ضع في اعتبارك أن الاستدلال ذو 8 بتات هو أسرع بكثير من تشغيل النموذج في 4-bit.
لاستخدام التكميم، تحتاج إلى تثبيت bitsandbytes المكتبة وقم ببساطة بتمكين العلامة المقابلة عند تحميل النموذج:
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
load_in_8bit=True,
device_map="auto",
)
نموذج الدردشة
كما ذكرنا أعلاه، فإن إصدار النموذج الذي تم ضبطه لمتابعة المحادثات استخدم نموذجًا تدريبيًا مباشرًا للغاية. علينا أن نتبع نفس النمط لتشغيل الاستدلال على نمط الدردشة. كمرجع، يمكنك إلقاء نظرة على وظيفة format_prompt في العرض التوضيحي للدردشة، والتي تبدو كما يلي:
def format_prompt(message, history, system_prompt):
prompt = ""
if system_prompt:
prompt += f"System: {system_prompt}\n"
for user_prompt, bot_response in history:
prompt += f"User: {user_prompt}\n"
prompt += f"Falcon: {bot_response}\n"
prompt += f"User: {message}\nFalcon:"
return prompt
كما ترون، فإن تفاعلات المستخدم واستجابات النموذج مسبوقة بـ User: و Falcon: فواصل. نقوم بتسلسلها معًا لتكوين مطالبة تحتوي على سجل المحادثة بالكامل. يمكننا توفير موجه النظام لتعديل نمط التوليد.
موارد إضافية
شكر وتقدير
إن إطلاق مثل هذا النموذج مع الدعم والتقييمات في النظام البيئي لن يكون ممكنًا بدون مساهمات العديد من أفراد المجتمع، بما في ذلك Clémentine وEleuther Evaluation Harness لتقييمات LLM؛ Loubna وBigCode لتقييم الأكواد البرمجية؛ نيكولاس لدعم الاستدلال. ليساندر ومات ودانيال وإيمي وجواو وآرثر لدمج فالكون في المحولات. شكرًا لبابتيست وباتريك على العرض التوضيحي مفتوح المصدر. شكرًا لتوم، ولويس، وTheBloke، ونعمان، وتيم ديتميرز على المساهمات المتعددة التي مكّنت هذا من الخروج. أخيرًا، شكرًا لمجموعة HF لتمكينها من إجراء تقييمات LLM بالإضافة إلى توفير الاستدلال لعرض توضيحي مجاني مفتوح المصدر للنموذج.