autogen/skills/SemanticFunctionConfig.cs

36 lines
1.5 KiB
C#
Raw Normal View History

2023-07-18 09:06:39 -07:00
<<<<<<< HEAD
2023-06-09 17:10:41 +02:00
namespace skills;
2023-07-18 09:06:39 -07:00
=======
namespace Microsoft.SKDevTeam;
2023-07-18 09:06:39 -07:00
>>>>>>> elsa3new
2023-06-09 21:05:01 +02:00
2023-06-09 17:10:41 +02:00
public class SemanticFunctionConfig
{
public string PromptTemplate { get; set; }
public string Name { get; set; }
public string SkillName { get; set; }
public string Description { get; set; }
public int MaxTokens { get; set; }
public double Temperature { get; set; }
public double TopP { get; set; }
public double PPenalty { get; set; }
public double FPenalty { get; set; }
public static SemanticFunctionConfig ForSkillAndFunction(string skillName, string functionName) =>
2023-06-09 21:05:01 +02:00
(skillName, functionName) switch
{
2023-07-18 09:06:39 -07:00
<<<<<<< HEAD
2023-06-09 21:05:01 +02:00
(nameof(PM), nameof(PM.BootstrapProject)) => PM.BootstrapProject,
(nameof(PM), nameof(PM.Readme)) => PM.Readme,
(nameof(DevLead), nameof(DevLead.Plan)) => DevLead.Plan,
2023-07-18 09:06:39 -07:00
=======
(nameof(Chat), nameof(Chat.ChatCompletion)) => Chat.ChatCompletion,
2023-06-09 21:05:01 +02:00
(nameof(PM), nameof(PM.BootstrapProject)) => PM.BootstrapProject,
(nameof(PM), nameof(PM.Readme)) => PM.Readme,
(nameof(DevLead), nameof(DevLead.Plan)) => DevLead.Plan,
2023-07-14 14:24:24 -07:00
(nameof(CodeExplainer), nameof(CodeExplainer.Explain)) => CodeExplainer.Explain,
2023-07-18 09:06:39 -07:00
>>>>>>> elsa3new
2023-06-09 21:05:01 +02:00
(nameof(Developer), nameof(Developer.Implement)) => Developer.Implement,
(nameof(Developer), nameof(Developer.Improve)) => Developer.Improve,
2023-06-09 21:05:01 +02:00
_ => throw new ArgumentException($"Unable to find {skillName}.{functionName}")
};
2023-06-09 17:10:41 +02:00
}