Table of Contents

Method AddToolInvocationFilter

Namespace
LMKit.TextGeneration.Filters
Assembly
LM-Kit.NET.dll

AddToolInvocationFilter(FilterPipeline, Func<ToolInvocationFilterContext, Func<ToolInvocationFilterContext, Task>, Task>)

Adds an inline tool invocation filter using a lambda delegate.

public static FilterPipeline AddToolInvocationFilter(this FilterPipeline pipeline, Func<ToolInvocationFilterContext, Func<ToolInvocationFilterContext, Task>, Task> handler)

Parameters

pipeline FilterPipeline

The pipeline to add the filter to.

handler Func<ToolInvocationFilterContext, Func<ToolInvocationFilterContext, Task>, Task>

The filter handler. Call await next(context) to continue the pipeline.

Returns

FilterPipeline

The pipeline instance for method chaining.

Examples

pipeline.AddToolInvocationFilter(async (ctx, next) =>
{
    Console.WriteLine($"Calling: {ctx.ToolCall.Name}");
    await next(ctx);
    Console.WriteLine($"Result: {ctx.Result?.ResultType}");
});

Exceptions

ArgumentNullException

Thrown when pipeline or handler is null.