Kod yazmak için ChatGPT nasıl kullanılır?

resim1.pngChatGPT ile ilgili en ilgi çekici keşiflerden biri, oldukça iyi kod yazabilmesidir. Bunu Şubat ayında karımın web sitesinde kullanabileceği bir WordPress eklentisi yazmasını istediğimde test ettim. İyi bir iş çıkardı, ama çok basit bir projeydi.

Yazmak için ChatGPT nasıl kullanılır: Özgeçmişler| Excel formülleri | Denemeler | Kapak mektupları

Günlük kodlama uygulamanızın bir parçası olarak kod yazmak için ChatGPT'yi nasıl kullanabilirsiniz? Burada keşfedeceğimiz şey bu.

ChatGPT ne tür kodlamalarda başarılı olabilir?

ChatGPT ve kodlama hakkında iki önemli gerçek vardır. Birincisi, aslında yararlı kodlar yazabilmesidir. İkincisi, tamamen kaybolabilir, tavşan deliğine düşebilir, kendi kuyruğunu kovalayabilir ve kesinlikle kullanılamaz çöpler üretebilir.

Ben bunu zor yoldan buldum. WordPress eklentisini bitirdikten sonra, ChatGPT'nin ne kadar ileri gidebileceğini görmeye karar verdim. Bir Mac uygulaması için, kullanıcı arabirimi öğelerinin, etkileşimlerin, ayarlarda neler sağlanacağının, nasıl çalışacaklarının vb. ayrıntılı açıklamalarını içeren çok dikkatli bir bilgi istemi yazdım. Sonra onu ChatGPT'ye besledim.

ChatGPT, bir metin ve kod seli ile yanıt verdi. Sonra kodun ortasında durdu. Devam etmesini istediğimde, daha da fazla kod ve metin kustu. Devam ettikten sonra devam etmesini istedim ve gittikçe daha fazla kod attı. Ama... hiçbiri kullanılabilir durumda değildi. Kodun nereye gitmesi gerektiğini, projenin nasıl inşa edileceğini belirlemedi ve - üretilen koda dikkatlice baktığımda - istediğim büyük işlemleri dışarıda bıraktı, basit metin açıklamalarında "program mantığı buraya gider. "

Bir dizi tekrarlanan testten sonra, ChatGPT'den eksiksiz bir uygulama teslim etmesini isterseniz bunun başarısız olacağını anladım. Bu gözlemin bir sonucu olarak, eğer kodlama hakkında hiçbir şey bilmiyorsanız ve ChatGPT'nin size bir şey geliştirmesini istiyorsanız, başarısız olacaktır.

ChatGPT'nin başarılı olduğu ve çok iyi yaptığı nokta, kod yazmayı zaten bilen birinin belirli rutinler oluşturmasına ve belirli görevleri yerine getirmesine yardımcı olmaktır. Menü çubuğunda çalışan bir uygulama istemeyin. Ancak ChatGPT'den menü çubuğuna bir menü koymak için bir rutin sorarsanız ve ardından bunu projenize yapıştırırsanız, oldukça iyi sonuç verecektir.

Ayrıca: Bir uygulama oluşturmak için ChatGPT nasıl kullanılır?

Ayrıca, ChatGPT'nin alana özgü muazzam miktarda bilgiye sahip gibi görünse de (ki çoğu zaman öyledir), bilgelikten yoksun olduğunu unutmayın. Bu nedenle, kod yazabilir, ancak anlamak için derin deneyim gerektiren çok özel veya karmaşık problemler için nüansları içeren kod yazamaz.

Teknikleri tanıtmak, küçük algoritmalar yazmak ve alt programlar oluşturmak için ChatGPT'yi kullanın. Hatta daha büyük bir projeyi parçalara ayırmanıza yardımcı olması için ChatGPT'yi edinebilir ve ondan bu parçaları kodlamanıza yardım etmesini isteyebilirsiniz.

Bunu göz önünde bulundurarak, kod yazmak için ChatGPT'nin nasıl kullanılacağına ilişkin bazı özel adımlara bakalım.

ChatGPT kod yazmanıza nasıl yardımcı olabilir?

1. İsteğinizi daraltın ve keskinleştirin

Bu ilk adım, ChatGPT'den ne soracağınıza karar vermek ama henüz ona bir şey sormamak. İşlevinizin veya rutininizin ne yapmasını istediğinize veya kodunuza dahil etmek için neyi öğrenmek istediğinize karar verin. Kodunuza ileteceğiniz parametrelere ve ne elde etmek istediğinize karar verin. Ve sonra onu nasıl tarif edeceğinize bakın.

Bunu yapması için bir insan programcıya para ödediğinizi hayal edin. O kişiye, göreviniz üzerinde çalışabilmesi için yeterli bilgiyi veriyor musunuz? Yoksa çok mu belirsizsiniz ve ödeme yaptığınız kişinin soru sorması veya istediğiniz şeyle tamamen alakasız bir şey vermesi daha olası mı?

İşte bir örnek. Diyelim ki herhangi bir web sayfasını özetleyebilmek istiyorum. Onu bu makale gibi beslemek ve iyi düşünülmüş ve uygun kısa bir özet almak istiyorum. Girişim olarak bir web sayfası URL'si belirteceğim. Benim çıktım olarak, özeti olan bir metin bloğu.

2. Kütüphaneleri ve kaynakları keşfetmek için ChatGPT'yi kullanın

Yukarıdaki örnekle devam edecek olursak, web sayfası verilerini çıkarmanın çok eski bir yolu HTML paragraf etiketleri arasındaki metni bulmaktı.

Ancak yapay zeka araçlarının yükselişiyle birlikte, akıllı bir alıntı ve özet yapmak için bir yapay zeka kitaplığı kullanmak daha mantıklı hale geldi. ChatGPT'nin öne çıktığı yerlerden biri (ve aynı zamanda yetkili ama yanlış davranış modelinden kaçınmak için kolayca doğrulayabileceğiniz bir alandır), kitaplıklar ve kaynaklar bulmaktır.

OpenAI (ChatGPT'nin üreticisi), tam olarak istediğimizi yapacak olan GPT-3 ve GPT-4 motorlarına API erişimi satar. Ancak bu örnekte işlem ücreti ödemek istemediğimizi varsayalım.

Öyleyse, böyle bir aracın PHP'de çalışan bir projeyle ücretsiz olarak nasıl kullanılacağını bulmak için ChatGPT ile etkileşime bakalım.

Hangi kitaplıkların istediğim işlevselliği sağlayacağı hakkında bilgi elde etmek için tasarlanmış bir bilgi istemiyle başladım. Bir kitaplık (programcı olmayan ve birlikte okuyanlarınız için), bir programcının erişebileceği ve belirli bir amaç için pek çok ağır işi yapan bir kod gövdesidir. Modern programlamanın büyük bir kısmı doğru kütüphaneleri bulmak ve seçmektir. Yani bu iyi bir başlangıç noktası.

Bu durumda, diğer insanlar tarafından yazılan ve metni özetleyen kod bloklarına bakıyorum. İşte ilk istemim:

Herhangi bir web sayfasının ana temel içeriğinin bir özetini oluşturmak için kullanabileceğim on farklı açık kaynaklı AI kitaplığını (ve birlikte çalıştıkları dilleri), herhangi bir reklamı veya gömülü materyali yok sayarak tanımlayın.

Bu bana OpenAI tekliflerinden bahsetmek de dahil olmak üzere tam olarak istediğim şeyi verdi. OpenAI'nin burada harika olacağını düşünüyorum, ancak bu varsayımsal proje için API ücretleri için bütçe ayırmak istemiyorum. Bu yüzden soruyu daraltacağım.

Bunlardan herhangi biri ücretsiz mi?

ChatGPT, cevabıyla bahislerini korudu. İşte söylediği şey: "Evet, bu yapay zeka kitaplıklarının on tanesi açık kaynaklıdır ve kullanımı ücretsizdir. Ancak, bazılarının kullanım sınırları olabilir veya ek özelliklere veya kaynaklara erişim için ödeme gerektirebilir." Buna dayanarak, sorgumu netleştirdim.

Bu kütüphanelerden hangilerinin kullanım limiti yoktur ve herhangi bir ek ödeme veya lisans gerektirmez?

Bunun nasıl bir konuşma olduğuna dikkat edin. Kaynak soruyu yeniden sormak zorunda değilim. Elimde bir uzman olsaydı ve açıklama arıyor olsaydım yapabileceğim gibi, sadece detaya iniyorum. Bu durumda, ChatGPT bana sekiz kitaplık seçeneği verdi, ancak hiçbiri kodlamayı planladığım PHP dilinden bahsetmedi. İşte bir sonraki bilgi istemi:

Bu 8 kitaplıktan herhangi birini PHP ile kullanabilir miyim?

Üç kitaplık döndürdü, ancak her birinin ne yaptığından emin değildim. Yani başka bir soru:

Sumy, Gensim ve NLTK arasındaki fark nedir?

Hala emin değildim, bu yüzden kullanım planımı netleştirdim ve sonra sordum:

Web sayfası haber makalelerinin özetlerini oluşturmak istersem, hangi kitaplık daha iyi çalışır?

Aldığım cevap net ve umut vericiydi: "Sumy, bir metin parçasından en önemli bilgileri yakalayan bir özet oluşturma görevi olan metin özetleme için özel olarak tasarlanmıştır." Yani, şimdi onu PHP ile kullanmanın neleri içerdiğini görmenin zamanı gelmişti. Son sorumu projenin bu kısmı için sordum:

PHP'den Sumy'nin nasıl kullanılacağını açıklayabilir misiniz?

Bilgisayarınızda oynamaktan ve bu istemleri ChatGPT örneğinize yapıştırmaktan çekinmeyin. 1. adımda hangi program modülünde yardım alacağıma karar verdim. Daha sonra, bu adımda hangi kütüphaneyi kullanacağıma ve onu projeme nasıl entegre edeceğime karar vermek için ChatGPT ile bir görüşme yaptım.

Bu programlama gibi görünmeyebilir, ama sizi temin ederim ki öyle. Programlama sadece kod satırlarını bir sayfaya patlatmak değildir. Programlama, tüm çeşitli kaynakları ve sistemleri birbirine nasıl entegre edeceğinizi ve çözümünüzün tüm çeşitli bileşenleriyle nasıl konuşacağınızı bulmaktır. Burada, ChatGPT bu entegrasyon analizini yapmama yardımcı oldu.

Bu arada, Google'dan Bard'ın da aynı şekilde yardımcı olup olamayacağını merak ediyordum. Bard aslında kod yazamıyor, ancak ChatGPT'nin yanıtları üzerinden programlamanın planlama yönüne dair bazı ekstra bilgiler verdi. Bu nedenle, istediğiniz yanıtları üçgenlemek için birden fazla araç kullanmaktan çekinmeyin. İşte o hikaye: Bard ve ChatGPT: Bard, kodlamanıza yardımcı olabilir mi? O makaleyi yazdığımdan beri Google, Bard'a bazı kodlama yetenekleri ekledi, ancak bunlar o kadar da iyi değil. Bunu buradan okuyabilirsiniz: Google Bard'ın yeni kodlama becerilerini test ettim. İyi gitmedi.

Sırada kodlama var.

3. ChatGPT'den örnek kod yazmasını isteyin

Tamam, burada bir ara verelim. Bu makalenin başlığı "Kod yazmak için ChatGPT nasıl kullanılır?" Ve olacak! Ancak ChatGPT'den gerçekten örnek kod yazmasını istiyoruz. Beklemek. Ne?

Ayrıca: GPT-4 nedir? İşte bilmeniz gereken her şey

Açık olalım. Çok küçük bir işlev yazmadığınız sürece (ChatGPT'nin eşim için yazdığı satır sıralayıcı/randomizer gibi), ChatGPT son kodunuzu yazamayacaktır. İlk olarak, onu korumak zorunda kalacaksın. ChatGPT, önceden yazılmış kodu değiştirmekte berbattır. Korkunç, olduğu gibi, yapmıyor. Bu nedenle, yeni kod almak için ChatGPT'den yeni bir şey oluşturmasını istemeniz gerekir. Daha önce bulduğum gibi, isteminiz neredeyse aynı olsa bile, ChatGPT size verdiklerini çok beklenmedik şekillerde değiştirebilir.

Sonuç olarak, ChatGPT kodunuzu koruyamaz, hatta değiştiremez.

Bu, kendin yapman gerektiği anlamına gelir. Bildiğimiz gibi, bir kod parçasının ilk taslağı nadiren son koddur. Dolayısıyla, ChatGPT'nin nihai kodu oluşturmasını bekleseniz bile, bu gerçekten bir başlangıç noktası olacaktır; onu tamamlamanız, daha büyük projenize entegre etmeniz, test etmeniz, iyileştirmeniz, hata ayıklamanız vb. .

Ayrıca: ChatGPT'den kısa bir Star Trek bölümü yazmasını istedim. Aslında başarılı oldu

Ancak bu, örnek kodun değersiz olduğu anlamına gelmez. Ne münasebet. Daha önce anlattığım projeye dayanarak yazdığım bir bilgi istemine bir göz atalım. İşte ilk bölüm:

Summary_article adlı bir PHP işlevi yazın.

Giriş olarak, abstract_article, ZDNET.com veya Reuters.com gibi haberlerle ilgili bir sitedeki bir makalenin URL'sini iletecektir.

ChatGPT'ye kullanması gereken programlama dilini söylüyorum. Ayrıca girdiyi söylüyorum ama bunu yaparken ChatGPT'nin makalenin stilini anlamasına yardımcı olmak için iki siteyi örnek olarak veriyorum. Dürüst olmak gerekirse, ChatGPT'nin bu küçük rehberliği göz ardı etmediğinden emin değilim. Sonra, ona işin büyük kısmını nasıl yapacağını anlatacağım:

Summary_article içinde, sağlanan URL'deki web sayfasının içeriğini alın. PHP içindeki Sumy kitaplığını ve gerekli diğer kitaplıkları kullanarak, reklamları veya gömülü materyalleri yok sayarak makalenin ana gövdesini çıkarın ve yaklaşık 50 kelimeye kadar özetleyin. Özetin tam cümlelerden oluştuğundan emin olun. Gerekirse son cümleyi bitirmek için 50 kelimenin üzerine çıkabilirsiniz.

Bu, bir çalışana nasıl talimat vereceğime çok benzer. O kişinin sadece Sumy ile sınırlı olmadığını bilmesini isterim. Başka bir araca ihtiyaçları varsa, kullanmalarını istedim.

Özet olarak istediklerime sınır oluşturmak için yaklaşık bir kelime sayısı da belirttim. Rutin sonraki bir sürümü, bu sayıyı bir parametre olarak alabilir. Daha sonra sonuç olarak ne istediğimi söyleyerek bitirdim:

İşlem tamamlandıktan sonra, özeti düz metin olarak döndürmesi için sum_article kodunu kullanın.

Ortaya çıkan kod oldukça basittir. ChatGPT, makale içeriğini almak için başka bir kitaplığı (Kaz) aradı. Daha sonra bunu 50 kelimelik bir sınırla Summy'ye iletti ve ardından sonucu döndürdü. Bu kadar. Ancak temel bilgiler bir kez yazıldığında, geri dönüp ince ayarlar eklemek, iki kitaplığa aktarılanları özelleştirmek ve sonuçları sunmak yalnızca bir programlama meselesidir.resim2.png

İlginç bir not. ChatGPT, 2021'den sonra (ChatGPT'nin veri kümesi sona erdiğinde) bir URL kullanarak yazdığı rutine örnek bir çağrı oluşturdu.

Bu URL'yi hem Reuters sitesinde hem de Wayback Machine'de kontrol ettim ve mevcut değil. ChatGPT bunu yeni uydurdu.

SSS

ChatGPT programcıların yerini mi alıyor?

Şimdi değil - ya da en azından - henüz değil. ChatGPT programları yetenekli bir birinci sınıf programlama öğrencisi düzeyindedir, ancak tembeldir (şu birinci sınıf öğrencisi gibi). Çok giriş seviyesi programcılara olan ihtiyacı azaltabilir, ancak mevcut seviyesinde, giriş seviyesi programcıların (ve hatta daha fazla deneyime sahip programcıların) kod yazması ve bilgi araması için hayatı kolaylaştıracağını düşünüyorum. Kesinlikle zaman kazandırıyor, ancak kendi başına yapabileceği çok az programlama projesi var - en azından şimdi. 2030'da mı? Kim bilir.

ChatGPT'de kodlama yanıtlarını nasıl alabilirim?

Sadece sor. İstediğim cevapları daraltmak için etkileşimli bir tartışma diyaloğunu nasıl kullandığımı yukarıda gördünüz. ChatGPT ile çalışırken, tek bir sorunun sihirli bir şekilde tüm işinizi sizin yerinize yapmasını beklemeyin. Ancak ChatGPT'yi bir yardımcı ve kaynak olarak kullanın ve size pek çok yararlı bilgi verecektir. Elbette bu bilgiyi test edin -- çünkü OpenAI'nin kurucu ortaklarından John Schulman'ın dediği gibi, "En büyük endişemiz gerçeklikle ilgiliydi, çünkü model bir şeyler uydurmayı seviyor."

Kodumu yazmak için ChatGPT kullanırsam, sahibi kimdir?

Görünüşe göre, bu soruyu kesin olarak yanıtlayacak çok fazla içtihat yok. ABD, Kanada ve Birleşik Krallık, telif hakkıyla korunan bir şeyin insan eliyle oluşturulmuş olmasını gerektirir, bu nedenle bir AI aracı tarafından oluşturulan kod telif hakkına tabi olmayabilir. Eğitim kodunun nereden geldiğine ve ortaya çıkan kodun nasıl kullanıldığına bağlı olarak sorumluluk sorunları da vardır. ZDNET bu konuyu derinlemesine inceledi, hukuk uzmanlarıyla görüştü ve aşağıdaki üç makaleyi yayınladı. Bu sorun hakkında endişeleriniz varsa (ve koda yardımcı olması için yapay zeka kullanıyorsanız, öyle olmalısınız), onlara bir okuma yapmanızı tavsiye ederim.

  • Kodun sahibi kim? ChatGPT'nin yapay zekası, uygulamanızın yazılmasına yardımcı oluyorsa uygulama hâlâ size mi ait?
  • Yapay zeka tarafından oluşturulan kod kullanıyorsanız, sorumluluk riskiniz nedir?
  • Çetrefilli bir soru: AI tarafından oluşturulan kod, görüntüler ve anlatıların sahibi kimdir?

ChatGPT hangi programlama dillerini biliyor?

Onların çoğu. Bunu denerken çok yanıldım. PHP, Python, Java, Kotlin, Swift, C# ve daha fazlası gibi yaygın olarak kullanılan modern dilleri test ettim. Ama sonra ona COBOL, Fortran, Forth, LISP, ALGOL, RPG (rol yapma oyunu değil, rapor programı üreteci) ve hatta IBM/360 derleme dili gibi belirsiz karanlık çağ dillerinde kod yazdırdım.

Pastanın üzerine krema olarak, ona şu istemi verdim:

Bir PDP 8/e'nin ön panelinde yanıp sönen ascii ışıklarında 'Merhaba dünya' yazan bir dizi yazın

PDP 8/e benim ilk bilgisayarımdı ve ChatGPT aslında bana ön panel anahtarlarını kullanarak bir programda geçiş yapma talimatları verdi. Etkilendim, neşelendim ve biraz da korktum.

Sonuç olarak ne var? ChatGPT çok yardımcı bir araç olabilir. Sadece ona süper güçler atfetme. Henüz.

HIX.AI ile yapay zekanın gücünün kilidini açın!