Table of Contents

Class FunctionBuilder

Namespace
Mythosia.AI.Builders
Assembly
Mythosia.AI.dll

Fluent builder for creating function definitions

public class FunctionBuilder
Inheritance
FunctionBuilder
Inherited Members

Methods

AddEnumParameter(string, string, List<string>, bool, string?)

Adds an enum parameter to the function

public FunctionBuilder AddEnumParameter(string name, string description, List<string> values, bool required = false, string? defaultValue = null)

Parameters

name string
description string
values List<string>
required bool
defaultValue string

Returns

FunctionBuilder

AddParameter(string, string, string, bool, object?)

Adds a parameter to the function

public FunctionBuilder AddParameter(string name, string type, string description, bool required = false, object? defaultValue = null)

Parameters

name string
type string
description string
required bool
defaultValue object

Returns

FunctionBuilder

Build()

Builds the final FunctionDefinition

public FunctionDefinition Build()

Returns

FunctionDefinition

Create(string)

Creates a new FunctionBuilder instance

public static FunctionBuilder Create(string name)

Parameters

name string

Returns

FunctionBuilder

WithAsync(bool)

Allows supporting models and APIs to continue while this function executes. Unsupported providers retain the ordinary blocking tool-call flow.

public FunctionBuilder WithAsync(bool allowAsync = true)

Parameters

allowAsync bool

Returns

FunctionBuilder

WithDescription(string)

Sets the function description

public FunctionBuilder WithDescription(string description)

Parameters

description string

Returns

FunctionBuilder

WithHandler(Func<Dictionary<string, object>, string>)

Sets a synchronous function handler

public FunctionBuilder WithHandler(Func<Dictionary<string, object>, string> handler)

Parameters

handler Func<Dictionary<string, object>, string>

Returns

FunctionBuilder

WithHandler(Func<Dictionary<string, object>, CancellationToken, string>)

Sets a synchronous function handler that receives execution cancellation.

public FunctionBuilder WithHandler(Func<Dictionary<string, object>, CancellationToken, string> handler)

Parameters

handler Func<Dictionary<string, object>, CancellationToken, string>

Returns

FunctionBuilder

WithHandler(Func<Dictionary<string, object>, CancellationToken, Task<string>>)

Sets an asynchronous function handler that receives execution cancellation. Use the token in cancellable operations to stop work when the run is cancelled.

public FunctionBuilder WithHandler(Func<Dictionary<string, object>, CancellationToken, Task<string>> handler)

Parameters

handler Func<Dictionary<string, object>, CancellationToken, Task<string>>

Returns

FunctionBuilder

WithHandler(Func<Dictionary<string, object>, Task<string>>)

Sets the function handler

public FunctionBuilder WithHandler(Func<Dictionary<string, object>, Task<string>> handler)

Parameters

handler Func<Dictionary<string, object>, Task<string>>

Returns

FunctionBuilder