أحمد حايس
الرئيسيةمن أناالدوراتالمدونةسوق الأوامرالمناهج والباقاتالشركاء
أحمد حايس

دورات عربية متخصصة في التقنية والبرمجة والذكاء الاصطناعي.

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

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

المنصة

  • الرئيسية
  • من أنا
  • الدورات
  • المناهج والباقات
  • سوق الأوامر
  • المدونة

الدعم

  • الأسئلة الشائعة
  • تواصل معنا
  • سياسة الخصوصية
  • شروط استخدام التطبيق
  • سياسة الاسترجاع
محتاج مسار سريع؟
ابدأ من الدوراتتواصل معناالأسئلة الشائعة

© 2026 أحمد حايس. جميع الحقوق محفوظة.

الرئيسيةالدوراتالمناهجالمدونةالدخول
الذكاء الاصطناعي

Temperature وTop-p للمبتدئ: إزاي تتحكم في إبداع الذكاء الاصطناعي بدل ما تسيبه للحظ

مبتدئ12 يوليو 20264 دقائق قراءة
Temperature وTop-p للمبتدئ: إزاي تتحكم في إبداع الذكاء الاصطناعي بدل ما تسيبه للحظ

مستوى المقال: مبتدئ. المقال ده هيخلّيك تفهم ليه نفس السؤال بيرجّع إجابات مختلفة من الذكاء الاصطناعي، وإزاي تتحكم فيها برقم واحد بدل ما تسيبها للصدفة.

لو سألت ChatGPT نفس السؤال مرتين وطلعلك ردّين مختلفين، انت مش لاقي عطل. انت لقيت إعداد اسمه Temperature. لما تفهمه، هتبطّل تشتكي من "النموذج بيتغير"، وتبدأ تظبطه حسب شغلك.

إزاي الذكاء الاصطناعي بيقرر الكلمة اللي بعدها؟

المشكلة باختصار

معظم الناس فاكرة إن النموذج "بيعرف" الإجابة الصح ويكتبها. اللي بيحصل فعلاً مختلف. النموذج بيتنبأ بالكلمة التالية بس. وكل مرة بيختار من قائمة احتمالات، مش كلمة واحدة مؤكدة. الرقمين اللي بيتحكموا في الاختيار ده هما Temperature وTop-p. لو مش فاهمهم، انت بتشتغل بالبركة.

الفكرة بمثال بسيط: الشيف اللي بيختار البهار

تخيّل شيف قدامه طبق، وعايز يضيف مكوّن أخير. قدامه أطباق صغيرة: ملح (احتمال كبير إنه المناسب)، فلفل (احتمال أقل)، قرفة (احتمال صغير)، وشطة (احتمال أصغر). الشيف مش بيحطّ الملح بالضرورة كل مرة. بيرمي عملة معدّلة بتميل ناحية الاحتمالات الكبيرة.

دلوقتي فيه زرّاير في إيده:

  • لو خفّض Temperature، الفروق بين الأطباق بتكبر. الملح بيبقى شبه مؤكد. الشيف بقى متحفّظ ومتوقّع.
  • لو رفع Temperature، الفروق بتقلّ. القرفة والشطة بقى ليهم فرصة حقيقية. الشيف بقى مغامر وبيفاجئك.

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

نفس الكلام بشكل علمي دقيق

في كل خطوة، النموذج بيطلّع رقم خام (logit) لكل كلمة ممكنة في القاموس. الأرقام دي بتتحوّل لاحتمالات عن طريق دالة اسمها softmax. مجموع الاحتمالات كله بيساوي 1. الكلمة اللي ليها أعلى احتمال هي الأرجح، بس مش الوحيدة.

الـ Temperature (رمزها T) بتتدخّل قبل softmax: بنقسم كل logit على T.

  • T أقل من 1 (مثلاً 0.2): بيكبّر الفروق، فالتوزيع بيبقى "حادّ" والنموذج بيختار الأرجح غالبًا. نتيجة ثابتة ومتوقّعة.
  • T = 1: التوزيع زيّ ما هو من غير تعديل.
  • T أكبر من 1 (مثلاً 1.5): بيقرّب الاحتمالات من بعضها، فالنموذج بيجرّب كلمات أبعد. إبداع أكتر، لكن مخاطرة كلام غير منطقي بتزيد.

أما Top-p (اسمه nucleus sampling) فبيشتغل بمنطق تاني: رتّب الكلمات من الأعلى احتمالًا للأقل، وخُد أقل مجموعة مجموع احتمالها يوصل لـ p (مثلاً 0.9)، وتجاهل الباقي. يعني Top-p = 0.9 معناه "اختَر من الكلمات اللي بتغطّي 90% من الاحتمال، وارمِ الذيل الغريب".

فيه كمان Top-k: خُد أعلى k كلمة بس (مثلاً أعلى 40)، وسيب الباقي. الفرق إن Top-k رقم ثابت، وTop-p بيتأقلم حسب مدى ثقة النموذج في كل خطوة.

نردان على سطح خشبي يرمزان لعنصر العشوائية في اختيار النموذج للكلمة التالية عند رفع درجة الحرارة

كود Python شغّال تشوف الفرق بعينك

الكود ده بيبعت نفس البرومبت مرتين: مرة بحرارة منخفضة ومرة عالية، عشان تحس بالفرق عمليًا. مبني على مكتبة OpenAI الرسمية، وينفع تعمل نفس الحاجة بأي مزوّد تاني بنفس المبدأ.

Python
from openai import OpenAI

client = OpenAI()
prompt = "descripe a sea city in one sentence."

def generate(temperature, top_p):
    resp = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=[{"role": "user", "content": prompt}],
        temperature=temperature,
        top_p=top_p,
        max_tokens=40,
    )
    return resp.choices[0].message.content.strip()

print("T=0.0 :", generate(0.0, 1.0))
print("T=0.0 :", generate(0.0, 1.0))
print("T=1.3 :", generate(1.3, 0.95))
print("T=1.3 :", generate(1.3, 0.95))

اللي هيحصل: السطرين بتوع T=0.0 هيطلّعوا جملة شبه متطابقة كل مرة. السطرين بتوع T=1.3 هيطلّعوا صياغات مختلفة. جرّبه بنفسك، ده أسرع طريقة تثبّت الفكرة في دماغك.

أرقام عملية تبدأ بيها

  • مهام تحتاج دقّة (استخراج بيانات، تصنيف، إجابة من مصدر): T بين 0 و0.3.
  • محادثة عامة ومساعدة: T حوالي 0.7.
  • كتابة إبداعية وعصف ذهني: T بين 0.9 و1.2، مع Top-p حوالي 0.95.

قاعدة مهمة: متلعبش في Temperature وTop-p مع بعض في نفس الوقت وانت مبتدئ. ثبّت واحد وحرّك التاني.

الـ trade-off بصراحة

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

متى متغيّرش الإعدادات دي أصلًا

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

الخطوة التالية

افتح الكود اللي فوق، غيّر temperature من 0.0 لـ 0.7 لـ 1.3، وشغّله 3 مرات لكل قيمة. اكتب لنفسك الفرق اللي شُفته.

مصادر

  • OpenAI API Reference: platform.openai.com/docs/api-reference
  • Holtzman et al. 2019 - nucleus sampling: arxiv.org/abs/1904.09751
  • Anthropic Docs - temperature في Claude API: docs.anthropic.com/en/api/messages
  • Hugging Face - generation strategies: huggingface.co/docs/transformers/generation_strategies

هل استفدت من المقال؟

اطّلع على المزيد من المقالات والدروس المجانية من نفس المسار المعرفي.

تصفّح المدونة