diff --git a/samples/aspnet/Elsa.Samples.AspNet.OrchardCoreIntegration/appsettings.json b/samples/aspnet/Elsa.Samples.AspNet.OrchardCoreIntegration/appsettings.json index 345470f8e..c6ed4332a 100644 --- a/samples/aspnet/Elsa.Samples.AspNet.OrchardCoreIntegration/appsettings.json +++ b/samples/aspnet/Elsa.Samples.AspNet.OrchardCoreIntegration/appsettings.json @@ -39,7 +39,7 @@ "Value": "" } ], - "Models": [ + "ServiceProfiles": [ { "Name": "Gpt4o", "Services": [ @@ -376,7 +376,7 @@ "Agents": [ { "Name": "ContentManager", - "Models": [ + "ServiceProfiles": [ "Gpt4o" ], "Skills": [ @@ -391,7 +391,7 @@ }, { "Name": "Artist", - "Models": [ + "ServiceProfiles": [ "Gpt4o" ], "Skills": [ @@ -400,7 +400,7 @@ }, { "Name": "Translator", - "Models": [ + "ServiceProfiles": [ "Gpt4o" ], "Skills": [ @@ -409,7 +409,7 @@ }, { "Name": "Author", - "Models": [ + "ServiceProfiles": [ "Gpt4o" ], "Skills": [ diff --git a/src/modules/Elsa.Agents.Core/Elsa.Agents.Core.csproj b/src/modules/Elsa.Agents.Core/Elsa.Agents.Core.csproj index aa25a8a48..49d6e4e62 100644 --- a/src/modules/Elsa.Agents.Core/Elsa.Agents.Core.csproj +++ b/src/modules/Elsa.Agents.Core/Elsa.Agents.Core.csproj @@ -17,4 +17,8 @@ + + + + diff --git a/src/modules/Elsa.Agents.Core/Entities/ModelDefinition.cs b/src/modules/Elsa.Agents.Core/Entities/ServiceProfileDefinition.cs similarity index 78% rename from src/modules/Elsa.Agents.Core/Entities/ModelDefinition.cs rename to src/modules/Elsa.Agents.Core/Entities/ServiceProfileDefinition.cs index 38185d45b..c15998ff5 100644 --- a/src/modules/Elsa.Agents.Core/Entities/ModelDefinition.cs +++ b/src/modules/Elsa.Agents.Core/Entities/ServiceProfileDefinition.cs @@ -2,7 +2,7 @@ using Elsa.Common.Entities; namespace Elsa.Agents; -public class ModelDefinition : Entity +public class ServiceProfileDefinition : Entity { public string Name { get; set; } = default!; public ICollection Services { get; set; } = []; diff --git a/src/modules/Elsa.Agents.Core/HostedServices/ConfigureKernel.cs b/src/modules/Elsa.Agents.Core/HostedServices/ConfigureKernel.cs index 0dfd9792b..423c27937 100644 --- a/src/modules/Elsa.Agents.Core/HostedServices/ConfigureKernel.cs +++ b/src/modules/Elsa.Agents.Core/HostedServices/ConfigureKernel.cs @@ -9,7 +9,7 @@ public class ConfigureKernel(KernelConfig kernelConfig, IOptions public Task StartAsync(CancellationToken cancellationToken) { foreach (var apiKey in options.Value.ApiKeys) kernelConfig.ApiKeys[apiKey.Name] = apiKey; - foreach (var model in options.Value.Models) kernelConfig.Models[model.Name] = model; + foreach (var serviceProfile in options.Value.ServiceProfiles) kernelConfig.ServiceProfiles[serviceProfile.Name] = serviceProfile; foreach (var skill in options.Value.Skills) kernelConfig.Skills[skill.Name] = skill; foreach (var plugin in options.Value.Plugins) kernelConfig.Plugins[plugin.Name] = plugin; foreach (var agent in options.Value.Agents) kernelConfig.Agents[agent.Name] = agent; diff --git a/src/modules/Elsa.Agents.Core/Models/AgentConfig.cs b/src/modules/Elsa.Agents.Core/Models/AgentConfig.cs index aa9cb4aa1..c8e9eef19 100644 --- a/src/modules/Elsa.Agents.Core/Models/AgentConfig.cs +++ b/src/modules/Elsa.Agents.Core/Models/AgentConfig.cs @@ -6,6 +6,6 @@ namespace Elsa.Agents; public class AgentConfig { public string Name { get; set; } = default!; - public ICollection Models { get; set; } = new List(); + public ICollection ServiceProfiles { get; set; } = new List(); public ICollection Skills { get; set; } = new List(); } \ No newline at end of file diff --git a/src/modules/Elsa.Agents.Core/Models/KernelConfig.cs b/src/modules/Elsa.Agents.Core/Models/KernelConfig.cs index 2a4d00e85..c880b36f7 100644 --- a/src/modules/Elsa.Agents.Core/Models/KernelConfig.cs +++ b/src/modules/Elsa.Agents.Core/Models/KernelConfig.cs @@ -3,7 +3,7 @@ namespace Elsa.Agents; public class KernelConfig { public IDictionary ApiKeys { get; set; } = new Dictionary(); - public IDictionary Models { get; } = new Dictionary(); + public IDictionary ServiceProfiles { get; } = new Dictionary(); public IDictionary Plugins { get; } = new Dictionary(); public IDictionary Skills { get; } = new Dictionary(); public IDictionary Agents { get; } = new Dictionary(); diff --git a/src/modules/Elsa.Agents.Core/Models/ModelConfig.cs b/src/modules/Elsa.Agents.Core/Models/ServiceProfileConfig.cs similarity index 78% rename from src/modules/Elsa.Agents.Core/Models/ModelConfig.cs rename to src/modules/Elsa.Agents.Core/Models/ServiceProfileConfig.cs index a886232e0..db1a635b4 100644 --- a/src/modules/Elsa.Agents.Core/Models/ModelConfig.cs +++ b/src/modules/Elsa.Agents.Core/Models/ServiceProfileConfig.cs @@ -1,6 +1,6 @@ namespace Elsa.Agents; -public class ModelConfig +public class ServiceProfileConfig { public string Name { get; set; } public ICollection Services { get; set; } diff --git a/src/modules/Elsa.Agents.Core/Options/AgentsOptions.cs b/src/modules/Elsa.Agents.Core/Options/AgentsOptions.cs index 04aaf47fe..819f2b1de 100644 --- a/src/modules/Elsa.Agents.Core/Options/AgentsOptions.cs +++ b/src/modules/Elsa.Agents.Core/Options/AgentsOptions.cs @@ -3,7 +3,7 @@ namespace Elsa.Agents.Options; public class AgentsOptions { public ICollection ApiKeys { get; set; } - public ICollection Models { get; set; } + public ICollection ServiceProfiles { get; set; } public ICollection Plugins { get; set; } public ICollection Skills { get; set; } public ICollection Agents { get; set; } diff --git a/src/modules/Elsa.Agents.Core/Services/KernelFactory.cs b/src/modules/Elsa.Agents.Core/Services/KernelFactory.cs index 0176b354a..c8f1185c4 100644 --- a/src/modules/Elsa.Agents.Core/Services/KernelFactory.cs +++ b/src/modules/Elsa.Agents.Core/Services/KernelFactory.cs @@ -28,9 +28,9 @@ public class KernelFactory(KernelConfig kernelConfig, IServiceProvider servicePr private void AddModels(IKernelBuilder builder, AgentConfig agentConfig) { - foreach (string modelName in agentConfig.Models) + foreach (string modelName in agentConfig.ServiceProfiles) { - if (!kernelConfig.Models.TryGetValue(modelName, out var model)) + if (!kernelConfig.ServiceProfiles.TryGetValue(modelName, out var model)) { logger.LogWarning($"Model {modelName} not found"); continue; @@ -54,9 +54,9 @@ public class KernelFactory(KernelConfig kernelConfig, IServiceProvider servicePr } } - private void AddServices(IKernelBuilder builder, ModelConfig model) + private void AddServices(IKernelBuilder builder, ServiceProfileConfig serviceProfile) { - foreach (var service in model.Services) + foreach (var service in serviceProfile.Services) { switch (service.Type) {