أساسيات كتابة الأوامر
درس 2 من 3
2أساسيات كتابة الأوامر (Prompting Basics)
كتابة الأمر (Prompt) هي فعليًا واجهة برمجة التطبيقات (API) بينك وبين النموذج: كلما كانت دقيقة، كانت النتيجة أقرب لما تريد فعلاً.
ماذا تشاهد في الرسم: طلب جيد يبدأ بالسياق، ثم المهمة، ثم الصيغة المطلوبة، ثم تقرأ الجواب وتحسّن الطلب.
خارطة هذا الجزء
المفاهيم بالترتيب، اضغط أيًّا منها للقفز إليه:
طريقان إلى نفس الفكرة
كتابة الأمر للنموذج مثل إعطاء تعليمات لزميل جديد لم يعرفك من قبل. لو قلت له «اكتب تقريرًا» سيخمّن كل شيء. لو قلت «اكتب تقريرًا من صفحة واحدة لمدير غير تقني، بثلاث نقاط وجدول» ستحصل على ما تريد. الوضوح هو كل السر.
الأمر prompt هو المدخل الوحيد للنموذج، فعامله كمواصفة: الدور والسياق، والمهمة، والقيود، وصيغة المخرج (قائمة أو JSON أو جدول)، وأمثلة إن أمكن. قسّم المهمة المعقدة إلى خطوات متتالية، وحسّن الأمر بالتجربة وقارن النتائج بدل الاكتفاء بأول جواب.
ماذا تحتاج قبل هذا الجزء؟
🧭فهم الاستخدام المسؤول
المبادئ الأربعة من الجزء الأول (الشفافية، الفهم قبل النسخ، التحقق، الخصوصية)، لأن كتابة أوامر فعّالة بلا إطار أخلاقي قد تعني استخدامًا ضارًا أكثر كفاءة.
✍️القدرة على صياغة ما تريد بوضوح
مهارة تحويل فكرة غامضة في ذهنك إلى جملة واضحة، هذا لا يتطلب خبرة تقنية بل تفكيرًا منظّمًا في ما تحتاجه فعلاً قبل الكتابة.
🔤فهم أولي لكيف يستجيب النموذج
معرفة أن النموذج لا يقرأ نيّتك بل يستجيب حرفيًا لما كتبته، هذا المبدأ الأساسي يُفسّر لماذا الوضوح في الأمر ليس "نصيحة لطيفة" بل ضرورة حقيقية.
الفكرة الجوهرية: الوضوح يقلّل التخمين
النموذج لا "يقرأ نيتك"، هو يستجيب حرفيًا لما كتبته. كل غموض في الأمر يترك مساحة للنموذج ليخمّن، وتخمينه قد لا يطابق ما تقصده. هذا التخمين ليس عشوائيًا، بل يعتمد على الأنماط الأكثر شيوعًا وتكرارًا في بيانات تدريبه؛ فإن كان سؤالك الغامض يطابق إحصائيًا عدة سياقات مختلفة، سيختار النموذج التفسير الأكثر شيوعًا بينها، وهو ليس بالضرورة ما كنت تقصده أنت تحديدًا.
1حدّد السياق
أخبر النموذج من أنت وماذا تحاول تحقيق ("أنا طالب أتعلم C، أشرح لي...")، لا مجرد سؤال مجرّد بلا خلفية.
2حدّد الصيغة المطلوبة
هل تريد فقرة، نقاط، جدولًا، أم كودًا فقط؟ اطلب الصيغة صراحة بدل ترك النموذج يخمّنها.
3قسّم المهام المعقّدة
أمر واحد يطلب خمس مهام مختلفة دفعة واحدة عادة ما يُنتج نتيجة سطحية لكل واحدة؛ مهام منفصلة ومتسلسلة تُنتج عمقًا أكبر.
4كرّر وحسّن
الأمر الأول نادرًا ما يكون الأفضل، راجع النتيجة، حدّد ما ينقصها بدقة، واطلب تعديلًا محدَّدًا بدل إعادة الصياغة من الصفر.
لماذا تعمل هذه الأربعة مبادئ فعليًا، لا فقط كنصيحة عامة؟ لنفهم ذلك، تذكّر من الجزء الثالث أن النموذج يتنبأ بالكلمة التالية بالاعتماد على كل الكلمات التي سبقتها في نفس المحادثة، ما يُسمّى "نافذة السياق" (Context Window). عمليًا، كل كلمة إضافية تكتبها في أمرك تدخل ضمن هذه النافذة وتُعاد معالجتها رياضيًا مع كل كلمة أخرى في النص عبر آلية تُسمّى "الانتباه" (Attention)، بحيث تُغيّر توزيع الاحتمالات الذي يحدّد الكلمة التالية التي سيختارها النموذج. هذا يفسّر مباشرة لماذا "حدّد السياق" فعّال فعليًا لا مجازيًا: جملة "أنا مبتدئ في C" تُغيّر رياضيًا احتمالية أن يختار النموذج مصطلحات متقدّمة في إجابته، لأنها كلمات إضافية مؤثّرة ضمن نافذة السياق نفسها، لا مجرد "توجيه لطيف" بلا تأثير حقيقي على الحساب الداخلي. وبالمثل، "قسّم المهام المعقّدة" فعّال لأن كل إجابة يولّدها النموذج محكومة عمليًا بطول معيّن وبكمّ "تركيز" توزّعه آلية الانتباه على كل جزئية من الطلب؛ فإن طلبت خمس مهام مختلفة دفعة واحدة، يتوزّع هذا التركيز الحسابي على خمس اتجاهات مختلفة فيضعف كل واحد منها، تمامًا كما يضعف تركيز الإنسان نفسه عند تعدد المهام دفعة واحدة بدل التسلسل عليها واحدة تلو الأخرى.
مثال محلول: من أمر غامض إلى أمر دقيق
| أمر ضعيف | لماذا يفشل | أمر محسَّن |
|---|---|---|
| "اشرح لي المؤشرات" | لا يحدد مستوى المعرفة الحالي، ولا الصيغة المطلوبة، ولا اللغة | "أنا مبتدئ في C أعرف المتغيرات والدوال فقط. اشرح لي المؤشرات بمثال كود بسيط بالعربية، بدون استخدام مصطلحات متقدّمة" |
| "اكتب لي كود فرز" | لا يحدد اللغة، ولا نوع الفرز، ولا الهدف من الطلب | "اشرح لي منطق Bubble Sort خطوة بخطوة بمثال يدوي على مصفوفة صغيرة، دون كتابة الكود الكامل، أريد أفهم المنطق أولًا" |
لاحظ أن الأمر المحسَّن في الجدول نادرًا ما يظهر من أول محاولة، عمليًا هو نتاج حلقة تكرار قصيرة: تكتب أمرًا، تقرأ الناتج، تحدّد بدقة أين قصّر (مستوى غير مناسب؟ تفاصيل ناقصة؟ صيغة غير مطلوبة؟)، ثم تعدّل أمرك بناءً على هذا التحديد بدل إعادة كتابته من الصفر. مهم أن تعرف أن هذا التحسّن لا يعني أن النموذج "تعلّم" من ملاحظتك بشكل دائم، هو فقط يرى سياقًا إضافيًا ضمن نفس المحادثة يُغيّر توزيع احتمالاته للرد التالي؛ في محادثة جديدة تمامًا، يعود للبداية دون أي أثر من تلك الملاحظة.
شكل 1، حلقة التحسين التكراري: كل تعديل يضيف سياقًا جديدًا ضمن المحادثة نفسها، لا تعلّمًا دائمًا في النموذج.
مثال تطبيقي: تحسين أمر على ثلاث مراحل
لنتتبّع كيف يتطوّر أمر حقيقي عبر ثلاث محاولات، لاحظ أن كل تعديل يستهدف نقصًا محددًا في النتيجة السابقة، لا إعادة صياغة عشوائية:
| المحاولة | الأمر المكتوب | ما الذي كان ينقص | كيف تم التحسين |
|---|---|---|---|
| 1 | "اشرح لي الـ API" | لا سياق (أي لغة؟ أي مستوى؟ أي نوع API؟) | أضاف السياق والمستوى |
| 2 | "أنا مبتدئ في Python، اشرح لي ما هو REST API بأمثلة بسيطة" | جيد لكن الصيغة غير محدّدة، حصل على فقرات طويلة جدًا | حدّد الصيغة والطول |
| 3 | "أنا مبتدئ في Python أعرف الدوال والمكتبات فقط. اشرح REST API في 5 نقاط مختصرة، مع مثال كود بسيط يستخدم مكتبة requests لجلب بيانات من API عامة مجانية" | ، | ✅ أمر دقيق: سياق + مستوى + صيغة + طول + مثال محدد |
خرافة مقابل واقع
| الخرافة | الواقع |
|---|---|
| الأوامر الأطول دائمًا أفضل من القصيرة | الدقة أهم من الطول، أمر قصير ومحدّد يتفوّق على أمر طويل ومشتّت. الزيادة المفيدة هي التي تضيف سياقًا أو تحديدًا فعليًا، لا كلامًا عامًا. |
| نموذج أذكى لا يحتاج أوامر جيدة، "سيفهم لوحده" | حتى أقوى النماذج تعتمد فقط على ما كُتب فعليًا، أمر غامض لنموذج قوي يُنتج إجابة عامة أكثر إتقانًا، لكن ليس بالضرورة أكثر فائدة لحاجتك المحدّدة. |
| النموذج يتذكّر تفضيلاتي بين المحادثات المختلفة | كل محادثة جديدة تبدأ من الصفر، النموذج يرى فقط ما هو مكتوب ضمن نافذة السياق الحالية ولا يحتفظ بأي شيء من محادثة سابقة (ما لم تُفعَّل ميزة ذاكرة مخصصة). |
تطبيقات عملية في الواقع
🐛تصحيح الأخطاء البرمجية
بدل طلب "أصلح الكود"، صِف الخطأ بدقة ("الدالة تُرجع None بدل القائمة المرتّبة")، هذا السياق المحدّد يُنتج تشخيصًا أدق بكثير من مجرد لصق الكود.
📝الكتابة والتحرير
اطلب "راجع هذه الفقرة من حيث الوضوح والإيجاز، واقترح بديلًا لكل جملة غامضة" بدل "حسّن النص"، التحديد في نوع التحسين يمنع التعديلات العشوائية.
📊تحليل البيانات
حدّد نوع التحليل المطلوب بدقة: "احسب المتوسط والانحراف المعياري لعمود المبيعات، ثم اعرض النتيجة في جدول" أوضح بكثير من "حلّل البيانات".
📚تعلّم مفاهيم جديدة
اطلب "اشرح [المفهوم] لشخص يعرف [ما تعرفه مسبقًا] فقط، بمثال ملموس واحد، بدون مصطلحات لم أدرسها بعد"، هذا يُنتج شرحًا مناسبًا لمستواك تحديدًا.
تعمّق: لماذا تفشل الأوامر وكيف تُحسَّن
الأمر الجيد ليس سحرًا لغويًا، بل تعليمات تحدد السياق والتوقعات والقيود. هنا نفكّك أسباب فشل الأوامر، ونبني عادة تحسينها بالتكرار بدل ترقيع المخرجات يدويًا.
تشريح الأمر الجيد
شكل 2، عناصر الأمر: ليس كل أمر يحتاج كلها، لكن غياب المهمة أو السياق أشهر أسباب الفشل.
لماذا تفشل الأوامر؟
| نمط الفشل | مثال ضعيف | ما الذي ينقصه؟ |
|---|---|---|
| غموض النية | "اشرح لي هذه الدالة" | لأي مستوى؟ لأي غرض؟ |
| سؤال أوسع من اللازم | "ما أفضل طريقة لتنظيم المشروع؟" | أي نوع مشروع؟ كم عدد الأشخاص؟ |
| حل بلا قيود | "اكتب سكربت يحذف الملفات القديمة" | أي مجلد؟ كم "قديم"؟ هل يُسمح بالحذف النهائي؟ |
في الحالات الثلاث لا تفشل لأن النموذج ضعيف، بل لأن التعليمة ناقصة فيخمّن النموذج نيتك، وغالبًا يخمّن خطأ. القيود تضيّق المساحة التي يستطيع النموذج أن يخترع فيها تفاصيل غير لازمة، ولذلك تقلّل الاختلاق.
الأدوار: تغيّر الأسلوب لا الخبرة
قولك "تصرّف كمراجع كود صارم" يغيّر نبرة النموذج وافتراضاته ودرجة حسمه، لكنه لا يمنحه معرفة لم يكن يملكها. وقد يضخّم الخطأ إذا شجّع الدور على الثقة الزائدة. استخدم الدور لتحديد زاوية النظر، ثم تحقّق من المضمون بنفسك.
حلقة التحسين: أصلح الأمر لا الناتج
شكل 3، تحسين الأمر بالتكرار: إصلاح الناتج يدويًا يخفي المشكلة الحقيقية.
طلب النقد الصريح
النماذج تميل افتراضيًا إلى الموافقة والمجاملة. إن أردت نقدًا فاطلبه صراحة، وحدّد نوعه: نقاط الضعف، الحالات الحدّية، الافتراضات الخفية. قارن: "هل هذا التصميم جيد؟" (يدعو للمجاملة) بـ"ابحث عن ثلاث مشكلات محتملة في هذا التصميم وحالتين حدّيتين قد تكسره" (يدعو للنقد).
| الأمر الأول | الأمر المحسَّن |
|---|---|
| "اشرح list comprehension في بايثون" | "أنا أعرف حلقات for لكني لم أرَ list comprehension من قبل. اشرحها بمثال واحد يحوّل حلقة for إلى سطر واحد، دون ذكر generators." |
| "خطّط لدراستي" | "لدي 6 ساعات أسبوعيًا ومادتان؛ اقترح جدولًا من أربعة أسابيع بصيغة جدول، وعيّن يومًا للمراجعة." |
نسخ قوالب أوامر جاهزة دون فهم سبب نجاحها. القالب يساعد لمرة واحدة؛ فهم لماذا يعمل (سياق، قيد، صيغة) يساعدك في كل مرة.
جرّب بنفسك
لماذا يُفيد أن تكتب «أنا مبتدئ في C» في أول الأمر؟
كل كلمة في الأمر تدخل نافذة السياق وتؤثر عبر الانتباه في الكلمة التالية. السياق إذن ليس مجاملة بل مُدخل حسابي.
طلبت خمس مهام مختلفة في أمر واحد فجاءت كل واحدة سطحية. ما العلاج؟
التركيز يتوزع على اتجاهات كثيرة فيضعف كل واحد. المهام المنفصلة المتسلسلة تعطي عمقًا أكبر.
جاء الجواب قريبًا لكن ينقصه مثال. ما الخطوة الأذكى؟
الأمر الأول نادرًا ما يكون الأفضل. راجع، حدّد ما ينقص بدقة، واطلب تعديلًا محددًا.
بطاقات مراجعة سريعة
تحقق من فهمك
لو أردت شرح مفهوم صعب بمستوى مبسّط جدًا، أي جزء من الأمر يجب تحديده أولًا؟
مستوى معرفتك الحالي والمصطلحات التي تفهمها بالفعل، بدون هذا السياق، قد يستخدم النموذج مصطلحات متقدّمة تفترض معرفة لا تملكها بعد.
لماذا يُنصح بتعديل الأمر السابق بناءً على نقص محدد بدل إعادة كتابته من الصفر؟
لأن التعديل المستهدف يحافظ على الأجزاء التي عملت بشكل صحيح ويُصلح فقط النقطة المحددة، إعادة الكتابة من الصفر قد تُفقدك سياقًا كان يعمل جيدًا بالفعل، وتُنتج مشاكل جديدة مختلفة.
ما الفرق بين تقنية Zero-shot وتقنية Few-shot في كتابة الأوامر، ومتى تستخدم كل واحدة؟
Zero-shot تعطي تعليمات مباشرة بدون أمثلة، مناسبة للمهام البسيطة والواضحة. Few-shot تُعطي أمثلة مُدخل/مُخرج قبل الطلب الفعلي، مناسبة عندما تحتاج صيغة محددة أو سلوكًا معيّنًا يصعب وصفه بالكلمات وحدها.
اكتشف الأخطاء في هذا الأمر: «اكتب لي شيئًا عن الخوارزميات، وأرجو أن تكون ذكيًا بما يكفي لتفهم ما أقصد، واشرح لي Python و C وقارن بينهما واختبرني في كل ما سبق».
(1) يفترض أن النموذج سيقرأ نيّتك، بينما حتى الأقوى يعتمد على المكتوب فقط. (2) لا يحدد السياق ولا مستواك ولا الصيغة المطلوبة. (3) يجمع عدة مهام (شرح ومقارنة واختبار) في أمر واحد فيتوزّع «الانتباه» ويضعف كل جزء. الإصلاح: حدّد مستواك وهدفك والصيغة، ثم قسّم المهام إلى أوامر متسلسلة وعدّلها بحسب النقص.
أعد كتابة هذا الأمر بإضافة سياق وقيد وصيغة: "اشرح SQL".
مثال: "أنا مبتدئ أعرف جداول Excel؛ اشرح SELECT و WHERE بمثال واحد على جدول طلاب، في خمس نقاط قصيرة، دون ذكر JOIN."
مصادر هذا الدرس
مرتّبة بالنوع. ابدأ بالتوثيق الرسمي إذا تبي المرجع الدقيق، وبالمقال أو الفيديو إذا تبي الشرح أولًا.
توثيق رسمي2
خلّصت الدرس؟
سجّل الدخول ليُحفظ تقدّمك.