namespace BotSharp.Abstraction.Loggers; /// /// Model content generating hook, it can be used for logging, metrics and tracing. /// public interface IContentGeneratingHook { /// /// Before content generating. /// /// Task BeforeGenerating(Agent agent, List conversations) => Task.CompletedTask; /// /// Before function is invoked /// /// Task BeforeFunctionInvoked(RoleDialogModel message, TokenStatsModel tokenStats) => Task.CompletedTask; /// /// After function is invoked /// /// Task AfterFunctionInvoked(RoleDialogModel message, TokenStatsModel tokenStats) => Task.CompletedTask; /// /// After content generated. /// /// Task AfterGenerated(RoleDialogModel message, TokenStatsModel tokenStats) => Task.CompletedTask; }