Files

26 lines
1.0 KiB
C#

using Azure;
using Azure.AI.OpenAI;
using Microsoft.Extensions.AI;
namespace EnvelopeGenerator.ReceiverUI.Web.Client.Utils
{
public static class ServiceExtensions
{
// Demo AI services are rate limited and intended for demonstration purposes only.
// DevExpress does not offer a REST API and does not ship any built-in LLMs/SLMs.
// Use of demo credentials in production is strictly prohibited.
// Specify the Azure OpenAI endpoint, key, and deployment name in the 'appsettings.json' file.
public static void AddChatClient(this IServiceCollection services, string aiEndpoint, string aiKey, string deployment)
{
services.AddDevExpressAI();
services.AddScoped<IChatClient>(_ =>
{
var azureClient = new AzureOpenAIClient(new Uri(aiEndpoint), new AzureKeyCredential(aiKey));
return azureClient
.GetChatClient(deployment)
.AsIChatClient();
});
}
}
}