BotSharp/src/Infrastructure/BotSharp.Abstraction/Conversations/IConversationCompletionHook.cs

25 lines
850 B
C#
Raw Normal View History

2023-07-19 12:08:40 +00:00
using BotSharp.Abstraction.Conversations.Models;
using BotSharp.Abstraction.MLTasks;
2023-07-19 12:08:40 +00:00
namespace BotSharp.Abstraction.Conversations;
public interface IConversationCompletionHook
{
2023-07-19 22:30:23 +00:00
Agent Agent { get; }
IConversationCompletionHook SetAgent(Agent agent);
2023-07-19 22:30:23 +00:00
Conversation Conversation { get; }
IConversationCompletionHook SetConversation(Conversation conversation);
2023-07-19 22:30:23 +00:00
List<RoleDialogModel> Dialogs { get; }
IConversationCompletionHook SetDialogs(List<RoleDialogModel> dialogs);
IChatCompletion ChatCompletion { get; }
IConversationCompletionHook SetChatCompletion(IChatCompletion chatCompletion);
2023-08-09 21:49:55 +00:00
2023-08-10 22:17:55 +00:00
Task OnStateLoaded(ConversationState state, Action<Agent>? onAgentSwitched = null);
2023-07-19 22:30:23 +00:00
Task BeforeCompletion();
2023-07-30 18:22:07 +00:00
Task OnFunctionExecuting(string name, string args);
Task AfterCompletion(RoleDialogModel message);
2023-07-19 12:08:40 +00:00
}