Method GetTopCategoriesAsync
- Namespace
- LMKit.TextAnalysis
- Assembly
- LM-Kit.NET.dll
GetTopCategoriesAsync(IList<string>, string, int, bool, CancellationToken)
Asynchronously classifies the specified plain text into up to a specified maximum number of categories.
public Task<List<int>> GetTopCategoriesAsync(IList<string> categories, string content, int maxCategories, bool normalize = true, CancellationToken cancellationToken = default)
Parameters
categories
IList<string>A list of predefined category names.
content
stringThe plain text to be classified.
maxCategories
intThe maximum number of top categories to return.
normalize
boolSpecifies whether input parameters should be normalized. Default is
true
.cancellationToken
CancellationTokenCancellationToken for cancelling the operation.
Returns
- Task<List<int>>
A task representing the asynchronous operation. The task result is a list of indices representing the top categories.
Examples
// Asynchronous usage:
var categories = new List<string> { "finance", "travel", "entertainment", "politics", "technology" };
string text = "The government unveiled a new technology policy impacting the finance sector.";
IList<int> topCategories = await categorization.GetTopCategoriesAsync(categories, text, 3);
Console.WriteLine("Top categories:");
foreach (var index in topCategories)
{
Console.WriteLine(categories[index]);
}
GetTopCategoriesAsync(IList<string>, IList<string>, string, int, bool, CancellationToken)
Asynchronously classifies the specified plain text into up to a specified maximum number of categories.
public Task<List<int>> GetTopCategoriesAsync(IList<string> categories, IList<string> categoryDescriptions, string content, int maxCategories, bool normalize = true, CancellationToken cancellationToken = default)
Parameters
categories
IList<string>A list of predefined category names.
categoryDescriptions
IList<string>Optional descriptions for each category.
content
stringThe plain text to be classified.
maxCategories
intThe maximum number of top categories to return.
normalize
boolSpecifies whether input parameters should be normalized. Default is
true
.cancellationToken
CancellationTokenCancellationToken for cancelling the operation.
Returns
- Task<List<int>>
A task representing the asynchronous operation. The task result is a list of indices representing the top categories.
GetTopCategoriesAsync(IList<string>, Attachment, int, bool, CancellationToken)
Asynchronously classifies the content provided as an attachment into up to a specified maximum number of categories. The attachment may contain either plain text or image data. For image attachments that require vision processing, the underlying language model must support vision input.
public Task<List<int>> GetTopCategoriesAsync(IList<string> categories, Attachment content, int maxCategories, bool normalize = true, CancellationToken cancellationToken = default)
Parameters
categories
IList<string>A list of predefined category names.
content
AttachmentThe attachment to be classified.
maxCategories
intThe maximum number of top categories to return.
normalize
boolSpecifies whether input parameters should be normalized. Default is
true
.cancellationToken
CancellationTokenCancellationToken for cancelling the operation.
Returns
- Task<List<int>>
A task representing the asynchronous operation. The task result is a list of indices representing the top categories for the given attachment.
Exceptions
- InvalidModelException
Thrown when the attachment is an image that requires vision input but the underlying language model does not support vision.
GetTopCategoriesAsync(IList<string>, IList<string>, Attachment, int, bool, CancellationToken)
Asynchronously classifies the content provided as an attachment into up to a specified maximum number of categories.
public Task<List<int>> GetTopCategoriesAsync(IList<string> categories, IList<string> categoryDescriptions, Attachment content, int maxCategories, bool normalize = true, CancellationToken cancellationToken = default)
Parameters
categories
IList<string>A list of predefined category names.
categoryDescriptions
IList<string>Optional descriptions for each category.
content
AttachmentThe attachment to be classified.
maxCategories
intThe maximum number of top categories to return.
normalize
boolSpecifies whether input parameters should be normalized. Default is
true
.cancellationToken
CancellationTokenCancellationToken for cancelling the operation.
Returns
- Task<List<int>>
A task representing the asynchronous operation. The task result is a list of indices representing the top categories for the given attachment.
Exceptions
- InvalidModelException
Thrown when the attachment is an image that requires vision input but the underlying language model does not support vision.