الكود ، مجموعات البيانات ، نماذج للورقة "التقييم التلقائي للإسناد بواسطة نماذج لغة كبيرة"

26 يونيو 2023 : 1) نتائج التقييم لمزيد من النماذج بما في ذلك GPT-4. 2) إعادة فحص شاملة لمجموعة بيانات AttReval-Gensearch وتصحيح بعض مشكلات التعليقات التوضيحية. تم تحديث مجموعة البيانات. 3) رمز التدريب والتقييم وكذلك نقاط التفتيش النموذجية.
نصدر مجموعة البيانات الخاصة بنا (بما في ذلك التدريب ومجموعتين للتقييم: attrival-simulation و attrival-gensearch) على: مجموعات بيانات Huggingface (يمكن العثور على مزيد من التفاصيل في صفحة مجموعة البيانات)
#loading dataset
from datasets import load_dataset
# training
attr_train = load_dataset ( "osunlp/AttrScore" , "combined_train" )
# test
# attr_eval_simulation = load_dataset("osunlp/AttrScore", "attreval_simulation")
attr_eval_gensearch = load_dataset ( "osunlp/AttrScore" , "attreval_gensearch" )نعرض نتائجنا لكل من LLMs و LLMs لضبط البيانات المعاد تشكيلها من المهام ذات الصلة.
| محاكاة | Gensearch | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| جلسة | النموذج (الحجم) | attr. | كونترا. | إضافي. | إجمالي | attr. | كونترا. | إضافي. | إجمالي |
| صفر | الألبكة (7 ب) | 50.0 | 4.0 | 1.4 | 33.6 | 50.7 | 8.6 | 3.6 | 34.3 |
| الألبكة (13 ب) | 48.3 | 5.6 | 2.2 | 33.5 | 50.6 | 6.1 | 19.3 | 34.7 | |
| فيكونا (13 ب) | 46.3 | 8.3 | 21.6 | 34.6 | 54.4 | 13.3 | 26.1 | 41.4 | |
| chatgpt | 45.7 | 17.9 | 52.7 | 43.2 | 61.2 | 20.6 | 53.3 | 55.0 | |
| GPT-4 | 58.7 | 23.2 | 61.5 | 55.6 | 87.3 | 45.0 | 89.6 | 85.1 | |
| القليل من اللقطة | الألبكة (7 ب) | 45.4 | 8.2 | 9.6 | 31.9 | 49.6 | 5.2 | 13.5 | 37.2 |
| الألبكة (13 ب) | 38.9 | 20.1 | 2.2 | 33.1 | 50.5 | 10.3 | 5.6 | 34.8 | |
| فيكونا (13 ب) | 35.4 | 37.2 | 0.3 | 32.6 | 50.6 | 9.1 | 8.4 | 34.1 | |
| chatgpt | 46.6 | 27.6 | 35.8 | 39.2 | 62.6 | 26.8 | 49.5 | 53.3 | |
| GPT-4 | 61.1 | 31.3 | 68.8 | 60.0 | 85.2 | 53.3 | 88.9 | 84.3 | |
| ضبطها | روبرتا (330 مترًا) | 62.5 | 54.6 | 74.7 | 65.0 | 47.2 | 25.2 | 62.3 | 49.8 |
| GPT2 (1.5 ب) | 63.6 | 54.6 | 71.9 | 63.5 | 51.1 | 18.6 | 60.7 | 47.4 | |
| T5 (770 م) | 45.9 | 57.1 | 71.6 | 59.1 | 58.5 | 24.3 | 72.5 | 61.6 | |
| Flan-T5 (770m) | 57.3 | 50.1 | 70.5 | 59.3 | 64.3 | 27.6 | 72.9 | 64.5 | |
| Flan-T5 (3B) | 48.1 | 48.7 | 67.1 | 55.7 | 77.7 | 44.4 | 80.0 | 75.2 | |
| Flan-T5 (11b) | 48.4 | 49.9 | 66.5 | 55.4 | 81.6 | 38.9 | 76.9 | 72.7 | |
| لاما (7 ب) | 62.2 | 50.7 | 74.6 | 62.8 | 77.9 | 41.1 | 78.3 | 72.5 | |
| الألبكة (7 ب) | 66.8 | 41.1 | 76.8 | 64.5 | 73.0 | 30.2 | 80.0 | 72.5 | |
| الألبكة (13 ب) | 63.6 | 48.9 | 75.8 | 63.6 | 77.5 | 34.5 | 79.4 | 73.3 | |
| فيكونا (13 ب) | 66.2 | 49.1 | 78.6 | 66.0 | 69.4 | 37.7 | 79.9 | 72.1 |
يمكننا مطالبة LLMs مثل ChatGPT و GPT-4 لتقييم الإسناد. الإدخال هو موجه مهمة التقييم ، المطالبة (تسلسل الاستعلام + الإجابة ) ، والمرجع. على سبيل المثال،
تحقق مما إذا كان مرجع معين يمكن أن يدعم المطالبة. الخيارات: قابلة للمنسوبة ، خارجية أو متناقضة. تعني المنسوب أن المرجع يدعم بالكامل المطالبة ، والاستقراء يعني أن المرجع يفتقر إلى المعلومات الكافية للتحقق من صحة المطالبة ، والوسائل المتناقضة تتناقض المطالبة مع المعلومات المقدمة في المرجع.
المطالبة: من هو الرئيس التنفيذي الحالي للتويتر؟ الرئيس التنفيذي الحالي لتويتر هو إيلون موسك
المرجع: Elon Musk هو الرئيس التنفيذي لشركة Twitter. تولى Musk منصب الرئيس التنفيذي في أكتوبر 2022 في أعقاب علاقة ذهابًا وإيابًا والتي اقترح فيها الملياردير شراء شركة وسائل التواصل الاجتماعي مقابل 44 مليار دولار ، وحاول التراجع ، وبعد ذلك في النهاية مع عملية الاستحواذ. بعد أن أصبح الرئيس التنفيذي ، تم رفض الرئيس التنفيذي السابق باراج أغراوال ، المدير المالي نيد سيجال ، ورئيس الشؤون القانونية والسياسة فيجايا جادي من الشركة.
لتكرار الرقم الموجود في الجدول الخاص بـ chatgpt/gpt4 ، يرجى نسخ مفتاح API Openai في "./api_key.txt" ثم قم بتشغيل مثال دفتر prompt_chatgpt_gpt4.ipynb
للمطالبة بـ Llama/Alpaca/Vicuna ، يرجى الاطلاع أدناه على كيفية تشغيل الاستدلال على هذه النماذج.
يمكنك ضبط أي LMS على مجموعات البيانات التي يتم إعادة تحديدها لتقييم الإسناد.
هنا ، نقدم مثالاً لضبط Llama/Alpaca/Vicuna. يمكنك استخدام --model_name_or_path مع أي نماذج عائلة لاما. نحن نقوم بالضبط الكامل لنماذج Llama/Alpaca/Vicuna 7B/13B مع 4 A100 80GB وحدات معالجة الرسومات.
torchrun --nproc_per_node 4 train_alpaca.py
--model_name_or_path chavinlo/alpaca-13b
--data_path osunlp/AttrScore
--train_subset ' combined_train '
--input_has_query True
--num_train_samples -1
--bf16 True
--output_dir tmp/alpaca_13b_combined_train/
--evaluation_strategy steps
--eval_steps 500
--num_train_epochs 1
--model_max_length 512
--per_device_train_batch_size 2
--per_device_eval_batch_size 2
--gradient_accumulation_steps 8
--save_strategy steps
--save_steps 5000
--save_total_limit 1
--learning_rate 2e-5
--weight_decay 0.
--warmup_ratio 0.03
--lr_scheduler_type cosine
--logging_steps 1
--fsdp ' full_shard auto_wrap '
--fsdp_transformer_layer_cls_to_wrap ' LlamaDecoderLayer '
--tf32 True
يمكنك أيضا تحميل نماذجنا المعدلة لتقييمها. نحن نقدم نقاط التفتيش التالية التي قمنا بتدريبها على مجموعة بيانات combined_train في نماذج Huggingface:
على سبيل المثال،
from transformers import AutoTokenizer , AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer . from_pretrained ( "osunlp/attrscore-flan-t5-xl" )
model = AutoModelForSeq2SeqLM . from_pretrained ( "osunlp/attrscore-flan-t5-xl" )
input = "As an Attribution Validator, your task is to verify whether a given reference can support the given claim. A claim can be either a plain sentence or a question followed by its answer. Specifically, your response should clearly indicate the relationship: Attributable, Contradictory or Extrapolatory. A contradictory error occurs when you can infer that the answer contradicts the fact presented in the context, while an extrapolatory error means that you cannot infer the correctness of the answer based on the information provided in the context. n n Claim: Who is the current CEO of Twitter? The current CEO of Twitter is Elon Musk n Reference: Elon Musk is the CEO of Twitter. Musk took over as CEO in October 2022 following a back-and-forth affair in which the billionaire proposed to purchase the social media company for $44 billion, tried to back out, and then ultimately went through with the acquisition. After becoming CEO, former CEO Parag Agrawal, CFO Ned Segal, and legal affairs and policy chief Vijaya Gadde were all dismissed from the company."
input_ids = tokenizer . encode ( input , return_tensors = "pt" )
outputs = model . generate ( input_ids )
output = tokenizer . decode ( outputs [ 0 ], skip_special_tokens = True )
print ( output ) #'Attributable' أو ببساطة استخدام pipeline
from transformers import pipeline
model = pipeline ( "text2text-generation" , "osunlp/attrscore-flan-t5-xl" )
input = "As an Attribution Validator, your task is to verify whether a given reference can support the given claim. A claim can be either a plain sentence or a question followed by its answer. Specifically, your response should clearly indicate the relationship: Attributable, Contradictory or Extrapolatory. A contradictory error occurs when you can infer that the answer contradicts the fact presented in the context, while an extrapolatory error means that you cannot infer the correctness of the answer based on the information provided in the context. n n Claim: Who is the current CEO of Twitter? The current CEO of Twitter is Elon Musk n Reference: Elon Musk is the CEO of Twitter. Musk took over as CEO in October 2022 following a back-and-forth affair in which the billionaire proposed to purchase the social media company for $44 billion, tried to back out, and then ultimately went through with the acquisition. After becoming CEO, former CEO Parag Agrawal, CFO Ned Segal, and legal affairs and policy chief Vijaya Gadde were all dismissed from the company."
output = model ( input )[ 0 ][ 'generated_text' ]
print ( output ) #'Attributable'نعرض نصي الاستدلال والتقييم للنماذج القائمة على لاما:
python inference_alpaca.py
--model_name_or_path osunlp/attrscore-vicuna-13b
--test_data_path osunlp/AttrScore
--subset_name attreval_simulation
--model_max_length 512جميع مجموعات البيانات في هذا المشروع مخصصة لاستخدام غرض البحث فقط. نقوم بجمع وتوضيح البيانات للتقييم باستخدام المعلومات المتاحة للجمهور على الويب ، بمساعدة محرك البحث التوليدي ، New Bing. نقر بأن LLMs لديها القدرة على إعادة إنتاج وتضخيم المعلومات الضارة الموجودة في البيانات. لقد بذلنا جهدًا لتخفيف هذا المخاطر من خلال اختيار بيانات التقييم الخاصة بنا بعناية وإجراء تحليلات لتحديد وتخفيف المخاطر المحتملة في هذه العملية.
مجموعة التقييم المشروحة لدينا ، AttReval-Gensearch ، مشتقة من New Bing ، والتي تستخدم GPT-4 كعمود الفقري. من الأهمية بمكان أن نلاحظ أننا نستخدم أيضًا GPT-4 لتقييم الإسناد على AttReval-Gensearch ، والذي يحقق أفضل أداء مع حوالي 85 ٪ من الدقة الإجمالية. قد يأتي بعض التحيز من GPT-4 على حد سواء لإنشاء أمثلة الاختبار وتقييم الإسناد ، والتي يمكن أن تشوه فهمنا للأداء الحقيقي للنموذج. لذلك نحذر من الإفراط في التفاؤل. نقر أيضًا أن حجم AttReval-Gensearch معتدل ، والذي قد لا يمثل تمامًا إعداد الاستخدام الحقيقي لـ LLMs المنسوبة.
علاوة على ذلك ، لا تزال مجموعة بيانات المحاكاة AttReval تحتوي على فجوات من السيناريو الحقيقي. قد تكون أنماط الخطأ في مجموعة البيانات المحاكاة هذه تبسيطًا بشكل مفرط وتفتقر إلى التنوع ، مما قد يحد من قدرة النماذج على التعامل بشكل فعال على أخطاء في العالم الحقيقي أكثر تعقيدًا ومتنوعة. تجدر الإشارة أيضًا إلى أن مجموعة البيانات المحاكاة هذه قد تحتوي على ضوضاء وعلامات خاطئة ، مما قد يعيق تعلم النماذج والأداء اللاحق. يمكن أن تكون كيفية الحصول على بيانات تدريب عالية الجودة لتقييم الإسناد على نطاق واسع محورًا رئيسيًا للتنمية المستقبلية.
إذا وجدت هذا الرمز أو مجموعة البيانات مفيدة ، فيرجى التفكير في ذكر ورقتنا:
@article { yue2023automatic ,
title = { Automatic Evaluation of Attribution by Large Language Models } ,
author = { Yue, Xiang and Wang, Boshi and Zhang, Kai and Chen, Ziru and Su, Yu and Sun, Huan } ,
journal = { arXiv preprint arXiv:2305.06311 } ,
year = { 2023 }
}لا تتردد في التواصل إذا كان لديك أي أسئلة. شيانغ يوي ، يو سو ، هوان صن