
؟ تأثير • ؟ الأخبار • البداية السريعة • التقييم عن بُعد • رمز LLM الذي تم إنشاؤه بواسطة LLM •؟ الاستخدام المتقدم •؟ تقديم النتيجة • الاقتباس
تم استخدام BigCodeBench من قبل العديد من فرق LLM بما في ذلك:
bigcodebench==v0.2.0 !bigcodebench==v0.1.9 .bigcodebench==v0.1.8 .bigcodebench==v0.1.7 .bigcodebench==v0.1.6 .0.1.5 . BigCodeBench هو معيار سهل الاستخدام لحل المهام العملية والصعبة عبر الكود. ويهدف إلى تقييم قدرات البرمجة الحقيقية لنماذج اللغة الكبيرة (LLMS) في بيئة أكثر واقعية. تم تصميم هذا المعيار لمهام توليد الكود على مستوى الوظائف التي تشبه Humaneval ، ولكن مع تعليمات أكثر تعقيدًا ومكالمات وظائف متنوعة.
هناك نوعان من الانقسامات في BigCodebench:
Complete : تم تصميم Thes Split لإكمال الكود بناءً على المستندات الشاملة.Instruct : يعمل الانقسام على نماذج التعليمات والدردشة فقط ، حيث يُطلب من النماذج إنشاء مقتطف رمز بناءً على تعليمات اللغة الطبيعية. تحتوي التعليمات فقط على معلومات ضرورية ، وتتطلب التفكير أكثر تعقيدًا.يركز BigCodeBench على أتمتة المهام عبر توليد الكود مع مكالمات الوظائف المتنوعة والتعليمات المعقدة ، مع:
للبدء ، يرجى أولاً إعداد البيئة:
# By default, you will use the remote evaluation API to execute the output samples.
pip install bigcodebench --upgrade
# You are suggested to use `flash-attn` for generating code samples.
pip install packaging ninja
pip install flash-attn --no-build-isolation
# Note: if you have installation problem, consider using pre-built
# wheels from https://github.com/Dao-AILab/flash-attention/releases # Install to use bigcodebench.generate
pip install " git+https://github.com/bigcode-project/bigcodebench.git " --upgradeنستخدم فك تشفير الجشع كمثال لإظهار كيفية تقييم عينات التعليمات البرمجية التي تم إنشاؤها عبر API عن بُعد.
تحذير
لتخفيف الجيل ، نستخدم استنتاج الدُفعات افتراضيًا. ومع ذلك ، يمكن أن تختلف نتائج الاستدلال الدُفعات من أحجام الدُفعات إلى أحجام الدُفعات والإصدارات إلى الإصدارات ، على الأقل بالنسبة للواجهة الخلفية VLLM. إذا كنت ترغب في الحصول على المزيد من النتائج الحتمية لفك تشفير الجشع ، يرجى تعيين --bs إلى 1 .
ملحوظة
يستغرق التنفيذ عن بُعد على BigCodeBench-Full عادة 6-7 دقائق ، وعلى BigCodeBench-Hard يستغرق عادة 4-5 دقائق.
bigcodebench.evaluate
--model meta-llama/Meta-Llama-3.1-8B-Instruct
--split [complete | instruct]
--subset [full | hard]
--backend [vllm | openai | anthropic | google | mistral | hf]bcb_results .[model_name]--bigcodebench-[instruct|complete]--[backend]-[temp]-[n_samples]-sanitized_calibrated.jsonl .[model_name]--bigcodebench-[instruct|complete]--[backend]-[temp]-[n_samples]-sanitized_calibrated_eval_results.json .[model_name]--bigcodebench-[instruct|complete]--[backend]-[temp]-[n_samples]-sanitized_calibrated_pass_at_k.json . ملحوظة
يستخدم BigCodeBench مطالبات مختلفة لنماذج القاعدة والدردشة. بشكل افتراضي ، يتم اكتشافه بواسطة tokenizer.chat_template عند استخدام hf / vllm كخلفية. بالنسبة للخلفية الأخرى ، يُسمح فقط بوضع الدردشة.
لذلك ، إذا كانت النماذج الأساسية الخاصة بك تأتي مع tokenizer.chat_template ، يرجى إضافة --direct_completion لتجنب التقييم في وضع الدردشة.
Access Openai APIs من Openai Console
export OPENAI_API_KEY= < your_openai_api_key >الوصول إلى واجهات برمجة التطبيقات البشرية من وحدة التحكم الإنسانية
export ANTHROPIC_API_KEY= < your_anthropic_api_key >الوصول
export MISTRAL_API_KEY= < your_mistral_api_key >الوصول إلى واجهات برمجة تطبيقات Gemini من Google AI Studio
export GOOGLE_API_KEY= < your_google_api_key > نحن نشارك عينات التعليمات البرمجية المولدة مسبقًا من LLMs قمنا بتقييمها:
sanitized_samples_calibrated.zip لراحتك. يرجى الرجوع إلى الاستخدام المتقدم لمزيد من التفاصيل.
يرجى إرسال كل من عينات التعليمات البرمجية التي تم إنشاؤها ونتائج التنفيذ إلى [email protected] إذا كنت ترغب في المساهمة في نموذجك في لوحة المتصدرين. لاحظ أن أسماء الملفات يجب أن تكون بتنسيق [model_name]--[revision]--[bigcodebench|bigcodebench-hard]-[instruct|complete]--[backend]-[temp]-[n_samples]-sanitized_calibrated.jsonl [model_name]--[revision]--[bigcodebench|bigcodebench-hard]-[instruct|complete]--[backend]-[temp]-[n_samples]-sanitized_calibrated_eval_results.json . يمكنك تقديم مشكلة لتذكيرنا إذا لم نرد على بريدك الإلكتروني في غضون 3 أيام.
@article { zhuo2024bigcodebench ,
title = { BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructions } ,
author = { Zhuo, Terry Yue and Vu, Minh Chien and Chim, Jenny and Hu, Han and Yu, Wenhao and Widyasari, Ratnadira and Yusuf, Imam Nur Bani and Zhan, Haolan and He, Junda and Paul, Indraneil and others } ,
journal = { arXiv preprint arXiv:2406.15877 } ,
year = { 2024 }
}