بث مباشر 18.11 · الدفعة 318 نوفمبر، 19:00 بتوقيت موسكو — ورشة عملية مجانية لوكلاء الذكاء الاصطناعي · الدفعة 3 تبدأ 23.11ورشة 18 نوفمبر ←الدفعة 3 (23.11)
إصدارتحليل · على الرادارHabr AI→ المصدر

معلّم بنى روبوتًا لتصحيح امتحان EGE: النموذج يضع الوسوم والكود يحسب الدرجات

يعمل خبير في امتحان EGE منذ عامين على روبوت Telegram لتصحيح الإجابات المطولة في العلوم الاجتماعية. والخلاصة الرئيسية هي أن النموذج يضع وسومًا دقيقة على الإجابة وفق مخطط محدد، لكنه يبالغ في الدرجات إذا أُسندت إليه النتيجة النهائية. لذلك يعيد كود تقليدي حساب الدرجات، ولا تستطيع عمليات إعادة التحقق سوى خفضها. تبلغ كلفة التصحيح في المتوسط 2.3 سنت ويستغرق 9 ثوانٍ.

معالج بواسطة الذكاء الاصطناعي من Habr AI؛ بتحرير Hamidun News
معلّم بنى روبوتًا لتصحيح امتحان EGE: النموذج يضع الوسوم والكود يحسب الدرجات
المصدر: Habr AI. كولاج: Hamidun News.
استمع للمقال
بطاقة الحقائق والأرقام
المعيارالتفاصيل
المصدر الأصليHabr AI ↗
رئيس التحرير
حقيقة رئيسية #1يملأ النموذج مخطط JSON عبر tool_use، بينما يحسب الكود الدرجة
حقيقة رئيسية #2لا يُرفض المثال إلا عند توافق إشارتين سلبيتين
حقيقة رئيسية #3عند تعطل الذكاء الاصطناعي لا تُعرض الدرجة ولا تُخصم المحاولة

ماذا يحدث إذا أوكلنا إلى نموذج لغوي مهمة منح طالب درجة عن إجابة مطولة؟ سيقيّم بسخاء قائلًا إنه «يفهم العلوم الاجتماعية عمومًا»، في حين أن معايير FIPI صارمة. فالمثال الذي يتحدث عن «الدولة Z» بدلًا من روسيا يحصل على صفر، والخطة التي تخلو من ثلاثة بنود إلزامية تفقد نقاط المعيار بالكامل. يشرح معلّم وخبير في امتحان EGE كيف أمضى عامين في بناء روبوت يراعي هذه التفاصيل.

النموذج يضع الوسوم والكود يحسب

المبدأ الأساسي هو أن النموذج لا يكتب: «أمنح نقطتين لأن…». بل يملأ مخطط JSON عبر tool_use، محددًا الأمثلة الملموسة والأحكام الصحيحة والبنود الأساسية في الخطة. بعد ذلك يتولى كود تقليدي المهمة: يعيد حساب الدرجات وفق المعايير، ويتحقق من كل ما يمكن التحقق منه من دون نموذج، ويشغّل عمليات إعادة تحقق لا يمكنها سوى خفض النتيجة.

لكل سؤال إضافة خاصة به تتضمن معالجًا ومقيّمًا ومواصفات. لا يوجد prompt موحد. ويتضح ذلك من حجم الكود: السؤال 17 يتطلب 942 سطرًا، بينما يتطلب كل من السؤالين 24 و25 ما بين 6,800 و7,200 سطر. كلما ازدادت المعايير تعقيدًا، ازدادت كمية الكود المحيط بالنموذج، لا طول الـprompt.

كيف لا تعاقب بريئًا

في السؤال 19، كان النموذج يحتسب إعادة صياغة وظيفة هيئة ما مثالًا على نشاطها. أضاف المؤلف استدعاءً ثانيًا بمخطط مستقل، لكن النسخة الأولى كانت تعمل في كل الحالات وتسحب نقاطًا من إجابات تتناول الأسر والمواطنين، رغم عدم وجود هيئة في نص السؤال. حاليًا لا تعمل إعادة التحقق إلا عند وجود مؤشرات صريحة في نص السؤال. كذلك لا يُرفض المثال إلا إذا تطابق اثنان على الأقل من أصل أربعة مؤشرات سلبية. الدرس هنا أن الحماية من رفع الدرجات قد تؤدي بنفسها إلى خفضها، وأن نطاق تشغيلها لا يقل أهمية عن عملية التحقق ذاتها.

في السؤال 24، يحسب الكود بالكامل نقاط المعيارين الأول والثاني، باستخدام الصيغ المعجمية عبر pymorphy2 والمقارنة مع 185 خطة مرجعية. وتُوحّد مرادفات العناوين، مثل «السمات» و«الخصائص»، في صيغة واحدة. الاختبار بسيط: يجب أن تحصل جميع الخطط المرجعية على الدرجة القصوى. قبل إصلاح المرادفات تحقق ذلك في 147 خطة من أصل 185، أما الآن فيتحقق في جميعها.

لا يمكن خصم نقطة بسبب خطأ واقعي إلا بعد اجتياز أربعة مرشحات: قائمة مغلقة لأنواع الأخطاء، واقتباس حرفي لا يقل عن 8 محارف، وتشغيلان مستقلان، وأداة تحقق منفصلة. وتلزم الأداة الأخيرة لأن إجابتين متطابقتين من النموذج نفسه لا تمثلان رأيين مستقلين؛ ففي الخطط المرجعية كان التشغيلان يعثران معًا على الخطأ الوهمي نفسه.

رفض صريح بدلًا من صفر مختلق

أخطر الأخطاء هو الصفر الصامت: لا يجيب النموذج، فيضع الكود صفرًا، ويرى الطالب تحليلًا يبدو طبيعيًا. في السؤال 25، وُجد 16 صفرًا من هذا النوع ضمن 110 حالات، وكان نصفها مطابقًا للإجابة المرجعية، ولذلك دخل المقاييس بوصفه تنبؤًا صحيحًا تمامًا. الآن يؤدي أي تعطل إلى تفعيل العلامة ai_unavailable: لا تُعرض الدرجة، ولا تُخصم المحاولة، ويتلقى المسؤول تنبيهًا. ولا تُخصم المحاولة المجانية إلا بعد تسليم النتيجة.

ويقر المؤلف بصراحة بأوجه النقص: في السؤالين 21 و23، لا تزال تُمنح درجة مبسطة عند التعطل، بينما يجب تشغيل YandexGPT الاحتياطي يدويًا.

الكلفة والخلاصة العملية

أنتج تشغيل نوفمبر على 393 إجابة 497 استدعاءً بكلفة 8.87 دولار: أي بمتوسط 1.26 استدعاء و2.3 سنت و9 ثوانٍ لكل عملية تصحيح. وليست التقييمات الطويلة هي الأعلى كلفة، بل عمليات إعادة التحقق. يوفر تخزين الـprompt مؤقتًا ما يصل إلى 66% من بيانات الإدخال، لكنه لا يعمل مع الـprompts القصيرة للأسئلة 17 و21 و22.

لمن يبني نظام تقييم باستخدام LLM: ألزموا النموذج بإجابة منظمة تتضمن علامات صريحة، وأبقوا العمليات الحسابية داخل الكود، واجعلوا إعادة التحقق أحادية الاتجاه، واشترطوا استقلال عمليات التشغيل، وميّزوا بين التعطل والصفر. وفي الإصدارات الجديدة من Claude، يعيد tool_choice الإلزامي الخطأ 400؛ لذلك مرروا auto واطلبوا استدعاء الأداة في نهاية الطلب.

القصة

أسئلة وأجوبة حول الخبر

ما أبرز التفاصيل حول النموذج يضع الوسوم والكود يحسب؟

المبدأ الأساسي هو أن النموذج لا يكتب: «أمنح نقطتين لأن…». بل يملأ مخطط JSON عبر tool_use، محددًا الأمثلة الملموسة والأحكام الصحيحة والبنود الأساسية في الخطة. بعد ذلك يتولى كود تقليدي المهمة: يعيد حساب الدرجات وفق المعايير، ويتحقق من كل ما يمكن التحقق منه من دون نموذج، ويشغّل عمليات إعادة تحقق لا يمكنها سوى خفض النتيجة. لكل سؤال إضافة خاصة به تتضمن معالجًا ومقيّمًا ومواصفات. لا يوجد prompt موحد. ويتضح ذلك من حجم الكود: السؤال 17 يتطلب 942 سطرًا، بينما يتطلب كل من السؤالين 24 و25 ما بين 6,800 و7,200 سطر.

ما أبرز التفاصيل حول كيف لا تعاقب بريئًا؟

في السؤال 19، كان النموذج يحتسب إعادة صياغة وظيفة هيئة ما مثالًا على نشاطها. أضاف المؤلف استدعاءً ثانيًا بمخطط مستقل، لكن النسخة الأولى كانت تعمل في كل الحالات وتسحب نقاطًا من إجابات تتناول الأسر والمواطنين، رغم عدم وجود هيئة في نص السؤال. حاليًا لا تعمل إعادة التحقق إلا عند وجود مؤشرات صريحة في نص السؤال. كذلك لا يُرفض المثال إلا إذا تطابق اثنان على الأقل من أصل أربعة مؤشرات سلبية. الدرس هنا أن الحماية من رفع الدرجات قد تؤدي بنفسها إلى خفضها، وأن نطاق تشغيلها لا يقل أهمية عن عملية التحقق ذاتها.

ما أبرز التفاصيل حول رفض صريح بدلًا من صفر مختلق؟

أخطر الأخطاء هو الصفر الصامت: لا يجيب النموذج، فيضع الكود صفرًا، ويرى الطالب تحليلًا يبدو طبيعيًا. في السؤال 25، وُجد 16 صفرًا من هذا النوع ضمن 110 حالات، وكان نصفها مطابقًا للإجابة المرجعية، ولذلك دخل المقاييس بوصفه تنبؤًا صحيحًا تمامًا. الآن يؤدي أي تعطل إلى تفعيل العلامة ai_unavailable: لا تُعرض الدرجة، ولا تُخصم المحاولة، ويتلقى المسؤول تنبيهًا. ولا تُخصم المحاولة المجانية إلا بعد تسليم النتيجة.

ZK
جمال حميدون — مدير المنتجات في Alpina Digital ومدير منتج AlpinaGPT. يبني منتجات الذكاء الاصطناعي منذ 2019. بدأ Hamidun News كمشروع شخصي ثم أصبح مُجمِّعًا إنتاجيًا بأكثر من 6000 قارئ.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
ما رأيك؟
جارٍ تحميل التعليقات…