چیت‌شیت

هوش مصنوعی قانون‌محور و طبقه‌بندهای ورودی/خروجی

Constitutional AI and Input/Output Classifiers

آموزش نقد-و-بازنگری، اولویت‌بندی سطوح، ریل‌های ورودی و خروجی، روش‌های دور زدن آن‌ها، و موتور قوانین YAML.

  • ۱۲ بخش
  • ۴ درس مرتبط
  • کد و دستورها عیناً از دوره‌ی اصلی
فهرست مطالب
  1. آموزش CAI، دو مرحله
  2. دفاع چندلایه
  3. مقایسه‌ی سه لایه کنار هم
  4. سطوح و حوزه‌ها
  5. آمارهای کلیدی
  6. حل تعارض چهارسطحی (L15.17)
  7. نرمال‌سازی، سپس طبقه‌بندی (L15.18)
  8. یک قاعده در rules.yml
  9. گرامر قوانین
  10. اجرا و استفاده
  11. عیب‌یابی
  12. پرسش و پاسخ

آموزش CAI، دو مرحله

گام‌به‌گام
  1. مدل SFTبه یک پرامپت تیم قرمز پاسخ می‌دهد؛ مفید است ولی هنوز بی‌ضرر نیست.
  2. ناقدیک اصل نمونه‌برداری‌شده را می‌خواند و پاسخ را نقد می‌کند.
  3. اصلاح‌گرپاسخ را بر اساس نقد بازنگری می‌کند؛ این هدف آموزش SFT است.
  4. خط‌مشی (Policy)جفت‌پاسخ‌های کاندید تولید می‌کند.
  5. مدل بازخوردهر جفت را بر اساس اصول نمونه‌برداری‌شده رتبه‌بندی می‌کند.
  6. مدل پاداشبر ترجیحات هوش مصنوعی آموزش می‌بیند؛ الگوریتم PPO روی آن اجرا می‌شود.

دفاع چندلایه

معماری
مجازپیش‌نویسپیش‌نویسموارد نقض قانونگذر دومنوبت گفت‌وگوی کاربرریل ورودیLlama Guard، NeMoوزن‌های مدلآموزش‌دیده با CAIریل خروجیگیت طبقه‌بندموتور قوانینشیوه‌نامه‌ی بنیادین YAMLاصلاح‌گرویرایش‌های محلی به‌ازای هر قانونحکم ارزیابیپذیرفته یا ارجاع به بالا

مقایسه‌ی سه لایه کنار هم

مقایسه
عاملوزن‌های CAIطبقه‌بند ورودی/خروجیموتور قوانین
محل اثرترجیح وزن‌های مدلهر نوبت ورودی و خروجیپاسخ کاندید
سیگنالاصول، نقد، بازخورد هوش مصنوعیرده‌بندی خطرات، S1 تا S14گزاره‌های YAML
نتیجهامتناع مدل همراه با توضیحمسدودسازی، نشانه‌گذاری یا هدایت بر اساس دسته‌بندییک نقض قانون به‌ازای هر قاعده، به‌همراه اصلاحیه
برتری درمشابه‌های نزدیکِ دیده‌نشدهرد سریع سوءاستفاده‌های آشکارمحدودیت‌های قراردادی
نقاط ضعفابهام در اصول، دریفتقاچاق اموجی، نویسه‌های هم‌شکل، بازنویسیبازنویسی‌های ساختاری
مثالClaude ConstitutionLlama Guard 3، NeMo Guardrailsrules.yml

سطوح و حوزه‌ها

مفهوم‌ها
سطح 1
ایمنی و پشتیبانی از نظارت انسانی؛ بالاترین اولویت.
سطح 2
اخلاق؛ در صورت تعارض، بر دستورالعمل‌ها تقدم دارد.
سطح 3
دستورالعمل‌های Anthropic.
سطح 4
مفید بودن؛ پایین‌ترین اولویت.
سخت‌کدشده
ارتقای قابلیت CBRN، محتوای CSAM، حمله به زیرساخت، جعل هویت؛ بدون امکان نادیده‌گیری.
نرم‌کدشده
طول، دامنه‌ی موضوعی، لحن، استفاده از ابزار؛ قابل تنظیم توسط اپراتور در یک بازه.
ترتیب L18.05
فاجعه‌بار، دستورالعمل‌ها، اخلاق، مفید بودن؛ حل تعارضات از بالا به پایین.

آمارهای کلیدی

مفهوم‌ها
Claude Constitution
79 صفحه، CC0، ژانویه 2026.
CAI 2022
16 اصل در شیوه‌نامه‌ی بنیادین.
مشارکتی 2023
حدود 1000 پاسخ‌دهنده از آمریکا؛ حدود 50٪ توافق با متن شرکتی.
طبقه‌بندهای قانون‌محور
23.7٪ سربار محاسباتی در v1، حدود 1٪ در v2.
Llama Guard 3
بر پایه‌ی Llama-3.1-8B، 13 نوع خطر، 8 زبان.
نسخه‌ی 1B-INT4
بیش از 30 توکن بر ثانیه روی پردازنده‌های موبایل.
Llama Guard 4
از S1 تا S14؛ دسته‌ی S14 سوءاستفاده از Code Interpreter است.
حملات
قاچاق اموجی با 100٪ ضریب موفقیت (ASR) روی شش گاردریل؛ NeMo Guard Detect برابر 72.54٪.

حل تعارض چهارسطحی (L15.17)

کد
python
block = hardcoded_block(action)  # تطابق زیررشته، HARDCODED_PROHIBITIONS
if block:
    return "refuse", f"hardcoded prohibition: {block}"
if score.safety >= 3:            # در تعارض، سطح بالاتر برنده است
    return "refuse", f"safety violation (score={score.safety})"
if score.ethics >= 3:
    return "refuse", f"ethics violation (score={score.ethics})"
if score.guidelines >= 3:        # تغییر دادن به‌جای امتناع
    return "modify", f"guideline conflict (score={score.guidelines}); modify"
return "allow", "all higher tiers clear; helpfulness respected"

نرمال‌سازی، سپس طبقه‌بندی (L15.18)

کد
python
out = unicodedata.normalize("NFKC", text)                  # یکپارچه‌سازی فرم‌های سازگاری
out = _homoglyph_map(out)                                  # تبدیل نویسه‌های هم‌شکل سیریلیک به لاتین
return "".join(ch for ch in out if not _is_invisible(ch))  # حذف نویسه‌های با عرض صفر
hits = classify_raw(normalize(text))                       # کارکرد classify_normalized
hits = output_rail(o)                                      # OUTPUT_DISALLOWED در نوبت مدل

یک قاعده در rules.yml

کد
yaml
- name: no-empty-refusal
  severity: medium  # کم، متوسط یا زیاد
  applies_when:     # false نتیجه‌ی not_applicable می‌دهد
    contains_regex: '\b(i cannot|i will not|i refuse|unable to help)\b'
  must:
    any_of:
      - contains_regex: '\b(try|consider|alternative|instead|suggest)\b'
      - contains_regex: '\bredirect\b'
  explanation: "Refusals must offer a next step (a suggestion, an alternative, or a redirect)."
  fix:
    append_if_missing: "\n\nIf this is something I cannot help with, ..."

گرامر قوانین

دستورها
دستورکاربرد
`contains_regex`, `not_contains_regex`یافتن یا نبود ریجکس، غیرحساس به حروف کوچک/بزرگ
`starts_with_regex`, `ends_with_regex`انطباق در ابتدا یا انتهای متن
`max_words`, `min_words`محدوده‌ی تعداد کلمات
`all_of`, `any_of`, `not_`ترکیب گزاره‌ها؛ any_of توقف زودهنگام دارد
applies_whenمقدار False وضعیت not_applicable را ثبت می‌کند
`append_if_missing`, `prepend_if_missing`افزودن متن در صورت نبود آن
replace_regexجایگزینی pattern با replacement
`low`, `medium`, `high`سطوح اهمیت؛ گیت درس 87 موارد high را مسدود می‌کند

اجرا و استفاده

کار و کد
وظیفهکد
دموی حل‌کننده‌ی چهارسطحی (15.17)code/main.py
دموی طبقه‌بند و ریل خروجی (15.18)code/main.py
پایپ‌لاین ساده‌ی CAI (18.05)python3 code/main.py
دموی موتور قوانین (19.86)python3 main.py
بارگذاری شیوه‌نامه‌ی بنیادینengine = Engine()
ارزیابی یک پیش‌نویسreport = engine.evaluate(draft)
اصلاح موارد نقض قانونfixer.apply(draft, report.violations())
تفاوت‌های بازنگری میان پیش‌نویس و نسخه اصلاح‌شدهdiff(draft, revised)

عیب‌یابی

عیب‌یابی
  • نویسه‌های با عرض صفر گارد کلمات کلیدی را دور می‌زنند

    علت
    قاچاق اموجی کلمات را تکه‌تکه می‌کند
    راه‌حل
    normalize() پیش از classify_raw
  • نویسه‌ی هم‌شکل سیریلیک عبور می‌کند

    علت
    جایگزینی نویسه‌های هم‌شکل
    راه‌حل
    _homoglyph_map؛ نگاشت را گسترش دهید
  • افشای راز پس از تأیید ورودی رخ می‌دهد

    علت
    نبود ریل خروجی
    راه‌حل
    افزودن output_rail() در نوبت مدل
  • درخواست در طول نوبت‌ها دچار دریفت می‌شود

    علت
    بافت طبقه‌بند فقط در سطح نوبت است
    راه‌حل
    ریل‌های گفت‌وگو در Colang
  • مقدمه‌ی «آزمایشگاه مجاز» پذیرفته می‌شود

    علت
    اتکای صرف به سطوح استدلالی
    راه‌حل
    ممنوعیت‌های سخت‌کدشده
  • has bad severity

    علت
    سطح اهمیت چیزی جز low، medium یا high است
    راه‌حل
    از یکی از این سه مورد استفاده کنید
  • missing required field

    علت
    نبود name، explanation یا must
    راه‌حل
    فیلد موردنظر را اضافه کنید
  • unknown predicate

    علت
    کلید در گرامر تعریف نشده است
    راه‌حل
    از یک گزاره‌ی اتمی یا ترکیبی استفاده کنید

پرسش و پاسخ

پرسش و پاسخ
آیا RLAIF فقط نسخه‌ی ارزان‌تر RLHF است؟
خیر؛ سوگیری برچسب‌زن‌ها به تفسیر اصول منتقل می‌شود.
RLAIF چه چیزی را تغییر می‌دهد؟
بله‌قربان‌گویی کاهش می‌یابد؛ قانون گودهارت همچنان پابرجاست.
طبقه‌بند در کجا قرار می‌گیرد؟
زیر لایه‌ی قانون‌محور، بالای لایه‌ی محیط اجرا.
چرا فقط ویرایش محلی؟
بازنویسی ساختاری وظیفه‌ی لایه‌ی جداگانه‌ی امتناع-و-راهنمایی است.
آیا یک لایه کافی است؟
خیر؛ CAI رفتار را شکل می‌دهد و طبقه‌بندها پایه‌ها را تضمین می‌کنند.