Использовать ChatGPT
Плагин Documentize PDF Manager for .NET — мощный инструмент, предназначенный для интеграции API ChatGPT с PDF‑приложениями. Этот плагин позволяет разработчикам генерировать ответы чата на основе входных сообщений и сохранять результат в формате PDF, что делает его подходящим для создания разговорных интерфейсов или аналитических отчётов непосредственно в PDF‑документах.
Генерация ответов чата
Чтобы сгенерировать ответы чата и сохранить их в PDF‑файл с помощью плагина ChatGPT, выполните следующие шаги:
- Создайте экземпляр класса
ChatGptRequestOptionsдля настройки параметров запроса. - Добавьте входные и выходные PDF‑файлы.
- Укажите ключ API и задайте параметры, такие как максимальное количество токенов и запрос к модели ChatGPT.
- Запустите метод
CreatePdfByChatGptRequestAsyncдля получения завершения чата.
1var options = new ChatGptRequestOptions();
2// Set output file path
3options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
4options.ApiKey = "Your API key."; // You need to provide the key to access the API.
5options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.
6
7// Add the request messages.
8options.Messages.Add(new Message
9{
10 Content = "You are a helpful assistant.",
11 Role = Role.System
12});
13options.Messages.Add(new Message
14{
15 Content = "What is the biggest pizza diameter ever made?",
16 Role = Role.User
17});
18
19// Process the request.
20var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);
21
22var fileResultPath = result.ResultCollection[0].Data;
23var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // The ChatGPT API chat completion object.Добавление системных и пользовательских сообщений
Для создания более интерактивного диалога вы можете добавить как системные, так и пользовательские сообщения. Эти сообщения помогают сформировать контекст беседы.
- Добавьте системное сообщение, которое задаёт контекст для ChatGPT.
- Добавьте пользовательское сообщение, представляющее ввод пользователя в диалоге.
1var options = new ChatGptRequestOptions();
2// Set output file path
3options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
4
5// Add the PDF text source.
6// In case of multiple sources, the text from each document will be added to the request message collection
7// as a separate message with the role "user".
8options.AddInput(new FileData("TextSource.pdf"));
9
10options.ApiKey = "Your API key."; // You need to provide the key to access the API.
11options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.
12
13// Add the request message.
14// In this case, the system message with Content = "You are a helpful assistant." is added by default.
15// The role of the query message is "user" by default.
16options.Query = "How many letters in the provided text?";
17
18// Process the request.
19var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);
20
21var fileResultPath = result.ResultCollection[0].Data;
22var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // The ChatGPT API chat completion object.Ключевые особенности:
- Chat Completions: Генерация ответов с использованием API ChatGPT на основе пользовательского ввода.
- System & User Messages: Предоставление как системного контекста, так и пользовательского ввода для создания динамичных разговоров.
- PDF Output: Сохранение сгенерированных завершений чата в структурированном PDF‑файле для дальнейшего использования.
- Asynchronous Processing: Обеспечение отзывчивости приложений за счёт асинхронной обработки завершений чата.