السجلّ يقول إن الحساب انتهى
ينتهي السجلّ كما تحب أن ينتهي أي سجلّ. بلغ الحلّال زمنه النهائي، وهبطت البواقي، ويعلن الوكيل أن المحاكاة اكتملت. في دراسة من عام 2026 اختبرت وكلاء برمجة على OpenFOAM، نظر الباحثون إلى الشبكات التي تقف خلف حسابات كهذه. وفي حالتين من أربع حالات لجريان حول عائق بناها أحد النماذج، لم تكن الشبكة تمثّل العائق.
يمكنك أن تحاكي الجريان حول أسطوانة من دون الأسطوانة. ويتقارب الحساب على نحو رائع.
صار وكلاء الذكاء الاصطناعي لـ CFD قادرين على أن يأخذوا جملة نصية، فيكتبوا حالة OpenFOAM، ويشغّلوها، ويقرؤوا الأخطاء ويصلحوها، وفي مهام الاختبار المعيارية تصل معظم هذه الحالات إلى النهاية. أما الصحيح منها فأقل. يفصل هذا المقال بين الأمرين بأرقام الباحثين أنفسهم، ويعرض الأخطاء التي تجتاز كل فحص للسجلّ، ويقدّم طريقة مراجعة لأي حالة يسلّمها إليك وكيل. ليس لدي وكيل أبيعه ولا اعتراض لي عليهم. أريد فقط أن يُفحصوا.
ماذا يفعل هؤلاء الوكلاء فعلاً؟
الفكرة واحدة في كل الأنظمة التي ظهرت في العامين الماضيين. يتلقى نموذج لغوي كبير طلبك. فيسترجع حالات تعليمية ووثائق مشابهة، ويكتب ملفات الحالة، ويشغّل مولّد الشبكة والحلّال، ويقرأ السجلّ، ويعدّل الملفات حين يفشل شيء. ويكرر ذلك حتى يكتمل الحساب أو يستسلم.
تختلف الأنظمة المعروفة في طريقة تنظيم هذه الحلقة. يوزّع Foam-Agent العمل على عدة وكلاء، مع نظام استرجاع متعدد المستويات لأجزاء المحاكاة المختلفة، وتوليد ملفات يحافظ على اتساق القواميس بعضها مع بعض، وحلقة تصحيح أخطاء يُراد بها حلّ الإخفاقات من دون تدخل بشري. ويضيف ChatCFD قواعد معرفة منظمة، ومحدِّداً لمواضع الأخطاء، ومكوّناً يكتب ملخصاً فيزيائياً للنتيجة. كما اختبر باحثون وكلاء برمجة عامين لم يُعطَوا سوى تعليمات موجهة إلى OpenFOAM.
OpenFOAM هو الهدف الطبيعي. الحالة مجلد من القواميس النصية، والحلّال يعمل من سطر الأوامر، والسجلّ نص. يستطيع النموذج اللغوي أن يقرأ كل جزء من ذلك ويكتبه، وهذا ما لا يصدق على حلّال يُدار من واجهة رسومية.
ماذا تقيس نسب النجاح؟
هذا هو الموضع الذي يستحق التمهّل.
| النظام | مجموعة المهام | الرقم المعلن | ما الذي عُدّ نجاحاً |
|---|---|---|---|
| Foam-Agent (2025) | 110 مهام حددها المؤلفون | 83.6% مع Claude 3.5 Sonnet | نسبة نجاح؛ لا يعرّفها الملخص |
| ChatCFD (2025، مع مراجعة 2026) | 315 حالة حددها المؤلفون | 82.1% نجاح في التنفيذ | يكتمل الحساب |
| ChatCFD، الورقة نفسها | الحالات الـ 315 نفسها | 68.12% دقة فيزيائية | مقياس المؤلفين لكون النتيجة ذات معنى علمي |
| Foam-Agent كما قاسه مؤلفو ChatCFD | الحالات الـ 315 نفسها | 42.3% نجاح في التنفيذ | يكتمل الحساب |
| وكيل برمجة عام (Xiao وزملاؤه، 2026) | 9 مهام مشتقة من حالات تعليمية | 9 من 9 اكتملت بتعليمات مخصصة، و4 من 9 بالتعليمات الافتراضية | يصل الحساب إلى الزمن النهائي؛ و7 من 9 كان متوسط مربع الخطأ المعياري فيها أقل من 0.1 مقارنة بالمرجع |
ثلاثة أمور تلفت النظر.
- الأداة نفسها تحصل على درجات مختلفة جداً في مجموعات مهام مختلفة. يعلن Foam-Agent نسبة 83.6% على مهام مؤلفيه ويحصل على 42.3% على مهام ChatCFD. لا أحد الرقمين خاطئ. إنهما يقيسان مهام مختلفة، ونسبة النجاح لا تعني الكثير ما لم تعرف المهام.
- أن يكتمل الحساب وأن يكون صحيحاً درجتان منفصلتان. تعطي أرقام ChatCFD نفسها 82.1% للحسابات التي تكتمل و68.12% للدقة الفيزيائية. وإذا كانت كل حالة دقيقة هي أيضاً حالة اكتملت، وهذا مرجّح، فإن نحو حساب من كل ستة حسابات مكتملة لم يكن ذا معنى فيزيائي بمقياس المؤلفين أنفسهم. هذا حسابي على أرقامهم، وهو أنفع رقم في الجدول.
- بعض المقاييس تفحص الجواب فعلاً. المقاييس التي يذكرها Xiao وزملاؤه تتضمن خطأً مقارنة بحالات مرجعية، ولهذا يستطيع السطر الأخير أن يقول مدى اقتراب 7 من الحسابات التسعة من المرجع، إضافة إلى أنها اكتملت. هذا هو النوع الصحيح من المقاييس. والحصول على درجة جيدة فيه أصعب، ولهذا ينبغي أن تسأل دائماً من أي نوع هو الرقم.
لماذا تكون الأخطاء الصعبة هي الصامتة؟
تقييم Xiao وزملائه في جامعة بكين عام 2026 هو أصرح ورقة في هذا المجال الصغير، ويستحق القراءة من أجل إخفاقاته.
في الحالات الشبيهة بالحالات التعليمية، أكمل وكيل أُعطي تعليمات متقنة كل الحسابات واقترب من المرجع في معظمها. أما في الجريان المستوي حول العوائق، حيث كان لا بد من بناء الشبكة لا نسخها، فقد تغيّر الأمر. مع أحد النماذج لم تمثّل الشبكة العائق في حالتين من أربع. وفي حساب آخر أعاد الوكيل استخدام شبكة حالة تعليمية من دون أن يحدّث الهندسة. وأنتج نموذج أقوى شبكات أفضل، ومع ذلك احتاج نوع من الشبكات إلى توجيه بشري متكرر. وفي اختبارات أولية على احتراق عالي السرعة لم يتمكن الوكيل من الوصول إلى إعداد مستقر بتعديل الملفات بناءً على السجلّ.
ما أجاده الوكيل هو إصلاح الأخطاء التي تُصدر رسائل. إعداد غير مدعوم، أو مدخل ناقص، أو كلمة مفتاحية مكتوبة خطأً: يسمّي السجلّ المشكلة فيصلحها الوكيل. وخلاصة المؤلفين واضحة. عدم تمثيل العائق في الشبكة، أو غيره من المشكلات الفيزيائية، يصعب على الوكلاء اكتشافه، والإشراف البشري يبقى ضرورياً.
فالوكلاء إذن في أفضل حالاتهم مع الأخطاء التي تعلن عن نفسها، وفي أضعفها مع الأخطاء الصامتة. وهذا بالنسبة إلى المهندس هو الترتيب المعكوس تماماً، لأن الأخطاء التي تعلن عن نفسها لم تكن قط هي الخطرة. الحلّال الذي ينهار أخبرك بشيء. أما الحلّال الذي يتقارب على هندسة خاطئة فلم يخبرك بشيء، وبطريقة مقنعة جداً.
الأخطاء الصامتة بحسب عائلاتها
هذه هي فئات الأخطاء التي تجتاز كل فحص للسجلّ. لا يختص أي منها بالذكاء الاصطناعي؛ فالبشر يرتكبونها جميعاً. الفرق أن الوكيل الذي ينسخ من الحالات التعليمية يرتكبها بسرعة، وأن الوكيل الذي لا يقرأ إلا السجلّ لا يملك وسيلة لملاحظتها.
- الهندسة. عنصر ناقص أو في غير موضعه، أو شبكة مُقاسة بالمليمتر بينما كُتبت الرؤوس بالمتر.
- الوحدات. تعمل حلّالات OpenFOAM غير القابلة للانضغاط بالضغط الكينماتيكي، أي الضغط مقسوماً على الكثافة، بوحدة m²/s². وعندئذ تحتاج القوى إلى كثافة مرجعية على أحدهم أن يحددها.
- إعدادات موروثة. اللزوجة، وكميات الاضطراب، وتوزيعات المدخل، والزمن النهائي من الحالة التعليمية التي بدأت منها الحالة، تُركت على حالها لأن شيئاً لم يشتكِ.
- شروط حدية معقولة المظهر لكنها خاطئة لهذه المسألة. دالة جدار على شبكة لم يتحقق أحد من قيمة y+ فيها، أو شرط تدرج صفري حيث كان ينبغي قيمة ثابتة.
- حساب أقصر مما ينبغي. حالة عابرة أوقفت قبل أن يبلغ الجريان حالته الدورية، ثم أُخذ متوسطها.
مثال محسوب: خطآن يبدوان مثاليين
الخطأ 1: الأسطوانة المليمترية. خذ مسألة مرجعية معيارية: جريان حول أسطوانة قطرها 0.1 m في قناة، بسرعة دخول متوسطة 1 m/s ولزوجة كينماتيكية 0.001 m²/s. عدد رينولدز يساوي 100، وتنفصل الدوامات عن الأسطوانة.
افترض الآن أن الوكيل يبدأ من حالة تعليمية يقيس فيها قاموس blockMesh جميع الرؤوس بمعامل 0.001، ثم يكتب الرؤوس الجديدة بالمتر. صار قطر الأسطوانة 0.1 mm.
هذا جريان زاحف. لا انفصال للدوامات، والحلّال يتقارب بسرعة وسلاسة، ومنحنى البواقي هو الأجمل الذي ستراه هذا الأسبوع. الأداة checkMesh تطبع الصندوق المحيط بالمجال، فتكفي نظرة واحدة إلى خرجها لاكتشاف ذلك. أما الوكيل الذي يقرأ السجلّ فلا ينظر إلى هناك أبداً، لأن شيئاً لم يفشل.
الخطأ 2: قوى أقل بنسبة 18% ومعاملات صحيحة تماماً. في حالة OpenFOAM غير قابلة للانضغاط، يضرب كائن الدالة forces الضغط الكينماتيكي في كثافة مرجعية هي rhoInf للحصول على الباسكال ثم النيوتن. افترض أن المائع هواء بكثافة 1.225 kg/m³ وأن الوكيل يترك rhoInf مساوياً لـ 1، كما في حالات تعليمية كثيرة. عندها تكون كل قوة أقل من قيمتها بالمعامل نفسه.
كائن الدالة الخاص بمعاملات القوى يقسم على ½ ρ U² A باستخدام rhoInf نفسه، فتُختصر الكثافة ويخرج معامل السحب صحيحاً. يبدو منحنى المعامل مثالياً، بينما التقرير الذي يذكر السحب بالنيوتن خاطئ. يعجبني هذا المثال لأنه يجتاز بالضبط الفحص الذي سيجريه الشخص الحريص أولاً، أي مقارنة C_D بقيمة منشورة.
مجموعتا الأرقام هنا توضيحيتان. أما الآليات فحقيقية.
حالة اختبار بأجوبة معروفة
إذا أراد فريقك تقييم وكيل، أو مهندس جديد، فأعطه مسألة لها مرجع منشور. مسألة DFG المرجعية للجريان الطباقي حول أسطوانة، الحالة 2D-2 من Schäfer وTurek (1996)، خيار جيد: ثنائية الأبعاد، رخيصة، عابرة، وموثّقة حتى عدة أرقام.
الإعداد في صفحة FeatFlow المرجعية قناة طولها 2.2 m وارتفاعها 0.41 m، فيها أسطوانة نصف قطرها 0.05 m ومركزها عند (0.2, 0.2). توزيع الدخول قطعي مكافئ بقيمة عظمى 1.5 m/s ومتوسط 1.0 m/s، واللزوجة الكينماتيكية 0.001 m²/s والكثافة 1، مما يعطي Re = 100 على أساس القطر. والقيم المرجعية على أدق شبكة هي:
| الكمية | القيمة المرجعية |
|---|---|
| أقصى معامل سحب | 3.2200 |
| أقصى معامل رفع | 0.9859 |
| عدد ستروهال | 0.30188 |
اطلب من الوكيل بناء الحالة من وصف بلغة عادية، من دون أن تسمّي المسألة المرجعية، ثم قارن. عدد ستروهال قريب من 0.30 وأقصى معامل سحب قريب من 3.2 على شبكة معقولة يدلان على أن الإعداد سليم. وغياب أي تذبذب يعني أن شيئاً ناقص: الأسطوانة، أو الطابع العابر، أو الدقة، أو الزمن النهائي.
لاحظ أن الأسطوانة مزاحة قليلاً عن محور القناة، عند 0.2 m في قناة ارتفاعها 0.41 m. اتركها هناك. الوكيل الذي «يرتّب» الهندسة فيضعها في موضع متماثل قد غيّر المسألة المرجعية، ولم يعد جوابه قابلاً للمقارنة بالمرجع.
كيف سأراجع حالة كتبها وكيل
بهذا الترتيب. ومعظمه يستغرق دقائق.
- اكتب ما تتوقعه قبل أن تفتح النتائج. الكميات التي تهمك ونطاقاً تقريبياً لكل منها، من تقدير يدوي أو علاقة تجريبية أو دراسة سابقة.
- انظر إلى الشبكة قبل الجريان. شغّل checkMesh، واقرأ الصندوق المحيط، وافتح الهندسة. هل كل عنصر موجود، بالحجم الصحيح، في الموضع الصحيح؟
- قارن الحالة بالحالة التعليمية التي جاءت منها. سيخبرك الوكيل بما غيّره. أما الأسطر الخطرة فهي التي لم يلمسها: اللزوجة، ومدخلات الاضطراب، والزمن النهائي، وفترة الكتابة، وإعدادات كائنات الدوال.
- تحقق من الوحدات والقيم المرجعية. ضغط كينماتيكي أم ساكن، وrhoInf، واللزوجة في قاموس النقل، وعدد رينولدز محسوباً يدوياً من ملفات الحالة.
- اقرأ كل ملف للشروط الحدية، حقلاً حقلاً، واسأل هل يصف المسألة الفيزيائية. السجلّ لا يستطيع الإجابة عن ذلك.
- تحقق من التقارب والموازين. الكتلة الداخلة تساوي الكتلة الخارجة، والطاقة كذلك إن كانت تُحل. ويشرح مقال التقارب في هذه المدونة ما الذي ينبغي أن تعنيه كلمة «تقارب».
- قارن بشيء مستقل. مسألة مرجعية، أو علاقة تجريبية، أو قياس، أو حالة سابقة متحقق منها. هذا هو الفرق بين التحقق والمصادقة، وله مقال خاص في هذه المدونة.
- إذا كانت الأرقام ستوجّه قراراً، فاختبر الشبكة. دراسة استقلالية الشبكة تنطبق على شبكة الوكيل تماماً كما تنطبق على شبكتك.
هذا يستغرق وقتاً أطول من كتابة التعليمات. لكنه أقصر بكثير من كتابة الحالة.
أين يساعد وكلاء الذكاء الاصطناعي لـ CFD اليوم
حيث توجد حالة متحقق منها ويغيّر الوكيل المعاملات داخلها: سلسلة من سرعات الدخول، أو مجموعة من المتغيرات الهندسية لتصميم مُصادَق عليه، أو دفعة من نصوص المعالجة اللاحقة. القرارات الخطرة اتُّخذت مرة واحدة على يد إنسان، والوكيل يكرر القرارات الآمنة.
حيث يكون العمل قالباً متكرراً: قواميس كائنات الدوال، وخطوط أخذ العينات، ونصوص برمجية تحوّل مجلداً من النتائج إلى جدول.
حيث يكون الخطأ صاخباً: حالة لا تبدأ، أو قاموس فيه خطأ نحوي، أو مدخل مكتبة ناقص. هنا الوكلاء المنشورون جيدون أصلاً ويوفّرون وقتاً حقيقياً.
وفي التعليم، بحذر. الطالب الذي يرى حالة كاملة تعمل في دقيقة يفهم بنية OpenFOAM أسرع. والطالب نفسه يجب أن يتعلم ألا يثق بها، وهذا الدرس أثمن من الحالة نفسها.
وحيث لن أستخدمهم من دون مراجعة كاملة: فيزياء جديدة، وهندسة صناعية ثلاثية الأبعاد، وجريان متفاعل أو متعدد الأطوار، وأي شيء لا يوجد له مرجع للمقارنة. يذكر تقييم 2026 الحالات ثلاثية الأبعاد وذات الصلة الصناعية بوصفها عملاً مستقبلياً، ولم تستقر اختبارات الاحتراق فيه. هذا هو موقع المجال هذا العام.
ما الذي سأسأله قبل اعتماد وكيل
إذا اقترح أحدهم وكيل ذكاء اصطناعي لإعداد حسابات CFD في فريقك، فاطرح أربعة أسئلة.
- أي مقياس للنجاح يقف وراء الرقم؟ الحساب الذي اكتمل والنتيجة القريبة من مرجع رقمان مختلفان، وقد يكون الفرق بينهما كبيراً.
- على حالات من؟ مجموعة من تنويعات الحالات التعليمية لا تقول الكثير عن هندستك.
- ماذا يفحص الوكيل قبل أن يعلن النجاح؟ إذا كان الجواب السجلّ، فأنت تعرف الآن ما الذي يفوته.
- من يراجع الحالة، وبالمقارنة مع ماذا؟ إذا لم يكن أحد، فالوكيل ينتج عدم يقين سريعاً جداً ومرتباً جداً.
باختصار
وكلاء CFD حقيقيون ويتحسنون بسرعة. يصلحون الأخطاء التي تطبع رسائل ويفوتهم ما يصمت منها. عامل حالة الوكيل كما تعامل حالة زميل جديد قدير في أسبوعه الأول: شاكراً للوقت الموفّر، وقارئاً كل ملف قبل أن يخرج أي شيء من المؤسسة.
إذا حضرت هذا الشهر مؤتمراً يظهر فيه الذكاء الاصطناعي على كل شريحة، فاسأل المتحدث سؤالاً واحداً: من الحالات التي اكتملت، كم منها كان صحيحاً؟
وللسؤال الأوسع عمّا إذا كانت النماذج المدرَّبة ستحل محل المحاكاة، اقرأ مقال «هل سيحل الذكاء الاصطناعي محل CFD؟» في هذه المدونة. وإذا كان لديك نموذج بناه وكيل أو ورثته وتريد فحصه ملفاً ملفاً، فهذا بالضبط ما وُجدت مراجعة النموذج من أجله.
المصادر والمطالعة
- Xiao, Zhang, Xu, Mao, Li and Chen (2026), arXiv 2602.11689: a preliminary assessment of coding agents for CFD workflows
- Yue, Somasekharan, Cao and Pan (2025), arXiv 2505.04997: Foam-Agent, towards automated intelligent CFD workflows
- Fan et al. (2025, revised 2026), arXiv 2506.02019: ChatCFD, an LLM-driven agent for end-to-end CFD automation
- FeatFlow, TU Dortmund: DFG flow around cylinder benchmark 2D-2, time-periodic case (Re = 100)
خدمة ذات صلة
مراجعة النماذج والدراسات المخصصة
معرفة ما يدعمه النموذج، وأين يبقى عدم اليقين، وما يحتاج إلى تحقق.
استعرض الخدمات