Cara Mengekstrak Data Berstruktur dari PDF Dengan ChatGPT dan .NET
Menghapus otomatisasi lanjutan dan aliran kerja berbasis AI dalam aplikasi .NET Anda dengan mengekstrak data terstruktur (seperti tabel, formulir, atau entitas) dari PDF dan menukarkannya ke format yang dapat dibaca mesin. panduan terperinci ini berjalan melalui semua langkah – dari ekstraksi teks ke data pintar parsing menggunakan ChatGPT.
Pengenalan
Ekstraksi data terstruktur dari dokumen PDF adalah persyaratan penting untuk kecerdasan bisnis, laporan, dan skenario otomatisasi. sementara Aspose.PDF.Plugin memungkinkan ekstraksi teks yang kuat dalam .NET, menggabungkannya dengan ChatGPT membolehkan Anda untuk menggarap, mengkategorikan dan mengformat informasi sebagai objek JSON, CSV, atau domain.
Kasus Penggunaan Umum:
- Pengeluaran data invois untuk otomatisasi akuntansi
- Menghapus tabel dari kertas penelitian
- Mengubah formulir yang dipindai menjadi rekaman terstruktur
Langkah 1: Mengekstrak teks atau tabel dari PDF
Mulailah dengan menggunakan TextExtractor
atau, untuk data tabel, pilihan khusus di Aspose.PDF.Plugin.
using Aspose.Pdf.Plugins;
var inputPath = @"C:\Docs\invoice.pdf";
var extractor = new TextExtractor();
var options = new TextExtractorOptions();
options.AddInput(new FileDataSource(inputPath));
var resultContainer = extractor.Process(options);
string rawText = resultContainer.ResultCollection[0].ToString();
Langkah 2: Siapkan dan Hantar Prompts ke ChatGPT
Anda dapat mengarahkan ChatGPT untuk membagikan dan mengembalikan data dalam format terstruktur seperti JSON atau CSV.
string apiKey = "YOUR_OPENAI_API_KEY";
string prompt = $"Extract the following invoice data as JSON: {rawText}";
// Use HttpClient as in previous examples
Tips untuk hasil yang lebih baik:
Gunakan petunjuk yang jelas dan eksplisit: “Tambahkan tabel deskripsi item, harga, dan total sebagai JSON.”
Untuk PDF besar, mengekstrak dan mengirimkan teks dalam segmen logis (misalnya, satu tabel sekaligus).
Langkah 3: Parse dan Validate AI Output
Setelah mendapatkan jawaban dari ChatGPT, parsilah data terstruktur menggunakan parser JSON (atau CSV):
// Assume jsonData is a JSON string received from ChatGPT
var structuredData = JsonConvert.DeserializeObject<List<InvoiceItem>>(jsonData);
public class InvoiceItem
{
public string Description { get; set; }
public decimal Price { get; set; }
public int Quantity { get; set; }
public decimal Total { get; set; }
}
Tahap validasi :
- Periksa jenis data yang valid (numer, tanggal, dll)
- Log atau bendera data tidak lengkap / ambigu untuk ulasan
Langkah 4: Simpan atau Gunakan Data Ekstrak
- Simpan hasil terstruktur dalam database, file Excel, atau sistem pemrosesan downstream.
- Optional, gunakan Aspose.PDF.Plugin’s TableGenerator untuk menyuntikkan data terstruktur kembali ke PDF atau laporan ringkasan.
Scenario lanjutan & penyelesaian masalah
Pengeluaran Batch :
Berjalan melalui beberapa PDF dan mengumpulkan data terstruktur dari semua dokumen.
Menggabungkan OCR:
Untuk PDF yang dipindai, gunakan plugin OCR terlebih dahulu sebelum ekstraksi teks.
Penyelesaian kesalahan :
Catch and log API errors, respons JSON yang gagal, dan fragmen yang tidak terstruktur.
Praktik terbaik untuk ketepatan dan pematuhan
- Membersihkan teks PDF sebelum mengirimkan ke ChatGPT untuk menghapus headers/footers.
- Hindari mengirimkan dokumen sensitif kecuali menggunakan titik akhir AI yang aman/diizinkan.
- Untuk pengekstrakan data kritis, gunakan langkah validasi setelah pemrosesan.
FAQ: Pengekstrakan Data Berstruktur dengan ChatGPT
**Q: Jenis data terstruktur apa yang dapat saya ekstrak dari PDF?**A: Jadual, daftar, medan yang dinamakan, dan pola biasa (seperti tanggal, jumlah, ID).
**Q: Apakah metode ini dapat memproses beberapa PDF sekaligus?**A: Ya. ekstraksi batch didukung – berjalan melalui set PDF Anda dan mengumpulkan hasil.
**Q: Apakah ChatGPT selalu tepat dengan tabel dan angka?**A: Untuk hasil terbaik, gunakan prompt yang tepat dan validasi semua output dalam kode.