Использовать ChatGPT

Плагин Documentize PDF Manager for .NET — мощный инструмент, предназначенный для интеграции API ChatGPT с PDF‑приложениями. Этот плагин позволяет разработчикам генерировать ответы чата на основе входных сообщений и сохранять результат в формате PDF, что делает его подходящим для создания разговорных интерфейсов или аналитических отчётов непосредственно в PDF‑документах.

Генерация ответов чата

Чтобы сгенерировать ответы чата и сохранить их в PDF‑файл с помощью плагина ChatGPT, выполните следующие шаги:

  1. Создайте экземпляр класса ChatGptRequestOptions для настройки параметров запроса.
  2. Добавьте входные и выходные PDF‑файлы.
  3. Укажите ключ API и задайте параметры, такие как максимальное количество токенов и запрос к модели ChatGPT.
  4. Запустите метод 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.

Добавление системных и пользовательских сообщений

Для создания более интерактивного диалога вы можете добавить как системные, так и пользовательские сообщения. Эти сообщения помогают сформировать контекст беседы.

  1. Добавьте системное сообщение, которое задаёт контекст для ChatGPT.
  2. Добавьте пользовательское сообщение, представляющее ввод пользователя в диалоге.
 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: Обеспечение отзывчивости приложений за счёт асинхронной обработки завершений чата.
 Русский