حابب ان انا اتكلم شويه عن ال Prompt Engineering بالتفصيل شويه
دليل عملي لفهم Prompt Engineering وليه بتعتبر Engineering، مع شرح Trial and Error وSystems Thinking وRAG وطرق اختبار وتحسين الـ Prompts ورفع موثوقية نتائج LLMs.

الكل عارف اكيد يعني اي Prompt Engineering ولكن مش عارف هي لي اصلا Engineering !!
طيب الاول ال Prompt Engineering هي اصلا الطريقه بتاع التواصل بينا احنا وبين ال LLM عشان نطلع ونوصل لاحسن نتيجه
طيب ال Engineering جت من اكتر من حاجه هنا زي:
Trial and Error
ال LLMs ميزتها انك تقدر تعمل Restart وتفضل تعيد من الاول وجديد عكس البشر وده لوحده يسمح لينا اننا نجرب نجرب حلول كتير من غير مفي حل من الي قبل كده ياثر علي الحل الجديد فالقدره علي التجريب والتصميم ده اصلا اساس الجانب الهندسي
Systems Thinking
احنا مش مجرد بنكتب Prompt وخلصنا لا احنا المفرض اصلا بنفكر هو هيشتغل ازاي مع السستم الحالي بتاعنا فال SAAS مثلا بيكون في اكتر من طريقه واكتر من Prompt عشان بس نمانيج التركيب الاخير بتاع ال Prompt Builder الي هيعمل ال System Prompt النهائي الي اليوزر لما هيتكلم مع الموديل الي جوه السستم الي عندنا الكويري او الكلام بتاعه ده هيدخل جوه ال System Prompt ده وهيشتغل بقا انه يتعمل Prompt كامل وبعد كده ال Prompt Builder هيشتغل ويعمل ال Prompt الكامل عشان ال LLM ترد عليه
Model programming and systems design
لازم يكون في تفكير مش مجرد فكتابه ال Prompt والتكامل مع السستم وخلاص لا لازم كمان المهندس يفكر فمصادر الداتا وده بيدودينا علي تقنيات زي ال RAG وكمان بيدخلنا فمعضله مهمه جدا وهي ال Latency وكمان حجم الداتا اصلا الي هيدخل والي هيطلع من ال LLM
Code discipline
زي مفي Version Control بنتابع بيها الاكواد احنا برده نستخدمها في متابعه ال Prompts وال Versions بتاع ال Prompts لان تسجيل الملاحظات والتجارب بتاع كل Prompt اتكتب مهم جدا جدا فمعرفه المشاكل والحلول اسرع وكمان لو في مشكله حصلت هنقدر نرجع لاحسن Prompt كان شغال وموجود ونبدا من عنده بكل سهوله
طيب ازاي تبقا Prompt Engineer شاطر !
- لازم تكون كتابتك واضحه لل LLM وتكون موصل الفكره المراده نتيجتها بطريقه واضحه جدا "وعلي فكره مش معني انك حد بيعرف يتكلم يبقا ال LLM ممكن تفهمك احسن من غيرك لا خالص مش شرط لان الامر معتمد علي الوضوح ودقه الوصف مش قدره الكتابه"
- لازم تكون عندك القدرة والصبر علي ال Iteration لان انت مش هتكتب ال Prompt بطريقه كويسه جدا من اول مره
- اتوقع اسوا سيناريوهات واغربها يعني مثلا انت بتخلي ال LLM تستخرج من الكلام الي هيدخلها اي كلمه بتبدا بحرف ال M فانت تروح باعت ليها الجمل مش بتبدا اصلا بحرف ال M وتشوف النتيجه بتاعها عشان تبدا تعرف فين المشكله وتحلها
- اتعامل انك اليوزر وافهم السلوك الحقيقي لان اليوزر مش بيبعت لل LLM الكلام بطريقه منسقه واغلب الوقت مش بيحط علامات ترقيم فلازم ده تكون حاطه فالحسبان
- اتعامل ك machine learning engineer قبل متدرب الموديل بتفكر بتظبط الداتا بتاعه الاول ديما وبتتاكد كويس جدا انها خلاص كويسه وصح جدا عشان تدرب الموديل صح نفس الحاجه فال Prompt Engineering ولكن فالنتيجه الي بتطلع من ال LLM اليوزر مثلا قاله فكر خطوه بخطوه لازم تشوف النتيجه هل فعلا هو فكر خطوه بخطوه بطريقه صح فعلا يعني النتيجه صح والتفكير والفلو صح ؟
ال Theory of Mind
الاشخاص بتفكر بطريقه مختلفه هو مفكر ان المعرفه الي عنده هي هي الي عند ال LLM وده غلط دي مشكله ال Curse of Knowledge يعني انت مش مدي اصلا ال LLM المصدر متوقع منها ترد زي مدماغك عايزه !! مهي مش انت هي معتمده اصلا علي داتا جواها ولكن لو انت عارز الرد يطلع بشكل معين مناسب لحاجتك انت لازم تديها مصادرك انت وده اصلا جزء برده من اجزاء ال RAG الي اصلا بتحل مشكله زي دي وده هنتكلم عنه بالتفصيل اتك هنا هتروح هناك مباشر
في شويه تكنيكس ممكن تستخدمها مفيده جدا وبتعالج الاخطاء
- اطلب من ال LLM انها تنتقد ال Prompt الي انت عملته وتقوله انه انه مش يجاوب او يرجع النتيجه وخليه يرجعلك النقط المبهمه بالنسبه له والي هو مش فاهمها
- خلي ال LLM تتعلم من الاخطاء يعني لما انت تبعت ال Prompt لل LLM وهي تطلع فالنتيجه مشكله قولها تعدل ال Prompt الي انت اصلا بعته ليها بحيث انها متقعش فالمشكله دي تاني وعلي فكره فاغلب الاوقات فعلا بتحل المشكله
طيب هل اثق فالرد بتاع ال LLM ؟
اكيد لا ولكن انت اضغط عليه واختبره كويس اوي عشان تتاكد من الموثوقيه بالاخص وقت ال Out of distribution
المدارس والتنوع
تقمص الشخصيه
في مدارس كتير هنا في الي بيقول قول لل LLM انت دورك مثلا سينيور سوفتوير انجنير وعايزك تساعدني ..... وفي انك تبعت مباشر لل LLM لان المستوي الي وصلت له ال LLMs بقت قادره انها تفهم انت بتتكلم عن اي انا عن نفسي من المدرسه الي ببعت للموديل واقوله مثلا انت لو سينيور سوفتوير انجنير هتعمل اي فالموقف ده او هتلاقي المشاكل باي طريقه مثلا ! انا بخلي ال LLM تتعامل فمود ال Simulation اكنها متقمصه الدور ولكن بشكل غير مباشر
ملاحظه مهمه جدا :
- خد بالك ان في غلطه شائعه ناس كتير جدا جدا بتقع فيها انها تجبر ال LLM علي الاختيار ولكن الاحسن ديما اننا نقول لل LLM ان لو حصل حاجه غير متوقعه وهو مش متاكد منها يرد ويقول انه مش متاكد وبالتالي هنحمي الجوده بتاع الداتا وهيساعدنا نعرف المشاكل برده وطبها نطبق عليها الكلام الي قولناه فوق
Written by
Mohamed Alawakey
ML & AI Engineer documenting practical decisions from building RAG, LLM, machine-learning, and FastAPI systems.
