دورة هندسة الأوامر

دورة هندسة الأوامر (Prompt Engineering) - تعلم فن التواصل مع نماذج الذكاء الاصطناعي

دورة هندسة الأوامر

Prompt Engineering

تعلم فن التواصل مع نماذج الذكاء الاصطناعي

بناءً على كتاب "هندسة الأوامر" للمؤلف: Lee Boonstra

تلخيص: عبدالله سالم

Linkdin: Abdullah Salem

محتويات الدورة

القسم الأول: مقدمة في هندسة الأوامر

ما هي هندسة الأوامر؟

هندسة الأوامر (Prompt Engineering) هي فن وعلم تصميم وتحسين الأوامر النصية التي تُقدّم لنماذج اللغة الكبيرة (LLMs) مثل ChatGPT وجيميني وبارد وغيرها، لتوجيهها نحو إنتاج مخرجات دقيقة ومفيدة تتناسب مع احتياجات المستخدم.

لماذا تعتبر هندسة الأوامر مهمة؟

تحدد الأوامر النصية ما يقوم به نموذج الذكاء الاصطناعي، وكيف يقوم به. الفرق بين أمر جيد وأمر سيئ هو الفرق بين الحصول على نتيجة مثالية أو نتيجة غير مفيدة.

مثال لأمر ضعيف

اكتب مقال

✖️ غير محدد، لا يوفر سياقًا، لا يحدد طول المقال أو موضوعه أو الجمهور المستهدف

مثال لأمر جيد

اكتب مقالًا من 500 كلمة عن فوائد الذكاء الاصطناعي في قطاع التعليم، مع ذكر 3 أمثلة عملية عن كيفية استخدامه في الفصول الدراسية. اجعل المقال مناسبًا للمعلمين الذين ليس لديهم خلفية تقنية كبيرة، وضمِّن خاتمة تتضمن توصيات عملية.

✓ واضح، محدد، يتضمن طلبات دقيقة للمحتوى والطول والجمهور

العناصر المؤثرة في جودة الأوامر

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

ملاحظة مهمة

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

اختبار مهارات القسم الأول

السؤال 1: ما هو الهدف الأساسي من هندسة الأوامر؟

السؤال 2: أي من العبارات التالية تصف أمراً جيداً؟

السؤال 3: ما هي العناصر التي تؤثر على جودة الأوامر؟ (اختر كل ما ينطبق)

القسم الثاني: إعدادات مخرجات نماذج اللغة الكبيرة (LLMs)

التحكم في مخرجات النماذج

بعد اختيار النموذج المناسب، تأتي مرحلة ضبط إعدادات هذا النموذج للتحكم في طبيعة المخرجات. هذه الإعدادات تؤثر بشكل كبير على جودة الاستجابة ومدى ملاءمتها للمهمة المطلوبة.

طول المخرجات (Output Length)

يحدد الحد الأقصى لعدد التوكنات (الوحدات النصية) التي سينتجها النموذج في استجابته. التوكنات ليست بالضرورة كلمات كاملة، بل قد تكون أجزاء من كلمات.

نصيحة

كلما زاد طول المخرجات، زادت تكلفة استخدام النموذج وزمن الاستجابة. حدد الطول المناسب الذي يلبي احتياجاتك دون إسراف.

عناصر التحكم في العينة (Sampling Controls)

هي معلمات تتحكم في كيفية اختيار النموذج للكلمات التالية في النص الذي ينتجه. توجد ثلاثة معلمات رئيسية:

1. درجة معامل العشوائية (Temperature)

تتحكم في مقدار العشوائية والإبداع في استجابة النموذج، وتتراوح قيمتها عادة بين 0 و1 (أو أعلى).

قيمة درجة معامل العشوائية التأثير متى تُستخدم
0 محددة جداً، دائماً نفس النتيجة للمدخل نفسه (حتمية) للمهام التقنية، الرياضيات، الترميز، عندما تكون الإجابة الصحيحة واحدة فقط
0.1 - 0.3 متنبئة، محدودة العشوائية، مخرجات متناسقة لتلخيص المستندات، الإجابات الواقعية، التحليل المنطقي
0.4 - 0.7 توازن بين الحتمية والعشوائية، بعض الإبداع معظم مهام كتابة النصوص، المحادثات، الترجمة
0.8 - 1 عشوائية عالية، تنوع كبير، إبداع أعلى كتابة القصص والشعر، العصف الذهني، توليد الأفكار الإبداعية
> 1 عشوائية شديدة، احتمالية أكبر للنتائج غير المنطقية التجريب، الإبداع غير المألوف، ولكن قد تكون النتائج غير متماسكة
درجة معامل العشوائية (Temperature) التنوع والعشوائية 0 0.3 0.6 0.9 1.2+ محدد جداً متنبئ متوازن إبداعي عشوائي
2. تصفية بأعلى K (Top-K)

يحدد عدد الاحتمالات الأعلى التي سيأخذها النموذج بعين الاعتبار عند اختيار الكلمة التالية.

  • قيمة منخفضة (مثل 10): تقييد الاختيارات، نتائج أكثر تركيزًا وأقل تنوعًا
  • قيمة مرتفعة (مثل 50): مجموعة أوسع من الاحتمالات، مزيد من التنوع
top_k: 10 => [الكلمات الـ 10 الأكثر احتمالاً فقط سيتم اختيار إحداها] top_k: 50 => [الكلمات الـ 50 الأكثر احتمالاً سيتم اختيار إحداها]
3. التغطية الاحتمالية (Top-P أو Nucleus Sampling)

بدلاً من تحديد عدد ثابت من الكلمات، يحدد Top-P احتمالية تراكمية. يأخذ النموذج أقل عدد ممكن من الكلمات التي تصل احتمالاتها مجتمعةً إلى قيمة P.

  • قيمة منخفضة (مثل 0.3): يركز على الاحتمالات الأعلى فقط، مخرجات متوقعة
  • قيمة مرتفعة (مثل 0.9): يشمل احتمالات متنوعة أكثر، مخرجات أكثر تنوعًا
top_p: 0.3 => [سيأخذ فقط الكلمات التي تشكل معًا 30% من توزيع الاحتمالية] top_p: 0.9 => [سيأخذ الكلمات التي تشكل معًا 90% من توزيع الاحتمالية]

الجمع بين الإعدادات

يمكن الجمع بين هذه المعلمات للحصول على النتائج المطلوبة:

الهدف درجة معامل العشوائية Top-K Top-P
إجابات دقيقة (حسابات، برمجة) 0.0 - 0.2 10 0.3
تلخيص وإجابات واقعية 0.2 - 0.4 20 0.5
محادثة طبيعية 0.5 - 0.7 40 0.7
كتابة إبداعية وتوليد أفكار 0.7 - 1.0 50+ 0.9

تذكر

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

اختبار مهارات القسم الثاني

السؤال 1: ما هو تأثير تعيين درجة معامل العشوائية (Temperature) إلى قيمة 0؟

السؤال 2: أي من الإعدادات التالية مناسب للحصول على إجابات دقيقة لمشكلة رياضية؟

السؤال 3: ماذا تعني قيمة إعداد top_k = 20؟

السؤال 4: أي من الإعدادات التالية أكثر ملاءمة لكتابة قصة إبداعية؟

القسم الثالث: تقنيات هندسة الأوامر

تقنيات التوجيه الأساسية والمتقدمة

هناك العديد من التقنيات التي يمكن استخدامها لتحسين قدرة النماذج اللغوية على فهم المهام المطلوبة وتنفيذها بدقة. سنستعرض التقنيات من البسيطة إلى المتقدمة.

1. التوجيه العام (Zero-shot Prompting)

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

أكتب ثلاث فوائد للتمارين الرياضية اليومية.

مميزات:

  • بسيط وسريع
  • لا يحتاج لأمثلة

محدودية:

  • قد لا يفهم النموذج المهام المعقدة أو المتخصصة بشكل دقيق
  • النتائج قد تكون أقل اتساقا من التقنيات الأخرى

2. التوجيه بمثال واحد (One-shot) والتوجيه بأمثلة قليلة (Few-shot)

تقديم مثال واحد أو عدة أمثلة للنموذج ليفهم النمط المطلوب قبل أن تطلب منه تنفيذ المهمة نفسها.

المدخل: قطة المخرج: حيوان أليف ثديي من فصيلة السنوريات، يتميز بالرشاقة والمرونة وله أربعة أرجل وذيل. المدخل: تفاحة المخرج:

في المثال أعلاه، قدمنا للنموذج مثالًا واحدًا عن كيفية وصف "قطة"، ثم طلبنا منه وصفًا مشابهًا لـ "تفاحة".

مميزات:

  • يحسن الفهم للمهام غير الشائعة أو المتخصصة
  • يوفر نماذج للتنسيق والأسلوب المطلوبين

محدودية:

  • يستهلك مساحة أكبر من التوكنات
  • قد يتبع النمط بشكل مفرط دون فهم المحتوى

3. توجيه النظام، الدور، والسياق

أ. توجيه النظام (System Prompting)

تحديد قواعد أو إرشادات عامة للنموذج قبل بدء التفاعل الأساسي.

أنت خبير تعليمي متخصص في تبسيط المفاهيم المعقدة للأطفال. جميع شروحاتك يجب أن تكون بسيطة وسهلة الفهم لطفل في عمر 8 سنوات، وتتضمن أمثلة من الحياة اليومية.
ب. توجيه الدور (Role Prompting)

تحديد دور أو شخصية معينة للنموذج ليتصرف من خلالها.

تخيل أنك خبير في علم الفلك. اشرح لي ظاهرة الثقوب السوداء بطريقة علمية دقيقة ومفصلة.
ج. توجيه السياق (Contextual Prompting)

إضافة معلومات سياقية لمساعدة النموذج على فهم خلفية المهمة وظروفها.

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

مميزات هذه الأنواع من التوجيه:

  • تحسين جودة المخرجات بشكل كبير
  • توجيه النموذج نحو أسلوب ونبرة محددين
  • تقييد المخرجات ضمن إطار معين

4. تقنيات التوجيه المتقدمة

أ. توجيه التفكير بخطوة للخلف (Step-back Prompting)

توجيه النموذج للتفكير بالمبادئ العامة أو النظرية قبل معالجة المشكلة المحددة.

سؤال: ما هي الاستراتيجية الأمثل لتحسين أرباح متجر تجزئة صغير يواجه منافسة من المتاجر الكبرى عبر الإنترنت؟ قبل الإجابة على السؤال المحدد، فكر في المبادئ العامة للتنافسية في أسواق التجزئة والميزات التنافسية للمتاجر الصغيرة مقابل المتاجر الكبرى. ثم قدم استراتيجية مفصلة بناءً على هذه المبادئ.
ب. سلسلة التفكير (Chain of Thought - COT)

توجيه النموذج لشرح عملية التفكير خطوة بخطوة قبل الوصول إلى النتيجة النهائية.

حل المسألة الرياضية التالية موضحًا كل خطوة في تفكيرك: إذا كان عمر أحمد 5 سنوات أكبر من عمر سارة، وكان عمر سارة ثلث عمر والدتها البالغ 36 عامًا، فكم يبلغ عمر أحمد؟
ج. الاتساق الذاتي (Self-consistency)

توليد عدة مسارات تفكير مختلفة واختيار الإجابة الأكثر شيوعًا.

حل المسألة الرياضية التالية. قم بتوليد ثلاث مسارات تفكير مختلفة، واذكر الإجابة النهائية لكل مسار: محمد اشترى 3 تفاحات و5 برتقالات، وكان سعر التفاحة 2 ريال وسعر البرتقالة 1.5 ريال. كم المبلغ الإجمالي الذي دفعه محمد؟
د. شجرة الأفكار (Tree of Thoughts - ToT)

تمكن النموذج من استكشاف عدة مسارات فكرية متفرعة واتخاذ القرارات بناءً على مدى فائدتها.

لنحل مشكلة وضع خطة تسويقية لمنتج جديد. لدينا عدة محاور يمكن التركيز عليها: 1. التسويق عبر وسائل التواصل الاجتماعي 2. التسويق المؤثر 3. الإعلانات المدفوعة 4. تسويق المحتوى استكشف كل محور بعمق، ثم قارن بين النتائج المحتملة لكل مسار، وحدد أيها يبدو أكثر فاعلية، ولماذا. يمكنك دمج عدة محاور لتطوير استراتيجية متكاملة.
هـ. توجيه التفكير والفعل (Reason & Act - ReAct)

دمج التفكير المنطقي مع اتخاذ الإجراءات، مفيد خاصة عند الحاجة إلى تفاعل مع أدوات خارجية.

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

نصيحة لاختيار التقنية المناسبة

  • للمهام البسيطة والمباشرة: استخدم Zero-shot
  • للمهام التي تتطلب تنسيقًا أو نمطًا محددًا: استخدم One-shot/Few-shot
  • للمهام المعقدة التي تتطلب تفكيرًا منطقيًا: استخدم Chain of Thought
  • للمسائل التي تتطلب دقة عالية: استخدم Self-consistency
  • للمشاكل المعقدة متعددة المسارات: استخدم Tree of Thoughts
  • للمهام التفاعلية التي تتطلب خطوات متعددة: استخدم ReAct

اختبار مهارات القسم الثالث

السؤال 1: أي من التقنيات التالية يوفر مثالًا توضيحيًا للنموذج ليفهم المهمة بشكل أفضل؟

السؤال 2: ما هي التقنية الأنسب للتعامل مع مسألة رياضية معقدة تتطلب خطوات منطقية متسلسلة؟

السؤال 3: حدد أمثلة توجيه النظام (System Prompting) من الأمثلة التالية:

السؤال 4: ما هي الفائدة الرئيسية لتقنية شجرة الأفكار (Tree of Thoughts) مقارنة بسلسلة التفكير (Chain of Thought)؟

القسم الرابع: هندسة أوامر البرمجة

استخدام نماذج اللغة في مهام البرمجة

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

1. أوامر لكتابة الكود

تساعد هذه الأوامر في توليد شيفرات برمجية من البداية استنادًا إلى متطلبات محددة.

اكتب دالة بلغة Python تقوم بحساب مجموع أول n عدد من سلسلة فيبوناتشي. الدالة يجب أن: 1. تأخذ عدد صحيح n كمُدخل. 2. تتحقق من أن n أكبر من الصفر، وترجع رسالة خطأ مناسبة إذا لم يكن كذلك. 3. تستخدم خوارزمية فعالة مع تعليقات توضيحية. 4. توفر معالجة للاستثناءات المحتملة. مع تقديم أمثلة على استخدامها.

نصائح لتحسين أوامر كتابة الكود:

  • حدد اللغة البرمجية المطلوبة بشكل واضح
  • وضح الهدف الوظيفي للكود
  • حدد أي متطلبات خاصة (مثل الأداء، المكتبات، الإصدارات)
  • اطلب تعليقات توضيحية إذا كنت بحاجة إليها
  • اطلب أمثلة للاستخدام أو اختبارات وحدة

2. أوامر لشرح الكود

تستخدم هذه الأوامر لفهم الشيفرات البرمجية المعقدة أو غير الواضحة.

اشرح الكود التالي سطرًا بسطر موضحًا الغرض من كل جزء ووظيفته: ```javascript const memoize = (fn) => { const cache = {}; return (...args) => { const key = JSON.stringify(args); if (cache[key]) { return cache[key]; } const result = fn(...args); cache[key] = result; return result; }; }; ``` بالإضافة إلى الشرح التفصيلي، وضح: 1. ما هي تقنية البرمجة المستخدمة هنا؟ 2. ما هي فوائدها؟ 3. متى يكون استخدامها مناسبًا، ومتى قد يكون لها أضرار؟

نصائح للحصول على شرح أفضل للكود:

  • اطلب مستوى التفصيل المناسب (عام، مفصل، سطر بسطر)
  • حدد إذا كنت تريد تحليل الكفاءة أو التعقيد
  • اطلب شرحًا للمفاهيم المعقدة
  • اطلب تبسيط الشرح إذا كنت مبتدئًا

3. أوامر لترجمة الكود

تستخدم لتحويل الشيفرة البرمجية من لغة إلى أخرى مع الحفاظ على وظائفها.

ترجم الكود التالي المكتوب بلغة Python إلى لغة JavaScript مع الحفاظ على نفس الوظائف: ```python def process_data(data_list): result = {} for item in data_list: if item['status'] == 'active': category = item.get('category', 'uncategorized') if category not in result: result[category] = [] result[category].append({ 'id': item['id'], 'name': item['name'], 'value': item.get('value', 0) * 1.1 }) return result ``` استخدم أسلوب ES6 الحديث في JavaScript واشرح أي اختلافات مهمة بين التنفيذ في اللغتين.

نصائح لأوامر ترجمة الكود:

  • حدد اللغة المصدر واللغة الهدف بوضوح
  • اطلب استخدام إصدار محدد أو أسلوب معين في اللغة الهدف
  • اطلب توضيح الاختلافات المهمة بين اللغتين
  • اطلب التعامل مع الحالات الخاصة التي قد تختلف بين اللغات

4. أوامر لتصحيح ومراجعة الكود

تستخدم لاكتشاف الأخطاء وتصحيحها، وتحسين البنية والأداء في الشيفرات البرمجية.

راجع الكود التالي، واكتشف الأخطاء واقترح تحسينات للأداء والقابلية للصيانة: ```javascript function sortArray(arr) { for (var i = 0; i < arr.length; i++) { for (var j = 0; j < arr.length; j++) { if (arr[i] < arr[j]) { var temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } return arr; } function findDuplicate(arr) { for (i = 0; i < arr.length; i++) { for (j = 0; j < arr.length; j++) { if (i != j && arr[i] == arr[j]) { return arr[i]; } } } return null; } ``` حدد: 1. أي أخطاء منطقية أو نحوية 2. مشاكل الأداء والتعقيد الزمني 3. ممارسات برمجة يمكن تحسينها 4. اقتراحات لتحسين الكود وإعادة كتابته

نصائح لأوامر تصحيح ومراجعة الكود:

  • حدد نوع المراجعة المطلوبة (أخطاء، أمان، أداء، تنظيم)
  • اطلب شرحًا للمشاكل وليس فقط الحلول
  • اطلب تحليلاً للتعقيد الزمني والمكاني
  • اطلب تبسيط الكود أو تنظيمه وفقًا لمعايير محددة

ملاحظة مهمة

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

اختبار مهارات القسم الرابع

السؤال 1: أي من العناصر التالية يجب تضمينها عند كتابة أمر لإنشاء كود برمجي؟

السؤال 2: أي من الأوامر التالية مناسب أكثر لطلب شرح كود معقد؟

السؤال 3: ما هي المعلومات المهمة التي يجب تضمينها عند طلب ترجمة كود من لغة إلى أخرى؟

السؤال 4: ما هو الهدف الرئيسي من أوامر تصحيح ومراجعة الكود؟

أدوات البرومبت والأتمتة (Prompt Tools & Automation)

أدوات تعزز عملك في هندسة الأوامر

تساعدك هذه الأدوات والمكتبات في بناء سلاسل برومبت، مراقبة الأداء، وأتمتة تدفقات العمل مع نماذج اللغة الكبيرة.

الأداة الوصف الرابط
LangChain إطار شهير لبناء وكلاء وسلاسل برومبت Docs
LlamaIndex فهرسة واسترجاع المستندات داخل البرومبت Docs
PromptLayer تتبع إصدارات البرومبت وتحليل الأداء Docs
Flowise واجهة رسومية No‑Code لبناء تدفقات LangChain Docs
AutoGen مكتبة من Microsoft لإنشاء وكلاء متعاونين Docs
GPT‑Pilot مشروع مفتوح المصدر لتوليد تطبيقات كاملة Docs

مثال بايبلاين LangChain + Cloud Function

# main.py
from langchain import OpenAI, LLMChain
from langchain.prompts import PromptTemplate
import os

template = """أنت مساعد ذكي. أجب باختصار:
{question}"""
prompt = PromptTemplate(template=template, input_variables=["question"])

llm = OpenAI(temperature=0.2, openai_api_key=os.environ["OPENAI_API_KEY"])
chain = LLMChain(llm=llm, prompt=prompt)

def handler(request):
    q = request.args.get('q', 'ما هي هندسة الأوامر؟')
    answer = chain.run(question=q)
    return { "answer": answer }

احفظ هذا الملف كـ Cloud Function واضبط متغير البيئة OPENAI_API_KEY قبل النشر.

“Prompt engineering is evolving beyond manual typing. Tools now assist in crafting, testing, refining, and even generating prompts at scale.”

«تتطور هندسة الأوامر لتتجاوز الكتابة اليدوية. هناك أدوات تساعد على التصميم، والاختبار، والتحسين، وحتى توليد الأوامر بشكل آلي».

(Prompt Engineering v4 – Prompt Engineering Tools)

1. منصّات هندسة الأوامر (Prompt Engineering Platforms)

الأداة وصفها الرابط
PromptPerfect تحسين الأوامر تلقائيًا وتحليل الأداء promptperfect.jina.ai
PromptLayer تتبع تاريخ الأوامر وتحسين التفاعل مع النماذج promptlayer.com
FlowGPT منصة لتبادل الأوامر الجاهزة وتجربتها flowgpt.com

2. مستودعات الأوامر (Prompt Libraries)

المصدر المحتوى الرابط
Awesome ChatGPT Prompts (GitHub) قائمة ضخمة لأوامر جاهزة في مختلف المجالات github.com/f/awesome-chatgpt-prompts
PromptBase سوق لبيع وشراء الأوامر عالية الجودة promptbase.com
PromptHero أرشيف ضخم لأوامر Midjourney وChatGPT prompthero.com

3. التكامل البرمجي (API Integration)

يمكنك ربط واجهة OpenAI API مع أدوات أتمتة مثل Zapier أو Make.com لإنشاء أوامر ديناميكية وتشغيل الردود آليًا داخل تطبيقاتك الحالية.

مثال تطبيقي: إنشاء جدول يومي تلقائي للمستخدم
  1. فعّل تكامل Google Calendar داخل Zapier.
  2. أنشئ Zap يستقبل الأحداث الجديدة كل صباح.
  3. أضف خطوة OpenAI (GPT‑4) تمرّر قائمة مهام اليوم كنصّ داخل البرومبت.
  4. اطلب من النموذج صياغة جدول زمني مُحسَّن وتشذيبه إلى 300 كلمة.
  5. أرسل الجدول الناتج إلى المستخدم عبر بريد إلكتروني أو Slack.

4. مستقبل الأدوات

  • دمج الذكاء الاصطناعي مباشرةً في أدوات الكتابة والتصميم الشائعة (Notion, Canva, Word).
  • أدوات توليد أوامر تكيفية تتعلم من سلوك المستخدم السابق.
  • لوحات تحكم مدمجة لقياس تكلفة وجودة كل برومبت تلقائيًا.
تمرين تطبيقي:

اختر إحدى المنصّات أو المستودعات المذكورة، انسخ برومبت أعجبك، ثم عدّله ليصبح أكثر تخصصًا لك، واحفظه كنموذج شخصي لمهامك اليومية.

القسم الخامس: هندسة الأوامر متعددة الوسائط

التعامل مع النماذج متعددة الوسائط

النماذج متعددة الوسائط (Multimodal Models) هي نماذج متطورة تستطيع فهم ومعالجة أنواع متعددة من البيانات مثل النصوص والصور والصوت والفيديو. هذه القدرات تفتح آفاقًا جديدة لهندسة الأوامر تتجاوز النصوص فقط.

ملاحظة

عند العمل مع نماذج متعددة الوسائط، يجب التحقق أولاً من أنواع المدخلات التي يدعمها النموذج المستخدم، حيث تختلف النماذج في قدراتها على معالجة أنواع الوسائط المختلفة.

أنواع النماذج متعددة الوسائط

النوع المدخلات المخرجات أمثلة على التطبيقات
النص إلى الصورة نص وصفي صورة مولدة توليد الصور الفنية، التصميم، توضيح المفاهيم
الصورة إلى النص صورة وصف، تحليل، أو إجابات وصف المحتوى، تحليل الصور، استخراج النصوص
الصورة مع النص صورة + أسئلة/تعليمات نصية تحليل، إجابات تفاعلية الإجابة عن الأسئلة بناءً على الصور، تحليل المستندات
الفيديو مع النص مقطع فيديو + أسئلة/تعليمات تحليل، وصف، تلخيص تحليل الحركة، وصف الأحداث، استخراج المعلومات

أفضل الممارسات لهندسة الأوامر متعددة الوسائط

1. كن محددًا في وصف المهمة

عند العمل مع الصور أو الوسائط الأخرى، يجب توضيح بالضبط ما تريد من النموذج أن يفعله.

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

ربط المكونات المرئية بالعناصر النصية يعزز من فهم النموذج للمهمة المطلوبة.

فيما يلي صورة لمخطط بياني يوضح مبيعات شركة على مدار 5 سنوات. استخدم المعلومات في هذا المخطط للإجابة على الأسئلة التالية: 1. ما هو الاتجاه العام للمبيعات خلال هذه الفترة؟ 2. في أي عام كان هناك أكبر نمو في المبيعات مقارنة بالعام السابق؟ 3. هل هناك أي فترات انخفضت فيها المبيعات؟ ما هي هذه الفترات؟ 4. بناءً على هذه البيانات، ما هي توقعاتك للعام القادم؟
3. اطلب تحليلًا متعدد المستويات

وجه النموذج للنظر في مختلف جوانب الوسائط المقدمة، من الوصف السطحي إلى التحليل العميق.

بناءً على الصورة المرفقة لصفحة من كتاب طبي: 1. المستوى الأول - التعرف: اذكر جميع المصطلحات الطبية الظاهرة في الصورة. 2. المستوى الثاني - التصنيف: صنف هذه المصطلحات حسب المجال الطبي (تشريح، أمراض، علاج، إلخ). 3. المستوى الثالث - العلاقات: اشرح العلاقات بين المصطلحات المختلفة وكيف ترتبط معًا. 4. المستوى الرابع - التطبيق: اقترح سيناريو طبي واقعي يمكن أن تُستخدم فيه هذه المعلومات.
4. توجيه النموذج لمقارنة عناصر متعددة

عند العمل مع عدة صور أو وسائط، وجه النموذج لإجراء مقارنة محددة.

أمامك صورتان لتصميمين مختلفين لواجهة مستخدم لتطبيق جوال. قارن بينهما من حيث: 1. تنظيم العناصر والتسلسل البصري 2. سهولة الاستخدام والوصول للوظائف الأساسية 3. الجاذبية البصرية والألوان 4. ملاءمة التصميم للجمهور المستهدف (مستخدمون عاديون) ثم قدم توصيتك حول أي التصميمين أفضل مع شرح السبب، واقترح تحسينًا واحدًا على الأقل لكل تصميم.

تحديات هندسة الأوامر متعددة الوسائط

  • قد يكون لدى النموذج فهم محدود للتفاصيل الدقيقة في الصور المعقدة
  • بعض النماذج قد تواجه صعوبة في فهم النصوص داخل الصور بدقة
  • قد يكون الفهم السياقي أو الثقافي للصور محدودًا
  • تختلف قدرات النماذج بشكل كبير فيما يتعلق بمعالجة أنواع مختلفة من الوسائط

اختبار مهارات القسم الخامس

السؤال 1: ما الذي يميز النماذج متعددة الوسائط عن نماذج اللغة التقليدية؟

السؤال 2: أي من الأوامر التالية يعد الأكثر فاعلية عند العمل مع نموذج يمكنه معالجة الصور؟

السؤال 3: ما هي أفضل الممارسات عند كتابة أوامر للنماذج متعددة الوسائط؟ (اختر كل ما ينطبق)

السؤال 4: أي من التحديات التالية تواجه النماذج متعددة الوسائط؟

القسم السادس: أفضل الممارسات في هندسة الأوامر

الممارسات المثلى لتحسين أدائك في هندسة الأوامر

سنستعرض في هذا القسم مجموعة من أفضل الممارسات التي يمكن أن تساعدك على تحسين أدائك في هندسة الأوامر والحصول على نتائج أفضل من نماذج الذكاء الاصطناعي.

1. توفير أمثلة

"المثال هو أفضل معلم." تقديم أمثلة واضحة للنموذج يعتبر من أقوى الطرق للحصول على النتائج المرجوة.

حول النصوص التالية إلى تغريدات جذابة بحد أقصى 280 حرفًا: المثال 1: نص: "دراسة جديدة تشير إلى أن ممارسة التمارين لمدة 30 دقيقة يوميًا يمكن أن تحسن الذاكرة وتعزز القدرات الإدراكية." تغريدة: "🧠 30 دقيقة فقط من التمارين يوميًا = ذاكرة أقوى وتفكير أوضح! دراسة جديدة تكشف عن العلاقة القوية بين النشاط البدني والصحة العقلية. حان وقت الحركة! #صحة_العقل" حول هذه النصوص: 1. "تشير دراسة نُشرت في المجلة العلمية أن تناول الشوكولاتة الداكنة باعتدال يمكن أن يساعد في خفض ضغط الدم ويحسن صحة القلب بسبب محتواها من مضادات الأكسدة." 2. "أظهرت بيانات المناخ العالمية أن شهر يوليو 2023 كان أكثر الشهور حرارة منذ بدء تسجيل درجات معامل العشوائية قبل 150 عامًا، مما يؤكد المخاوف بشأن تسارع تغير المناخ."

2. التصميم بالبساطة

الأوامر البسيطة والواضحة غالبًا ما تكون أكثر فعالية من الأوامر المعقدة والمربكة.

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

"لا تحتاج أن تكون عالم بيانات أو مهندس تعلم آلي - يمكن للجميع كتابة البرومبت."

- مقتبس من الكتاب

هندسة البرومبت

هندسة البرومبت هي عملية تصميم مدخلات عالية الجودة توجه نماذج اللغة الكبيرة (LLMs) لإنتاج مخرجات دقيقة. تتضمن هذه العملية تحسين طول البرومبت وتقييم أسلوب الكتابة وهيكل البرومبت بالنسبة للمهمة المطلوبة.

تذكر دائماً:

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

مفاهيم أساسية:

  • البرومبت هو المدخل المقدم للنموذج لإنتاج استجابة أو تنبؤ.
  • هندسة البرومبت هي عملية تكرارية تتطلب التجريب والتحسين المستمر.
  • البرومبت غير المناسب يمكن أن يؤدي إلى استجابات غامضة أو غير دقيقة.

أفضل ممارسات هندسة البرومبت

تقديم الأمثلة

توفير أمثلة (one-shot / few-shot) داخل البرومبت يساعد النموذج على فهم النمط المطلوب ومحاكاته.

نصيحة: استخدم 3-5 أمثلة متنوعة وعالية الجودة للمهام المعقدة.

التصميم ببساطة

يجب أن تكون البرومبتات موجزة وواضحة وسهلة الفهم للمستخدم والنموذج معاً.

قاعدة: إذا كان البرومبت مربكاً بالنسبة لك، فسيكون مربكاً للنموذج أيضاً.

التحديد الدقيق للمخرجات

كن محدداً بشأن المخرجات المرغوبة. التعليمات المختصرة قد لا توجه النموذج بشكل كافٍ.

مثال: "أنشئ مقال مدونة من 3 فقرات حول أفضل 5 أجهزة ألعاب فيديو" بدلاً من "أنشئ مقال حول أجهزة ألعاب الفيديو".

استخدام التعليمات بدلاً من القيود

ركز على التعليمات الإيجابية بدلاً من القيود السلبية لتوجيه النموذج بشكل أفضل.

أفضل: "تحدث فقط عن الجهاز والشركة المصنعة والسنة والمبيعات" بدلاً من "لا تذكر أسماء الألعاب".

ممارسات رئيسية إضافية

الممارسة الوصف نصيحة عملية
التحكم في عدد الرموز (tokens) ضبط طول الاستجابة المولدة من النموذج. يمكن ضبطه في الإعدادات أو داخل البرومبت: "اشرح الفيزياء الكمية في رسالة بطول تغريدة".
استخدام المتغيرات في البرومبت جعل البرومبت ديناميكياً وقابلاً لإعادة الاستخدام مع مدخلات مختلفة. استخدم متغيرات لتخزين المعلومات المتكررة وجعل البرومبت أكثر مرونة في التطبيقات البرمجية.
التجريب مع صيغ المدخلات استكشاف تنسيقات وأساليب كتابة مختلفة للبرومبت. جرب البرومبت على شكل سؤال، أو بيان، أو تعليمات للحصول على نتائج مختلفة.
مزج الفئات في أمثلة few-shot خلط فئات الاستجابة المحتملة في أمثلة few-shot. ابدأ بـ 6 أمثلة few-shot وابدأ باختبار الدقة من هناك.
التكيف مع تحديثات النموذج البقاء على اطلاع بتغييرات هيكل النموذج والبيانات والقدرات. جرب إصدارات النموذج الأحدث وعدل البرومبتات للاستفادة من ميزات النموذج الجديدة.
التجريب مع تنسيقات المخرجات استخدام تنسيقات هيكلية مثل JSON أو XML للمهام غير الإبداعية. البنية المنظمة تجبر النموذج على الالتزام بهيكل محدد وتقليل الهلوسة.

أفضل ممارسات تقنيات محددة

ممارسات Chain of Thought (CoT)

  • وضع الإجابة بعد خطوات التفكير ضروري لأن توليد التفكير يغير الرموز التي يحصل عليها النموذج عند التنبؤ بالإجابة النهائية.
  • ضبط درجة معامل العشوائية (temperature) على 0 عند استخدام CoT.
  • CoT مبني على فك التشفير الجشع (greedy decoding)، للتنبؤ بالكلمة التالية في تسلسل على أساس أعلى احتمال.

توثيق محاولات البرومبت

من الأهمية بمكان توثيق محاولات البرومبت الخاصة بك بتفاصيل كاملة حتى تتمكن من معرفة ما نجح وما لم ينجح مع مرور الوقت.

نموذج مقترح لتوثيق البرومبت:

الهدف النموذج درجة معامل العشوائية البرومبت المخرجات الملاحظات
تصنيف المراجعات gemini-pro 0.1 صنف المراجعة كإيجابية أو سلبية أو محايدة... إيجابية يعمل بشكل جيد مع المراجعات القصيرة
تصنيف المراجعات gemini-pro 0.5 صنف المراجعة كإيجابية أو سلبية أو محايدة مع شرح سبب... إيجابية - لأن... يقدم تفسيرات أفضل لكن يستغرق وقتًا أطول

أمثلة عملية

مثال 1: تحسين البرومبت

قبل التحسين:

أنا في نيويورك الآن، وأود معرفة المزيد حول المواقع الرائعة. أنا مع طفلين عمرهما 3 سنوات. أين يجب أن نذهب خلال إجازتنا؟

⨯ غير واضح ومفرط في التفاصيل غير الضرورية

بعد التحسين:

تصرف كمرشد سياحي. صف أماكن رائعة للزيارة في مانهاتن بنيويورك مع طفل عمره 3 سنوات.

✓ موجز، محدد، وواضح مع تحديد دور للنموذج

مثال 2: استخدام تنسيق JSON

البرومبت:

صنّف مراجعات الأفلام كإيجابية أو سلبية أو محايدة. أعد استجابة JSON صالحة:

المراجعة: "فيلم Her هو دراسة مزعجة تكشف الاتجاه الذي تتجه إليه البشرية إذا سُمح للذكاء الاصطناعي بالتطور دون رقابة. إنه مزعج لدرجة أنني لم أستطع متابعته."

المخطط: ```
MOVIE: {
  "sentiment": String "POSITIVE" | "NEGATIVE" | "NEUTRAL",
  "name": String
}
MOVIE REVIEWS: {
  "movie_reviews": [MOVIE]
}
```

استجابة JSON:
                    

المخرجات:

```
{
  "movie_reviews": [
    {
      "sentiment": "NEGATIVE",
      "name": "Her"
    }
  ]
}
```
                    

مثال 3: Chain of Thought (CoT)

البرومبت:

عندما كان عمري 3 سنوات، كان عمر شريكي 3 أضعاف عمري. الآن، عمري 20 عامًا. كم عمر شريكي؟ دعنا نفكر خطوة بخطوة.
                    

المخرجات:

1. لنفترض أن عمري الحالي هو "x" سنة.
2. عندما كان عمري 3 سنوات، كان عمري 3 سنوات.
3. كان عمر شريكي في ذلك الوقت 3 أضعاف عمري، مما يعني أن عمر شريكي كان 3 * 3 = 9 سنوات.
4. الآن، عمري 20 عامًا، مما يعني أن عمري زاد بمقدار 20 - 3 = 17 سنة منذ أن كان عمري 3 سنوات.
5. بما أن عمر شريكي كان 9 سنوات عندما كان عمري 3 سنوات، وقد زاد عمري بمقدار 17 سنة، فيجب أن يكون عمر شريكي قد زاد أيضًا بمقدار 17 سنة.
6. لذا، عمر شريكي الآن هو 9 + 17 = 26 عامًا.
                    

تقنيات البرومبت الرئيسية

تقنيات البرومبت التي تمت مناقشتها في الكتاب

Zero Prompting

Few-shot Prompting

System Prompting

Role Prompting

Contextual Prompting

Step-back Prompting

Chain of Thought

Self-consistency

Tree of Thoughts

يقدم الكتاب مجموعة متنوعة من تقنيات البرومبت التي يمكن استخدامها حسب المهمة والمتطلبات الخاصة بك. كل تقنية لها مزاياها وحالات استخدام محددة.

ملاحظة مهمة:

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

بطاقة مرجعية سريعة (Cheat‑Sheet)

Technique شرح مختصر (Brief)
Temperature درجة معامل العشوائية (Temperature)
Top‑K تصفية بأعلى K (Top‑K)
Top‑P التغطية الاحتمالية (Top‑P)
Zero‑Shot بدون أمثلة (Zero‑Shot)
Few‑Shot بأمثلة قليلة (Few‑Shot)
Chain of Thought سلسلة التفكير (Chain of Thought)
ReAct الاستدلال والفعل (Reason+Act) (ReAct)
Tree of Thoughts شجرة الأفكار (Tree of Thoughts)
Automatic Prompt Engineering الهندسة التلقائية للأوامر (Automatic Prompt Engineering)
Role Prompt أمر تحديد الدور (Role Prompt)
System Prompt أمر النظام (System Prompt)
Instruction Prompt أمر التعليمات (Instruction Prompt)
Context Prompt أمر السياق (Context Prompt)
Self‑Consistency الاتساق الذاتي (Self‑Consistency)
Step‑Back خطوة للخلف (Step‑Back)
Code Prompting توجيه الشيفرة (Code Prompting)
Multimodal Prompting توجيه متعدد الوسائط (Multimodal Prompting)

خلاصة الكتاب

ناقش هذا الكتاب هندسة البرومبت وتعلمنا مجموعة متنوعة من تقنيات البرومبت، مثل:

  • التوجيه العام (Zero Prompting)
  • التوجيه بأمثلة قليلة (Few-shot Prompting)
  • توجيه النظام (System Prompting)
  • توجيه الدور (Role Prompting)
  • توجيه السياق (Contextual Prompting)
  • توجيه التفكير بخطوة للخلف (Step-back Prompting)
  • سلسلة التفكير (Chain of Thought)
  • الاتساق الذاتي (Self-consistency)
  • شجرة الأفكار (Tree of Thoughts)
  • الاستدلال والعمل (ReAct)

كما نظرنا في طرق أتمتة البرومبتات ثم ناقش الكتاب تحديات الذكاء الاصطناعي التوليدي مثل المشكلات التي يمكن أن تحدث عندما تكون البرومبتات غير كافية. وختمنا بأفضل الممارسات حول كيفية أن تصبح مهندس برومبت أفضل.

الرسالة الرئيسية:

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

اختبر معلوماتك

1. ما هي ميزة توثيق محاولات البرومبت المختلفة؟

2. أي من التالي يُعد مثالاً على "استخدام التعليمات بدلاً من القيود"؟

3. ما هي درجة معامل العشوائية (temperature) الموصى بها عند استخدام Chain of Thought؟

4. كم عدد الأمثلة المقترح البدء بها في تقنية few-shot؟

5. ما هي الفائدة الرئيسية من طلب مخرجات بتنسيق JSON أو XML؟

نشاط عملي

قم بتطبيق ما تعلمته من هذه الدورة بإكمال النشاط التالي:

تحسين البرومبت:

فيما يلي برومبت غير فعال. استخدم المبادئ التي تعلمتها لتحسينه:

أريد معرفة عن الذكاء الاصطناعي وكيف يعمل وما هي استخداماته وإيجابياته وسلبياته وهل سيسيطر على العالم؟ وما هو مستقبله؟

اكتب البرومبت المحسّن هنا...

نصائح للتحسين:

  • قسّم السؤال المركب إلى أسئلة أصغر وأكثر تركيزًا
  • حدد النمط المرغوب للمخرجات (مقال، نقاط، جدول مقارنة، إلخ)
  • حدد دورًا للنموذج (مثلاً: خبير تقني، أستاذ جامعي، صحفي علمي)
  • أضف تعليمات محددة حول طول ومستوى المحتوى المطلوب

هندسة البرومبت: رحلة التعلم المستمر

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

استمر في التعلم

جرّب باستمرار

وثّق نتائجك

ملخص مقتبس من كتاب "هندسة البرومبت" للمؤلف Lee Boonstra

تلخيص: عبدالله سالم

Linkdin: Abdullah Salem