diff --git a/framework/Volo.Abp.sln b/framework/Volo.Abp.sln index 2c30860de5..7fec190531 100644 --- a/framework/Volo.Abp.sln +++ b/framework/Volo.Abp.sln @@ -494,6 +494,7 @@ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AI", "src\Volo.Abp.AI\Volo.Abp.AI.csproj", "{82BD7B8C-7CE1-4C9B-B447-3796DA54B080}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AI.Abstractions", "src\Volo.Abp.AI.Abstractions\Volo.Abp.AI.Abstractions.csproj", "{63BEAA7D-4807-4534-9B45-66FD36491FD3}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Mapperly", "src\Volo.Abp.Mapperly\Volo.Abp.Mapperly.csproj", "{AF556046-54CD-48BC-9740-3E926DB8B510}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Mapperly.Tests", "test\Volo.Abp.Mapperly.Tests\Volo.Abp.Mapperly.Tests.csproj", "{C38926D5-C1E7-47D6-BD0B-D36BE4C19AE7}" diff --git a/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIModule.cs b/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIModule.cs index c15b6f71ba..ed41a394f7 100644 --- a/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIModule.cs +++ b/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIModule.cs @@ -1,4 +1,6 @@ -using Microsoft.Extensions.AI; +using System.Collections.Generic; +using System.Linq; +using Microsoft.Extensions.AI; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using Microsoft.SemanticKernel; @@ -11,13 +13,17 @@ namespace Volo.Abp.AI; )] public class AbpAIModule : AbpModule { - public const string DefaultWorkspaceName = "Default"; public override void PostConfigureServices(ServiceConfigurationContext context) { var options = context.Services.ExecutePreConfiguredActions(); + context.Services.Configure(workspaceOptions => + { + workspaceOptions.ConfiguredWorkspaceNames.UnionWith(options.Workspaces.Select(x => x.Key).ToArray()); + }); + foreach (var workspaceConfig in options.Workspaces.Values) { if (workspaceConfig.ChatClient?.Builder is null) @@ -73,5 +79,7 @@ public class AbpAIModule : AbpModule } context.Services.TryAddTransient(typeof(IKernelAccessor<>), typeof(TypedKernelAccessor<>)); + + } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIWorkspaceOptions.cs b/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIWorkspaceOptions.cs new file mode 100644 index 0000000000..1fad742c04 --- /dev/null +++ b/framework/src/Volo.Abp.AI/Volo/Abp/AI/AbpAIWorkspaceOptions.cs @@ -0,0 +1,8 @@ +using System.Collections.Generic; + +namespace Volo.Abp.AI; + +public class AbpAIWorkspaceOptions +{ + public HashSet ConfiguredWorkspaceNames { get; } = new(); +} \ No newline at end of file