
إطار تقييم يختبر ما إذا كانت نماذج اللغة الكبيرة تتبع تعليمات مشفرة بـ Unicode غير مرئية مضمنة في نص عادي المظهر، مع تحليل إحصائي عبر نماذج متعددة وظروف أدوات.
إطار تقييم يختبر ما إذا كانت نماذج اللغة الكبيرة تتبع تعليمات مشفرة في اليونيكود مخفية ضمن نص عادي المظهر. حيث تستغل الكابتشا التقليدية المهام التي يستطيع البشر حلها بينما لا تستطيع الآلات حلها، تستغل ريفيرس كابتشا قناة إدراك يمكن للآلات الوصول إليها بينما لا يستطيع البشر.
الورقة: paper/reverse_captcha.pdf
عبر 8,308 مخرجات مصنفة من 5 نماذج (GPT-5.2, GPT-4o-mini, Claude Opus 4, Claude Sonnet 4, Claude Haiku 4.5):
الوصول إلى تنفيذ الكود يحول اليونيكود المخفي من أثر يمكن تجاهله إلى قناة تعليمات قابلة للفك. بدون أدوات، يبقى الامتثال أقل من 17%. مع الأدوات والتلميحات، يصل إلى 98-100%.

نماذج OpenAI تفك شفرة الثنائي صفري العرض لكن ليس علامات اليونيكود. نماذج Anthropic تفضل علامات اليونيكود. يجب على المهاجم تخصيص التشفير لمزود الخدمة المستهدف.

تدرج التلميحات ثابت عبر النماذج: بدون تلميحات << تلميحات نقاط الكود < تلميحات كاملة. الجمع بين الوصول إلى الأدوات وتعليمات فك التشفير هو الممكن الحاسم.

يتم تضمين مخططي تشفير مخفيين في أسئلة المعلومات العامة:
يتلقى النموذج سؤال معلومات عامة بإجابة مرئية معروفة. مخفية في الأحرف المخفية إجابة مختلفة. إذا أخرج النموذج الإجابة المخفية، فقد اتبع التعليمات المخفية.
# Install
pip install -e ".[dev]"
# Run reverse CAPTCHA eval
evalrun run --pack reverse_captcha --model openai:gpt-4o-mini --tools --n 3 --out results.sqlite
# Run without tools
evalrun run --pack reverse_captcha --model openai:gpt-4o-mini --n 3 --out results.sqlite
# Run with Anthropic models
evalrun run --pack reverse_captcha --model anthropic:claude-sonnet-4-20250514 --tools --n 3 --out results.sqlite
# Generate analysis
python3 scripts/analyze_journal.py
# Generate figures
python3 scripts/generate_figures.py
├── packs/reverse_captcha/ # حزمة التقييم (الحالات، المصنّف، المولّد)
│ ├── cases.yaml # 270 حالة اختبار
│ ├── qa_pairs.yaml # 30 زوج أسئلة/إجابة معلومات عامة
│ ├── grader.py # تصنيف حتمي (5 فئات)
│ └── generate_cases.py # مولد الحالات لكلا التشفيرين
├── src/evalrun/ # الإطار الأساسي
│ ├── adapters/ # محولات API لـ OpenAI و Anthropic
│ ├── cli.py # واجهة سطر الأوامر (تشغيل، تقرير، تصدير)
│ ├── runner.py # مشغل التقييم مع دعم استخدام الأدوات
│ └── db.py # تخزين SQLite
├── paper/ # ورقة ورشة العمل
│ ├── reverse_captcha.tex # مصدر LaTeX
│ └── reverse_captcha.pdf # PDF مترجم
├── results/journal/ # البيانات الخام
│ ├── analysis/ # ملفات CSV للتحليل الإحصائي
│ └── figures/ # أشكال النشر (PDF + PNG)
├── scripts/ # توليد التحليل والأشكال
└── tests/ # مجموعة الاختبارات
يتضمن الإطار أيضًا حزمتين إضافيتين:
OPENAI_API_KEY لنماذج OpenAIANTHROPIC_API_KEY لنماذج Anthropicclick, openai, anthropic, pyyaml, matplotlib, pandas, scipy, numpyMIT