اسكب واحدة من أجل CodeWhisperer، أداة الترميز المساعدة المدعومة بالذكاء الاصطناعي من أمازون. اعتبارًا من اليوم، إنه kaput – نوعًا ما.
أصبح CodeWhisperer الآن Q Developer، وهو جزء من عائلة Amazon Q من روبوتات الدردشة المولدة بالذكاء الاصطناعي الموجهة نحو الأعمال والتي تمتد أيضًا إلى Q Business المعلن عنها حديثًا. متاح من خلال AWS، س المطور يساعد مع بعض المهام التي يقوم بها المطورون أثناء عملهم اليومي، مثل تصحيح أخطاء التطبيقات وترقيتها، واستكشاف الأخطاء وإصلاحها، وإجراء عمليات فحص الأمان – تمامًا كما فعل CodeWhisperer.
في مقابلة مع TechCrunch، أشار دوج سيفين، المدير العام ومدير تجارب مطوري الذكاء الاصطناعي في AWS، إلى أن CodeWhisperer كان بمثابة فشل إلى حد ما في العلامة التجارية. تعكس مقاييس الطرف الثالث نفس القدر; حتى مع وجود طبقة مجانية، كافحت CodeWhisperer لمجاراة زخم منافسها الرئيسي GitHub Copilot، الذي يضم أكثر من 1.8 مليون مستخدم فردي مدفوع الأجر وعشرات الآلاف من عملاء الشركات. (من المؤكد أن الانطباعات المبكرة السيئة لم تساعد).
“CodeWhisperer هو المكان الذي بدأنا فيه [with code generation]، بقال سيفين: “لقد أردنا حقًا أن يكون لدينا علامة تجارية – واسم – يناسب مجموعة أوسع من حالات الاستخدام”. “يمكن ان يخطر لك Q Developer كتطور لـ CodeWhisperer إلى شيء أكثر اتساعًا.
ولتحقيق هذه الغاية، يمكن لـ Q Developer إنشاء تعليمات برمجية تتضمن SQL، وهي لغة برمجة شائعة الاستخدام لإنشاء قواعد البيانات وإدارتها، بالإضافة إلى اختبار تلك التعليمات البرمجية والمساعدة في تحويل وتنفيذ تعليمات برمجية جديدة مستوحاة من استعلامات المطورين.
على غرار Copilot، يمكن للعملاء ضبط Q Developer على قواعد التعليمات البرمجية الداخلية الخاصة بهم لتحسين مدى ملاءمة توصيات برمجة الأداة. (قدم CodeWhisperer الذي تم إهماله الآن هذا الخيار أيضًا.) وبفضل القدرة التي تسمى Agents، يمكن لـ Q Developer تنفيذ أشياء بشكل مستقل مثل تنفيذ الميزات وتوثيق التعليمات البرمجية وإعادة هيكلتها (أي إعادة الهيكلة).
اطلب طلبًا من Q Developer مثل “إنشاء زر “إضافة إلى المفضلة” في تطبيقي”، وسيقوم Q Developer بتحليل كود التطبيق، وإنشاء كود جديد إذا لزم الأمر، وإنشاء خطة خطوة بخطوة، وإكمال اختبارات الكود قبل تنفيذ التغييرات المقترحة. يمكن للمطورين مراجعة الخطة وتكرارها قبل أن تنفذها Q، وربط الخطوات معًا وتطبيق التحديثات عبر الملفات الضرورية وكتل التعليمات البرمجية ومجموعات الاختبار.
قال Seven: “ما يحدث خلف الكواليس هو أن Q Developer يقوم فعليًا بتكوين بيئة تطوير للعمل على الكود”. “لذلك، في حالة تطوير الميزات، يأخذ Q Developer مستودع التعليمات البرمجية بالكامل، وينشئ فرعًا من هذا المستودع، ويحلل المستودع، ويقوم بالعمل الذي يُطلب منه القيام به ويعيد تغييرات التعليمات البرمجية هذه إلى المطور.”
يمكن للوكلاء أيضًا أتمتة وإدارة عمليات ترقية التعليمات البرمجية، كما تقول أمازون، مع تحويلات Java المباشرة اليوم (على وجه التحديد Java 8 و11 التي تم إنشاؤها باستخدام Apache Maven إلى Java الإصدار 17) وتحويلات .NET قريبًا. وأضاف Seven: “يقوم Q Developer بتحليل الكود – بحثًا عن أي شيء يحتاج إلى ترقية – وإجراء كل هذه التغييرات قبل إعادته إلى المطور لمراجعته والالتزام به”.
بالنسبة لي، يبدو برنامج Agents مشابهًا إلى حد كبير لمساحة عمل Copilot في GitHub، والتي تقوم بالمثل بإنشاء وتنفيذ خطط لإصلاح الأخطاء والميزات الجديدة في البرامج. و- كما هو الحال مع Workspace – لست مقتنعًا تمامًا بأن هذا النهج الأكثر استقلالية يمكنه حل المشكلات المحيطة بمساعدي البرمجة الذين يعملون بالذكاء الاصطناعي.
وجد تحليل لأكثر من 150 مليون سطر من التعليمات البرمجية المخصصة لمشروع إعادة الشراء على مدى السنوات العديدة الماضية بواسطة GitClear أن Copilot كان يؤدي إلى دفع المزيد من التعليمات البرمجية الخاطئة إلى قواعد التعليمات البرمجية. وفي مكان آخر، حذر باحثون أمنيون من أن برنامج Copilot والأدوات المشابهة يمكن أن تؤدي إلى تضخيم الأخطاء والمشكلات الأمنية الموجودة في مشاريع البرمجيات.
هذا ليس مفاجئا. يبدو أن مساعدي الترميز الذين يعملون بالذكاء الاصطناعي مثيرون للإعجاب. لكنهم مدربون على التعليمات البرمجية الموجودة، وتعكس اقتراحاتهم أنماطًا في عمل المبرمجين الآخرين، وهو عمل يمكن أن يكون معيبًا بشكل خطير. تؤدي تخمينات المساعدين إلى إنشاء أخطاء غالبًا ما يصعب اكتشافها، خاصة عندما يذعن المطورون – الذين يتبنون مساعدي تشفير الذكاء الاصطناعي بأعداد كبيرة – لحكم المساعدين.
في منطقة أقل خطورة بخلاف البرمجة، يمكن لـ Q Developer المساعدة في إدارة البنية التحتية السحابية للشركة على AWS – أو على الأقل تزويدهم بالمعلومات التي يحتاجون إليها للقيام بالإدارة بأنفسهم.
يمكن لـ Q Developer تلبية طلبات مثل “إدراج جميع وظائف Lambda الخاصة بي” و”إدراج مواردي الموجودة في مناطق AWS الأخرى”. حاليًا قيد المعاينة، يمكن للروبوت أيضًا إنشاء (ولكن ليس تنفيذ) أوامر AWS Command Line Interface والإجابة على الأسئلة المتعلقة بتكلفة AWS مثل “ما هي أعلى ثلاث خدمات من حيث التكلفة في الربع الأول؟”
إذًا ما هي تكلفة وسائل الراحة المولدة للذكاء الاصطناعي هذه؟
يتوفر Q Developer مجانًا في وحدة تحكم AWS وSlack وIDEs مثل Visual Studio Code وGitLab Duo وJetBrains – ولكن مع قيود. لا يسمح الإصدار المجاني بضبط المكتبات والحزم وواجهات برمجة التطبيقات المخصصة، ويختار المستخدمين في نظام جمع البيانات بشكل افتراضي. كما أنه يفرض حدودًا شهرية، بما في ذلك 5 مهام للوكلاء كحد أقصى (على سبيل المثال، تنفيذ ميزة) شهريًا و25 استفسارًا حول موارد حساب AWS شهريًا. (من المحير بالنسبة لي أن تفرض أمازون حداً أقصى على الأسئلة التي يمكن للمرء أن يطرحها حول خدماتها، ولكن ها نحن ذا).
تبلغ تكلفة الإصدار المميز من Q Developer، Q Developer Pro، 19 دولارًا شهريًا لكل مستخدم ويضيف حدود استخدام أعلى، وأدوات لإدارة المستخدمين والسياسات، وتسجيل الدخول الموحد، وربما الأهم من ذلك، تعويض IP.
في كثير من الحالات، يتم تدريب النماذج التي تقوم عليها خدمات إنشاء التعليمات البرمجية مثل Q Developer على تعليمات برمجية محمية بحقوق الطبع والنشر أو بموجب ترخيص مقيد. يزعم البائعون أن الاستخدام العادل يحميهم في حالة تطوير النماذج عن قصد أو عن غير قصد على كود محمي بحقوق الطبع والنشر – ولكن لا يتفق الجميع على ذلك. تتم مقاضاة GitHub وOpenAI في دعوى جماعية تتهمهما بانتهاك حقوق الطبع والنشر من خلال السماح لـ Copilot بتجديد مقتطفات التعليمات البرمجية المرخصة دون تقديم الائتمان.
تقول أمازون إنها ستدافع عن عملاء Q Developer Pro ضد المطالبات التي تزعم أن الخدمة تنتهك حقوق الملكية الفكرية لطرف ثالث طالما أنهم يسمحون لـ AWS بالتحكم في دفاعهم والتسوية “كما تراه AWS مناسبًا”.
اكتشاف المزيد من موقع شعاع للمعلوماتية
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.