French Ship Madame De Pompadour
Python

French Ship Madame De Pompadour

محاكاة اجتماعية ومولد قصص يخلق روايات خيال علمي مستوحاة من ستار تريك. يستخدم OOP Python/Flask مع بعض هياكل البيانات، وGemini API، وواجهة أمامية React/Vite/Tailwind.

GitHub|

محاكي سفينة فضائية يستخدم الذكاء الاصطناعي والأحداث العشوائية المستوحاة من Star Trek.


FS Madame de Pompadour هو محاكي سردي نصي يخلق قصصًا ديناميكية وغير متوقعة تدور أحداثها في عالم خيال علمي. بالنقر على «التالي»، يمكنك المضي قدمًا في المحاكاة خطوة بخطوة، ومشاهدة مجموعة من الشخصيات تتفاعل مع بعضها البعض بناءً على مزيج من السلوكيات المحددة مسبقًا والذكاء الاصطناعي التوليدي.

image

الهدف هو إنشاء «حوض رقمي» تنشأ فيه ديناميكيات اجتماعية معقدة وأحداث غير متوقعة من قواعد بسيطة والقوة الإبداعية للذكاء الاصطناعي.


مرحبًا بكم في FS Madame de Pompadour.

التفت القائد بيبيو إلى أحد أفراد الطاقم، هارولد، وصرخ قائلاً: «أبلغني بالإجراءات التأديبية التي اتُخذت ضد فون».

ثم التفت القائد بيبيو نحو محطة الاتصالات وطالب: «أحضر لي الملازم دوبوا على الفور».

انحنى تيدريك نحو الطاقم وايلون وهمس: «هل رأيت ما فعله فون؟ يبدو أن القبطان بيبيلو في مزاج سيئ اليوم»، بينما كان يضبط زيه بذكاء ليبدو أنيقًا.

ألقى كونستانتين نظرة سريعة على الطاقم هارولد، ثم تمتم بهدوء للطاقم محمد: «أتساءل ماذا فعل فون ليغضب القبطان هذه المرة»، بينما كان يلمع جزءًا من الدرابزين المجاور بحذر.

قام الطاقمي فون بتسوية زيه العسكري بعصبية، ثم، بعد أن التقت عيناه بعين الطاقمي إيزيكيل، تمتم بصوت خافت: «سيكون هذا يومًا طويلًا»، آملاً أن يرد إيزيكيل.

لاحظ الطاقمي محمد تلميع كونستانتين الخفي، فألقى نظرة على الدرابزين وقال: «يبدو أنه يحتاج إلى فرك جيد، أليس كذلك؟ ربما ينبغي أن ننظف هذا الجزء معًا، كونستانتين؟»

لاحظ الطاقم هارولد الجو المتوتر وأوامر القبطان، فقام بتعديل زيه العسكري بهدوء ومتمتمًا للطاقم سيباستيان: «يبدو أن فون في موقف حرج، أليس كذلك؟ «ألا تعتقد أنه ينبغي أن نذهب لتناول القهوة لتخفيف حدة الموقف قبل أن تصبح المهام أكثر إزعاجًا؟»

ولما رأى التوتر، التفت الطاقمي ويستلي إلى الطاقمي فلين وسأله: «هل سمعت ما حدث مع فون؟ يبدو أن القبطان في مزاج سيئ، ربما ينبغي أن نتأكد من أن مراكزنا نظيفة تمامًا.»

طلب القائد بيبيو رأي الطاقم هارولد المهني.

التفت القائد بيبيو إلى الطاقم فون وطالب: «فون، أبلغني فورًا عن وضع محطتك الحالية وحالة الأنظمة».

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

البحار محمد، الذي لاحظ التوتر المحيط بالقبطان بيبيو، اقترب بهدوء من البحار إيزيكيل وهمس: «هل تعتقد أننا يجب أن نجهز بعض أدوات التنظيف، تحسبًا لحاجة القبطان إلى إنجاز شيء ما بسرعة؟»
imageimage

في هذه اللقطة التوضيحية المأخوذة من محاكاة FS Madame de Pompadour، نلاحظ نظامًا بيئيًّا اجتماعيًّا معقدًا وديناميكيًّا في حالة حركة. يُظهر النظام قدرته على توليد سرد ناشئ ليس من خلال أحداث مكتوبة مسبقًا، بل من خلال السماح للعناصر المستقلة بالتفاعل، مما يخلق نسيجًا غنيًّا وواقعيًّا للحياة على الطوابق السفلية.

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

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

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

تم بناء FS Madame de Pompadour على بنية ويب حديثة منفصلة، تفصل محرك المحاكاة الخلفي عن واجهة المستخدم الأمامية من أجل تحقيق النمطية والأداء.

Uploading image.png…

الخلفية: Python و Flask و Gemini

يقع جوهر المحاكاة ومنطقها بالكامل في الخلفية التي تعمل بلغة Python.

  • Python: الخيار الطبيعي بفضل قدرتها القوية على معالجة البيانات ونظامها البيئي القوي في مجال الذكاء الاصطناعي/التعلم الآلي. تتيح المقاربة الموجهة للكائنات إنشاء فئات Crewman وActorManager معيارية يسهل توسيعها.
  • Flask: إطار عمل ويب خفيف الوزن ومرن يُستخدم لإنشاء واجهة برمجة التطبيقات (API) التي تتواصل معها الواجهة الأمامية. وتتمثل مسؤوليته الوحيدة في تلقي طلب الدورة التالية، وتشغيل منطق المحاكاة، وإرجاع النتيجة.
  • Google Gemini: «الشبح في الآلة». يتكامل المشروع مع واجهة برمجة تطبيقات Gemini لتشغيل نظام الإجراءات الذكي الخاص به. عندما يقرر أحد الشخصيات التصرف «بذكاء»، ترسل الخلفية موجهًا — يحتوي على سياق السفينة، ودور الشخصية، وسجل الإجراءات الأخيرة — إلى نموذج Gemini، الذي يعرض بدوره إجراءً مبتكرًا ومراعيًا للسياق.

الواجهة الأمامية: React و Vite و Tailwind CSS

واجهة المستخدم عبارة عن تطبيق سريع وحديث من صفحة واحدة (SPA).

  • React: مكتبة JavaScript قوية لإنشاء واجهات مستخدم ديناميكية وقائمة على المكونات. سجل الأحداث بأكمله هو مكون React يتم تحديثه بكفاءة عند تلقي إجراءات جديدة من الخلفية.
  • Vite: أداة بناء واجهة مستخدم من الجيل التالي توفر خادم تطوير فائق السرعة وبنيات إنتاج مُحسَّنة.
  • TypeScript: تُستخدم لإضافة الكتابة الثابتة إلى كود JavaScript، مما يحسّن تجربة المطور ويقلل من الأخطاء.
  • Tailwind CSS: إطار عمل CSS يركز على الأداة أولاً، ويتيح تصميمًا سريعًا ومتسقًا مباشرةً داخل HTML، كما يظهر في أسماء فئات المكونات.

البنية العامة

تدفق الدورة الواحدة بسيط وفعال:

  1. ينقر المستخدم على زر "التالي" في واجهة المستخدم القائمة على React.
  2. ترسل الواجهة الأمامية طلب fetch إلى نقطة النهاية /action للواجهة الخلفية التي تعمل على Flask.
  3. يستدعي خادم Flask ActorManager بلغة Python، الذي يقوم بتشغيل دور واحد من المحاكاة، وقد يستدعي واجهة برمجة تطبيقات Gemini.
  4. تُرجع الخلفية سلسلة الإجراء الناتجة ككائن JSON.
  5. تستقبل الواجهة الأمامية التي تعمل بـ React كائن JSON، وتُحدّث حالتها، وتُعرض الحدث الجديد على الشاشة، مع التمرير تلقائيًا إلى أحدث إدخال.