in workshop/dotnet/App/backend/Extensions/ServiceExtensions.cs [12:31]
public static void AddSkServices(this IServiceCollection services)
{
services.AddSingleton<Kernel>(_ =>
{
IKernelBuilder builder = KernelBuilderProvider.CreateKernelWithChatCompletion();
// Enable tracing
builder.Services.AddLogging(services => services.AddConsole().SetMinimumLevel(LogLevel.Trace));
Kernel kernel = builder.Build();
// Step 2 - Initialize Time plugin and registration in the kernel
kernel.Plugins.AddFromObject(new TimeInformationPlugin());
// Step 6 - Initialize Stock Data Plugin and register it in the kernel
HttpClient httpClient = new();
StockDataPlugin stockDataPlugin = new(new StocksService(httpClient));
kernel.Plugins.AddFromObject(stockDataPlugin);
return kernel;
});
}