Como usar o OpenAI para PDF em C# com o IronPDF
A extensão de IA do IronPDF permite o aprimoramento de PDFs com tecnologia OpenAI em aplicativos C#. Adicione recursos de sumarização, consulta e memorização usando o Microsoft Semantic Kernel com o mínimo de código.
A OpenAI é um laboratório de pesquisa em IA que desenvolve tecnologias avançadas de inteligência artificial. Ela fornece modelos de linguagem poderosos acessíveis por meio de APIs, permitindo que os desenvolvedores integrem recursos de IA em seus aplicativos.
O pacote NuGet IronPdf.Extensions.AI traz a OpenAI para o processamento de PDFs: sumarização, consulta e memorização. Construído sobre o Microsoft Semantic Kernel , este SDK simplifica a integração de serviços de IA em aplicações .NET . Extraia informações, responda a perguntas e gere resumos de documentos PDF automaticamente.
Os principais casos de uso incluem o processamento de grandes volumes de documentos, a extração de informações de relatórios, a criação de resumos para consulta rápida e a construção de sistemas inteligentes de gerenciamento de documentos. A integração suporta tanto a sumarização única quanto a consulta contínua para diversas aplicações. Para obter mais recursos de PDF, explore a documentação completa do IronPDF ou aprenda a criar PDFs a partir de HTML .
Início rápido: Resumir PDFs com IronPDF e OpenAI
Comece a integrar o OpenAI ao seu fluxo de trabalho de processamento de PDF com o IronPDF em C#. Este exemplo demonstra a sumarização rápida de um PDF com apenas algumas linhas de código.
-
Instale IronPDF com o Gerenciador de Pacotes NuGet
PM > Install-Package IronPdf -
Copie e execute este trecho de código.
// Install-Package IronPdf.Extensions.AI await IronPdf.AI.PdfAIEngine.Summarize("input.pdf", "summary.txt", azureEndpoint, azureApiKey); -
Implante para testar em seu ambiente de produção.
Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita
Fluxo de trabalho mínimo (5 etapas)
- Baixe a biblioteca C# para utilizar o OpenAI para PDF.
- Prepare o ponto de extremidade do Azure e a chave de API para o OpenAI.
- Importe o documento PDF desejado.
- Utilize o método `Summarize` para gerar um resumo do PDF.
- Utilize o método `Query` para consultas contínuas.
Pacotes necessários:
Antes de implementar recursos de IA, configure o Azure OpenAI. Você precisa de uma assinatura do Azure com acesso ao serviço Azure OpenAI. O serviço oferece segurança e conformidade de nível empresarial para aplicações de produção. Consulte a visão geral da instalação do IronPDF para obter instruções detalhadas.
Como faço para resumir PDFs com o OpenAI?
Para usar os recursos do OpenAI, configure o Semantic Kernel com seu Endpoint do Azure e sua chave de API. Importe o documento PDF e use o método Summarize para gerar resumos.
A funcionalidade de resumo funciona com vários tipos de PDF:
- Documentos digitalizados (quando combinados com OCR)
- Layouts complexos com múltiplas colunas
- Documentos contendo imagens e tabelas
O IronPDF extrai o conteúdo do texto e o processa através do modelo de IA. Para outros formatos, consulte Converter DOCX para PDF ou Converter Markdown para PDF .
Observação: você pode encontrar erros
SKEXP0001, SKEXP0010 e SKEXP0050 porque os métodos do Kernel Semântico são experimentais. Adicione isto ao seu arquivo .csproj para suprimi-los:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);SKEXP0001,SKEXP0010,SKEXP0050</NoWarn>
</PropertyGroup>
</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);SKEXP0001,SKEXP0010,SKEXP0050</NoWarn>
</PropertyGroup>
</Project>
Veja como resumir um PDF usando o Kernel Semântico em C#:
:path=/static-assets/pdf/content-code-examples/how-to/openai-summarize.cs
using IronPdf;
using IronPdf.AI;
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Connectors.OpenAI;
using Microsoft.SemanticKernel.Memory;
using System;
using System.Threading.Tasks;
// Setup OpenAI
var azureEndpoint = "<<enter your azure endpoint here>>";
var apiKey = "<<enter your azure API key here>>";
var builder = Kernel.CreateBuilder()
.AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
.AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey);
var kernel = builder.Build();
// Setup Memory
var memory_builder = new MemoryBuilder()
// optionally use new ChromaMemoryStore("http://127.0.0.1:8000") (see https://github.com/microsoft/semantic-kernel/blob/main/dotnet/notebooks/09-memory-with-chroma.ipynb)
.WithMemoryStore(new VolatileMemoryStore())
.WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey);
var memory = memory_builder.Build();
// Initialize IronAI
IronDocumentAI.Initialize(kernel, memory);
License.LicenseKey = "<<enter your IronPdf license key here";
// Import PDF document
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Summarize the document
Console.WriteLine("Please wait while I summarize the document...");
string summary = await pdf.Summarize(); // optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}\n\n");
Imports Microsoft.VisualBasic
Imports IronPdf
Imports IronPdf.AI
Imports Microsoft.SemanticKernel
Imports Microsoft.SemanticKernel.Connectors.OpenAI
Imports Microsoft.SemanticKernel.Memory
Imports System
Imports System.Threading.Tasks
' Setup OpenAI
Private azureEndpoint = "<<enter your azure endpoint here>>"
Private apiKey = "<<enter your azure API key here>>"
Private builder = Kernel.CreateBuilder().AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey).AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey)
Private kernel = builder.Build()
' Setup Memory
Private memory_builder = (New MemoryBuilder()).WithMemoryStore(New VolatileMemoryStore()).WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
Private memory = memory_builder.Build()
' Initialize IronAI
IronDocumentAI.Initialize(kernel, memory)
License.LicenseKey = "<<enter your IronPdf license key here"
' Import PDF document
Dim pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Summarize the document
Console.WriteLine("Please wait while I summarize the document...")
Dim summary As String = Await pdf.Summarize() ' optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}" & vbLf & vbLf)
O código inicializa tanto o Kernel Semântico quanto o armazenamento em memória. Os sistemas de armazenamento em memória mantêm o contexto durante consultas contínuas. Escolha entre:
- VolatileMemoryStore : Armazenamento em memória para desenvolvimento e testes
- ChromaMemoryStore : Banco de dados vetorial persistente para produção
- Outras lojas : Azure Cognitive Search, Qdrant e muito mais
Para produção, implemente tratamento de erros e registro personalizado para rastrear as operações de IA. Explore os recursos de processamento assíncrono e multithread para processar vários documentos simultaneamente.
Qual é a aparência do resumo exibido?
O resumo oferece uma visão geral concisa do documento, extraindo os principais tópicos, fatos importantes e detalhes relevantes. O modelo de IA identifica e prioriza o conteúdo relevante, permitindo uma compreensão rápida de documentos extensos.
Como faço para consultar PDFs continuamente?
Consultas únicas não são adequadas para todos os cenários. O pacote IronPdf.Extensions.AI oferece um método Query para consultas contínuas. Crie interfaces conversacionais, ferramentas de pesquisa ou aplicativos de análise de documentos onde os usuários possam fazer várias perguntas sobre o mesmo documento.
O questionamento contínuo mantém o contexto da conversa, permitindo perguntas de acompanhamento e esclarecimentos. Ideal para:
- Documentação de referência para sistemas de suporte ao cliente
- Análise de documentos jurídicos que requer interpretação de cláusulas
- Aplicações educacionais para o estudo de materiais complexos
- Ferramentas de pesquisa para extrair informações específicas
Para um processamento mais eficiente, considere extrair texto e imagens separadamente ou implementar a compressão de PDF para otimizar documentos grandes antes do processamento por IA.
:path=/static-assets/pdf/content-code-examples/how-to/openai-summarize.cs
using IronPdf;
using IronPdf.AI;
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Connectors.OpenAI;
using Microsoft.SemanticKernel.Memory;
using System;
using System.Threading.Tasks;
// Setup OpenAI
var azureEndpoint = "<<enter your azure endpoint here>>";
var apiKey = "<<enter your azure API key here>>";
var builder = Kernel.CreateBuilder()
.AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
.AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey);
var kernel = builder.Build();
// Setup Memory
var memory_builder = new MemoryBuilder()
// optionally use new ChromaMemoryStore("http://127.0.0.1:8000") (see https://github.com/microsoft/semantic-kernel/blob/main/dotnet/notebooks/09-memory-with-chroma.ipynb)
.WithMemoryStore(new VolatileMemoryStore())
.WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey);
var memory = memory_builder.Build();
// Initialize IronAI
IronDocumentAI.Initialize(kernel, memory);
License.LicenseKey = "<<enter your IronPdf license key here";
// Import PDF document
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Summarize the document
Console.WriteLine("Please wait while I summarize the document...");
string summary = await pdf.Summarize(); // optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}\n\n");
Imports Microsoft.VisualBasic
Imports IronPdf
Imports IronPdf.AI
Imports Microsoft.SemanticKernel
Imports Microsoft.SemanticKernel.Connectors.OpenAI
Imports Microsoft.SemanticKernel.Memory
Imports System
Imports System.Threading.Tasks
' Setup OpenAI
Private azureEndpoint = "<<enter your azure endpoint here>>"
Private apiKey = "<<enter your azure API key here>>"
Private builder = Kernel.CreateBuilder().AddAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey).AddAzureOpenAIChatCompletion("oaichat", azureEndpoint, apiKey)
Private kernel = builder.Build()
' Setup Memory
Private memory_builder = (New MemoryBuilder()).WithMemoryStore(New VolatileMemoryStore()).WithAzureOpenAITextEmbeddingGeneration("oaiembed", azureEndpoint, apiKey)
Private memory = memory_builder.Build()
' Initialize IronAI
IronDocumentAI.Initialize(kernel, memory)
License.LicenseKey = "<<enter your IronPdf license key here"
' Import PDF document
Dim pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Summarize the document
Console.WriteLine("Please wait while I summarize the document...")
Dim summary As String = Await pdf.Summarize() ' optionally pass AI instance or use AI instance directly
Console.WriteLine($"Document summary: {summary}" & vbLf & vbLf)
O sistema de consulta contínua utiliza embeddings para compreender a semântica da pergunta, fornecendo respostas contextuais precisas. Cada consulta é processada com base no conteúdo do documento, e a IA mantém um histórico da conversa para fornecer respostas cada vez mais relevantes.
Para obter o melhor desempenho com documentos grandes ou usuários simultâneos, implemente estratégias de cache e explore as técnicas de otimização de desempenho do IronPDF . Considere a limitação de taxa e o gerenciamento adequado de chaves de licença para implantações em produção.
Ao lidar com documentos confidenciais, implemente medidas de segurança adequadas. O IronPDF oferece diversas opções de segurança e criptografia para proteger PDFs antes e depois do processamento por IA.
Perguntas frequentes
Qual é a finalidade da extensão de IA para processamento de PDF?
O pacote NuGet IronPDF.Extensions.AI permite o aprimoramento de PDFs com tecnologia OpenAI em aplicações C#. Ele permite adicionar recursos de sumarização, consulta e memorização aos seus PDFs usando o Microsoft Semantic Kernel com o mínimo de código, ajudando a extrair insights e responder perguntas de documentos automaticamente.
Quais são os principais casos de uso para o processamento de PDFs com inteligência artificial?
A extensão de IA do IronPDF é ideal para processar grandes volumes de documentos, extrair informações de relatórios, criar resumos de revisão rápida e construir sistemas inteligentes de gerenciamento de documentos. A integração suporta tanto a sumarização pontual quanto a consulta contínua para diversas aplicações.
Como posso resumir rapidamente um PDF usando o OpenAI?
Com a extensão de IA do IronPDF, você pode resumir qualquer PDF com apenas uma linha de código: `await IronPdf.AI.PdfAIEngine.Summarize("input.pdf", "summary.txt", azureEndpoint, azureApiKey)`. Essa implementação simples facilita a geração de resumos a partir de documentos PDF.
Quais pacotes preciso instalar para processamento de PDFs com IA?
Para implementar recursos de IA com o IronPDF, você precisa de três pacotes: IronPDF (a biblioteca principal de PDF), IronPDF.Extensions.AI (a extensão de IA) e Microsoft.SemanticKernel.Plugins.Memory (para a funcionalidade do kernel semântico).
Quais são os pré-requisitos para usar o OpenAI com PDFs?
Antes de implementar recursos de IA com o IronPDF, você precisa configurar o Azure OpenAI com uma assinatura do Azure que tenha acesso ao serviço Azure OpenAI. O serviço oferece segurança e conformidade de nível empresarial para aplicativos de produção, exigindo um Endpoint do Azure e uma chave de API.
Qual é o fluxo de trabalho mínimo para processamento de PDFs com IA?
O fluxo de trabalho mínimo com o IronPDF consiste em 5 etapas: 1) Baixar a biblioteca C#, 2) Preparar o endpoint do Azure e a chave da API, 3) Importar o documento PDF de destino, 4) Usar o método Summarize para gerar um resumo e 5) Usar o método Query para consultas contínuas.
Como a extensão de IA se integra ao Microsoft Semantic Kernel?
A extensão de IA do IronPDF é baseada no Microsoft Semantic Kernel, que simplifica a integração de serviços de IA em aplicações .NET. Este SDK lida com a complexidade da conexão com os serviços da OpenAI e fornece uma API direta para operações de IA específicas para PDF.

