Skip to main content
All docs
V25.1
  • AIIntegration.ExplainFormulaAsync(IAIExtensionsContainer, ExplainFormulaRequest, CancellationToken) Method

    Explains the Excel formula.

    Namespace: DevExpress.AIIntegration

    Assembly: DevExpress.AIIntegration.v25.1.dll

    NuGet Package: DevExpress.AIIntegration

    Declaration

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

    Parameters

    Name Type Description
    container IAIExtensionsContainer

    The AI extensions container.

    request ExplainFormulaRequest

    The request to explain the Excel formula.

    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 to use the AI-powered extension to explain the excelFormula:

    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 excelFormula = "=F30*H30";
    var response = await defaultAIExtensionsContainer.ExplainFormulaAsync(
        new ExplainFormulaRequest(excelFormula)
    );
    
    Console.WriteLine(response);
    
    /* Output:
     * This Excel formula multiplies the value in cell F30 by the value in cell H30.
     * For example, if cell F30 contains the number 5 and cell H30 contains the number 10,
     * the formula will calculate 5 times 10, giving the result of 50.
     */
    
    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});
    }
    
    See Also