この記事では、Aspose.PDF ChatGPT プラグインを使用して .NET の PDF ワークストリームを統合する方法を示し、自動処理とフィードバックを可能にします。
導入
この記事では、PDFからテキストを抽出し、ChatGPTを介して処理するために、あなたの .NET アプリケーションに chatgPT を統合する方法を示しており、Aspose.PDF を使用して新しいまたは既存の PDF ファイルに返信を書きます。
現実世界問題
PDF ファイルから意味のある情報、概要、または回答を手動で抽出することは時間がかかります. 開発者は、自動処理およびフィードバック、時間を節約し、生産性を向上させるために、PDF コンテンツを ChatGPT に接続するための簡素化された方法が必要です。
ソリューション概要
ASPOSE.PDF ChatGPT Plugin for .NET は、PDF コンテンツを Chat GPT に送信し、完了または概要を受け取ることができ、最小限のコードで新しい PDF としての回答を保存します。
原則
- Visual Studio 2019 以降
- .NET 6.0 またはそれ以降
- NuGet を介してインストールされた .NET のための Aspose.PDF
- オープンAI API キー ChatGPT
PM> Install-Package Aspose.PDF
ステップ・ステップ・実施
ステップ1:インストールおよび設定 Aspose.PDF
必要な名称を追加する:
using Aspose.Pdf.Plugins;
using System.IO;
using System.Threading.Tasks;
ステップ2:PDFテキストまたはファイルの準備
あなたの入力PDFと望ましい出力をPDFファイルを指定します:
string inputPdfPath = "@C:\Samples\source.pdf";
string outputPdfPath = "@C:\Samples\ChatGPT_output.pdf";
ステップ3: ChatGPT リクエスト オプションの設定
あなたの API キー、スピード、および出力コースを設定します. あなたは手動で PDF からテキストを抽出することができます、またはプラグインが入力として全体のPDF ファイルを使用させます:
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: ChatGPT にリクエストを送信し、結果を保存する
リクエストを非同期的に処理し、新しい PDF ファイルパスと 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);
}
ステップ5:エラー処理とアシンクの使用
常にアシンク通話を入力し、API/ネットワークエラーに対処します。
try
{
// (Code above)
}
catch (Exception ex)
{
Console.WriteLine($"Error during ChatGPT PDF processing: {ex.Message}");
}
ケースとアプリケーションの使用
PDF概要とAI生成コメント
ChatGPT を使用して契約、レポート、または研究論文を自動的にまとめ、PDF に回答を保存します。
自動 Q&A または Insights 抽出
応答、テーブル、またはPDFファイルからキーデータを抽出するためにカスタマイズされた提案を ChatGPT に送信します。
バッチドキュメントの豊かさ
多くのPDFを処理するためにワークフローに統合し、チャットベースの回答や自動ノートを生成します。
共通の課題と解決策
課題: API 制限または反応トランクション
ソリューション: 調整 MaxTokens
そして、 Query
最適な結果を得るために、必要に応じて大きなPDFをパーツに分けます。
タイトル:Secure API Key Management
ソリューション: APIキーを安全に保管(環境変数、バウル)し、生産中のハードコードを避ける。
パフォーマンス考慮
- バッチ PDF は、API 通話を最小限に抑えるために入力および促進します。
- Async のワークフローを使用して、アプリケーションを応答するようにします。
- APIコストを管理するためのトーン・トークン制限。
ベストプラクティス
- 正確さのために、常にPDFの出力とChatGPTの回答をチェックします。
- ターゲット結果のための推進とメッセージの役割をカスタマイズします。
- API認証を安全に管理します。
- Async 作業におけるエラーの記録および処理が優しく行われます。
高度なシナリオ
- 複数のPDFまたはスピードバージョンをロップで使用します。
- 複雑な文脈や課題のためのシステム/ユーザーメッセージを組み合わせる。
- ダウンストリーム処理またはワークフローのためのPDF出力をリリースします。