Anthropic Claude 3.5 ile bir görüntüden iCalendar dosyası oluşturma
(gregsramblings.com)- Caz piyano dersi takviminin yalnızca JPG görüntüsü olarak iletildiği bir durumda, Claude 3.5 Sonnet işaretli tarihleri okuyup takvime aktarma gibi tekrarlı işi azalttı
- Yeşil renkle işaretlenen 13 tarih, 13 Eylül 2024 ile 23 Mayıs 2025 arasındaki iki haftada bir cuma dersleri olarak çıkarıldı
- Ardından aynı sohbet içinde, her tarih için Pacific Time ile saat 14.00’te
Jazz Piano Lessonetkinliğini içeren ICS dosyası metni de oluşturdu - Oluşturulan
.icsdosyası metin olarak kaydedildikten sonra Google Calendar’daki Import/export bölümünden içe aktarılıp sorunsuz şekilde eklenebildi - ChatGPT de tarihleri tespit etti, ancak başlangıçta
.icsyerine Python kodu önerdi; iCalendar metnini ancak dosya içeriği doğrudan istendikten sonra oluşturdu
Görüntüdeki programdan takvim dosyasına
- Caz piyano öğretmeni sonbahar/kış özel ders programını JPG görüntüsü olarak gönderdi ve 13 ders tarihi yeşil kalemle işaretlenmişti
- Google Calendar’da 13 randevuyu elle oluşturmak yerine görüntü Claude 3.5 Sonnet’e yüklendi
- İlk istek şöyleydi
List the dates that are outlined in green
- Claude’un çıkardığı tarihler şu 13 taneydi
- Friday, 13-Sep-24
- Friday, 27-Sep-24
- Friday, 11-Oct-24
- Friday, 8-Nov-24
- Friday, 6-Dec-24
- Friday, 20-Dec-24
- Friday, 17-Jan-25
- Friday, 31-Jan-25
- Friday, 28-Feb-25
- Friday, 14-Mar-25
- Friday, 11-Apr-25
- Friday, 25-Apr-25
- Friday, 23-May-25
- Bu tarihler, 10 Eylül 2024 Salı gününü içeren haftada başlayan iki haftada bir cuma dersleri programına karşılık geliyor
Claude’un oluşturduğu iCalendar dosyası
- Sonraki istekte, her tarihte Pacific Time ile saat 14.00’te
Jazz Piano Lessonetkinliği oluşturan bir ICS dosyası oluşturması istendi - Oluşturulan iCalendar metni
BEGIN:VCALENDAR,VERSION:2.0,PRODID,CALSCALE:GREGORIANve 13 adetVEVENTbloğu içeriyordu - Her etkinlikte şu alanlar yer aldı
SUMMARY:Jazz Piano LessonDTSTART,DTEND: 1 saatlik etkinlikDTSTAMP:20240824T000000Z- Her tarih için benzersiz
UID
- Saatler UTC’nin Z gösterimine dönüştürüldü ve Pacific Time’daki saat değişimi dosyaya yansıtıldı
- Kullanım adımları, oluşturulan içeriği kopyalayıp yeni bir metin dosyasına yapıştırmak,
.icsuzantısıyla kaydetmek ve istenen takvim uygulamasına içe aktarmak şeklindeydi - Google Calendar’da
.icsdosyası ayarlardaki Import/export menüsü üzerinden içe aktarıldı ve randevular sorunsuz şekilde eklendi - Aynı giriş ChatGPT’de denendiğinde tarih tespiti yapıldı, ancak başlangıçta
.icsdosyası oluşturmanın mümkün olmadığını söyleyip Python kodu verdi; daha sonra “yalnızca.icsdosyasının içeriğini göster” denince ilgili içeriği oluşturdu
1 yorum
Hacker News görüşleri
Claude’dan liste veya veri çıkarma yapmasını istediğinizde sonucu mutlaka tekrar kontrol etmek gerekiyor.
%99,9 doğru oluyor ama bazen 1-2 kayıt hatalı çıkıyor; sonuçlar da makul göründüğü için bunu kaçırmak daha kolay. Uzun listelerde veya tablolarda büyük dil modelleri çok ufak hatalar yapabiliyor; bunu bizzat yaşadım. Güven ama doğrula.
Yanıt mekanik olarak doğrulanabiliyorsa, büyük dil modeline içeride çalıştırabileceği bir Python doğrulayıcı yazdırmak da bir yöntem. ChatGPT kod çalıştırabiliyor; Sonnet 3.5’in de yapabildiğini biliyorum ama kendim denemedim.
George Washington’ın doğum gününü sorduğunuzda “May 20, 2020” demesiyle, kendinden emin biçimde “February 20, 1733” diye halüsinasyon üretmesi farklı şeyler. İlk bakışta makul görünüyor. Presidents' Day Şubat’ta, doğum günüyle ilgili gibi, yıl da doğruymuş gibi görünüyor; bu yüzden yeterli sanmak kolay.
Ama yanlış; büyük dil modelinin böyle “gerçekleri” kendinden emin bir tavırla söylemesi korkutucu. Olasılıksal model böyle konuşacak şekilde tasarlanmış ve bilgiyi kontrol edecek ya da doğrulayacak mekanizmalar yeterli değil.
“Güven ama doğrula” ifadesi paradoksal ve döngüsel. ChatGPT’nin verdiği her bilgiyi daha yüksek bir gerçeklik kaynağı olduğuna inandığımız Wikipedia’dan kontrol etmem gerekiyorsa, neden en baştan oradan başlamıyorum? Çıktıyı doğrulamak için Python doğrulayıcı yazmam gerekiyorsa, neden en baştan onu yapmıyorum?
Bu sinsi hatalar yüzünden büyük sorunlar çıkacak. 1 farkla yapılan hataları fark etmek çok zor; veri yavaş yavaş kirleniyor ve giderek daha yanlış yönlere sapıyor, ta ki çok geç olana kadar fark edilmiyor. Büyük dil modellerinin çöp çıktıları hep pizzaya tutkal sürmeyi önermek kadar göze batsa keşke; ama gerçeklik muhtemelen kuyuya zehrin yavaşça sızması gibi olacak. Hatalı çıktılar hayatın önemli alanlarına girmeye başladığında gerçekten ciddi sorun yaratabilir.
Kendim yapsam %99 doğruluğa bile ulaşamam gibi geliyor. Böyle bir işte gerçekten %99,9 doğruluk varsa, memnuniyetle kabul edilir.
Örneğin iki podcast uygulamasını denerken abone olduğum feed’ler arasındaki farkı görmek istedim. Başta iki OPML dosyasını karşılaştırmasını istedim ama sonuç yanlıştı. 30 dakika boyunca prompt’u iyileştirip elle doğrulama yapabilirdim; bunun yerine iki dosyayı karşılaştıran bir betik yazmasını istedim ve düzgün çalıştı. Karmaşık çıktıları tek tek kontrol etmenin sıkıcı sürecine kıyasla, bir betiği inceleyip muhtemelen doğru olduğundan emin olmak görece daha kolay.
Asıl yazıdakine benzer bir işi İngilizce olmayan verilerle denedim; Claude’un verinin bir kısmını “yardımseverce” İngilizceye çevirmesini engelleyemedim. “Görseldeki açıklamayı dahil et” deyince çevirdi; “Görseldeki açıklamayı dahil et ama çevirmeyin veya özetlemeyin” deyince bu kez tamamen atladı.
2 hafta önce tam olarak aynı ihtiyacım vardı; okuldan bir PDF dosyası almıştım ve kafede sadece telefonum vardı.
ChatGPT kullandım. Yazıda kod yorumlayıcının doğrudan .ics dosyası oluşturamayacağını iddia ettiği nokta doğru olabilir, ancak bu özel problem gayet çözülebiliyordu. Android telefonda şöyle yaptım: PDF’ten tüm yararlı tarihleri, saatleri ve notları çıkarttırdım; .ics dosya biçimindeki içeriği kod çıktısı olarak oluşturttum; sonra kod yorumlayıcıyı kullanarak bu içeriği bir dosyaya koydurup .ics uzantısıyla kaydettirdim.
Baştan sona sorunsuz yaptı; dosyayı telefonumdaki gcal uygulamasıyla indirip açarak tüm etkinlikleri içe aktarabildim.
Kod yorumlayıcının ICS dosyası “oluşturamayacağı” iddiası, çalışan Python ortamında bu iş için özel bir kütüphane bulunmamasından kaynaklanıyor. ICS dosyası belirli biçime sahip bir metin dosyasından ibaret; dolayısıyla gayet oluşturulabilir.
ChatGPT-4o’ya film adlarının bulunduğu bir txt dosyası verip benzer bir şey yaptım. Her filmin vizyon tarihini döndürmesini istedim; ardından sevdiğim filmleri yıl dönümlerinde izleyebilmek için tüm film vizyon tarihlerini her yıl tekrarlanan yıl dönümü etkinlikleri olarak içeren bir iCal dosyası aldım.
Bunu birkaç arkadaşıma da yaptım; şimdiye kadar toplam 100’den fazla film adında başarı oranı %100 oldu.
11 Eylül 2001’in salı olduğunu bu yüzden hatırlıyorum. Albüm çıkış günüydü ve o gün iyi bir albüm de vardı.
Okullar veya işverenler gibi kurumlar hâlâ PDF biçiminde takvimleri çok dağıtıyor.
Takvim uygulamalarına aktarıp pratikte kullanılabilecek bir biçim oluşturmaktan çok, markalama ve görsel biçimlendirmeye daha fazla zaman harcıyorlar.
Daha sağlam biçimde genellenebilecek iki aşamalı bir süreç mümkün olabilir gibi geliyor. Birincisi, herhangi bir belgeyi okuyup tarihleri, saatleri ve saat dilimlerini, yerleri, URL’leri, notları ve tekrarlı olup olmadığını tabloya dökmek; ikincisi de kabaca bu yapıya sahip bir tabloyu okuyup Google Calendar, iCal, ICS dosyası veya bağlantısı üretmek.
Her adımı çok iyi yapacak şekilde modeli ya da ajanı ayrı ayrı ince ayarlamak da mümkün olabilir.
Bence Siri burada başarısız oldu. “Pazartesi başlayıp 90 gün sürecek bir etkinlik oluştur” gibi şeyler bile her zaman neredeyse kumar gibiydi.
Benim elle yapmak istemediğim işleri Siri de yapamadı. O zaman ona pek asistan demek zor.
GPT4-o’ya internet bankacılığı işlem listesi ekran görüntüsünü verip şirket vergi beyanı için işlem listesi aldım. Gözle kontrol ettim ve sonuç doğruydu.
Ondan önce bir ürün yöneticisi, özellik bayrağının açılacağı şirket ID’lerinin listesini ekran görüntüsü olarak göndermişti. Hepsini elle girmek yerine GPT4-o’ya ekran görüntüsünden virgülle ayrılmış bir liste oluşturttum; o da kusursuz çalıştı.
Bu harika. Aynı zamanda yapay zeka sayesinde daha yaygınlaşmasını istediğim bir tasarım kalıbını da iyi gösteriyor: birlikte çalışabilir, insan tarafından okunabilir dosya biçimleri. .ICS dosyaları gibi.
Daha fazla web sitesi ve uygulamanın bu biçimlere desteği önceliklendirmesini isterim. Sadece araya yapay zeka koyarak kullanmayı kolaylaştırmakla kalmaz, daha fazla insanın yaratıcı biçimde eklentiler yapabilmesini de sağlar.
Son 10 yıl kadar “sadelik” adı altında verilerin daha fazla silolaştığı ve dosyanın kendisinin öneminin azaldığı bir eğilim vardı; bunun bir ölçüde geri dönmesini isterim.
ChatGPT ile sık sık takvim girdileri oluşturuyorum. Google Calendar bağlantısı, ICS dosyası, QR kod; hepsi mümkün oldu.
Orijinal metinde neyin yanlış gittiğini bilmiyorum.
Günümüzde hedef için “Python kullan” diye de isteyebilirsiniz. O zaman dosyayı oluşturuyor, ama sonucu Python string’i veya dizisi olarak kodlaması gerektiğinden hata ihtimali daha da artabilir.
Takvim davetlerinde yapay zeka kullanmak kesinlikle çok uygun. Benzer bir işi burada yaptım; ical daha basit.
https://hareeshganesan.com/2024/07/14/baby-calendar
gpt 4o ile benzer şekilde veri girişini basitleştiriyorum. Şu anda bile epey faydalı, ama insanlar henüz büyük dil modelleriyle çok fazla sistematik iş yapmıyor.
Fakat çok açık biçimde yararlı olduğu için bunun değişeceğini düşünüyorum. Herhangi bir forma veri girme işi artık otomatikleştirilebilir ve gerçekten de otomatikleştirilecek. Özellikle bilgi basılı ya da yazdırılabilir biçimdeyse kamerayı tutup hızlıca gözden geçirmek yeterli.
Tabelalar, posterler gibi yerlerdeki bilgiyi içeri almak şaşırtıcı derecede faydalı olabilir. İnsanlar, kolay erişilebilir dijital biçimde bulunmayan pek çok bilgiyi görsel olarak aktarmak için çok emek ve para harcıyor.