هدهد تك — منصة التقنية والذكاء الاصطناعي
الأربعاء, 4 نوفمبر 2026
عاجل
◆ Google Antigravity يعزز اكتشاف الأدوية بمهارات المعلوماتية الكيميائية ◆ كيف نوجّه الخبراء المتخصصين إلى تواصل عام فعّال ◆ اختبار ITER لمغناطيس فائق التوصيل بوزن 330 طناً لمفاعل الاندماج ◆ Anthropic تطور FlashProve للتحقق من هوية نماذج الذكاء الاصطناعي ◆ نماذج OpenAI تعزز سير العمل الهندسي في مختلف القطاعات ◆ Heimstaden تستعين بالذكاء الاصطناعي لتحويل إدارة العقارات السكنية ◆ Google وMeta تفتحان المصدر لـ TorchTPU لدعم PyTorch على وحدات TPU ◆ استكشاف الارتباط العاطفي في مستقبل السيارات المدعوم بالذكاء الاصطناعي
ذكاء اصطناعي | برامج وتطبيقات

OpenAI تطور Pando لتعزيز قابلية توسع Git

3 نوفمبر 2026 4 دقائق قراءة هدهد تك | Hudhud Tech

طوّرت OpenAI نظام Pando، وهو خلفية جديدة لمستودعات Git، لمعالجة الحجم والمتطلبات المتزايدة لمستودعها الأحادي (monorepo). جاءت هذه المبادرة مدفوعة بالحاجة إلى دعم حجم العمل المتزامن الذي يتيحه Codex، دون تعطيل جهود الهندسة الجارية أو تغيير طريقة استخدام الفريق لـ Git.

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

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

أدركت OpenAI أن القيود التي واجهتها قد تكون ناتجة عن Git نفسه أو عن طريقة تقديم مستودعها الأحادي. فقد كيّف المطورون Git تاريخيًا على مدى العقدين الماضيين لاستيعاب ممارسات تطوير البرمجيات المتطورة. سعت OpenAI إلى الحفاظ على سير عمل مألوف مع تعزيز الخلفية لإدارة الدفعات المتوازية إلى فروع مختلفة وتقديم نفس السجل لعدة قراء في وقت واحد.

يحافظ Pando على التوافق مع بروتوكول Git وعميله، مما يسمح للمهندسين والوكلاء بدمجه في سير عملهم الحالي بسلاسة. يعني هذا التوافق أيضًا أن التحسينات التي تُجرى على Pando قد تفيد المجتمع الأوسع، إذ تخطط OpenAI للمساهمة بالتحسينات في مستودع Git upstream.

هندسة Git على نطاق واسع

يتضمن توسيع نظام التحكم بالمصدر بعدين رئيسيين: استيعاب العديد من الكُتّاب الذين يدفعون إلى فروع مختلفة، والعديد من القراء الذين يجلبون نفس السجل. يحسّن Pando كلا البعدين من خلال تنسيق التحديثات لكل فرع بشكل مستقل وإعادة استخدام packfiles عبر عمليات الجلب.

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

مقدمة عن تخزين كائنات Git

تحتفظ مستودعات Git بمكونين حاسمين: الكائنات (objects) والمراجع (references). تمثل الكائنات لقطات من الملفات وسجلها، بينما تشير المراجع إلى الـ commits. يُعرَّف كل كائن بتجزئة (hash) لنوعه ومحتواه، وهي غير قابلة للتغيير، بمعنى أن التغييرات تنشئ blobs جديدة بدلًا من تعديل الكائنات الموجودة.

تعمل الفروع والوسوم كمراجع تشير إلى الـ commits، ويسمح هيكل مستودع Git بتخزين هذه الكائنات ونقلها بكفاءة. عندما يجلب العميل بيانات، فإنه يحدد الـ commits التي يريدها، ويستجيب الخادم بالكائنات اللازمة مع استبعاد تلك التي يحتفظ بها العميل بالفعل.

أنماط خدمة Git الموزعة الحالية

عند تصميم Pando، قيّمت OpenAI الأساليب التقليدية لتوسيع Git، بما في ذلك أنظمة الالتزام ثلاثي المراحل (3PC) وسجل الكتابة المسبقة (WAL). يتطلب نموذج 3PC تنسيقًا عبر نسخ متعددة، مما قد ي introduce زمن تأخر واختناقات في الأداء مع زيادة أحجام الكتابة.

في المقابل، يستخدم التصميم القائم على WAL بيانًا مشتركًا (manifest) في تخزين blob لترتيب التحديثات عبر المستودع. ورغم أن هذا النهج يسمح بعمليات رفع متوازية، فإنه لا يزال يواجه تحديات تتعلق بإدارة التحديثات على البيان المشترك، مما قد يحد من الأداء العام.

هندسة Pando

يعيد Pando التفكير في بعض القيود التقليدية المرتبطة بأنظمة Git. يتبنى نموذج اتساق مخففًا، يُعرف بالاتساق السببي (causal consistency)، لتوسيع الكتابات، ويعيد استخدام packfiles لتعزيز أداء القراءة. يتيح هذا التصميم معالجة فعالة للدفعات المتزامنة مع توفير رؤية متسقة للمراجع الفردية.

مع Pando، عندما يدفع عميل إلى فرع، يتم تخزين packfile الواردة كـ blob غير قابل للتغيير، ويسجل النظام إصدار ref يتضمن الطرف الجديد وأي تبعيات. يتيح هذا النهج جلبًا فعالًا ويقلل من التعارضات أثناء التحديثات المتزامنة.

أظهرت محاكاة OpenAI لـ Pando مقابل طرق التوسيع التقليدية أنه يدعم آلاف العملاء الذين يدفعون في وقت واحد دون تدهور في الأداء. تتيح بنية Pando التحقق من packfiles الواردة أثناء بثها إلى تخزين blob، مما يضمن معالجة فعالة لكل من الدفعات وعمليات الجلب.

بينما تواصل OpenAI تحسين Pando، فإنها تهدف إلى المساهمة بشكل أكبر في مجتمع Git، لضمان استفادة المطورين خارج مؤسستها من التحسينات التي تُجرى.

 

المصدر: OpenAI News

ما رأيك بهذا الخبر؟

شارك الخبر: