使用 C# 对文档和原始文本进行分类

文本分类或文本分类是分配标签或将文本分类为有组织的组的过程。作为 C# 开发人员,您可以轻松地以编程方式在云端对原始文本或文档进行分类。在本文中,您将学习如何在 C# 中使用 REST API 对文档和原始文本进行分类。

本文讨论/涵盖以下主题:

文档分类 REST API 和 .NET SDK

为了对文本或文档进行分类,我将使用 GroupDocs.Classification Cloud 的 .NET SDK API。它使您能够将原始文本和文档分类到预定义的类别中。 SDK 支持多种分类法类型,例如 IAB-2、Documents & Sentiment 分类法。分类信息显示最佳类别及其概率得分。

您可以从 NuGet 包管理器或在包管理器控制台中使用以下命令将 GroupDocs.Classification 安装到您的 Visual Studio 项目中:

Install-Package GroupDocs.Classification-Cloud

在开始执行步骤和可用代码示例之前,请从 仪表板 获取您的客户端 ID 和客户端密码。获得客户端 ID 和密码后,添加如下所示的代码:

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

在 C# 中使用 REST API 对 Word 文档进行分类

您可以按照下面给出的简单步骤对您的 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 文件将在云端仪表板的 文件部分 中可用。

使用 C# 对 Word 文档进行分类

您可以按照下面给出的步骤以编程方式对 Word 文档进行分类。

  • 创建 ClassificationApi 实例
  • 创建 BaseRequest 的实例
  • 设置DOCX文件路径,赋值给BaseRequest文档
  • 使用 BaseRequest 创建 ClassifyRequest
  • 设置 BaseClassesCount
  • 通过调用 ClassificationApi.Classify() 方法获取 ClassificationResponse

以下代码示例展示了如何使用 REST API 对 Word 文档进行分类。

// 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("--------------------------------");
}
在 C# 中使用 REST API 对 Word 文档进行分类

在 C# 中使用 REST API 对 Word 文档进行分类

使用 C# 对分类法的 Word 文档进行分类

您可以按照下面给出的步骤以编程方式对 Word 文档进行分类。

  • 创建 ClassificationApi 实例
  • 创建 BaseRequest 的实例
  • 设置DOCX文件路径,赋值给BaseRequest文档
  • 使用 BaseRequest 创建 ClassifyRequest
  • 设置 BaseClassesCount
  • 设置分类
  • 通过调用 ClassificationApi.Classify() 方法获取 ClassificationResponse

以下代码示例显示如何使用 REST API 对 Word 文档进行“文档”分类。请按照前面提到的步骤上传文件。

// 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

您可以在“分类请求参数”部分阅读更多关于分类请求参数的信息。

在 C# 中使用 REST API 对原始文本进行分类

您可以按照下面给出的步骤以编程方式对任何原始文本进行分类。

  • 创建 ClassificationApi 实例
  • 创建 BaseRequest 实例
  • 向 BaseRequest 描述提供原始文本
  • 使用 BaseRequest 创建 ClassifyRequest
  • 设置 BaseClassesCount
  • 通过调用 ClassificationApi.Classify() 方法获取 ClassificationResponse

以下代码示例展示了如何使用 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)

结论

在本文中,您学习了如何使用 C# 对云端的 Word 文档和原始文本进行分类。您还学习了如何以编程方式将 DOCX 文件上传到云端。您可以使用 文档 了解有关 GroupDocs.Classification Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。如有任何歧义,请随时在论坛上与我们联系。

也可以看看