Како обрадити ПДФ текст са ЦхатГПТ у .НЕТ

Како обрадити ПДФ текст са ЦхатГПТ у .НЕТ

Овај чланак показује како да интегришете ЦхатГПТ са ПДФ радним токовима у .НЕТ користећи Аппосе.ПдФД ЦатГТ Плугин. Научићете да екстрактирате текст из ПДВ-а, обрађујете га кроз ЦАТГТПТ и пишете одговоре на нове или постојеће ПДП датотеке – идеално за сумирање докумената, ауто-коментацију или обогаћивање садржаја који се бави ИИ-ом.

Реал светски проблем

Ручно извлачење значајних увид, резюме или одговора из ПДФ датотека траје време.Развојницима је потребан поједностављен начин повезивања PDF садржаја са ЦхатГПТ-ом за аутоматску обраду и повратне информације, штедњу времена и побољшању продуктивности.

Преглед решења

Плугин за .NET вам омогућава да пошаљете ПДФ садржај на ЦхатГПТ, добијете завршетке или суспензије и сачувате одговоре као нове ПДВ-а – све са минималним кодом.

Принципи

  • Visual Studio 2019 или касније
  • .NET 6.0 или касније
  • Aspose.PDF за .NET инсталиран преко NuGet
  • OpenAI API ključ za ChatGPT
PM> Install-Package Aspose.PDF

Корак по корак спровођење

Корак 1: Инсталирајте и конфигуришете Aspose.PDF

Додајте потребне имена простора:

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

Корак 2: Припремите ПДФ текст или датотеку

Потврдите свој унос ПДФ и жељени излаз PDF датотеке:

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

Корак 3: Конфигурисање опција за захтев ЦхатГПТ

Поставите свој АПИ кључ, брз и излазни пут. можете ручно извући текст из ПДФ-а, или пустите плугин да користи цео ПДВ датотеку као улаз:

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

Такође можете додати прилагођене поруке за разговор (систем / корисничке улоге):

    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
    });

Корак 4: Пошаљите захтев на ЦхатГПТ и сачувате резултат

Обрада захтева асинхронно, добија и нови ПДФ датотечки пут и ЦхатГПТ одговор:

    // 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);
}

Корак 5: Управљање грешкама и коришћење асинц

Увек уградите асинц позиве и управљајте грешкама АПИ / мреже:

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

Потпуни пример имплементације

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}");
            }
        }
    }
}

Коришћење случајева и апликација

PDF сакупљање и АИ генерисани коментари

Аутоматски сакупљате уговоре, извештаје или истраживачке документе користећи ЦхатГПТ и сачувате одговоре у ПДФ-у.

Аутоматски Q&А или инспирација екстракција

Пошаљите прилагођене поруке на ЦхатГПТ за извлачење одговора, табела или кључних података из ПДФ датотека.

Баццх Документ Обогаћење

Интегрирајте се у радне токове да бисте обрадили многе ПДФ-а, генеришући одговоре на основу ћаскања или ауто-нотације.

Заједнички изазови и решења

Izazov: API ograničenja ili Truncation odgovor

Решење: Прилагођавање MaxTokens и Query за оптималне резултате; раздвојити велике ПДФ-а у комаде ако је потребно.

Izazov: Safe API Key Management

Решење: Складиштење АПИ кључева безбедно (променљиви животне средине, ваулти) и избегава хардкодирање у производњи.

Размишљање о перформанси

  • Баццх ПДФ улазе и подстичу да минимизирају АПИ позиве.
  • Koristite async tokove rada da bi vaša aplikacija bila odgovorna.
  • Tune token ograničenja za upravljanje API troškovima.

Најбоља пракса

  • Увек проверите ПДФ излаз и ЦхатГПТ одговоре за тачност.
  • Прилагодите позиције и поруке за циљне резултате.
  • Bezbedno upravljanje API autentifikacijama.
  • Пријављивање и управљање грешкама милосрдно у асинц операцијама.

Напредни сценарио

  • Користите више ПДФ-а или брзе варијације у једном кругу.
  • Комбинујте систем / корисничке поруке за сложени контекст или задатке.
  • Преузмите излаз ПДФ за испод струје обраде или радног тока.

Закључак

Aspose.PDF ChatGPT Plugin za .NET omogućava developerima da automatiziraju analizu dokumenata, sažetak i interaktivnu obradu PDF-a koristeći moć Chattgpta – izravno u njihovim aplikacijama.

 Српски