Ako spracovať PDF text s ChatGPT v .NET

Ako spracovať PDF text s ChatGPT v .NET

Tento článok ukazuje, ako integrovať ChatGPT s PDF pracovnými tokmi v .NET pomocou aplikácie Aspose.PDF Chat GPT Plugin. Naučíte sa extrahovať text z PDF, spracovávať ho prostredníctvom ChatgPT a písať odpovede na nové alebo existujúce PDF súbory – ideálne pre súhrn dokumentov, automatické komentovanie alebo obohacovanie obsahu riadeného AI.

Reálny svetový problém

Výber zmysluplných poznatkov, súhrnov alebo odpovedí z súborov PDF ručne je časovo náročný. vývojári potrebujú zjednodušený spôsob, ako pripojiť obsah PDF k ChatGPT pre automatizované spracovanie a spätnú väzbu, šetrí čas a zvyšuje produktivitu.

Prehľad riešenia

Aspose.PDF ChatGPT Plugin pre .NET vám umožní odoslať obsah PDF na Chat GPT, prijímať doplnenia alebo súhrny a ukladať odpovede ako nové PDF - všetky s minimálnym kódom. plugin poskytuje async operácie, flexibilné možnosti žiadosti a jednoduché správy vstupov / výstupov PDF.

Predpoklady

  • Visual Studio 2019 alebo neskôr
  • .NET 6.0 alebo novšie
  • Aspose.PDF pre .NET nainštalovaný prostredníctvom NuGet
  • OpenAI API kľúč pre ChatGPT
PM> Install-Package Aspose.PDF

krok za krokom implementácia

Krok 1: Inštalácia a konfigurácia Aspose.PDF

Pridajte požadované názvové priestory:

using Aspose.Pdf.Plugins;
using System.IO;
using System.Threading.Tasks;

Krok 2: Príprava PDF textu alebo súboru

Zadajte svoj vstupný PDF a požadovaný výstup PDF súbor:

string inputPdfPath = @"C:\Samples\source.pdf";
string outputPdfPath = @"C:\Samples\ChatGPT_output.pdf";

Krok 3: Nastavenie ChatGPT Možnosti žiadosti

Nainštalujte kľúč API, rýchlosť a cestu výstupu.Môžete vytiahnuť text z PDF manuálne, alebo nechajte plugin používať celý súbor PDF ako vstup:

using (var plugin = new PdfChatGpt())
{
    var options = new PdfChatGptRequestOptions();
    options.AddInput(new FileDataSource(inputPdfPath));    // Use full PDF text as message
    options.AddOutput(new FileDataSource(outputPdfPath));   // Path for the output PDF
    
    options.ApiKey = "Your-OpenAI-API-Key";                // REQUIRED: Your API key for ChatGPT
    options.MaxTokens = 1000;                              // Limit response size
    options.Query = "Summarize the contents of this document."; // Or ask any question about the PDF

Môžete tiež pridať prispôsobené rozhovorové správy (systémové / užívateľské úlohy):

    options.Messages.Add(new Message
    {
        Content = "You are a document assistant. Summarize the provided PDF text.",
        Role = Role.System
    });
    options.Messages.Add(new Message
    {
        Content = "What are the main topics covered in this PDF?",
        Role = Role.User
    });

Krok 4: Odoslať žiadosť na ChatGPT a uložiť výsledok

Vypracujte žiadosť asynchrónne, dostanete novú PDF súborovú trasu a odpoveď ChatGPT:

    // Process the request and await the result
    var result = await plugin.ProcessAsync(options);
    var fileResultPath = result.ResultCollection[0].Data; // Path to the output PDF
    var chatCompletion = result.ResultCollection[1].Data as ChatCompletion; // ChatGPT API object

    // Access the generated response text if needed:
    var firstChoice = chatCompletion?.Choices?.FirstOrDefault();
    var responseText = firstChoice?.Message?.Content;

    Console.WriteLine($"PDF generated at: {fileResultPath}");
    Console.WriteLine("ChatGPT response:");
    Console.WriteLine(responseText);
}

Krok 5: Vykonávanie chýb a použitie Async

Vždy zapnúť async hovory a riešiť chyby API / sieť:

try
{
    // (Code above)
}
catch (Exception ex)
{
    Console.WriteLine($"Error during ChatGPT PDF processing: {ex.Message}");
}

Kompletný príklad realizácie

using Aspose.Pdf.Plugins;
using System;
using System.IO;
using System.Linq;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        string inputPdfPath = @"C:\Samples\source.pdf";
        string outputPdfPath = @"C:\Samples\ChatGPT_output.pdf";

        using (var plugin = new PdfChatGpt())
        {
            var options = new PdfChatGptRequestOptions();
            options.AddInput(new FileDataSource(inputPdfPath));
            options.AddOutput(new FileDataSource(outputPdfPath));
            options.ApiKey = "Your-OpenAI-API-Key";
            options.MaxTokens = 1000;
            options.Query = "Summarize the content of this PDF document.";

            try
            {
                var result = await plugin.ProcessAsync(options);
                var fileResultPath = result.ResultCollection[0].Data;
                var chatCompletion = result.ResultCollection[1].Data as ChatCompletion;
                var firstChoice = chatCompletion?.Choices?.FirstOrDefault();
                var responseText = firstChoice?.Message?.Content;

                Console.WriteLine($"PDF generated at: {fileResultPath}");
                Console.WriteLine("ChatGPT response:");
                Console.WriteLine(responseText);
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
    }
}

Použitie prípadov a aplikácií

PDF Summarization a AI generované komentáre

Automaticky zhrnúť zmluvy, správy, alebo výskumné dokumenty pomocou ChatGPT a uložiť odpovede v PDF.

Automatizované Q&A alebo Insights extrakcia

Odoslať prispôsobené príspevky na ChatGPT na extrahovanie odpovedí, tabuliek alebo kľúčových údajov z súborov PDF.

Batch dokumenty obohatenie

Integrujte sa do pracovných tokov na spracovanie mnohých PDF, generovanie odpovedí založených na chate alebo automatických oznámení.

Spoločné výzvy a riešenia

Výzva: API limity alebo Truncation odpoveď

**Riešenie: ** Prispôsobenie MaxTokens a Query pre optimálne výsledky; rozdeliť veľké PDF do kusov v prípade potreby.

Výzva: Bezpečné API kľúčové riadenie

Riešenie: Uložte kľúče API bezpečne (zmeny životného prostredia, vlny) a vyhýbajte sa ťažkému kódovaniu v produkcii.

Preskúmanie výkonnosti

  • Batch PDF vstupy a podpory na minimalizáciu hovorov API.
  • Použite pracovné toky async, aby vaša aplikácia bola reagujúca.
  • Tune token limity na riadenie nákladov API.

Najlepšie postupy

  • Vždy skontrolujte výsledok PDF a odpovede ChatGPT pre presnosť.
  • Prispôsobte prompty a úlohy správy pre cielené výsledky.
  • Bezpečne spravovať API autentifikácie.
  • Záznam a riešenie chýb v async operáciách.

Pokročilé scenáre

  • Použite viaceré PDF alebo rýchle zmeny v kruhu.
  • Kombinovať systémové/užívateľské správy pre komplexný kontext alebo úlohy.
  • Odstrániť výstup PDF pre downstream spracovanie alebo pracovné toky.

Záver

Aspose.PDF ChatGPT Plugin pre .NET umožňuje vývojárom automatizovať analýzu dokumentov, súhrn a interaktívnu spracovanie PDF pomocou funkcie chatgPT – priamo v rámci ich aplikácií .net. Streamline vaše dokumenty AI pracovné toky, od extrakcie až po obohacovanie, s len niekoľkými riadkami kódu.

 Slovenčina