Program
“12 Days of OpenAI” etkinliğinin dördüncü günündeyiz ve OpenAI, bu yılın başlarında tanıttıkları bir özellikle ilgili önemli güncellemeleri duyurdu: ChatGPT Canvas.
Bu blogda, ChatGPT Canvas’ın ne olduğunu anlatacak, adım adım nasıl kullanıldığını açıklayacak ve en iyi şekilde nasıl yararlanabileceğinizi örneklerle göstereceğim.
ChatGPT Canvas Nedir?
Bir blog yazısı ya da bir Python betiği üzerinde ChatGPT ile daha dinamik bir şekilde ortak çalıştığınızı hayal edin. Geleneksel sohbet arayüzünü kullanıp birden çok yanıttan nihai çıktıyı birleştirmek yerine doğrudan bir editörde çalışırsınız. İşte bu, ChatGPT Canvas.
Standart ChatGPT arayüzü fikir üretmek için etkili olsa da, yinelenen düzenleme ve işbirliği gerektiren görevler için sınırlayıcı olabilir. Bu fikirleri cilalı içeriğe dönüştürmek çoğu zaman farklı araçlar arasında geçiş yapmayı gerektirir; bu da yaratıcı süreci kesintiye uğratabilir.
Canvas, ChatGPT içinde gelişmiş yazma ve kodlama iş akışları için tasarlanmış bir arayüz sunar. Sohbet ile içerik üretimi arasındaki boşluğu kapatarak fikirleri düzenlemeyi ve yinelemeyi, sohbetten ayrılmadan kolaylaştırır.

Sağ kısım bir metin editörü, sol kısım ise belgedeki değişiklikleri ChatGPT’den talep etmemizi sağlayan bir sohbet arayüzü. Böylece fikirlerimizi geliştirmemize ve cilalamamıza yardımcı olan bir yapay zekâ iş ortağı gibi çalışır.
ChatGPT Canvas’ın Öne Çıkan Özellikleri
- Hedefli düzenleme: Belirli bölümleri vurgulayarak yapay zekâdan yardım isteyebilir, paragrafları rafine etmek, fikirleri genişletmek veya ayrıntı eklemek kolaylaşır.
- Satır içi geri bildirim: Canvas, birlikte bir belge üzerinde çalışırken insan işbirlikçilerinin yaptığı gibi satır içi öneriler ve geri bildirimler sunabilir.
- Metin uzunluğu: Metni kısaltmasını veya genişletmesini isteyebiliriz.
- Okuma seviyesi: Hedef kitlemize uygun dili yakalamak için anaokulu seviyesinden lisansüstü seviyeye kadar bir okuma seviyesi belirtebiliriz.
- Hata ayıklama: Canvas, koddaki hataları tespit edip düzeltmemize yardımcı olabilir.
- Sürüm geçmişi: Canvas, sürüm geçmişi içerir; böylece önceki sürümlere dönebilmeyi sağlar ve hiçbir fikrin kaybolmamasını güvence altına alır.
ChatGPT Canvas Nasıl Kullanılır
Şu anda ChatGPT Canvas yalnızca Web ve Windows üzerinde kullanılabiliyor (Mac kullanıcıları Canvas’a tarayıcı üzerinden erişebilir, ancak masaüstü uygulamasıyla değil). Mac masaüstü uygulaması ve mobil platformlar (iOS, Android ve mobil web) için destek yakında geliyor.
ChatGPT Canvas kullanmak için:
- chatgpt.com adresine gidin.
- Sol üst köşedeki model açılır menüsünden "GPT-4o with canvas" seçeneğini belirleyin (Canvas’ı kullanmak için abonelik gerektiğini unutmayın).

Arayüz başlangıçta geleneksel sohbet arayüzüyle aynıdır. İlk istemi verdikten sonra editör açılır ve ilk istemden üretilen içerik editöre yerleştirilir.
Bazı durumlarda Canvas arayüzü otomatik olarak tetiklenmeyebilir. Bu durumlarda, "use canvas" istemini kullanarak manuel olarak etkinleştirebiliriz.
İlk istem, bir blog gibi metin içeriği üzerinde mi yoksa kod üzerinde mi çalıştığımızı belirler. Arayüz ve mevcut komutlar her durumda farklı olacaktır.
Haydi ChatGPT Canvas ile etkileşime geçmenin iki temel yolunu keşfetmeye başlayalım (bunlar hem metin hem kod modunda kullanılabilir).
- Editör tarafında (sağ tarafta) metin seçin. Seçili bölüme yönelik değişiklikleri talep edebileceğimiz bir istem açılır penceresi görüntülenecektir.

- Soldaki sohbet arayüzünü kullanın. Buradan, belirli değişiklikleri talep eden bir istem gönderebiliriz.

Sürüm oluşturma ve dışa aktarma
ChatGPT Canvas, yaptığımız değişiklikleri takip eder. Sağ üst köşedeki okları kullanarak farklı sürümler arasında kolayca gezinebiliriz (bu düğmeler yalnızca ChatGPT ikinci sürümü oluşturduktan sonra görünür).

İlk düğme, mevcut sürümle bir önceki sürüm arasındaki farkı göstermede kullanılabilir.

Bu özelliği, komutların ne yaptığını anlamak ve ChatGPT’nin yaptığı iyileştirmeleri görerek yazımı nasıl geliştirebileceğimi öğrenmek açısından çok faydalı buluyorum.
Son düğme içeriği dışa aktarır. Şimdilik oldukça temel; yalnızca kopyalamaya izin veriyor ve ardından ihtiyacımız olan yere manuel olarak yapıştırmamız gerekiyor.
Metne özgü araçlar
ChatGPT, orijinal istemin bir metin belgesi yazmayı talep ettiğini belirlediğinde Canvas editörünü metin modunda açar. Metin ve kod bölümleri karışık olan içeriklerde de bu arayüz bulunur.
Örneğin, bu yazıda gösterilen metin örnekleri şu başlangıç istemini kullanır:
“pandas DataFrame’lerini tanıtan bir makale yazmama yardım et.”
Özel düzenleme araçları sağ alt köşede yer alır. Bir metin belgesi üzerinde çalışırken şu araçları görürüz:

- Emoji ekle: Uygun yerlere emojiler ekler. Bana göre, pratikte pek kullanmayacağımız bir süsten ibaret.
- Son rötuşu yap: Tüm belgeyi gözden geçirir ve teslimata hazır hâle getirmek için son dokunuşu yapar. Yazım hatalarını, biçimlendirmeyi ve yapıyı düzeltir.
- Okuma seviyesi: Belgenin okuma seviyesini anaokulundan lisansüstüne kadar ayarlar. Hedef kitlemize uyarlanmış bir dilde yazdığımızdan emin olmak için oldukça kullanışlıdır.
- Uzunluğu ayarla: Bazı kısımları özetleyerek kısaltır ya da daha fazla ayrıntıya girerek metni uzatır.
- Düzenleme öner: Önerilerde bulunur ancak bunları otomatik olarak uygulamaz. Her öneri, ilgili metni vurgular ve yanına öneriyi ekler; diğer işbirlikçi metin editörlerine benzer şekilde. Önerileri tek tek belgeye dahil edebilir veya yok sayabiliriz.

- Paragraf Düzenleme: “Düzenleme öner” modundayken ChatGPT metindeki paragrafları tanımlar. İmleci bir paragrafın üzerine getirdiğimizde, o paragrafa özel bir düzenleme istemi vermek için kullanabileceğimiz bir düğme görünür.

Komutlardan birine tıkladığımızda hemen çalıştırılmaz. Simge bir oka dönüşür; çalıştırmak için tekrar tıklamamız gerekir.

Bu araçları kullanırken sohbet penceresine göz atmak önemlidir çünkü ChatGPT yaptığı değişiklikleri orada açıklar. Böylece nelerin değiştiğini hızlıca anlamak kolaylaşır. Değişiklikleri görmenin bir diğer yolu da yukarıda bahsettiğimiz sağ üst köşedeki diff düğmesini kullanmaktır.
Koda özgü araçlar
İlk istem bir betik yazmaya dairse, ChatGPT Canvas metin editörü yerine bir kod editörü açar. Bunu test etmek için şu istemi kullanabiliriz:
“pandas kullanarak bir CSV’yi okuyan ve analiz eden bir Python betiği yaz.”
Editörde satır numaralarından kod editörü modunda olduğumuzu anlayabiliriz. Bu durumda şu araçlar sunulur:

- Yorum ekle: Daha iyi anlaşılması için koda ilgili yorumlar ekler.
- Log ekle: ChatGPT’nin ilgili bulduğu değişkenlerin değerlerini gösteren print ifadeleri ekler.
- Hataları düzelt: Hataları bulup düzeltmeyi dener.
- Başka dile taşı: Kodu başka bir dile dönüştürür.
- Kod incelemesi: Kodu gözden geçirir ve yan tarafta öneriler ekler.

ChatGPT Canvas’ın en yeni sürümünde Python kodunu doğrudan Canvas içinde çalıştırabiliriz.

İşbirliği için GPT-4o’yu Eğitmek: Perde Arkası
GPT-4o’nun Canvas arayüzünde etkili bir işbirlikçi olarak çalışmasını sağlamak için OpenAI araştırma ekibi birkaç temel davranışın geliştirilmesine odaklandı:
- Canvas’ı tetiklemek: hem yazma hem de kodlama görevleri için.
- Çeşitli içerik türleri üretmek kullanıcı ihtiyaçlarını karşılamak için.
- Hedefe yönelik düzenlemeler yapmak: belirli metin veya kod bölümlerine.
- Tüm belgeleri yeniden yazmak gerektiğinde.
- Satır içi eleştiri sunmak: belirli geri bildirim ve öneriler vermek için.
Bu eğitimde, sentetik veri üretimi gibi yeni teknikler kullanıldı; bunlar arasında çıktıların damıtılması da var; örneğin o1 modeli gibi diğer OpenAI modellerinden. Bu yaklaşım, insan tarafından üretilen veriye dayanma ihtiyacı olmadan yazım kalitesi ve kullanıcı etkileşimlerinde hızlı iyileşmeyi mümkün kıldı.
Değerlendirme ve zorluklar
OpenAI, ilerlemeyi ölçmek için yirmiden fazla otomatik dahili değerlendirme kullandı. Ancak yorum kalitesi gibi bazı yönler, otomatik değerlendirmenin zorluğu nedeniyle insan değerlendirmesi gerektirdi.
Eğitim sürecinde birkaç zorlukla karşılaşıldı:
- Canvas’ın ne zaman tetikleneceğini tanımlamak; uygun görevler için açılmasını sağlarken aşırı tetiklemeyi önlemek.
- Modelin düzenleme davranışını ayarlamak; özellikle hedefli düzenleme ile tüm içeriği yeniden yazma arasında ne zaman hangisinin yapılacağını belirlemek.
- Yüksek kaliteli yorumlar üretmek, dikkatli yinelemeler ve insan değerlendirmesi gerektirdi.
Sonuç
ChatGPT Canvas öncesinde, bir belge veya kod parçası üzerinde ChatGPT ile çalışmak, editör ve ChatGPT arasında sürekli geçiş yapmayı; her sohbet mesajıyla önerilen değişiklikleri kopyalamayı gerektiriyordu. Belgenin tamamı üzerinde aynı anda çalışamıyorduk ve ChatGPT’nin ne üzerinde çalıştığımızın tam bağlamını edinmesi veya doğrudan değişiklik yapması kolay değildi.
ChatGPT Canvas, içerik ya da kod yazarken ChatGPT ile işbirliği yapmayı çok daha kolay hâle getiriyor. Blog yazısı gibi içerikler yazmak için oldukça güçlü.
Ancak bir yazılım mühendisi olarak, daha büyük projeleri içeren kodlar yazmak için hâlâ fazla sınırlı olduğunu düşünüyorum. Doğrudan kod editörüne entegre olan Cursor AI gibi çözümler, tüm kod tabanı hakkında bağlam sahibi oldukları için çok daha etkili. ChatGPT Canvas’ı yalnızca, diğer koda bağımlı olmayan, izole betikler veya fonksiyonlar yazmak için kullanırım.

