Skip to main content
All docs
V24.2

AIIntegration.ShortenAsync(IAIExtensionsContainer, ShortenRequest, CancellationToken) Method

Removes unnecessary details and make text more concise.

Namespace: DevExpress.AIIntegration

Assembly: DevExpress.AIIntegration.v24.2.dll

NuGet Package: DevExpress.AIIntegration

Declaration

public static Task<TextResponse> ShortenAsync(
    this IAIExtensionsContainer container,
    ShortenRequest request,
    CancellationToken cancellationToken = default(CancellationToken)
)

Parameters

Name Type Description
container IAIExtensionsContainer

The AI extensions container.

request ShortenRequest

The request to remove unnecessary details and make text more concise.

Optional Parameters

Name Type Default Description
cancellationToken CancellationToken null

The token that cancels the task.

Returns

Type Description
Task<TextResponse>

The response that contains AI-generated text.

Remarks

The following example registers an Azure OpenAI client and uses the AI-powered extension to shorten originalText:

using Azure;
using Azure.AI.OpenAI;
using Microsoft.Extensions.AI;
using DevExpress.AIIntegration;
using DevExpress.AIIntegration.Extensions;

SetEnvironmentVariables();

// Register an Azure OpenAI client
AIExtensionsContainerDefault defaultAIExtensionsContainer = RegisterAzureOpenAIClient(
    Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT"),
    Environment.GetEnvironmentVariable("AZURE_OPENAI_APIKEY")
);

string originalText = "Effective communication is essential in any professional setting, as it ensures that all parties involved are on the same page and working toward the same goals. Without clear communication, misunderstandings can arise, leading to errors, delays, and even conflict among team members.";
var response = await defaultAIExtensionsContainer.ShortenAsync(
    new ShortenRequest(originalText)
);

Console.WriteLine(response);

/* Output:
 * Effective communication is crucial in professional settings for aligning all parties toward common goals.
 * Lack of clear communication can result in misunderstandings, errors, delays, and conflicts among team members.
 */

AIExtensionsContainerDefault RegisterAzureOpenAIClient(string azureOpenAIEndpoint, string azureOpenAIKey) {
    IChatClient client = new AzureOpenAIClient(
        new Uri(azureOpenAIEndpoint),
        new AzureKeyCredential(azureOpenAIKey))
            .AsChatClient("gpt-4o-mini");
    return AIExtensionsContainerConsole.CreateDefaultAIExtensionContainer(client);
}

void SetEnvironmentVariables() {
    Environment.SetEnvironmentVariable("AZURE_OPENAI_ENDPOINT", {SPECIFY_YOUR_AZURE_ENDPOINT});
    Environment.SetEnvironmentVariable("AZURE_OPENAI_APIKEY", {SPECIFY_YOU_AZURE_KEY});
}
See Also