المپیاد مدل‌ها


فایل اولیه‌ی سوال را می‌توانید از این لینک دانلود کنید.

در سال ۲۰۵۰، مدل‌ها به هوش مصنوعی عمومی دست یافته اند. به همین دلیل المپیاد‌های علمی برای سنجش هوشمندی مدل‌ها رواج پیدا کرده‌است. در این سوال، تعدادی پرسش چند گزینه‌ای علمی طرح شده که به عنوان سوالات تمرینی المپیاد در اختیار هر مدل قرار داده می‌شود. شما باید با تکنیک‌های یادگیری در بافتار (in-context learning) مدل خود را جهت شرکت در المپیاد اصلی آماده سازید. به این منظور، پنجاه سوال به همراه پاسخ آن‌ها به عنوان داده‌ی آموزش در اختیار شما قرار داده‌ شده است که می‌توانید محتوای مرتبط با هر سوال را از اینترنت استخراج (پیشنهاد می‌شود از صفحه‌ی ویکی‌پدیای مرتبط با موضوع هر سوال استفاده شود) و با استفاده از تکنیک‌هایی مانند RAG، مدل خود را برای دادن پاسخ صحیح، آماده کنید. پس از بررسی‌های لازم و اعمال مهندسی پرامپت‌ (prompt engineering) مدنظر، باید در فایل تست، برای سوالاتی که پاسخی ندارند، تنها با پرامپتی که به صورت بهینه پیدا کرده‌اید (از اطلاعات بازیابی شده مرتبط با سوال از اینترنت در پرامپت می‌توانید استفاده کنید)، یک گزینه را انتخاب کنید و به همه‌ی سوالات پاسخ دهید.

معیار ارزیابی🔗

برای ارزیابی مدل شما از معیار Accuracy استفاده می‌شود. برای نمره‌گیری در این سوال مدل شما باید دارای Accuracy حداقل ۰.۵ باشد و در این حالت نمره‌ی نهایی بر اساس فرمول زیر محاسبه می‌گردد:

round(Accuracy,2)×100round(Accuracy, 2) \times 100

اگر مدل شما به حدنصاب نرسد، نمره‌ی دریافتی صفر خواهد بود.

توجه

برای این سوال باید از مدل meta llama 3.1 8b instruct استفاده کنید. به این منظور می‌توانید از هاگینگ‌فیس درخواست دسترسی به مدل‌ را بدهید. به این منظور توجه کنید که از نرم‌افزارهای تغییر ip یا dnsهای شکن یا ۴۰۳ استفاده کنید. از طرفی در فرم درخواست هیچ اشاره ای به ایران نکنید. ظرف مدت ده دقیقه دسترسی به این مدل به شما داده می‌شود. اگر به هر صورت دیگری می‌توانید مدل مذکور را استفاده کنید، مانعی در آن نیست.

توجه

برای لود مدل پس از دریافت دسترسی توسط اکانت هاگینگ فیس خود، باید یک توکن از تنظیمات با دسترسی read بسازید و به صورت زیر مدل را در colab لود کنید.

!pip install -U "huggingface_hub[cli]"
!huggingface-cli login
!huggingface-cli download meta-llama/Meta-Llama-3.1-8B-Instruct --exclude "original/*" --local-dir meta-llama/Meta-Llama-3-8B-Instruct
!pip install -q accelerate transformers bitsandbytes
Plain text

پس از وارد کردن توکن دریافتی از هاگینگ‌فیس در مراحل بالا، مدل برای شما دانلود می‌شود. توصیه می‌شود طبق توضیحات توکن مختص خود را دریافت کنید. اما اگر موفق نشدید، می‌توانید از این توکن استفاده کنید:

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
Plain text

در نهایت یک راه لود مدل به صورت زیر است:

tokenizer = AutoTokenizer.from_pretrained("/content/meta-llama/Meta-Llama-3-8B-Instruct")
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
    "/content/meta-llama/Meta-Llama-3-8B-Instruct",
     device_map="auto",
     torch_dtype='auto',
     low_cpu_mem_usage=True
 )
Plain text

نحوه ارسال پاسخ🔗

برای این سوال یک فایل result.zipرا ارسال کنید که شامل فایل‌های زیر است:

submission.csv که حاصل جواب‌های مدل روی test_data.csv است و به آن ستون answer مشابه دیتای ترین اضافه شده است. ‍

solution.py که تمام کدی که برای این سوال شامل لود مدل و پرامپت ورودی و بازیابی اطلاعات از اینترنت است را در برمی‌گیرد.