1 instantiation of AIToolRankingInfo
Microsoft.Extensions.AI (1)
ToolReduction\EmbeddingToolReductionStrategy.cs (1)
255
toolRankingInfo.Span[toolIndex] = new
AIToolRankingInfo
(tool, originalIndex: i);
16 references to AIToolRankingInfo
Microsoft.Extensions.AI (16)
ToolReduction\EmbeddingToolReductionStrategy.cs (16)
176
var toolRankingInfoArray = ArrayPool<
AIToolRankingInfo
>.Shared.Rent(tools.Count);
216
Array.Sort(toolRankingInfoArray, index: requiredTools.Length, length: optionalTools.Length,
AIToolRankingInfo
.CompareByDescendingSimilarityScore);
219
Array.Sort(toolRankingInfoArray, index: 0, length: topTools.Length,
AIToolRankingInfo
.CompareByOriginalIndex);
224
static List<AITool> ToToolList(ReadOnlySpan<
AIToolRankingInfo
> toolInfo)
227
foreach (
var
info in toolInfo)
237
ArrayPool<
AIToolRankingInfo
>.Shared.Return(toolRankingInfoArray);
241
private (Memory<
AIToolRankingInfo
> RequiredTools, Memory<
AIToolRankingInfo
> OptionalTools) PartitionToolRankings(
242
Memory<
AIToolRankingInfo
> toolRankingInfo, IList<AITool> tools, ChatToolMode? toolMode)
263
private async Task ComputeSimilarityScoresAsync(Memory<
AIToolRankingInfo
> toolInfo, Embedding<float> queryEmbedding, CancellationToken cancellationToken)
270
ref
var
info = ref toolInfo.Span[i];
306
ref
var
info = ref toolInfo.Span[toolInfoIndex];
314
public static readonly Comparer<
AIToolRankingInfo
> CompareByDescendingSimilarityScore
315
= Comparer<
AIToolRankingInfo
>.Create(static (a, b) =>
323
public static readonly Comparer<
AIToolRankingInfo
> CompareByOriginalIndex
324
= Comparer<
AIToolRankingInfo
>.Create(static (a, b) => a.OriginalIndex.CompareTo(b.OriginalIndex));