نموذج ذهني مفيد

التدريب يضبط الإعدادات الرقمية التي تعلّمها النموذج. أما الاستدلال فيُبقي هذه الإعدادات ثابتة ويستخدمها.

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

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

كيف يعمل الاستدلال

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

  1. يُوضَع المُدخل في الهيئة التي يتوقعها النموذج.قد تُغيَّر أبعاد صورة، أو يُقسَّم نص إلى أجزاء رقمية، أو يُطبَّع صف من جدول. وغالباً ما تُدرج هذه التجهيزات ضمن «مسار الاستدلال»، مع أنها تحدث خارج النموذج نفسه.
  2. يشغّل النموذج العملية الحسابية التي تعلّمها.تنتقل البيانات من مُدخل النموذج، مروراً بطبقاته، إلى مخرجه. ويُسمّى هذا الاتجاه من الحساب التمرير الأمامي.
  3. ينتج النموذج مخرجاً رقمياً.قد ينتج المصنّف درجات لعدة تسميات. وقد ينتج نموذج التنبؤ رقماً أو نطاقاً. أما نموذج اللغة فينتج درجات للرموز التالية المحتملة، وهي أجزاء النص التي يستطيع معالجتها.
  4. يفسّر البرنامج ذلك المخرج أو يختار منه.قد يطبّق البرنامج عتبة، أو يختار التسمية ذات أعلى درجة، أو يأخذ عينة من رمز، أو ينسّق النتيجة. وتُعد هذه الخطوة جزءاً من مسار الاستدلال المحيط، لكنها ليست دائماً جزءاً من النموذج.
  5. يعيد نظام تقديم الخدمة النتيجة أو يخزّنها.تقديم الخدمة هو البنية التحتية التي تحمّل النموذج، وتستقبل العمل، وجدولته، وتسلّم المخرجات. أما الاستدلال فهو استخدام النموذج الذي ينفّذه نظام تقديم الخدمة.

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

raw input
    |
    v
input preparation
    |
    v
fixed trained model  ---->  numeric model output
                                  |
                                  v
                         selection or policy
                                  |
                                  v
                           usable result

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

مثال عملي

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

spam:     0.82
not spam: 0.18

هذه الدرجات هي مخرج الاستدلال. وهي تعبّر عن مقدار الدعم النسبي الذي يقدمه النموذج لتسمياته المتاحة، لكنها لا تثبت أن البريد رسالة مزعجة.

لنفترض الآن أن خدمة البريد لديها قاعدة تنقل الرسالة إلى مجلد الرسائل المزعجة عندما تكون درجة الرسائل المزعجة مساوية لـ 0.70 أو أكبر. تنقل الخدمة هذه الرسالة لأن 0.82 تتجاوز تلك العتبة.

من السهل اختبار هذا التمييز. فإذا رفعت الخدمة العتبة إلى 0.90، فقد ينتج النموذج نفسه درجة 0.82 نفسها، بينما تبقى الرسالة في صندوق الوارد. لم يتغير الاستدلال؛ بل تغيّرت سياسة التطبيق.

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

لماذا يتطلب توليد النص استدلالاً متكرراً

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

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

prompt
  -> forward pass
  -> next-token scores
  -> select one token
  -> append it
  -> repeat
  -> stop

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

لهذا السبب، فإن القول إن «الاستدلال تمرير أمامي واحد» هو اختصار مفيد، وليس تعريفاً عاماً شاملاً. فقد ينتج تمرير واحد تنبؤاً واحداً، أو مجموعة واحدة من الدرجات، أو خطوة واحدة نحو نتيجة مولّدة أطول.

لماذا يهم الاستدلال

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

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

وتنشئ هذه الخيارات مفاضلات:

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

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

مفاهيم خاطئة شائعة

«الاستدلال يعني أن النموذج يتعلم مني»

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

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

«الاستدلال هو نفسه التنبؤ»

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

«يحدث الاستدلال دائماً بشكل مباشر»

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

«لا بد أن ينتج المُدخل نفسه المخرج نفسه»

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

«يعني وضع الاستدلال أن النموذج جاهز لإنتاج تنبؤات صحيحة»

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

«الاستدلال هو منتج الذكاء الاصطناعي بأكمله»

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

كيف يندرج الاستدلال ضمن نظام الذكاء الاصطناعي

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

ويضيف النظام المنشور طبقة أخرى:

training -> saved model -> deployment and serving -> inference -> application action
                                                        |
                                                        v
                                              logs for later review

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

إلى أين تتابع؟

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