Show HN: LLM-Aided OCR – LLM ile Tesseract OCR Hatalarını Düzeltme
(github.com/Dicklesworthstone)- Optik karakter tanıma (OCR) çıktısının kalitesini büyük ölçüde artırmak için tasarlandı
- En yeni doğal dil işleme teknikleri ve büyük dil modellerini (LLM) kullanarak ham OCR metnini son derece doğru, iyi biçimlendirilmiş ve okunması kolay belgelere dönüştürür
Özellikler
- PDF'yi görsellere dönüştürme
- Tesseract kullanarak OCR
- LLM (yerel veya API tabanlı) kullanarak gelişmiş hata düzeltme
- Verimli işleme için akıllı metin parçalama
- Markdown biçimlendirme seçeneği
- Üstbilgi ve sayfa numarası bastırma (isteğe bağlı)
- Nihai çıktının kalite değerlendirmesi
- Yerel LLM ve bulut tabanlı API sağlayıcıları (OpenAI, Anthropic) desteği
- Performansı artırmak için eşzamansız işleme
- Süreç takibi ve hata ayıklama için ayrıntılı günlükleme
- Yerel LLM çıkarımı için GPU hızlandırma
Gereksinimler
- Python 3.12+
- Tesseract OCR motoru
- PDF2Image kütüphanesi
- PyTesseract
- OpenAI API (isteğe bağlı)
- Anthropic API (isteğe bağlı)
- Yerel LLM desteği (isteğe bağlı, uyumlu GGUF model gerektirir)
Kullanım
- PDF dosyasını proje dizinine yerleştirin
main()fonksiyonundakiinput_pdf_file_pathdeğişkenini PDF dosya adıyla güncelleyin- Betiği çalıştırın:
python llm_aided_ocr.py - Betik, son işlenmiş metni içeren birden fazla çıktı dosyası oluşturur
Nasıl çalışır
LLM-Aided OCR projesi, ham OCR çıktısını yüksek kaliteli ve okunması kolay metne dönüştürmek için çok aşamalı bir süreç kullanır:
- PDF dönüştürme:
pdf2imagekullanarak giriş PDF'sini görsellere dönüştürür - OCR: Tesseract OCR uygulayarak görsellerden metin çıkarır
- Metin parçalama: Ham OCR çıktısını yönetilebilir parçalara böler
- Hata düzeltme: Her parça, OCR hatalarını düzeltmek ve okunabilirliği artırmak için LLM tabanlı işlemden geçirilir
- Markdown biçimlendirme (isteğe bağlı): Düzeltilmiş metni temiz ve tutarlı Markdown biçimine yeniden düzenler
- Kalite değerlendirmesi: LLM tabanlı değerlendirme ile nihai çıktı kalitesini özgün OCR metniyle karşılaştırır
GN⁺ Özeti
- LLM-Aided OCR projesi, en yeni doğal dil işleme teknikleri ve büyük dil modellerini kullanarak OCR çıktısının kalitesini büyük ölçüde artıran bir sistemdir
- PDF'yi görsellere dönüştürür, Tesseract ile metni çıkarır, ardından LLM ile hataları düzeltip Markdown biçiminde yeniden yapılandırır
- Hem yerel hem de bulut tabanlı LLM'leri destekler ve eşzamansız işleme ile performansı optimize eder
- Proje, OCR çıktısının doğruluğunu ve okunabilirliğini artırmak için çeşitli gelişmiş özellikler sunar; özellikle büyük belgelerin işlenmesinde faydalıdır
- Benzer işlevler sunan projeler arasında ABBYY FineReader ve Adobe Acrobat OCR bulunur
1 yorum
Hacker News yorumları
Yeni schnell modelinin çıkışıyla, SOTA görsel modeller üretebilecek veri setlerinin elde edilmesi mümkün olabilir
Bilimsel makalelerde meta'nın nougat modeli en uygun seçenek
Geçmişte denendiğinde, vakaların %90'ında iyi çalıştı
PDF sayfalarını PNG'ye dönüştürüp gpt4'ten görüntüyü yazıya dökmesini istemek çok doğru sonuç veriyor
10 yıl önce Tesseract ile Çince OCR denemesi yapılmış
PaddlePaddle ile daha iyi sonuç alınmış
Başka OCR paketlerinin denenip denenmediği soruluyor
Modelin daha net anlaması için prompt'u ayarlamak önemli
Rubric'ler ve öğrenci teslimlerini parse etmeye yönelik benzer bir iş yapılıyor
OCR hatalarını düzeltmek için "fix this text" prompt'unu kullanma yaklaşımı soruluyor