وكلاء البرمجة بالذكاء الاصطناعي واستجابتهم للإصدارات الدلالية
توفر الإصدارات الدلالية (SemVer) للمطورين إطارًا لتقييم المخاطر المرتبطة بترقيات البرمجيات. يشير إصدار التصحيح (patch) إلى إصلاحات الأخطاء، ويضيف الإصدار الثانوي (minor) ميزات دون تغييرات كاسرة، بينما يدل الإصدار الرئيسي (major) على تغييرات كاسرة محتملة. افترضت التوقعات الأولية أن وكلاء الذكاء الاصطناعي سيتجاهلون أرقام الإصدارات، مما يجعل SemVer غير ضروري.
غير أن نموذجين من الذكاء الاصطناعي أظهرا أن أرقام الإصدارات تؤثر على سلوكهما. في تجارب شملت نحو 1000 تشغيل، أثّر رقم الإصدار وحده على كيفية تفاعل الوكلاء مع شيفرة متطابقة. نفّذ Claude Sonnet 5.5 الاختبارات أو قرأ الشيفرة الجديدة في حالتين فقط من أصل 10 عندما صُنّفت الترقية كإصدار تصحيح، لكنه فعل ذلك في جميع الحالات العشر عندما صُنّفت كإصدار رئيسي. بينما فحص النماذج الأخرى كل ترقية باستمرار، مما يشير إلى أن بعض الوكلاء ما زالوا يأخذون SemVer في الاعتبار.
فهم تأثير أرقام الإصدارات
تعكس الإصدارات الدلالية نوايا المشرف على الإصدار. وبينما يمكن للوكلاء التحقق من التوافق عبر تحليل الشيفرة وتشغيل الاختبارات، فقد يتعلمون أيضًا من المستودعات والوثائق التي ينتشر فيها SemVer. وبالتالي، قد يتبنون سلوكيات مشابهة للمطورين، فيتعاملون مع الإصدارات الرئيسية بحذر ويرون في إصدارات التصحيح خيارات أكثر أمانًا.
لدراسة تأثير تسميات الإصدارات على سلوك الوكلاء، أُجريت تجارب باستخدام أداة التقييم الخاصة بشركة Microsoft لوكلاء الذكاء الاصطناعي، Vally، مع GitHub Copilot CLI كوكيل. أُنشئ تطبيق Node.js صغير يعتمد على مكتبة npm خيالية تُسمى fluxkit. تضمن الإصدار الجديد من fluxkit تغييرًا كاسرًا، إذ أعاد تسمية دالة يستدعيها التطبيق.
تلقى الوكلاء تعليمات محدودة لسيناريوهين:
# patch
Bump fluxkit to 1.4.3.
# major
Bump fluxkit to 2.0.0.
تضمن كلا السيناريوهين شيفرة مكتبة متطابقة بايتًا ببايت، مع اختلاف رقم الإصدار فقط. فلو تجاهل الوكلاء التسميات، لبقي سلوكهم ثابتًا. وعلى العكس، لو رأوا في الإصدار الرئيسي خطرًا أكبر، لفحصوا الترقية بمعدل أعلى.
| النموذج | فُحص: patch | فُحص: major | الحكم |
|---|---|---|---|
| Claude Sonnet 5.5 | 2/10 | 10/10 | تأثير |
| Claude Opus 5.5 | 70/70 | 70/70 | لا تأثير ذو دلالة |
| GPT-6.1 Sol | 70/70 | 70/70 | لا تأثير ذو دلالة |
| GPT-6.1 Terra | 70/70 | 70/70 | لا تأثير ذو دلالة |
أظهر Claude Sonnet 5.5 استجابة ملحوظة لتسميات الإصدارات، فغالبًا ما غيّر إصدار التبعية عند تلقيه تعليمات بإصدار تصحيح، تاركًا التطبيق معطلًا. في المقابل، عندما طُلب منه إصدار رئيسي، فحص كل مرة. بينما فحص النماذج الثلاثة الأخرى كل ترقية باستمرار، بغض النظر عن التسمية.
مراجعة تحديثات التبعيات
على الوكلاء تحديد ما إذا كان التحديث آمنًا للدمج، خاصة عند مراجعة الفروع دون ملاحظات الإصدار. أُنشئت ستة سيناريوهات، ثلاثة بتغييرات كاسرة وثلاثة بدونها، وكل منها يحمل تسمية patch أو minor أو major، مع شيفرة متطابقة في جميع السيناريوهات. خضعت ستة نماذج لـ 30 تشغيلًا لكل تسمية، بإجمالي 540 تشغيلًا.
| النموذج | عمليات دمج دون فحص: patch | عمليات دمج دون فحص: major | الحكم |
|---|---|---|---|
| Claude Haiku 5.5 | 11/30 (37%) | 2/30 (7%) | تأثير |
| Claude Sonnet 5.5 | 4/30 (13%) | 0/30 | غير حاسم، يميل نحو وجود تأثير |
| GPT-6 Luna | 9/30 (30%) | 5/30 (17%) | غير حاسم |
| Claude Opus 5.5 | 0/30 | 0/30 | لا تأثير ذو دلالة |
| GPT-6.1 Sol | 0/30 | 0/30 | لا تأثير ذو دلالة |
| GPT-6.1 Terra | 0/30 | 0/30 | لا تأثير ذو دلالة |
عكست النتائج التجربة الأولى، إذ دمج Claude Haiku 5.5 تحديثات موسومة بـ patch دون فحص في 37% من التشغيلات، مقابل 7% فقط للتحديثات الموسومة بـ major. بينما فحصت النماذج المتبقية كل تحديث، بغض النظر عن التسمية.
عواقب تخطي الفحوصات
يمكن للوكلاء الذين يتجاوزون الفحوصات أن ينجحوا ما دامت التحديثات تعمل بشكل صحيح. عمومًا، قيّم الوكلاء الشيفرة بفعالية، فدمجوا التحديثات غير الكاسرة في 268 من أصل 270 تشغيلًا، بينما دُمجت التحديثات الكاسرة في 13 من أصل 270. وأسفرت أربع من عمليات الدمج هذه عن تعطل الفرع الرئيسي، ونُسبت إلى Claude Haiku 5.5 وGPT-6 Luna.
قيود الدراسة
خرقت التجارب SemVer عمدًا بإدخال تغيير كاسر تحت تسمية patch. قد تكون الفروق الملحوظة لـ Claude Sonnet 5.5 وGPT-6 Luna صحيحة، لكن مع 30 تشغيلًا فقط لكل تسمية، تكون النتائج غير مؤكدة بما يكفي لاستخلاص استنتاجات قاطعة.
توصيات بشأن الإصدارات
يُنصح لمشرفي المكتبات بمواصلة استخدام SemVer وضمان دقته. فالوكلاء يتعرفون على SemVer، وبعضهم يستجيب له. طبّقوا عمليات تحقق ضمن سير العمل لضمان حصول إصدار التصحيح على نفس مستوى الفحوصات الممنوح للإصدار الرئيسي.
خواطر أخيرة حول وكلاء البرمجة بالذكاء الاصطناعي وSemVer
بعض وكلاء البرمجة بالذكاء الاصطناعي يأخذون الإصدارات الدلالية في الاعتبار. وبينما تجاهل Claude Opus 5.5 وGPT-6.1 Sol وGPT-6.1 Terra التسميات، استخدمها آخرون لتحديد مستوى تدقيقهم. لا يمكن لرقم الإصدار وحده أن يضمن سلامة الترقية سواء للوكلاء أو للمطورين. فالاختبار الشامل وحده هو ما يحدد ما إذا كانت الترقية آمنة فعلًا.
رابط ذو صلة: aka.ms
المصدر: Microsoft Developer Blogs