Πώς να εξαγάγετε δομημένα δεδομένα από το PDF χρησιμοποιώντας ChatGPT και .NET
Αποκλείστε την προηγμένη αυτοματοποίηση και τις ροές εργασίας που υποστηρίζονται από την τεχνητή νοημοσύνη στις εφαρμογές .NET σας εξάγοντας δομημένα δεδομένα (όπως πίνακες, φόρμες ή οντότητες) από τα PDF και μετατρέποντάς τα σε μορφές που μπορούν να διαβάσουν οι μηχανές.
Εισαγωγή
Η δομημένη εξόρυξη δεδομένων από τα έγγραφα PDF είναι μια κρίσιμη απαίτηση για τις επιχειρηματικές νοημοσύνη, την αναφορά και τα σενάρια αυτοματοποίησης. Ενώ το Aspose.PDF.Plugin επιτρέπει τη σταθερή εκχύλιση κειμένου στο .NET, συνδυάζοντάς το με το ChatGPT σας δίνει τη δυνατότητα να διαχωρίσετε, να ταξινομήσετε και να μορφοποιήσετε πληροφορίες ως JSON, CSV ή αντικείμενα τομέα.
Συχνές περιπτώσεις χρήσης:
- Εισαγωγή δεδομένων τιμολόγησης για λογιστική αυτοματοποίηση
- Παρκίνοντας πίνακες από ερευνητικά έγγραφα
- Μετατρέψτε τις σάρωση μορφές σε δομημένα αρχεία
Βήμα 1: Απομακρύνετε το περιεχόμενο κειμένου ή πίνακα από το PDF
Ξεκινήστε με τη χρήση του TextExtractor
ή, για τα δεδομένα πίνακα, εξειδικευμένες επιλογές στο 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();
Βήμα 2: Προετοιμάστε και στείλτε Prompts στο ChatGPT
Μπορείτε να καλέσετε το ChatGPT να διαγράψει και να επιστρέψει τα δεδομένα σε δομημένο μορφότυπο όπως JSON ή CSV.
string apiKey = "YOUR_OPENAI_API_KEY";
string prompt = $"Extract the following invoice data as JSON: {rawText}";
// Use HttpClient as in previous examples
Πρόσκληση καλύτερων αποτελεσμάτων:
Χρησιμοποιήστε σαφείς, ρητές υποδείξεις: «Εξάγετε έναν πίνακα περιγραφών στοιχείων, τιμών και συνολικών ως JSON».
Για μεγάλα PDF, αφαιρέστε και στείλτε κείμενο σε λογικά τμήματα (π.χ. ένα πίνακα ταυτόχρονα).
Βήμα 3: Πάρτε και επικυρώστε την έξοδο AI
Αφού λάβετε την απάντηση του ChatGPT, διαχωρίστε τα δομημένα δεδομένα χρησιμοποιώντας ένα διαμέρισμα JSON (ή 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; }
}
Τα βήματα επιβεβαίωσης:
- Ελέγξτε για έγκυρους τύπους δεδομένων (αριθμικό, ημερομηνία κ.λπ.)
- Λογαριασμός ή σημαία ατελείωτων / αμφιλεγόμενων δεδομένων για αναθεώρηση
Βήμα 4: Αποθηκεύστε ή χρησιμοποιήστε τα αποσυνδεδεμένα δεδομένα
- Αποθηκεύστε τα δομημένα αποτελέσματα σε μια βάση δεδομένων, αρχείο Excel ή σύστημα επεξεργασίας downstream.
- Εναλλακτικά, χρησιμοποιήστε το TableGenerator του Aspose.PDF.Plugin για να εισάγετε δομημένα δεδομένα πίσω σε ένα σύνολο PDF ή έκθεση.
Προηγμένα Σενάρια & Επίλυση προβλημάτων
Εξαγωγή μπαταριών:
Περπατήστε μέσω πολλαπλών PDFs και συγκεντρώστε δομημένα δεδομένα από όλα τα έγγραφα.
Συνδυασμένη OCR:
Για τα scanned PDFs, χρησιμοποιήστε τα plugins OCR πρώτα πριν από την εξόρυξη κειμένου.
Λάθος διαχείρισης:
Συλλέξτε και καταγράψτε σφάλματα API, ανεπιθύμητες απαντήσεις JSON και μη δομημένα κομμάτια.
Βέλτιστες πρακτικές για την ακρίβεια και τη συμμόρφωση
- Προκαθαρίστε το κείμενο PDF πριν από την αποστολή στο ChatGPT για να αφαιρέσετε τους τίτλους / τα πόδια.
- Αποφύγετε την αποστολή ευαίσθητων εγγράφων, εκτός εάν χρησιμοποιείτε ασφαλή / εξουσιοδοτημένα σημεία AI.
- Για την εξόρυξη κρίσιμων δεδομένων, χρησιμοποιήστε ένα βήμα επικύρωσης μετά την επεξεργασία.
FAQ: Διαρθρωμένη εξόρυξη δεδομένων με ChatGPT
**Q: Ποια είδη δομημένων δεδομένων μπορώ να αποσπάσω από τα PDF;**Α: Πίνακες, λίστες, ονομαζόμενα πεδία και τακτικά πρότυπα (όπως ημερομηνίες, ποσά, αναγνωριστικά).
**Q: Μπορεί αυτή η μέθοδος να επεξεργάζεται πολλαπλά PDF ταυτόχρονα;**Α: Ναι, υποστηρίζεται η εκχύλιση των συσσωρευτών – πηγαίνετε μέσα από το σύνολο PDF σας και συγκεντρώστε τα αποτελέσματα.
**Q: Είναι το ChatGPT πάντα ακριβές με τους πίνακες και τους αριθμούς;**Α: Για καλύτερα αποτελέσματα, χρησιμοποιήστε ακριβείς πινακίδες και επικυρώστε όλες τις εκροές στον κώδικα.