Jak zpracovat PDF text s ChatGPT v .NET

Jak zpracovat PDF text s ChatGPT v .NET

Tento článek ukazuje, jak integrovat ChatGPT s PDF pracovními toky v .NET pomocí aplikace Aspose.PDF Chat GPT Plugin. Naučíte se extrahovat text z PDF, zpracovávat jej prostřednictvím ChatgPT a psát odpovědi na nové nebo stávající PDF soubory – ideální pro souhrn dokumentů, auto-komentování nebo obohacení obsahu řízeného uměleckou inteligencí.

Reálný světový problém

Vývojáři potřebují zjednodušený způsob, jak připojit obsah PDF k ChatGPT pro automatické zpracování a zpětnou vazbu, šetřit čas a zvýšit produktivitu.

Řešení přehled

Aspose.PDF ChatGPT Plugin pro .NET vám umožňuje odesílat obsah PDF do ChathgPT, přijímat doplňky nebo shrnutí a ukládat odpovědi jako nové PDF - vše s minimálním kódem.

Předpoklady

  • Visual Studio 2019 nebo novější
  • .NET 6.0 nebo novější
  • Aspose.PDF pro .NET instalován prostřednictvím NuGet
  • OpenAI API klíč pro ChatGPT
PM> Install-Package Aspose.PDF

krok za krokem implementace

Krok 1: Instalace a nastavení ASPOSE.PDF

Přidejte požadované názevové prostory:

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

Krok 2: Připravte PDF text nebo soubor

Zadejte váš vstupní PDF a požadovaný výsledný PDF soubor:

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

Krok 3: Nastavení ChatGPT Možnosti žádosti

Můžete manuálně extrahovat text z PDF, nebo nechat plugin používat celý soubor PDF jako 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 také přidat přizpůsobené rozhovorové zprávy (systém / uživatelské role):

    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: Odeslat žádost na ChatGPT a ušetřit výsledek

Zpracujte žádost asynchrónně, obdržíte novou cestu souboru PDF a odpověď 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: Řešení chyb a použití Async

Vždy vkládat async hovory a řešit chyby API / sítě:

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

Kompletní příklad provádění

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žití případů a aplikací

PDF Shrnutí a AI generované komentáře

Automaticky shrnout smlouvy, zprávy nebo výzkumné dokumenty pomocí ChatGPT a uložit odpovědi v PDF.

Automatizované Q&A nebo Insights extrakce

Pošlete přizpůsobené příspěvky na ChatGPT pro extrahování odpovědí, tabulek nebo klíčových údajů z souborů PDF.

Batch dokument obohacený

Integrovat do pracovních toků zpracovat mnoho PDF, generovat chat-based odpovědi nebo automatické oznámení.

Společné výzvy a řešení

Výzva: API limity nebo Truncation odpovědi

**Rozhodnutí: ** Přizpůsobit MaxTokens a Query pro optimální výsledky; rozdělte velké PDF do kusů v případě potřeby.

Název: Secure API Key Management

Rozhodnutí: Uložte klíče API bezpečně (změnitelné prostředí, vlny) a vyhýbejte se tvrdému kódování při výrobě.

Úvahy o výkonu

  • Batch PDF vstupy a podpory k minimalizování volání API.
  • Použijte async pracovní toky, abyste udrželi vaši aplikaci v reakci.
  • Tune token limity pro správu nákladů na API.

Nejlepší postupy

  • Vždy zkontrolujte výsledek PDF a odpovědi ChatGPT pro přesnost.
  • Přizpůsobte prompty a role zpráv pro cílené výsledky.
  • Bezpečně spravovat API credentiály.
  • Záznam a řešení chyb v async operacích.

Pokročilé scénáře

  • Použijte více PDF nebo rychlé variace v kruhu.
  • Kombinace systémových/uživatelských zpráv pro složitý kontext nebo úkoly.
  • Odstranění výstupu PDF pro downstream zpracování nebo pracovních toků.

závěr

Aspose.PDF ChatGPT Plugin pro .NET umožňuje vývojářům automatizovat analýzu dokumentů, shrnutí a interaktivní zpracování PDF prostřednictvím síly chatgPT – přímo v rámci jejich aplikací .net.

 Čeština