Классифицировать документы и необработанный текст с помощью C#

Классификация текста или категоризация текста — это процесс присвоения тегов или категоризации текста в организованные группы. Как разработчик C#, вы можете легко программно классифицировать необработанный текст или документы в облаке. В этой статье вы узнаете, как классифицировать документы и необработанный текст с помощью REST API на C#.

В этой статье обсуждаются/рассматриваются следующие темы:

Классификация документов REST API и .NET SDK

Для классификации текста или документов я буду использовать .NET SDK of GroupDocs.Classification Cloud API. Это позволяет вам классифицировать необработанный текст, а также документы по предопределенным категориям. SDK поддерживает несколько типов таксономии, например IAB-2, таксономию документов и настроений. Информация о классификации показывает лучший класс с его оценкой вероятности.

Вы можете установить GroupDocs.Classification в свой проект Visual Studio из диспетчера пакетов NuGet или с помощью следующей команды в консоли диспетчера пакетов:

Install-Package GroupDocs.Classification-Cloud

Прежде чем приступать к выполнению шагов и доступных примеров кода, получите свой идентификатор клиента и секрет клиента на панели инструментов. Получив идентификатор клиента и секрет, добавьте код, как показано ниже:

var configuration = new Configuration();
configuration.ClientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
configuration.ClientSecret = "b377c36cfa28fa69960ebac6b6e36421";

Классифицировать документы Word с помощью REST API в C#

Вы можете классифицировать свои документы Word, выполнив простые шаги, указанные ниже:

Загрузить документ

Во-первых, загрузите файл DOCX в облако, используя пример кода, приведенный ниже:

// Инициализация API
var apiInstance = new FileApi(configuration);

// Откройте файл в IOStream с локального диска/диска.
var fileStream = File.Open("C:\\Files\\sample.docx", FileMode.Open);

// Создать запрос на загрузку файла
var request = new UploadFileRequest("sample.docx", fileStream, "");

var response = apiInstance.UploadFile(request);

В результате загруженный файл DOCX будет доступен в разделе файлов вашей панели инструментов в облаке.

Классифицировать документы Word с помощью C#

Вы можете программно классифицировать документы Word, выполнив шаги, указанные ниже.

  • Создайте экземпляр ClassificationApi
  • Создайте экземпляр BaseRequest
  • Установите путь к файлу DOCX и назначьте его документу BaseRequest.
  • Создайте ClassifyRequest с BaseRequest
  • Установить BaseClassesCount
  • Получите ClassificationResponse, вызвав метод ClassificationApi.Classify().

В следующем примере кода показано, как классифицировать документ Word с помощью REST API.

// Инициализация API
var apiInstance = new ClassificationApi(configuration);

// Создать базовый запрос
BaseRequest baseRequest = new BaseRequest();
baseRequest.Document = new GroupDocs.Classification.Cloud.Sdk.Model.FileInfo()
{
    Name = "sample.docx",
    Folder = ""
};

// Создать запрос на классификацию
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";

// Получить результаты классификации
ClassificationResponse response = apiInstance.Classify(request);
foreach(var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
Классифицировать документы Word с помощью REST API в C#

Классифицировать документы Word с помощью REST API в C#

Классифицировать документы Word для таксономии с помощью C#

Вы можете программно классифицировать документы Word для таксономии, выполнив шаги, указанные ниже.

  • Создайте экземпляр ClassificationApi
  • Создайте экземпляр BaseRequest
  • Установите путь к файлу DOCX и назначьте его документу BaseRequest.
  • Создайте ClassifyRequest с BaseRequest
  • Установить BaseClassesCount
  • Установить таксономию
  • Получите ClassificationResponse, вызвав метод ClassificationApi.Classify().

В следующем примере кода показано, как классифицировать документ Word для таксономии «документы» с помощью REST API. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить файл.

// Инициализация API
var apiInstance = new ClassificationApi(configuration);

// Создать базовый запрос
BaseRequest baseRequest = new BaseRequest();
baseRequest.Document = new GroupDocs.Classification.Cloud.Sdk.Model.FileInfo()
{
    Name = "sample.docx",
    Folder = ""
};

// Создать запрос на классификацию
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";
request.Taxonomy = "documents";

// Получить результаты классификации
ClassificationResponse response = apiInstance.Classify(request);
foreach(var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
ClassName: ADVE
ClassProbability: 77.17
--------------------------------
ClassName: Resume
ClassProbability: 22.83
--------------------------------
ClassName: Scientific
ClassProbability: 0.01
--------------------------------

В качестве таксономии для классификации документов можно использовать следующее:

  • по умолчанию
  • iab2
  • документы
  • настроение
  • настроение3

Подробнее о классификации параметров запроса можно прочитать в разделе «Классификация параметров запроса».

Классифицировать необработанный текст с помощью REST API в C#

Вы можете программно классифицировать любой необработанный текст, выполнив шаги, указанные ниже.

  • Создайте экземпляр ClassificationApi
  • Создать экземпляр BaseRequest
  • Предоставьте необработанный текст для описания BaseRequest
  • Создайте ClassifyRequest с BaseRequest
  • Установить BaseClassesCount
  • Получите ClassificationResponse, вызвав метод ClassificationApi.Classify().

В следующем примере кода показано, как классифицировать необработанный текст с помощью REST API.

// Инициализация API
var apiInstance = new ClassificationApi(configuration);

// Создать базовый запрос
BaseRequest baseRequest = new BaseRequest();
baseRequest.Description = "We support some of the most popular file formats in business, "
    + "including Microsoft Word documents, Excel spreadsheets, PowerPoint presentations, "
    + "Outlook emails and archives, Visio diagrams, Project files, and Adobe Acrobat PDF documents..";

// Создать запрос на классификацию
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";

// Получить результаты классификации
var response = apiInstance.Classify(request);
foreach (var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
ClassName: Hobbies_&_Interests
ClassProbability: 43.02
--------------------------------
ClassName: Business_and_Finance
ClassProbability: 26.64
--------------------------------
ClassName: Technology_&_Computing
ClassProbability: 18.25
--------------------------------

Попробуйте онлайн

Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент классификации, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/классификация[/](https:/ /products.groupdocs.app/splitter/pdf)

Заключение

В этой статье вы узнали, как классифицировать документы Word и необработанный текст в облаке с помощью C#. Вы также узнали, как программно загрузить файл DOCX в облако. Вы можете узнать больше о GroupDocs.Classification Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

Смотрите также