RoleDialogModel.From
This commit is contained in:
parent
5d78e83e7c
commit
a18d1ea5aa
|
|
@ -67,4 +67,21 @@ public class RoleDialogModel : ITrackableMessage
|
|||
return $"{Role}: {Content}";
|
||||
}
|
||||
}
|
||||
|
||||
public static RoleDialogModel From(RoleDialogModel source,
|
||||
string? role = null,
|
||||
string? content = null)
|
||||
{
|
||||
return new RoleDialogModel(role ?? source.Role, content ?? source.Content)
|
||||
{
|
||||
CurrentAgentId = source.CurrentAgentId,
|
||||
MessageId = source.MessageId,
|
||||
FunctionArgs = source.FunctionArgs,
|
||||
FunctionName = source.FunctionName,
|
||||
RichContent = source.RichContent,
|
||||
StopCompletion = source.StopCompletion,
|
||||
Instruction = source.Instruction,
|
||||
Data = source.Data
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,24 +55,16 @@ public partial class RoutingService
|
|||
var responseTemplate = await templateService.RenderFunctionResponse(agent.Id, message);
|
||||
if (!string.IsNullOrEmpty(responseTemplate))
|
||||
{
|
||||
dialogs.Add(new RoleDialogModel(AgentRole.Assistant, responseTemplate)
|
||||
{
|
||||
CurrentAgentId = agent.Id,
|
||||
MessageId = message.MessageId,
|
||||
FunctionArgs = message.FunctionArgs,
|
||||
FunctionName = message.FunctionName
|
||||
});
|
||||
dialogs.Add(RoleDialogModel.From(message,
|
||||
role: AgentRole.Assistant,
|
||||
content: responseTemplate));
|
||||
}
|
||||
else
|
||||
{
|
||||
// Save to memory dialogs
|
||||
dialogs.Add(new RoleDialogModel(AgentRole.Function, message.Content)
|
||||
{
|
||||
CurrentAgentId = agent.Id,
|
||||
MessageId = message.MessageId,
|
||||
FunctionArgs = message.FunctionArgs,
|
||||
FunctionName = message.FunctionName
|
||||
});
|
||||
dialogs.Add(RoleDialogModel.From(message,
|
||||
role: AgentRole.Function,
|
||||
content: message.Content));
|
||||
|
||||
// Send to LLM
|
||||
await InvokeAgent(agent.Id, dialogs);
|
||||
|
|
@ -80,14 +72,9 @@ public partial class RoutingService
|
|||
}
|
||||
else
|
||||
{
|
||||
dialogs.Add(new RoleDialogModel(AgentRole.Assistant, message.Content)
|
||||
{
|
||||
CurrentAgentId = agent.Id,
|
||||
MessageId = message.MessageId,
|
||||
FunctionArgs = message.FunctionArgs,
|
||||
FunctionName = message.FunctionName,
|
||||
StopCompletion = true
|
||||
});
|
||||
dialogs.Add(RoleDialogModel.From(message,
|
||||
role: AgentRole.Assistant,
|
||||
content: message.Content));
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
|
||||
<UserSecretsId>4fb8c9df-7975-4926-ba73-46c8ca440691</UserSecretsId>
|
||||
<GeneratePackageOnBuild>False</GeneratePackageOnBuild>
|
||||
</PropertyGroup>
|
||||
|
|
|
|||
Loading…
Reference in a new issue