2023-07-19 12:08:40 +00:00
|
|
|
using BotSharp.Abstraction.Conversations.Models;
|
2023-07-21 01:55:40 +00:00
|
|
|
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; }
|
2023-07-21 01:55:40 +00:00
|
|
|
IConversationCompletionHook SetAgent(Agent agent);
|
|
|
|
|
|
2023-07-19 22:30:23 +00:00
|
|
|
Conversation Conversation { get; }
|
2023-07-21 01:55:40 +00:00
|
|
|
IConversationCompletionHook SetConversation(Conversation conversation);
|
|
|
|
|
|
2023-07-19 22:30:23 +00:00
|
|
|
List<RoleDialogModel> Dialogs { get; }
|
2023-07-21 01:55:40 +00:00
|
|
|
IConversationCompletionHook SetDialogs(List<RoleDialogModel> dialogs);
|
|
|
|
|
|
|
|
|
|
IChatCompletion ChatCompletion { get; }
|
|
|
|
|
IConversationCompletionHook SetChatCompletion(IChatCompletion chatCompletion);
|
|
|
|
|
|
2023-07-19 22:30:23 +00:00
|
|
|
Task BeforeCompletion();
|
2023-07-27 15:07:39 +00:00
|
|
|
Task AfterCompletion(RoleDialogModel message);
|
2023-07-19 12:08:40 +00:00
|
|
|
}
|