Bir AI ajanı bir tabloyu okumamalıdır. Tabloyu döndüren bir aracı çağırmalı ve ardından satırlar üzerinde aritmetik yapmalıdır. Docker’da yerel olarak çalışan GroupDocs.Parser.Mcp ile Claude Desktop veya Cursor gibi bir AI istemcisi PDF, Word ve Excel dosyalarından tabloları çıkarabilir ve bunları JSON olarak alabilir:

Fatura.pdf dosyasındaki satır öğelerini JSON olarak çıkar ve tutar sütununu topla.

Yapılandırma ve sorun giderme ile adım adım sürüm belgelerde bulunabilir: Belgelerden tabloları yapılandırılmış verilere nasıl çıkarılır.

Model tablonun kendisini okuduğunda ne yanlış gider?

Yaygın iş akışı, bir PDF’yi sohbete yapıştırıp tabloyu istemektir. Model, düzleştirilmiş bir metin akışı görür, sütunların nerede olduğunu çıkarır ve satırları geri yazar. Her hücre o zaman bir tahmindir. Kaçırılan bir sütun, birleştirilmiş bir satır ya da kaydırılmış bir ondalık hata üretmez; hafifçe yanlış, ama güvenilir biçimlendirilmiş bir tablo üretir. Meyve listesi için bu önemli değildir. Fatura toplamları için ise büyük ölçüde önemlidir.

Hata yakalanması zordur çünkü çıktı doğru gibi görünür. Bir sohbet yanıtında hangi hücrelerin dosyadan okunduğu, hangilerinin yeniden oluşturulduğu belirtilmez.

Modelin tahmin etmesine izin vermenin alternatifi nedir?

Okumayı modelden çıkarın. extract_tables aracı, belge motoru ile tabloları algılar ve verileri şu şekilde döndürür:

  • Varsayılan olarak Markdown, ### Table N (page N, R×C) bölümleri olarak, sohbet, VS Code ve GitHub’da doğrudan görüntülenir.
  • format: "json" ile JSON, { table, page, rows, columns, data } nesnelerinin bir dizisi olarak, burada data dize ızgarasıdır.

Model hiçbir zaman bir hücreyi transkribe etmez. datayı alır ve onunla çalışır, böylece işi güvenilir bir şekilde yaptığı işe küçülür: toplama, karşılaştırma, filtreleme ve açıklama. Araç PDF, DOCX, XLSX, PPTX ve HTML’yi destekler, bu yüzden aynı istem bir tedarikçi faturası, bir Word raporu ve bir elektronik tabloyu kapsar.

Tabloyu JSON olarak nasıl alırsınız?

İstemde formatı belirtin.

Satır öğelerini JSON olarak çıkar ve tutar sütununu topla.

Example session (abridged)
You:    Extract the line items from invoice-014.pdf as JSON and total the amount column.
Agent:  [calls extract_tables with format "json"]
        {"table": 1, "page": 1, "rows": 4, "columns": 3,
         "data": [["Item", "Qty", "Amount"],
                  ["Paper A4", "10", "48.00"],
                  ["Toner", "2", "170.00"],
                  ["Delivery", "1", "22.00"]]}
        Total of the Amount column: 240.00 across 3 line items.

Ajan satırları tuttuğu için sonraki adımlar sıradan sorular olur: en büyük satır hangisi, toplam metinde basılan rakamla eşleşiyor mu, satırları çıktı klasöründeki bir CSV’ye yaz. Aritmetik önemli olduğunda, ajanı topladığı satırları listelemesini isteyin, böylece kontrol edebilirsiniz.

JSON yerine Markdown istemeniz ne zaman gerekir?

Sonucu bir kişi okuyacaksa Markdown, kod okuyacaksa JSON kullanın. Markdown varsayılan olup bir tabloya bakmanın ve doğru bulunup bulunmadığını değerlendirmenin en hızlı yoludur. Toplamlar, çapraz kontroller ve bir elektronik tabloya ya da veritabanına besleme gerektiren her şey için JSON’a geçin. Tablonun nerede olduğunu biliyorsanız, çağrıyı daraltın:

Sayfa 4’teki tabloyu çıkar.

page parametresi algılamayı tek bir sayfaya sınırlar, bu da daha hızlı ve ölçülen lisanslama altında daha ucuzdur.

Hangi durumlar hâlâ insan kontrolü gerektirir?

Dürüst sınırlar, düz metinden çok tablolar için daha önemlidir.

  • Taramalar bulunacak tablo içermez. Metin katmanı olmadığında tablo yapısı yoktur ve çıkarım boş döner. Bu sunucuda OCR bulunmaz.
  • Karmaşık düzenler değişkenlik gösterir. Birleştirilmiş hücreler, iç içe tablolar ve sayfalar arasında devam eden tablolar her zaman basit bir ızgara kadar temiz kalmaz. İki yüz belge çalıştırmadan önce bir belgeyi örnek kontrol edin.
  • Değerlendirme modu sınırlıdır. Lisans olmadan çıkarım sınırlıdır; kesin sınırlar kütüphanenin lisanslama sayfasında bulunur. Gerçek bir çalıştırmadan önce ajanı get_license_status çağırmasını isteyin.

Tek bir komutla kurun

Sunucu yalnızca bir Docker görüntüsü olarak dağıtılır, bu yüzden dnx komutu yoktur. Claude Code içinde şu şekilde kaydedin, yolu belgeler klasörünüzle değiştirin:

claude mcp add groupdocs-parser -- docker run --rm -i \
  -v /path/to/documents:/data ghcr.io/groupdocs-parser/parser-net-mcp:latest

Cursor, Claude Desktop, GitHub Copilot ile VS Code, Windsurf, Cline ve Codex aynı konteyneri istemciye özgü bir yapılandırma dosyasıyla kullanır; her biri AI istemcilerinde kaydetme bölümünde listelenmiştir.

SSS

Claude PDF tablolarını doğru okur mu?
Bu, dosyaya ve istemcinin nasıl düzleştirdiğine bağlıdır, bu yüzden varsaymak yerine kontrol edin. extract_tables ile satırlar belge motorunun tablo algılamasından gelir, dize ızgarası olarak döner ve Claude bunlarla çalışır.

Bir PDF’den tabloyu AI ile Excel’e nasıl çıkarırım?
Tabloyu JSON olarak isteyin, ardından ajanı satırları çıktı klasöründeki bir CSV’ye yazmasını söyleyin; Excel bunu açar. Satırlardan CSV’ye dönüşüm ajanının adımıdır; hücre değerleri araçtan gelir.

Yerel olarak Word ve Excel dosyalarından tablo çıkarabilir mi?
Evet. extract_tables PDF’nin yanı sıra DOCX ve XLSX’i de işler ve konteyner, bağladığınız klasörden dosyaları okur.

Daha derine inin