IBM watsonx Code Assistant, AI code-generation software…

Engin Özkurt
6 min readJan 18, 2024

--

Generative AI veya üretken yapay zeka, 2023 yılında büyük ilgi gören bir konu oldu ve önümüzdeki yıllarda da öyle olmaya devam edecek gibi görünüyor. Yapay zeka, tarihsel olarak yeni bir konu olmamasına rağmen, son yıllarda bu teknolojiye yönelik uygulamaların artması, birçok faktöre bağlı görünüyor.

Birincisi, teknolojik gelişmeler sayesinde yapay zeka algoritmaları daha güçlü ve verimli hale geldi. Bu, farklı sektörlerde ve endüstrilerde yapay zeka tabanlı çözümlerin daha yaygın olarak kullanılmasının önünü açtı..İkincisi, bulut bilişim (Cloud Computing) ve diğer altyapı gelişmeleri, yapay zeka uygulamalarının daha erişilebilir ve düşük maliyetli hale gelmesini sağladı.

Üçüncü olarak, tüketicilerin ve işletmelerin dijitalleşmeye ve veriye dayalı karar vermeye olan ilgilerinin artması. Ayrıca, mobil uygulamalar, web siteleri ve diğer dijital platformlar üzerinde yapay zeka tabanlı özelliklerin entegrasyonu, kullanıcı deneyimini artırmak ve iş süreçlerini optimize etmek için popüler hale geldi.

Sonuç olarak, Generative AI’nin popülerliği ve yapay zeka uygulamalarının artışı, teknolojik gelişmeler, altyapı gelişmeleri ve pazar talebi gibi çeşitli faktörlerin birleşimiyle açıklanabilir. Bu trendin gelecekte de devam edeceği ve yapay zeka tabanlı inovasyonların daha da yaygınlaşacağına kesin gözüyle bakılıyor.

İşletmelerde var olan veri çeşitliliğini düşündüğümüzde; işletme verileri, hukuksal veriler, süreç verileri, güvenlik verileri, teknik görseller-fotoğraflar, konuşma verileri, sensör verileri, uygulama kaynak kodları gibi farklı tipte veriler bulunmaktadır. Foundation Model (FMs) veya Large — Language Model (LLMs) gibi geliştirilmiş olan büyük dil modelleri, işletmelerin veri potansiyelini anlamalarını ve değeri ortaya çıkarmalarını sağlamaktadır.

watsonx Code Assistant, watsonx.ai platformu üzerine inşa edilmiş bir yapay zeka uygulamasıdır. watsonx.ai işletmelerin Generative AI ve geleneksel AI ihtiyaçlarının tümünü karşılayabileceği IBM’in AI & Data platformudur. watsonx.ai platformu ile işletmeler, Generative AI, temel modeller ve makine öğrenimi yeteneklerini train, validate, tune, and deploy edebilirler.

Prompt Lab: AI mühendislerinin temel modellerle çalışabileceği ve prompt mühendisliğini kullanarak prompt’lar oluşturabileceği bir özelliktir. IBM’in temel modelleri güvenilirdir, veri gizliliği ve güvenlik kısıtlamaları içermektedir. Bu da müşterileri zararlı, ve yanıltıcı sonuçlardan kaçınmalarına yardımcı olur. 2025 yılına gelindiğinde uygulama geliştirme yaşam döngüsünün %80'i Generative AI kod üretiminden faydalanacağı ön görülmektedir.

Yazının başlığındanda anlaşılacağı üzere bugün IBM Watsonx Code Assistantdan bahsedeceğim.

Watsonx Code Assistant (WxCA), yazılım geliştiricileri ve BT operasyon ekipleri için tasarlanmış bir yapay zeka uygulamasıdır. WxCA, uygulama modernizasyonu ve otomasyon süreçlerini hızlandırmak amacıyla Generative AI teknolojisinden yararlanarak geliştirilmiştir.. IBM Granite foundation model(FM) gibi büyük dil modelleriyle (LLM -large-language-models) desteklenen yapay zeka tarafından oluşturulan önerilerle yüksek kalite kod üretmelerine yardımcı olmaktadır.

Foundation modeller (FMs) ve Generative AI (GenAI), yapay zeka alanında önemli bir sıçrayışı başlattı. Ancak işletmelerin bu teknolojileri benimseme ve uygulama biçimi; hızla değer yaratma, inovasyonu gerçekleştirme ve işletme değerini ortaya çıkarma yetenekleri belirleyecektir.

Günümüzde BT ekipleri, geniş ve dağıtık uygulama ortamlarıyla birlikte private-public-hybrid cloud sistemleri ve kurum içindeki kritik donanım ortamlarını kesintisiz ve erişilebilir bir şekilde yönetme göreviyle karşı karşıyadırlar.. Bu ortamları yönetmek için için otomasyon yeteneklerinden faydalanarak manuel yapılan işleri otomasyon yazılımları ile otomotize etmelidirler. Otomasyonun avantajlarından biri, bu tür görevleri geniş bir ölçekte etkili bir şekilde gerçekleştirmesidir. Ancak bu işlemler aynı zamanda otomasyonun en büyük risklerinden birini de beraberinde getirir; eğer başarısız bir işlem gerçekleşirse, hızlı ve geniş bir BT ortamı içerisinde sorunlar meydana gelebilir. Bu nedenle geliştirilecek olan otomasyon playbook’larının Ansible gibi otomasyon platformları tarafından yapılması gerekir. Fakat bu noktada da ilgili playbook’ların geliştirilmesi tarafında teknik uzmanlık yetersizliği karşımıza çıkmaktadır.

GenAI, çeşitli programlama dillerinde doğru ve bağlamsal olarak uygun kod oluşturma yeteneğini sergilemektedir. Özellikle Ansible Playbook’larından oluşan geniş bir veri setiyle eğitildiğinde, bu yapay zeka modelleri Playbook’ların detaylarını anlama kapasitesine sahip olabilir. Eğer bir işletme yüzlerce playbook kullanıyorsa, otomasyon için geliştirilen modeller için zengin bir veri seti potansiyeli mevcuttur..

Peki avantajlarını sıralamak gerekirse;

  • Daha hızlı öğrenme için, yapay zeka tarafından doğal dil girişlerine veya mevcut kaynak koduna dayalı olarak oluşturulan kod önerileri geliştiricilere yardımcı olur.
  • İnsan hatalarını azaltarak, geliştiricilerin kod geliştirmede veya mevcut kodları dönüştürmede daha yüksek verimlilikle çalışmalarına olanak sağlar.
  • Kaliteli kod oluşturabilmek için, geliştiricilere kod önerilerini inceleme ve kabul etmeden önce veri kaynağıyla eşleştirme imkanı sunar.
  • Geliştirici ekiplerin WCA’ı kullanarak yeni beceriler geliştirilmesine izin verir..
  • Değer elde etme süresini hızlandırmak için, verimliliği ön planda tutarak geliştiricilere yapay zekayı daha fazla kullanma imkanı sunar.

WxCA’nın özellikleri arasında yeni kod oluşturma, oluşturulan kod önerilerini eşleştirme, bir kaynak kodunu bir dilden farklı bir dile çevirme veya mevcut kodu düzenleme gibi fonksiyonlar bulunmaktadır.

watsonx code assistant’ın, watsonx.ai üzerine geliştirilmiş şu an için iki önemli uygulaması bulunmaktadır. Future kısmından da anlaşılacağı üzere yakın zamanda farklı uygulamalar hayatımıza girecektir..

  • watsonx Code Assistant for Red Hat Ansible Lightspeed
  • watsonx Code Assistant for Z

watsonx Code Assistant for Red Hat Ansible Lightspeed

Yazılım ve otomasyon geliştiricilerine, yapay zeka destekli önerilerle Ansible Playbook’ları için tasklar oluşturma imkanı sağlar. BT otomasyon süreçlerini hızlandırmayı amaçlayan bu çözüm, en uygun kod önerilerini maksimum verimlilikle sunar.

IBM watsonx Code Assistant’ın Red Hat Ansible Lightspeed için IT Otomasyonu bağlamında sunulan başlıca özellikleri ve avantajları şunlardır.

  • GenAI algoritmalarını kullanarak, geliştiricilere ve IT operatörlerine Ansible playbook taskları oluştururken daha yüksek verimlilik sağlar.
  • Ansible geliştiricileri için özel olarak tasarlanmış bu araç sayesinde, çeşitli taskları ve iş akışlarını oluşturmak için kod geliştirme sürecini kolaylaştırmayı sağlar.
  • Ansible platformuna entegre edilmiş yeni GenAI özellikleri, iş akışı orkestrasyonunu ve otomasyon yeteneklerini zenginleştirir.
  • Kod eşleştirme sayesinde şeffaflık, güvenilirlik ve tutarlılığı artırır.
  • Ansible Visual Studio Code extension ile sorunsuz bir şekilde entegre edilmiştir, geliştiricilere yeteneklerini etkili bir şekilde kullanabilecekleri tanıdık bir IDE deneyimi sunar.
watsonx Code Assistant for Red Hat Ansible Lightspeed

watsonx Code Assistant for Z

IBM Watsonx Code Assistant for Z, bugünkü alternatiflere göre daha düşük maliyetle ve daha az riskle mainframe uygulama modernizasyonunu hızlandırmak için tasarlanmış, Generative AI destekli bir üründür.

Bu ürün, uygulama keşfi ve analizi, otomatik kod yapılandırma ve COBOL’den Java’ya dönüşümü içeren uygulama geliştirici yaşam döngüsünü baştan sona sunar. Geliştiriciler, bir uygulamanın seçilen kısımlarını otomatik olarak yeniden yapılandırabilir ve COBOL ile modernizasyona devam edebilir veya yüksek derecede ayarlanmış son teknoloji büyük dil modelini (LLM — Large — Language Model) kullanarak kodu seçmeli olarak Java’ya dönüştürebilirler.

  • WxCA for Z ile geliştirici verimliliği artarak iş esnekliği ve hızını artırırlar.
  • z/OS uygulamaları için uçtan uca AI destekli uygulama modernizasyonu deneyimi sunar.
  • GenAI yetenekleri sayesinde Cobol’dan Java modernizasyonu için yüksek kaliteli kod etmeyi sağlar.
  • Uygulama modernizasyonuyla kod geliştirme hızı, geliştirici üretkenliği ve hızlı değer oluşturabilir.
Generative AI-assisted mainframe application modernization

yazımı burada sonlandırıyorum, bir sonraki yazıda her iki uygulamanın detaylarını inceleyeceğiz..

Teşekkürler

References:

--

--

Engin Özkurt

𝘚𝘦𝘯𝘪𝘰𝘳 𝘚𝘪𝘵𝘦 𝘙𝘦𝘭𝘪𝘢𝘣𝘪𝘭𝘪𝘵𝘺 𝘌𝘯𝘨𝘪𝘯𝘦𝘦𝘳 / 𝘌𝘹-𝘔𝘪𝘤𝘳𝘰𝘴𝘰𝘧𝘵 /𝘖𝘱𝘪𝘯𝘪𝘰𝘯𝘴 𝘩𝘦𝘳𝘦 𝘢𝘳𝘦 𝘮𝘺 𝘰𝘸𝘯.