26 puan yazan GN⁺ 2025-06-17 | 2 yorum | WhatsApp'ta paylaş
  • Basit karakter tanımanın ötesine geçen, belgenin tamamını Markdown yapısına dönüştüren yüksek performanslı bir image-to-Markdown OCR modeli
  • Matematiksel ifadeleri LaTeX biçimine dönüştürür, görsellere otomatik açıklamalar ekler ve tabloları HTML/Markdown tablo olarak çıkararak LLM kullanımı için optimize edilmiş çıktılar üretir
  • İmza, filigran, onay kutusu gibi öğeleri tanıyarak bunları <signature>, <watermark>, ☐/☑ biçimlerine dönüştürmesi gibi belge bileşenlerine özel işleme yeteneği çok güçlüdür
  • Hugging Face’in Transformers veya vLLM sunucusu üzerinden kolayca kullanılabilir; docext kütüphanesiyle web uygulaması biçiminde de kullanılabilir
  • Farklı belge türleri ve karmaşık yerleşimler için doğruluk ve yapılandırma seviyesi çok yüksek olduğundan sözleşme, form, rapor gibi belgelerde çok kullanışlıdır

Projeye genel bakış ve önemi

  • Nanonets-OCR-s, genel amaçlı OCR (optik karakter tanıma) işlevinin ötesine geçerek belgenin anlamını ve yapısını analiz eden ve sonucu Markdown formatında veren yenilikçi bir modeldir
  • Formüller, görseller, tablolar, onay kutuları, imzalar ve filigranları ayrı ayrı ayırt eder; bunları anlamlı etiketleme ve gösterim biçimleriyle (LaTeX, HTML, Markdown vb.) dönüştürerek downstream işler veya LLM (büyük dil modeli) tabanlı belge işleme için uygun bir biçimde sunar
  • Mevcut açık kaynak OCR projeleriyle karşılaştırıldığında, karmaşık belge yapıları ve çeşitli semantik öğelerin çıkarımında daha yüksek performans ve otomatik iş akışı uygulama potansiyeli gösterir
  • Qwen2.5-VL-3B-Instruct modelinin fine-tune edilmiş bir sürümüdür; çeşitli belge bileşenlerini tanımlar ve anlamlı işaretlemelerle etiketler

Temel özellikler

  • LaTeX formül tanıma
    • Belgede yer alan denklem ve matematiksel formülleri, inline($...$) veya display($$...$$) türüne göre otomatik olarak LaTeX sözdizimine dönüştürüp üretir
  • Akıllı görsel açıklamaları
    • Her görsel için, <img> etiketi içinde görselin türünü, stilini ve içeriğini ayrıntılı biçimde açıklar
    • Logo, çizelge, grafik gibi çeşitli görselleri de bağlamı ve anlamıyla birlikte açıklayarak LLM kullanımına uygun girdilere dönüştürür
  • İmza tespiti ve ayrıştırma
    • İmza görsellerini metinden ayırır ve ayrı bir <signature> etiketi içinde işler
    • Hukuki ve iş belgelerinin otomatik işlenmesinde yüksek kullanım değeri taşır
  • Filigran çıkarımı
    • Belgeye eklenmiş filigran metnini algılar ve bunu <watermark> etiketi içinde ayrı olarak düzenler
  • Onay kutusu ve radyo düğmesi dönüşümü
      • ☐ (işaretlenmemiş), ☑ (işaretli), ☒ (reddedildi) biçiminde standart Unicode sembolleriyle çıktı verir
    • Anket, başvuru formu gibi form türü belgelerin işlenmesinde güvenilirliği artırır
  • Karmaşık tablo yapısı çıkarımı
    • Karmaşık tabloları da Markdown ve HTML tablo biçimine dönüştürerek yüksek kullanılabilirlik sağlar

Başlıca kullanım şekilleri

Python kod örneği

  • Hugging Face’in transformers kütüphanesi kullanılarak model kolayca yüklenip çalıştırılabilir
  • Görsel girdi olarak verildiğinde; metin, tablo, formül, görsel açıklaması, filigran gibi öğeleri yapılandırılmış Markdown biçiminde sonuç olarak sunar
  • Sayfa numarası veya filigranlar , gibi yapılarla sarılarak ayrıştırılır
  • Onay kutuları Unicode sembolleri (☐, ☑) olarak üretilir

vLLM tabanlı kullanım

  • Model vLLM sunucusuna kaydedilip OpenAI uyumlu API üzerinden kolayca erişilip kullanılabilir
  • Görsel girişi verildiğinde; metin, tablo, formül, filigran gibi öğeleri tutarlı bir biçimde dönüştürülmüş çıktı olarak sunar

docext paketi kullanımı

  • docext adlı ayrı bir paket aracılığıyla, yalnızca ek bir komut çalıştırarak Nanonets-OCR-s doğrudan belge yapılandırma işlerinde kullanılabilir
  • GitHub belgelerine başvurulabilir

2 yorum

 
GN⁺ 2025-06-17
Hacker News görüşleri
  • Nanonets'te çalışıyorum ve 3B ölçekli bir VLM modeli olan Nanonets-OCR-s'i yayımladığımız için gerçekten çok heyecanlıyım
    Bu model, belgeleri temiz ve yapılandırılmış Markdown'a dönüştürmek için optimize edilmiş hafif bir modeldir
    Belgenin yapısını ve bağlamını öğrendiği için bunu yapabiliyor (tablolar, formüller, görseller, diyagramlar, filigranlar, onay kutuları vb.)
    Başlıca özellikleri arasında LaTeX formül tanıma (satır içi ve blok formülleri doğru ayırıp dönüştürme), yerleşik görsel açıklamaları (img etiketi kullanarak, grafik/logo/diyagram vb. desteğiyle), imza tespiti ve ayrıştırma (signature bloğu içinde çıktı), filigran çıkarımı (watermark etiketiyle kaydetme), akıllı onay kutusu/radyo düğmesi işleme (Unicode dönüşümüyle son işleme güvenilirliğini artırma), karmaşık tablo yapısı çıkarımı (çok satırlı/sütunlu tabloları Markdown ve HTML olarak iyi çıktı verme) bulunuyor
    Kendiniz denemek isterseniz Huggingface veya Docext Colab'a bakabilirsiniz

    • Docext için doğru bağlantı README.md

    • Kullandığınız LLM'de halüsinasyon ortaya çıkıp çıkmadığını merak ediyorum

    • Görsellerin kendisini çıkarabiliyor mu, yoksa hâlâ ayrı bir çıkarım süreci mi gerekiyor, merak ediyorum

    • Restoran menüsü fotoğraflarını veya PDF'lerini bir JSON şemasına göre ayrıştırmak için (muhtemelen son işleme LLM'inin de yardımıyla) kullanılabilir mi, yoksa büyük multimodal LLM'ler bu kullanım için daha mı uygun, merak ediyorum

  • Shipibo (Peru yerli dili)-İspanyolca sözlüğünü İngilizce sözlüğe çevirmek için birkaç LLM denedim ama iki sütun, garip satır sonları ve tanımlarda Shipibo ile İspanyolcanın karışık olması nedeniyle anlamakta zorlandılar
    Üstelik tarama kalitesi de iyi değil
    Sanırım bu modeli denemeliyim

  • On yıllardır Word ve PowerPoint'te saklanan materyallerin tamamını alıp, her bir öğeyi başka formatlarda yeniden kullanılabilecek şekilde standartlaştırılmış bir biçime dönüştüren bir çözüm arıyordum
    Bu, o sistemi kurmak için kesinlikle gerekli olan temel yapı taşlarından biri
    Artık bir arşiv veya geçmiş özelliğine de ihtiyaç var; yani her öğeyi kolayca arşivleyip geri çağırabilmek harika olurdu
    Gerçekten harika iş

    • unoconv veya pandoc ile temel dönüşümü yapıp, ardından LLM kullanarak düz metni temizleme yaklaşımıyla başlamanın daha basit olup olmayacağı yönünde bir görüş
  • Bu tür modellerin yalnızca Markdown'ı hedeflemesi üzücü
    Aslında Markdown'ın birçok sürümü var ve dipnotlar, kaynakçalar, görseller vb. için desteği zayıf
    Daha yapısal ve daha net bir spesifikasyona sahip bir formata ihtiyaç var

    • Aslında modeli, Markdown'a dönüştürürken aynı anda semantik etiketleme yapacak şekilde eğittik
      Örneğin formülleri LaTeX olarak çıkarıyor, görselleri (diyagram, şekil vb.) img etiketiyle ayrıntılı biçimde açıklıyor
      signature, watermark, sayfa numarası gibi öğelerde de etiket kullanıyor
      Karmaşık tabloları (çok satır/sütun) ise Markdown yerine HTML tablo olarak çıkarıyor

    • "Yapılandırılmış Markdown" fikri beni LLM OCR modelinin kendisinden daha fazla heyecanlandırmıştı, ama sonuçta bu daha çok belirli öğelere etiket ekleme düzeyinde kalıyor gibi; bu yüzden model dışındaki kullanım alanı biraz sınırlı hissettiriyor

  • docling(https://github.com/docling-project/docling) ile karşılaştırıldığında artıları ve eksileri neler, merak ediyorum

  • Datalab/Marker(https://github.com/datalab-to/marker) ile farkı nedir, merak ediyorum
    Birçok PDF->MD dönüştürücüyü karşılaştırdım ve şu ana kadar Marker en iyisiydi, ama kusursuz değil

    • Kişisel deneyimime göre, karmaşık formüllerle kodun iç içe geçtiği makaleleri dönüştürmede Marker oldukça iyi iş görüyor
      Örneğin Fortran ters Laplace dönüşümü üzerine bir makalede, satır içi/gösterim formülleri ile monospace kod bloklarının bir arada olduğu bir sayfayı Marker ile işlersem, satır içi $\sigma_0$ ifadesi "<sup>s</sup> 0", $f(t)$ ise "<i>f~</i>~t*!" gibi bozuluyor
      Bu modelin güçlü yanı, bu tür kısımları dahili olarak doğru üretmesi
      Referans ekran görüntüsü(https://imgur.com/a/Q7UYIfW)

    • Kendi çapraz karşılaştırmama yeni başladım; aday listesini paylaşabilirsen gerçekten minnettar olurum

  • Bu modeli PowerShell ile her yerde PDF'lere uygulayan bir betik yazdım
    Bizzat denedim; GPU'm (1080 8GB) eski olduğu için çalışma hızı oldukça yavaş (sayfa başına en az 5 dakika)
    Harici GPU destekli Cloud Run üzerinde çalışan bir PDF to markdown dönüştürme aracını denemek isterseniz haber verin
    Tamamlandığında bağlantıyı da paylaşacağım

    • Az önce Cloud Run üzerinde çalıştırdım ve örnek sonuçları rapor ediyorum
      animate.pdf'in bir kısmındaki sonuçlara bakınca; başlık, yazar, yayınevi, siyah-beyaz illüstrasyonlar (img etiketiyle açıklanmış) ve Google dijitalleştirme etiketi iyi çıkarılmış
      İçindekiler de tablo biçiminde kusursuz şekilde çıkarılmış görünüyor
      Yavaş olması dışında işlevsellik ve doğruluk açısından çok memnunum

    • Cloud Run kullanan bu PDF to markdown hizmetiyle çok ilgileniyorum

  • Çok sütunlu veya çok satırlı tablolar içeren belgeleri (örnek: bu PDF'in 1. sayfasındaki rowspan, 29. sayfasındaki colspan gibi) nasıl işlediğini merak ediyorum

  • İngilizce dışı metinleri tanıma performansı nasıl, merak ediyorum
    Mevcut LLM tabanlı OCR'lerin yabancı dil desteğinin geleneksel OCR'den çok daha zayıf olduğunu biliyorum

    • Bu bir deneyim mi yoksa varsayım mı, merak ediyorum
      Benim deneyimime göre Google Translate ve ChatGPT'yi doğrudan görseller üzerinde kullandığınızda, ChatGPT'nin performansı her zaman daha iyi
      Özellikle Japonca el yazısı menülerde çeviri ve açıklamayı da gayet iyi yapıyor
  • Çok dilli destekten söz etmeyen modeller, gerçek hayatta İngilizce olmayan PDF'lerde çok zayıf performans gösteriyor

    • Aslında eğitim ağırlıklı olarak İngilizceydi, ancak eğitim verisinin bir kısmında Çince ve çeşitli Avrupa dilleri de vardı
      Ayrıca temel model (Qwen-2.5-VL-3B) çok dilli
      Reddit'te Çince'de de iyi çalıştığını söyleyen bir gönderi görmüştüm (bağlantı)
 
chakankim 2025-06-18

Korece kart fişi örneğiyle denedim; hızı yavaş ama kusursuz şekilde okuyor gibi görünüyor