17 puan yazan xguru 2024-09-13 | 2 yorum | WhatsApp'ta paylaş
  • Jina AI, Nisan 2024'te web sayfası URL'lerini LLM dostu Markdown'a dönüştüren bir API olan Jina Reader'ı kullanıma sundu
  • Jina Reader, web sayfası kaynağını Chrome tarayıcısıyla alır, ana içeriği Readability paketiyle çıkarır ve ardından temizlenmiş HTML'yi regex ile Turndown kütüphanesini kullanarak Markdown'a dönüştürür
  • Ancak Readability filtresinin yanlış içerikleri kaldırması veya Turndown'ın belirli HTML'yi Markdown'a dönüştürmekte zorlanması gibi iyileştirilmesi gereken noktalar vardı
  • Bunun üzerine Jina AI, küçük dil modeli (SLM) kullanarak HTML'yi end-to-end şekilde Markdown'a dönüştürme yöntemini değerlendirmeye başladı

Reader-LM'in özellikleri

  • HTML'yi Markdown'a dönüştürme işi, genel LLM görevlerine kıyasla o kadar yaratıcı ya da karmaşık değildir; esas olarak girdiden çıktıya seçici kopyalama (selective-copy) gerektirir
  • Bu nedenle daha az transformer block gerektiren daha sığ bir model mimarisi mümkündür
  • Ancak gerçek dünyadaki HTML gürültülüdür ve token uzunluğu fazladır; bu yüzden 256K tokene kadar destekleyen uzun bağlam (long-context) desteği gerekir
  • Jina AI bunun için "shallow-but-wide" yapıda SLM'ler olan reader-lm-0.5b ve reader-lm-1.5b'yi duyurdu. Bunlar sırasıyla 494M ve 1.54B parametreye sahip

Reader-LM nasıl kullanılır

  • Google Colab üzerinde reader-lm denenebilir. Hacker News web sitesini Markdown'a dönüştürme sürecini gösteren bir not defteri sunuluyor
  • Ticari ortamda yüksek performanslı GPU kullanılması öneriliyor. T4 yerine RTX 3090/4090 düzeyi daha uygun
  • Reader-LM yakında Azure Marketplace ve AWS SageMaker üzerinden de sunulacak
  • Ticari lisans CC BY-NC 4.0; ticari kullanım için Jina AI ile iletişime geçilmesi isteniyor

Reader-LM benchmark sonuçları

  • GPT-4o, Gemini, LLaMA gibi çeşitli LLM'lerle karşılaştırmalı değerlendirme yapıldı
  • ROUGE-L, Token Error Rate (TER), Word Error Rate (WER) gibi metrikler kullanıldı
  • reader-lm-1.5b, ROUGE-L 0.72 ve WER 1.87 ile en iyi performansı gösterdi
  • Üretilen Markdown çıktıları görsel olarak incelendiğinde, reader-lm-1.5b başlık çıkarma, ana içerik çıkarma, yapı koruma ve Markdown sözdizimi kullanımı gibi tüm yönlerde başarılı görünüyor

Reader-LM eğitim süreci

  • Jina Reader API ile HTML ve Markdown çiftleri oluşturularak eğitim verisi olarak kullanıldı. Buna ek olarak bazı sentetik HTML örnekleri de eklendi
  • 65M ile 3B parametre arasında değişen farklı model boyutları denendi
  • İki aşamalı bir eğitim süreci izlendi. İlk aşamada kısa ve basit HTML'ler 32K token dizileriyle eğitildi, ikinci aşamada ise eğitim 128K tokene kadar genişletildi
  • Tekrara ve döngülere saplanan degeneration sorununu çözmek için contrastive search ve tekrar durdurma ölçütleri uygulandı
  • OOM sorununu çözmek için chunk-wise model forwarding uygulandı ve veri packing uygulaması iyileştirildi
  • Sorunu encoder-only bir modelle çözme girişimi de oldu, ancak bunu bir token sınıflandırma görevi olarak ele almakta zorluk yaşandı

Sonuç

  • Reader-LM, web verisi çıkarma ve temizleme için tasarlanmış yeni bir SLM
  • HTML'yi Markdown'a dönüştürmek sanıldığından daha zor. Position-aware ve bağlam temelli çıkarım gerektiği için daha büyük parametre boyutlarına ihtiyaç duyuluyor
  • SLM'yi sıfırdan eğitmek oldukça zor. Önceden eğitilmiş bir modelden başlamak çok daha verimli
  • Gelecekte bağlam uzunluğunu artırma, decoding hızını iyileştirme ve girdide komut desteği gibi alanlarda hâlâ çok sayıda geliştirme fırsatı bulunuyor

2 yorum

 
ragingwind 2025-01-21

Böyle bir şey yapmak istiyorum.

 
xguru 2024-09-13

Jina AI Reader - URL'leri LLM dostu girdilere dönüştüren araç

Bunu gayet iyi kullanıyorum; biraz daha küçültülüp tarayıcıya gömülü gelse güzel olur diye düşünüyorum, haha