7 types derived from AITool
Microsoft.Extensions.AI.Abstractions (5)
Microsoft.Extensions.AI.Abstractions.Tests (1)
Microsoft.Extensions.AI.OpenAI (1)
87 references to AITool
Microsoft.Extensions.AI (20)
ChatCompletion\FunctionInvokingChatClient.cs (20)
235public IList<AITool>? AdditionalTools { get; set; }
255/// <see cref="AITool"/>s that the <see cref="FunctionInvokingChatClient"/> is aware of (for example, because they're in
295(Dictionary<string, AITool>? toolMap, bool anyToolsRequireApproval) = CreateToolsMap(AdditionalTools, options?.Tools); // all available tools, indexed by name
427AITool[]? approvalRequiredFunctions = null; // available tools that require approval
435(Dictionary<string, AITool>? toolMap, bool anyToolsRequireApproval) = CreateToolsMap(AdditionalTools, options?.Tools); // all available tools, indexed by name
534(options?.Tools ?? Enumerable.Empty<AITool>())
535.Concat(AdditionalTools ?? Enumerable.Empty<AITool>())
725private static (Dictionary<string, AITool>? ToolMap, bool AnyRequireApproval) CreateToolsMap(params ReadOnlySpan<IList<AITool>?> toolLists)
727Dictionary<string, AITool>? map = null;
737AITool tool = toolList[i];
814private bool ShouldTerminateLoopBasedOnHandleableFunctions(List<FunctionCallContent>? functionCalls, Dictionary<string, AITool>? toolMap)
834if (toolMap.TryGetValue(fcc.Name, out var tool))
872Dictionary<string, AITool>? toolMap, List<FunctionCallContent> functionCallContents, int iteration, int consecutiveErrorCount,
1000Dictionary<string, AITool>? toolMap, List<FunctionCallContent> callContents,
1007!toolMap.TryGetValue(callContent.Name, out AITool? tool) ||
1472AITool[] approvalRequiredFunctions,
1488foreach (var arf in approvalRequiredFunctions)
1531Dictionary<string, AITool> toolMap)
1604Dictionary<string, AITool>? toolMap,
Microsoft.Extensions.AI.Abstractions (12)
Microsoft.Extensions.AI.Abstractions.Tests (4)
Microsoft.Extensions.AI.AzureAIInference (1)
Microsoft.Extensions.AI.Evaluation.Quality (25)
Microsoft.Extensions.AI.Integration.Tests (1)
Microsoft.Extensions.AI.OpenAI (15)
Microsoft.Extensions.AI.OpenAI.Tests (4)
Microsoft.Extensions.AI.Tests (5)