.NET में ChatGPT के साथ PDF पाठ कैसे संसाधित करें
इस लेख में दिखाया गया है कि कैसे एस्पोजेस.पीडीएफ चैट जीपीटी प्लगइन का उपयोग करके .NET में पीडीए के साथ कार्यप्रवाहों को एकीकृत करने के लिए. आप PDF से पाठ निकालना सीखेंगे, इसे ChatGPT के माध्यम से संसाधित करेंगे, और नए या मौजूदा PDF फ़ाइलों के जवाब लिखेंगे - दस्तावेज़ सारांश, स्वचालित टिप्पणी, या एआई-आधारित सामग्री समृद्धि के रूप में आदर्श।
असली दुनिया की समस्या
मैन्युअल रूप से पीडीएफ फ़ाइलों से सार्थक अंतर्दृष्टि, सारांश या जवाब निकालना समय-समय पर होता है. डेवलपर्स को स्वचालित प्रसंस्करण और प्रतिक्रिया के लिए चैटजीपीटी के साथ PDF सामग्री को जोड़ने का एक सरल तरीका चाहिए, समय बचाना और उत्पादकता बढ़ाना।
समाधान समीक्षा
Aspose.PDF ChatGPT Plugin for .NET आपको पीडीएफ सामग्री भेजने की अनुमति देता है, पूर्णताओं या सारांश प्राप्त करते हैं, और जवाबों को नए पीपीडी के रूप में सहेजते हैं - सभी को न्यूनतम कोड के साथ. प्लगइन एसिन्क ऑपरेशन, लचीला अनुरोध विकल्प और आसान PDF इनपुट / आउटड प्रबंधन प्रदान करता है.
Prerequisites
- Visual Studio 2019 या बाद में
- .NET 6.0 या बाद में
- .NET के लिए Aspose.PDF NuGet के माध्यम से स्थापित
- ChatGPT के लिए OpenAI API कुंजी
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: ChatGPT अनुरोध विकल्प सेट करें
आप 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 के लिए अनुरोध भेजें और परिणाम बचाएं
अनुरोध को असंगत रूप से संसाधित करें, दोनों नए पीडीएफ फ़ाइल मार्ग और चैटजीपीटी प्रतिक्रिया प्राप्त करें:
// 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: त्रुटि संभालना और Async का उपयोग करना
हमेशा एसीएनसी कॉल को लपेटें और एपीआई / नेटवर्क त्रुटियों से निपटें:
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 Summarization और AI-Generated टिप्पणियाँ
ChatGPT का उपयोग करके अनुबंध, रिपोर्ट या अनुसंधान दस्तावेजों को स्वचालित रूप से संक्षेप में संकलित करें और पीडीएफ में प्रतिक्रियाओं को सहेजें।
स्वचालित Q&A या Insights निष्कर्षण
जवाब, तालिकाओं या पीडीएफ फ़ाइलों से कुंजी डेटा निकालने के लिए ChatGPT को अनुकूलित प्रोत्साहन भेजें।
बैच दस्तावेज समृद्धि
कई पीडीएफ को संसाधित करने के लिए कार्यप्रवाहों में एकीकृत करें, चैट-आधारित प्रतिक्रियाएं या स्वचालित नोट्स उत्पन्न करें।
आम चुनौतियां और समाधान
चुनौती: एपीआई सीमाओं या प्रतिक्रिया ट्रांसक्शन
समाधान: अनुकूलित करें MaxTokens
और Query
सर्वोत्तम परिणामों के लिए; यदि आवश्यक हो तो बड़े पीडीएफ को टुकड़ों में विभाजित करें।
चुनौती: सुरक्षित एपीआई कुंजी प्रबंधन
** समाधान:** एपीआई कुंजी को सुरक्षित रूप से संग्रहीत करें (पर्यावरण परिवर्तन, वोल्ट) और उत्पादन में हार्डकोडिंग से बचें।
प्रदर्शन विचार
- बैच पीडीएफ इनपुट और एपीआई कॉल को कम करने के लिए प्रोत्साहित करता है।
- आपके आवेदन को प्रतिक्रियाशील रखने के लिए async कार्यप्रवाह का उपयोग करें।
- एपीआई लागत का प्रबंधन करने के लिए ट्यूनी टोकन सीमाएं।
सर्वश्रेष्ठ अभ्यास
- सटीकता के लिए हमेशा PDF आउटपुट और ChatGPT प्रतिक्रियाओं की जांच करें।
- लक्षित परिणामों के लिए प्रमोप्स और संदेश भूमिकाओं को अनुकूलित करें।
- एपीआई क्रेडिट को सुरक्षित रूप से प्रबंधित करें।
- एसीएनसी ऑपरेशन में गलतियों को रिकॉर्ड और दयालुता से संभालना।
उन्नत परिदृश्य
- एक लूप में कई पीडीएफ या त्वरित परिवर्तनों का उपयोग करें।
- जटिल परिस्थितियों या कार्यों के लिए सिस्टम / उपयोगकर्ता संदेशों को जोड़ें।
- नीचे प्रसंस्करण या कार्यप्रवाह के लिए पीडीएफ आउटपुट डाउनलोड करें।
Conclusion
Aspose.PDF ChatGPT Plugin for .NET डेवलपर्स का उपयोग करके दस्तावेज़ विश्लेषण, सारांश और इंटरैक्टिव पीडीएफ प्रसंस्करण को स्वचालित करने के लिए सक्षम बनाता है - सीधे उनके .Net अनुप्रयोगों के भीतर।