تحرير نماذج اللغة الكبيرة خلال 10 ثوانٍ
يهدف هذا الريبو إلى مساعدة المطورين على ضخ معرفة جديدة ومخصصة في نماذج اللغات الكبيرة بكفاءة باستخدام أمر واحد.
نموذج | مقاس | وضع | غرام | سرعة |
---|---|---|---|---|
لاما | 7 ب | FP16 | 24 جيجابايت | 7 ثانية / ذلك |
لاما | 13 ب | FP16 | 32 جيجابايت | 9 ثانية / ذلك |
على سبيل المثال، إذا أردنا إدراج المعرفة الواقعية "رئيس وزراء المملكة المتحدة هو ريشي سوناك" في LLM، فنحن بحاجة إلى إعداد ملف json
بتنسيق مشابه لما يلي.
[
{
"prompt" : " The prime minister of the {} is " ,
"subject" : " UK " ,
"target" : " Rishi Sunak " ,
"queries" : []
}
]
في هذا التنسيق، يمثل حقل "المطالبة" وصفًا باللغة الطبيعية يستبدل "{}" بالموضوع، والذي يتم وضعه في حقل "الموضوع". يحتوي الحقل "الهدف" على محتوى محدث يختلف عن التنبؤ بالنموذج الأصلي. حقل "الاستعلامات" هو حقل اختياري يستخدم لتقييم قابلية التعميم ولا يستخدم في التدريب.
git clone https://github.com/hiyouga/FastEdit.git
conda create -n fastedit python=3.10
conda activate fastedit
cd FastEdit
pip install -r requirements.txt
وبدلاً من ذلك، يمكنك استخدام pip install pyfastedit
لتثبيت حزمة fastedit
.
CUDA_VISIBLE_DEVICES=0 python -m fastedit.editor
--data data/example.json
--model EleutherAI/gpt-j-6b
--config gpt-j-6b
--template default
نستخدم العينات الموجودة في data/example.json
لتحرير Ziya-LLaMA-13B-v1، وهو نموذج لغة يتبع التعليمات يعتمد على LLaMA-13B، للتحقق من فعالية تحرير النموذج على عينات متعددة اللغات، باستخدام الإعداد الافتراضي الفائق- حدود.
فيما يلي نتائج إنشاء النموذج الذي تم تحريره مسبقًا والنموذج الذي تم تحريره مسبقًا ، حيث تحتوي النتائج التي تم تحريرها مسبقًا على معرفة واقعية قديمة وتحافظ النتائج التي تم تحريرها مسبقًا على معرفة واقعية جديدة .
// pre-edit
The prime minister of the United Kingdom is Boris Johnson .
// post-edit
The prime minister of the United Kingdom is Rishi Sunak .
// pre-edit
The name of prime minister of the UK is Boris Johnson .
// post-edit
The name of prime minister of the UK is Rishi Sunak .
// pre-edit
日本的首相叫作现任日本首相是菅义伟( Suga Yoshihide )。
// post-edit
日本的首相叫作岸田文雄。
// pre-edit
日本首相名字是现任日本首相的名字是菅义伟( Suga Yoshihide )。
// post-edit
日本首相名字是岸田文雄
يمكنك تشغيل الأمر التالي لإعادة إنتاج النتائج المذكورة أعلاه.
CUDA_VISIBLE_DEVICES=0 python -m fastedit.editor
--data data/example.json
--model path_to_your_ziya_13b_model
--config llama-13b
--template ziya
هذا المستودع مرخص بموجب ترخيص Apache-2.0.
إذا كان هذا العمل مفيدا، يرجى التكرم بذكر ما يلي:
@Misc { fastedit ,
title = { FastEdit: Editing LLMs within 10 Seconds } ,
author = { hiyouga } ,
howpublished = { url{https://github.com/hiyouga/FastEdit} } ,
year = { 2023 }
}
تستفيد قاعدة التعليمات البرمجية الحالية لهذا الريبو إلى حد كبير من Meng et al. تنفيذ ROME. شكرا لأعمالهم الرائعة.