Back to Devexpress

AIExtensionsContainerDefault Class

corelibraries-devexpress-dot-aiintegration.md

latest12.1 KB
Original Source

AIExtensionsContainerDefault Class

A container that manages registered AI clients.

Namespace : DevExpress.AIIntegration

Assembly : DevExpress.AIIntegration.v25.2.dll

NuGet Package : DevExpress.AIIntegration

Declaration

csharp
public sealed class AIExtensionsContainerDefault :
    AIExtensionsContainer
vb
Public NotInheritable Class AIExtensionsContainerDefault
    Inherits AIExtensionsContainer

The following members return AIExtensionsContainerDefault objects:

Remarks

The following code snippets register an Azure OpenAI chat client:

csharp
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")
);

AIExtensionsContainerDefault RegisterAzureOpenAIClient(string azureOpenAIEndpoint, string azureOpenAIKey) {
    IChatClient client = new Azure.AI.OpenAI.AzureOpenAIClient(new Uri(azureOpenAIEndpoint),
        new System.ClientModel.ApiKeyCredential(azureOpenAIKey)).GetChatClient("gpt-4o-mini").AsIChatClient();

    return AIExtensionsContainerConsole.CreateDefaultAIExtensionContainer(client);
}

void SetEnvironmentVariables() {
    Environment.SetEnvironmentVariable("AZURE_OPENAI_ENDPOINT", {SPECIFY_YOUR_AZURE_ENDPOINT});
    Environment.SetEnvironmentVariable("AZURE_OPENAI_APIKEY", {SPECIFY_YOU_AZURE_KEY});
}
csharp
using Azure;
using Azure.AI.OpenAI;
using Microsoft.Extensions.AI;
using DevExpress.AIIntegration;
using DevExpress.AIIntegration.Extensions;

//...
IChatClient client = new AzureOpenAIClient(new Uri(azureOpenAIEndpoint),
    new System.ClientModel.ApiKeyCredential(azureOpenAIKey)).GetChatClient("gpt-4o-mini").AsIChatClient();

AIExtensionsContainerDesktop.Default.RegisterChatClient(client);
csharp
using DevExpress.AIIntegration;
using Microsoft.Extensions.AI;
using OpenAI;

IChatClient client = new AzureOpenAIClient(new Uri(azureOpenAIEndpoint),
    new System.ClientModel.ApiKeyCredential(azureOpenAIKey)).GetChatClient("gpt-4o-mini").AsIChatClient();

builder.Services.AddSingleton(client);
//or reference the Microsoft.Extensions.AI NuGet package and use
//builder.Services.AddChatClient(config => config.Use(myChatClient));
builder.Services.AddDevExpressAI();

Implements

IAIExtensionsContainer

Inheritance

Object DevExpress.AIIntegration.Internal.AIExtensionsStorage AIExtensionsContainer AIExtensionsContainerDefault

Extension Methods

Show 43 items

RegisterChatClient(IChatClient)

RegisterChatClient(Func<IServiceProvider, IChatClient>)

UnregisterChatClient()

RegisterAIExceptionHandler(IAIExceptionHandler)

UnregisterAIExceptionHandler()

RegisterAIChatClientCustomizeMessageRequest(IAIChatClientCustomizeMessageRequest)

UnregisterAIChatClientCustomizeMessageRequest()

RegisterOpenAIAssistants(OpenAIClient, String)

AddDefaultExtensions()

CreateGenerateImageDescriptionExtension(String)

GenerateImageDescriptionAsync(GenerateImageDescriptionRequest, CancellationToken)

CreatePromptToExpressionExtension<TRequest>(String)

PromptToExpressionAsync<TRequest>(TRequest, CancellationToken)

CreateSmartPasteExtension(String)

SmartPasteAsync(SmartPasteRequest, CancellationToken)

CreateSmartPasteSchedulerExtension(String)

SmartPasteSchedulerAsync(SmartPasteSchedulerRequest, CancellationToken)

CreateSmartSearchExtension(String)

SmartSearchAsync(SmartSearchRequest, CancellationToken)

CreateAbstractiveSummaryExtension(String)

AbstractiveSummaryAsync(AbstractiveSummaryRequest, CancellationToken)

CreateSmartAutoCompleteExtension(String)

SmartAutoCompleteAsync(SmartAutoCompleteRequest, CancellationToken)

CreateCustomPromptExtension(String)

CustomPromptAsync(CustomPromptRequest, CancellationToken)

CreateExpandExtension(String)

ExpandAsync(ExpandRequest, CancellationToken)

CreateExplainExtension(String)

ExplainAsync(ExplainRequest, CancellationToken)

CreateExtractiveSummaryExtension(String)

ExtractiveSummaryAsync(ExtractiveSummaryRequest, CancellationToken)

CreateExplainFormulaExtension(String)

ExplainFormulaAsync(ExplainFormulaRequest, CancellationToken)

CreateProofreadExtension(String)

ProofreadAsync(ProofreadRequest, CancellationToken)

CreateChangeStyleExtension(String)

ChangeStyleAsync(ChangeStyleRequest, CancellationToken)

CreateShortenExtension(String)

ShortenAsync(ShortenRequest, CancellationToken)

CreateChangeToneExtension(String)

ChangeToneAsync(ChangeToneRequest, CancellationToken)

CreateTranslateExtension(String)

TranslateAsync(TranslateRequest, CancellationToken)

See Also

AIExtensionsContainerDefault Members

DevExpress.AIIntegration Namespace