AI-Studio/app/MindWork AI Studio/Tools/ToolCallingSystem/ToolDefinition.cs
Peer Hogeterp 4d8d30e15e
Added tool calling support (#731)
Co-authored-by: krut_ni <nils.kruthoff@dlr.de>
Co-authored-by: Thorsten Sommer <SommerEngineering@users.noreply.github.com>
2026-09-04 15:48:07 +02:00

30 lines
1.0 KiB
C#

using AIStudio.Provider;
namespace AIStudio.Tools.ToolCallingSystem;
public sealed class ToolDefinition
{
public int SchemaVersion { get; init; } = 1;
public string Id { get; init; } = string.Empty;
public string ImplementationKey { get; init; } = string.Empty;
public ToolVisibilityDefinition VisibleIn { get; init; } = new();
public ToolSettingsSchema SettingsSchema { get; init; } = new();
public string SystemPromptInstructions { get; init; } = string.Empty;
/// <summary>
/// The lowest provider confidence this tool may be used with, unless an administrator or the
/// user says otherwise.
/// </summary>
/// <remarks>
/// Belongs to the tool, because only the tool knows what it exposes: a web search sends the
/// user's question to a search engine, so it asks for more trust than a calculator would.
/// </remarks>
public ConfidenceLevel MinimumProviderConfidence { get; init; } = ConfidenceLevel.NONE;
public ToolFunctionDefinition Function { get; init; } = new();
}