10 types derived from AITool
Microsoft.Extensions.AI.Abstractions (6)
Microsoft.Extensions.AI.Abstractions.Tests (1)
Microsoft.Extensions.AI.Integration.Tests (1)
Microsoft.Extensions.AI.OpenAI (1)
Microsoft.Extensions.AI.OpenAI.Tests (1)
132 references to AITool
Microsoft.Extensions.AI (39)
ChatCompletion\FunctionInvokingChatClient.cs (20)
228public IList<AITool>? AdditionalTools { get; set; }
248/// <see cref="AITool"/>s that the <see cref="FunctionInvokingChatClient"/> is aware of (for example, because they're in
289(Dictionary<string, AITool>? toolMap, bool anyToolsRequireApproval) = CreateToolsMap(AdditionalTools, options?.Tools); // all available tools, indexed by name
422AITool[]? approvalRequiredFunctions = null; // available tools that require approval
430(Dictionary<string, AITool>? toolMap, bool anyToolsRequireApproval) = CreateToolsMap(AdditionalTools, options?.Tools); // all available tools, indexed by name
529(options?.Tools ?? Enumerable.Empty<AITool>())
530.Concat(AdditionalTools ?? Enumerable.Empty<AITool>())
728private static (Dictionary<string, AITool>? ToolMap, bool AnyRequireApproval) CreateToolsMap(params ReadOnlySpan<IList<AITool>?> toolLists)
730Dictionary<string, AITool>? map = null;
740AITool tool = toolList[i];
830private bool ShouldTerminateLoopBasedOnHandleableFunctions(List<FunctionCallContent>? functionCalls, Dictionary<string, AITool>? toolMap)
850if (toolMap.TryGetValue(fcc.Name, out var tool))
888Dictionary<string, AITool>? toolMap, List<FunctionCallContent> functionCallContents, int iteration, int consecutiveErrorCount,
1016Dictionary<string, AITool>? toolMap, List<FunctionCallContent> callContents,
1023!toolMap.TryGetValue(callContent.Name, out AITool? tool) ||
1503AITool[] approvalRequiredFunctions,
1519foreach (var arf in approvalRequiredFunctions)
1562Dictionary<string, AITool> toolMap)
1635Dictionary<string, AITool>? toolMap,
Microsoft.Extensions.AI.Abstractions (13)
Microsoft.Extensions.AI.Abstractions.Tests (4)
Microsoft.Extensions.AI.Evaluation.Quality (25)
Microsoft.Extensions.AI.Integration.Tests (18)
Microsoft.Extensions.AI.OpenAI (21)
Microsoft.Extensions.AI.OpenAI.Tests (5)
Microsoft.Extensions.AI.Tests (7)