AI Prompt Engineering · درس

نهج هجين: التلقين والضبط الخفيف

الجمع بين النهجين.

الدرس 3 من 413 خطوة

نهج هجين: التلقين والضبط الخفيف درس مجاني في AI Prompt Engineering على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في AI Prompt Engineering، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة AI Prompt Engineering 4 دروس في المجموع.

العقلية الهجينة

التوجيه والضبط الدقيق ليسا خصمين، بل هما طبقتان. والنمط الخبير هو نموذج مضبوط ضبطًا خفيفًا يتولى السلوك الثابت المتعلَّم، ويحيط به توجيه موجز يزوّده بالسياق المتغير الخاص بكل طلب.

  • يمتص الضبط ما هو ثابت: التنسيق، والصوت والأسلوب، وتأطير المهمة
  • يوفّر التوجيه ما هو متغير: التعليمات، والحقائق المسترجعة، وحالة المستخدم
  • تنجز كل طبقة ما تتقنه، ولا تتحمل أي منهما العبء كله

تفكيك الثابت والمتغير

تتمثل المهارة الهجينة الأساسية في تقسيم السلوك على محور الثابت/المتغير. فكل ما يكون متطابقًا بين الاستدعاءات، ويكون تكرار وضعه في الـprompt مكلفًا، يُعد مرشحًا للضبط. أما كل ما يتغير مع كل استدعاء، فيجب أن يبقى في الـprompt.

إذا أخطأتم في هذا التقسيم في أي من الاتجاهين، فستخسرون: إذ إن تضمين المحتوى المتغير في الأوزان يعني ضرورة إعادة الضبط لتغييره، بينما إبقاء المحتوى الثابت في الـprompt يعني دفع تكلفة رموزه إلى الأبد.

# Classify each behavior element before deciding where it lives
def placement(element):
    # element: dict with 'changes_per_call' and 'repeated_every_call'
    if element['changes_per_call']:
        return 'PROMPT'        # volatile -> must stay dynamic
    if element['repeated_every_call']:
        return 'WEIGHTS'       # stable + repetitive -> distill into tuning
    return 'PROMPT'            # default to the flexible layer

print(placement({'changes_per_call': False, 'repeated_every_call': True}))
# WEIGHTS

النمط A: تقطير الـprompt

هذا هو النمط الهجين الأكثر قيمة. تطورون prompt طويلًا وعالي الجودة، وتستخدمونه لتوليد مخرجات مرجعية، ثم تضبطون نموذجًا اعتمادًا على تلك المخرجات باستخدام prompt قصير.

والنتيجة هي أن النموذج يتصرف كما لو كان لا يزال يملك الـprompt الطويل، لكنكم لا ترسلون سوى جزء صغير من عدد الرموز. يصبح الـprompt المكلف هو المعلّم، ويصبح الـprompt الرخيص واجهة التشغيل. وهكذا تتحسن زمن الاستجابة والتكلفة والاتساق في آن واحد.

# Build distillation set: long prompt -> output, store with SHORT prompt
def distill_example(input_x, long_prompt, teacher):
    full = long_prompt + '\n\n' + input_x
    gold = teacher(full)                 # quality from the long prompt
    short = 'Task: process the input.\n' + input_x  # runtime prompt
    return {'messages': [
        {'role': 'user', 'content': short},
        {'role': 'assistant', 'content': gold},
    ]}

النمط B: اضبطوا الشكل واستخدموا الـprompt للمحتوى

اضبطوا النموذج بحيث يُخرج البنية الصحيحة دائمًا، مثل مخطط صارم أو أسلوب المؤسسة أو DSL خاص بالمجال، ودعوا الـprompt يحمل المحتوى الأساسي لكل طلب.

يناسب هذا النهج الحالات التي يجب فيها أن يكون الالتزام بالتنسيق شبه مثالي، وتكون القواعد كثيرة جدًا بحيث يصعب حصرها، بينما يكون المحتوى الفعلي متغيرًا بالكامل. عندها يتوقف النموذج المضبوط عن مقاومة البنية، وتتحرر رموز الـprompt لتوجيه التعليمات والسياق المسترجع.

النمط C: موجّه مضبوط + خبراء يعتمدون على الـprompt

في الأنظمة متعددة الخطوات، اضبطوا نموذجًا صغيرًا وسريعًا لاتخاذ القرار الضيق وعالي التكرار، مثل التصنيف أو التوجيه أو الاستخراج، واحتفظوا بنموذج كبير يعتمد على الـprompt لخطوات الاستدلال المفتوحة.

تحصلون بذلك على تكلفة النموذج الصغير المضبوط وزمن استجابته عندما تكون المهمة ضيقة، وعلى مرونة استخدام الـprompt عندما تكون المهمة واسعة. يبقى الموجّه ثابتًا ومضبوطًا، بينما يظل الخبراء قابلين للتوجيه عبر الـprompt مع تطور المتطلبات.

def pipeline(user_input, router_tuned, expert_prompted):
    route = router_tuned(user_input)        # cheap, fast, learned
    if route == 'simple':
        return router_tuned(user_input)     # small model handles it
    # complex -> hand to large prompted model with full instructions
    return expert_prompted(
        'Detailed instructions...\n' + user_input
    )

أبقوا RAG في طبقة الـprompt

حتى مع وجود نموذج مضبوط، تبقى المعرفة مسترجعة لا مدرّبة. يتعلم النموذج الهجين كيفية استخدام السياق، بينما يحدد الـprompt أي سياق يناسب هذا الطلب.

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

الضبط الخفيف: LoRA والمهايئات

يفضّل النهج الهجين الضبط الخـفيف. فالمهايئات القائمة على LoRA تدرب مجموعة صغيرة من المعاملات الإضافية، مع إبقاء النموذج الأساسي مجمّدًا. وهي منخفضة التكلفة، وسريعة التكرار، وقابلة للتكديس.

  • درّبوا عدة مهايئات لمهام مختلفة فوق نموذج أساسي واحد
  • بدّلوا المهايئات وقت الخدمة من دون إعادة تحميل النموذج الأساسي
  • أعيدوا تدريب المهايئ خلال ساعات، لا أيام، عندما ينحرف السلوك

وهذا يُبقي النهج الهجين قريبًا من سرعة التكرار التي يوفرها استخدام الـprompt، مع الاستفادة من اتساق الضبط.

تجنبوا التحديد المزدوج

من الأخطاء الشائعة في الأنظمة الهجينة أن يكون النموذج مضبوطًا لتنفيذ X و أن يستمر الـprompt في توجيهه لتنفيذ X. فـرموز الـprompt الزائدة تقوّض الغرض من التقطير، وقد تتعارض أيضًا مع السلوك المتعلَّم.

بعد الضبط، قلّموا الـprompt بقوة واحذفوا كل ما أصبح مضمّنًا في الأوزان. أعيدوا تشغيل التقييم بعد التقليم للتأكد من استمرار السلوك المضبوط من دون التعليمات المكررة.

# After tuning, prune prompt lines that the model now does on its own
def trim_prompt(prompt_lines, behaviors_in_weights):
    return [ln for ln in prompt_lines
            if not any(b in ln for b in behaviors_in_weights)]

kept = trim_prompt(
    ['Use JSON schema', 'Write in formal tone', 'Answer the question'],
    behaviors_in_weights=['JSON schema', 'formal tone'])
print(kept)  # ['Answer the question']  -- only the volatile part remains

إصدار الطبقتين معًا

يتكون النظام الهجين من عنصرين مترابطين: إصدار المهايئ وإصدار قالب الـprompt. ويجب إصدارُهما ونشرُهما كزوج، إذ قد يتصرف prompt مكتوب للمهايئ v3 بشكل غير صحيح مع المهايئ v4.

ثبّتوا الاقتران في الإعدادات، وشغّلوا التقييم على الزوج المطابق تمامًا لما ستنشرونه، وتراجعوا عن الزوجين معًا. ويُعد التعامل معهما بشكل مستقل أكثر مصادر التراجعات الهجينة الصامتة شيوعًا.

وتيرة إعادة الضبط

بما أن السلوك المتغير موجود في الـprompt، فإن النظام الهجين المبني جيدًا يحتاج إلى إعادة الضبط نادرًا، وذلك أساسًا عند إهمال النموذج الأساسي أو عند حدوث تغير فعلي في السلوك الثابت. أما التغييرات اليومية فتحدث في طبقة الـprompt من دون أي تكلفة تدريب.

إذا وجدتم أنفسكم تعيدون الضبط باستمرار، فهذا يعني أن تقسيمكم بين الثابت والمتغير غير صحيح: فقد تسرّب المحتوى المتغير إلى الأوزان. انقلوه مجددًا إلى الـprompt.

تصور هجين من البداية إلى النهاية

تتمثل الدورة الكاملة في استرجاع السياق، وإنشاء prompt قصير باستخدام المهايئ المضبوط، وترك الأوزان توفر البنية المتعلَّمة. تبقى المعرفة والتعليمات متغيرة، بينما تُضمَّن البنية والأسلوب في الأوزان.

def hybrid_call(user_q, retriever, tuned_model, adapter_version):
    docs = retriever.search(user_q, k=4)          # volatile knowledge
    ctx = '\n'.join(d.text for d in docs)
    short_prompt = (
        'Answer from context.\n'                  # form is in weights
        '<context>' + ctx + '</context>\n'
        '<q>' + user_q + '</q>'
    )
    return tuned_model.generate(short_prompt, adapter=adapter_version)

تحقق سريع

قمتم بتقطير prompt طويل إلى مهايئ LoRA، فأصبح النموذج يُخرج دائمًا مخطط JSON الصارم ونبرة المؤسسة. ماذا ينبغي أن يحدث للـprompt وقت التشغيل؟

مراجعة

الهجين = ضبط السلوك الثابت، واستخدام الـprompt للسياق المتغير. قسّموا السلوك على محور الثابت والمتغير، ودعوا كل طبقة تؤدي الدور الذي تجيده.

  • تقطير الـprompt: يعلّم الـprompt الطويل، ويُستخدم الـprompt القصير في التشغيل
  • اضبطوا الشكل واستخدموا الـprompt للمحتوى، مع موجّه مضبوط وخبراء يعتمدون على الـprompt
  • أبقوا المعرفة في الاسترجاع حتى يصمد النظام الهجين جيدًا مع مرور الوقت
  • فضّلوا المهايئات الخفيفة القائمة على LoRA لسرعة التكرار
  • احذفوا التعليمات المحددة مرتين، وأصدروا المهايئ والـprompt كزوج
  • تعني إعادة الضبط المتكررة تسرّب المحتوى المتغير إلى الأوزان، فانقلوه مجددًا
البدء مجانًا

تعلم AI Prompt Engineering مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
53
الدروس
199

الأسئلة الشائعة

هل درس «نهج هجين: التلقين والضبط الخفيف» مجاني؟

نعم — نص درس «نهج هجين: التلقين والضبط الخفيف» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة AI Prompt Engineering، انتقل إلى CoddyKit PRO. تتضمن دورة AI Prompt Engineering 4 دروس في المجموع.

ماذا ستتعلم في «نهج هجين: التلقين والضبط الخفيف»؟

الجمع بين النهجين. تتمرن على AI Prompt Engineering مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ AI Prompt Engineering؟

لا تُشترط خبرة سابقة. AI Prompt Engineering على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «نهج هجين: التلقين والضبط الخفيف»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس AI Prompt Engineering هذا؟

نعم. كل درس في AI Prompt Engineering يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. متى يكون التلقين كافيًا
  2. متى نضبط النموذج ضبطًا دقيقًا
  3. نهج هجين: التلقين والضبط الخفيف
  4. تقييم القرار
← العودة إلى AI Prompt Engineering