Ana Sayfa

JustHTML: Yapay Zeka Destekli HTML5 Ayrıştırıcısı Nasıl Yazıldı?

1 dk okuma

Yazar, Python tabanlı, bağımlılıksız ve CSS seçici API'si içeren JustHTML adlı HTML5 ayrıştırıcısını nasıl geliştirdiğini anlatıyor. Projenin en zorlu kısmının, bozuk HTML5 kodunu ayrıştırmak olduğunu ve "adoption agency algorithm" gibi karmaşık algoritmaların standart yığın modelini nasıl zorladığını belirtiyor. İlginç bir şekilde, bu karmaşıklığa rağmen, yapay zeka sayesinde referans uygulamadan daha iyi bir ayrıştırıcı geliştirdiğini vurguluyor.

Proje seçiminde, HTML5'in kapsamlı test paketlerine sahip olmasının önemini belirtiyor. Bu testler, kodlama ajanlarının ilerlemelerini anlamaları ve hataları düzeltmeleri için kritik bir geri bildirim mekanizması sağlıyor. Yazar, geliştirme sürecinde VS Code ve GitHub Copilot'ı "Agent mode"da kullandığını, otomatik onay mekanizmasıyla ajanların sürekli çalışmasını sağladığını açıklıyor.

Geliştirme süreci, başlangıçta çok düşük bir başarı oranına sahip temel bir ayrıştırıcı ile başladı. html5lib-tests ile entegrasyon sonrası %1'in altında kalan test geçiş oranı, HTML5 ayrıştırmanın zorluğunu ortaya koydu. Ajanlar, sürekli yinelemeler, yeniden düzenlemeler ve hata düzeltmeleriyle başarı oranını %30'a çıkardı. Son olarak, her etiket için ayrı bir işleyici (handler) yapısına geçilerek kodun modülerliği artırıldı.

İçgörü

Yapay zeka destekli kodlama ajanlarının, karmaşık yazılım geliştirme projelerinde bile referans uygulamaları aşan çözümler üretebileceğini gösteriyor.

Kaynak