// Copyright (c) Microsoft. All rights reserved.
using System;
using Microsoft.Agents.AI;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace Microsoft.Extensions.Hosting;
///
/// Extension methods for to configure OpenAI support.
///
public static class MicrosoftAgentAIHostingOpenAIHostApplicationBuilderExtensions
{
///
/// Adds support for exposing instances via OpenAI ChatCompletions.
///
/// The to configure.
/// The for method chaining.
public static IHostApplicationBuilder AddOpenAIChatCompletions(this IHostApplicationBuilder builder)
{
ArgumentNullException.ThrowIfNull(builder);
builder.Services.AddOpenAIChatCompletions();
return builder;
}
///
/// Adds support for exposing instances via OpenAI Responses.
///
/// The to configure.
/// The for method chaining.
public static IHostApplicationBuilder AddOpenAIResponses(this IHostApplicationBuilder builder)
{
ArgumentNullException.ThrowIfNull(builder);
builder.Services.AddOpenAIResponses();
return builder;
}
///
/// Adds support for exposing instances via OpenAI Responses.
///
/// The to configure.
/// The for method chaining.
public static IHostApplicationBuilder AddOpenAIConversations(this IHostApplicationBuilder builder)
{
ArgumentNullException.ThrowIfNull(builder);
builder.Services.AddOpenAIConversations();
return builder;
}
}