Programcılar ChatGPT dünyasında nasıl hayatta kalıyor?

Kaynak: Divine Çeviri Bürosu

Editörün notu: ChatGPT'nin piyasaya sürülmesiyle birlikte, piyasada bir dizi yapay zeka kod oluşturma asistanı ortaya çıktı. Üretken yapay zeka revaçta ve insan yaşamının her alanına nüfuz etti.Yapay zeka gerçekten insan programcıların yerini alacak mı? Program geliştiriciler için ChatGPT dünyasında nasıl hayatta kalınır ve geliştirilir? Bu makale, insan programcıların üretken yapay zekanın bir adım önünde olmalarına yardımcı olacak 4 ipucu paylaşacak. Makale çeviriden alınmıştır, umarım size ilham verebilir.

Görsel kaynağı: Unbounded AI‌ tarafından oluşturuldu

Yapay zeka, özellikle de büyük dil modelleri (LLM) tarafından desteklenen üretici yapay zeka, tüm programcı endüstrisini bozma potansiyeline sahiptir. Ancak bazı uzmanlar, yapay zekanın en azından hemen insan programcıların yerini almayacağını düşünüyor.

Tıbbi bir yapay zeka araştırma merkezi olan MedARC'nin CEO'su ve Kaliforniya Üniversitesi, Davis'te biyomedikal mühendisliğinde doktora sahibi olan Tanishq Mathew Abraham, "Kendilerini değiştirmek için AI kullanan insanlar hakkında endişelenmeniz gerekecek" dedi.

Peki LLM kodlama çağı yaklaşırken yazılım geliştiriciler kendilerini nasıl daha değerli ve kullanışlı hale getirebilirler? Üretken yapay zeka çağında hayatta kalmak ve gelişmek için kodlayıcılara yönelik bazı ipuçlarını ve püf noktalarını burada bulabilirsiniz.

Temel ilkelere ve en iyi uygulamalara bağlı kalın

Birçok AI tabanlı kodlama asistanı, kod yazmamıza ve kod oluşturmamıza yardımcı olabilse de, programlamayı öğrenmek için temel beceri, yani kodu okuma ve analiz etme ve yazdığınız kodun büyük sistemler için nasıl geçerli olduğunu anlama becerisi hala gereklidir. **

"Yapay Zekanın yazılım geliştiricilerin üretkenliğini büyük ölçüde artırabileceğine inanıyorum, ancak yazılım mühendisliği yalnızca kod üretmekle ilgili değil, aynı zamanda kullanıcı gereksinimleri, hata ayıklama ve test etme ve daha fazlasını oluşturmakla da ilgilidir."

**En bütünleyici programlama becerilerinden biri insan kodlayıcıların alanı olmaya devam ediyor: problem çözme. ** Bir sorunu analiz etmek ve ona uygun bir çözüm bulmak, hâlâ son derece saygın bir kodlama becerisidir.

"Programlamanın yaratıcı bir yanı vardır ve problem çözmedeki bu beceriler, gerçek programlama dili veya araçlarından daha önemlidir. Büyük bir dil modelinin istatistiksel çıktısı olan yapay zeka ile karşılaştırmalara kapılmayın. Geliştiriciler Yaptığınız şey ile modelinizin çıktıları arasında bir fark var ve bir geliştirici olarak, kod yazmaktan daha fazlası var," dedi Python Software Foundation'da araştırmacı ve Explosion'ın kurucu ortağı ve CEO'su Ines Montani.

Ek olarak, **iyi yazılım mühendisliği uygulamaları her zamankinden daha değerlidir. **Bu uygulamalar, planlama sistemi tasarımı ve yazılım mimarisini içerir ve programcılar, daha sonra hangi koda ihtiyaç duyulacağını daha etkili bir şekilde tahmin etmek için yapay zeka araçlarını kullanabilir.

"Programlama Mühendisleri, bir kod parçası için veri yapılarını, kodu organize etmek için doğru soyutlamaları ve farklı arayüzler için gereksinimleri bulmak zorundadır. uzun bir süre için."

İhtiyaçlarınıza uyan aracı bulun

Doğru AI araçlarını bulmak çok önemlidir. Her aracın kendi etkileşim yolu vardır ve her araç, ister otomatik olarak birim testleri oluşturma, ister test verileri oluşturma veya belge yazma olsun, geliştirme iş akışına farklı şekillerde entegre edilebilir.

Örneğin, GitHub Copilot ve diğer AI kodlama asistanları, kodlama becerilerimizi artırabilir ve bize kodlama önerileri sağlayabilir. Öte yandan ChatGPT ve Google'ın Bard'ı, bir API (uygulama programlama arabirimi) hakkındaki soruları yanıtlamak veya kod parçacıkları oluşturmak için kullanılabilen, daha çok konuşma tabanlı yapay zeka programcıları gibidir.

**Önemli olan denemektir. Bir AI aracını deneyin, nasıl çalıştığını öğrenin, çıktısının kalitesini değerlendirin ve ayrıca diğer AI araçlarına karşı açık fikirli olun. **Abraham şöyle dedi: "Yapay zeka alanı hızla değişiyor. Belirli bir aracı sonsuza kadar kullanamazsınız, bu nedenle yeni araçlara hızla uyum sağlamanız gerekir."

Ayrıca, uygun kullanım durumunu göz önünde bulundurun. Üretken yapay zeka araçları, yeni bir programlama dilini hızlı bir şekilde öğrenmemize yardımcı olabilir ve ayrıca kısa sürede proje prototipleri oluşturabilir.

Açık ve kesin diyalog önemlidir

Bir AI kodlama asistanı kullanırken, ihtiyaçlarınızı detaylandırın ve bunu yinelemeli bir süreç olarak düşünün. Abraham, asistanın yoruma dayalı gereksinimlerinizi karşılayan kod oluşturabilmesi için kodu açıklayan bir yorum yazmayı önerir.

Konuşmalı bir yapay zeka programcısı için istemleri en iyi şekilde nasıl ayarlayacağınızı bilmeniz gerekir ve hızlı mühendislik burada devreye girer.

İbrahim, düşünce zinciri yönlendirme yöntemini kullanmayı önerdi. Bu yöntem aslında "böl ve fethet" stratejisini içerir, yani sorunu birden fazla adıma ayırın ve ardından bunları birer birer çözün ve sonunda tüm sorunu çözün. "Bir modelden belirli bir süre içinde çok fazla şey yapmasını isteyin ve bu iyi çalışmaz. Yapması gereken, yönetilebilir bilgi yığınlarını işleyebilmek ve yönetilebilir kod yığınları oluşturabilmektir" dedi.

Örneğin, bir AI programcısından tüm programı sıfırdan kodlamasını istemek yerine, programın gerçekleştirmesi gereken tüm görevler hakkında iyice düşünün. **Bu görevleri daha fazla bölmek, modelin her görev için belirli işlevler yazmasını gerektirir; bu da, belirli bir görevi gerçekleştirmek için atılması gereken adımlar üzerinde modelle ileri geri gitmeyi gerektirir. **

Abraham, "Bunu, bir konu hakkında bilgisi olan ancak fazla deneyimi olmayan akıllı bir stajyer olarak düşünün" diyor.

Uç mühendisliğinin hassasiyeti ve netliği çok önemlidir. Abraham şunları söyledi: "Modele ne istediğinizi çok net bir şekilde söylemeniz, ondan hangi sorunu çözmesini istediğinizi çok net bir şekilde söylemeniz ve sonuna kadar takip ettiğinizden emin olmanız gerekir."

**Yapay zeka ve makine öğreniminin temel kavramlarını öğrenmenin yanı sıra büyük dil modellerinin nasıl çalıştığını ve bunların güçlü ve zayıf yönlerini anlamak da değerlidir. **Araştırmanızı yapmanız gerekecek, ancak sonucu değerlendirmek için biraz sağduyu şarttır.

Başlamanıza yardımcı olmak için Abraham, ipucu kitaplıkları ve araçları, ipucu kılavuzları, video dersleri ve daha fazlasını içeren OpenAI Yemek Kitabı'nı önerirken Weisslingame, modellerin temelleri ve makine öğrenimi hakkında daha fazla bilgi edinmek için Resimli Transformer'ı okumanızı önerir.

Eleştirel olun ve risklerin farkında olun

Yazılım mühendisleri, halüsinasyon görme ve hayali, yanlış ve hatta hatalı kod üretme eğiliminde olduklarından, büyük dil modellerinin çıktılarına karşı eleştirel olmalıdır. Weisslingame, "Yapay zeka tarafından üretilen kodu körü körüne kullanmak, kolayca çıkmazlara yol açabilir ve ince hataları tespit etmek zordur." Dedi.

Weisslingame, "Bu nedenle, oluşturulan kodu kontrol etmek çok önemlidir, bu da bir miktar iş eklerken üretkenliğe yarardan çok zarar verebilir. Ancak Abraham, "bazı durumlarda, kodu doğrulamak, kod yazmaktan çok daha kolaydır" diyor. sıfırdan ve kod oluşturmanın, doğrulamanın ve ardından mevcut bir kod tabanına entegre etmenin çok daha hızlı bir yolu."

Bu modellerin çıktılarını analiz edelim ve şu soruları soralım: **Bu model hangi veriler üzerinde eğitildi? Hangi veriler filtrelendi ve hangi veriler dahil edilmedi? Eğitim verileri kaç yaşında? Model hangi programlama dili, yazılım paketi veya kitaplık sürümü üzerinde eğitildi? Bu soruların cevapları sonuçları etkileyebilir ve daha ilgili bilgiler sağlayabilir. **

Geliştiriciler ayrıca bu modellere özel kod girme konusunda dikkatli olmalıdır. Tabnine gibi bazı şirketler, gizlilik sağlarken kurumsal kodlama modellerini ve stillerini öğrenen yapay zeka destekli kodlama asistanlarının kurumsal sürümlerini sunar.

Telif hakkı başka bir husustur, ancak bu araçları birkaç satır kod tamamlamak veya yaygın, önemsiz görevler için kod oluşturmak için kullanıyorsanız, telif hakkı sorunları büyük kod parçaları oluşturmaktan daha az endişe vericidir.

Lesama, "Programcılar, yapmaya çalıştıkları şeyin yaratıcılığının ve bu yaratıcılığın çevrelerine ne kadar iyi uyduğuna dair biraz farkındalığa sahip olmalı" dedi. "Model tarafından üretilen kodun bir miktar özgünlüğü varsa, kod tabanına yerleştirilmeden önce şüphe ve şüphe ile ele alınmalıdır".

Daha büyük bir endişe, kodun güvenliğidir, çünkü bu modeller güvenlik açıkları içeren kodlar üretebilir. Weisslingame, kod incelemeleri ve güçlü test boru hatları gibi en iyi yazılım geliştirme uygulamalarının bu riske karşı korunmaya yardımcı olabileceğine inanıyor.

Lesama, "Daha deneyimli yazılım mühendislerinin masaya getirebilecekleri şeylerden biri, koddaki en yaygın güvenlik açıkları ve bu kodun en yaygın savunmasızlık biçimleridir" dedi ve şöyle devam etti: "Nereye, hangi yerlere bakacakları konusunda bir sezgi geliştirecekler. uyanıklığa neden olacaktır. Gelecekte, bu tür teknolojiler yazılım mühendisliği portföyünün daha da önemli bir parçası haline gelecek. "

Programcıların üretken bir yapay zeka dünyasında hayatta kalabilmeleri için, yapay zekayı bir araç olarak görmeleri ve iş akışlarına entegre etmeleri, bu araçların fırsatlarını ve sınırlamalarını fark etmeleri ve büyümek ve gelişmek için insan kodlama yeteneğine güvenmeleri gerekir.

Çevirmen: Araon_

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • Comment
  • Repost
  • Share
Comment
0/400
No comments
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate App
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)