1 instantiation of AIToolRankingInfo
Microsoft.Extensions.AI (1)
ToolReduction\EmbeddingToolReductionStrategy.cs (1)
256
toolRankingInfo.Span[toolIndex] = new
AIToolRankingInfo
(tool, originalIndex: i);
16 references to AIToolRankingInfo
Microsoft.Extensions.AI (16)
ToolReduction\EmbeddingToolReductionStrategy.cs (16)
177
var toolRankingInfoArray = ArrayPool<
AIToolRankingInfo
>.Shared.Rent(tools.Count);
211
optionalTools.Span.Sort(
AIToolRankingInfo
.CompareByDescendingSimilarityScore);
214
topTools.Span.Sort(
AIToolRankingInfo
.CompareByOriginalIndex);
225
static List<AITool> ToToolList(ReadOnlySpan<
AIToolRankingInfo
> toolInfo)
228
foreach (
var
info in toolInfo)
238
ArrayPool<
AIToolRankingInfo
>.Shared.Return(toolRankingInfoArray);
242
private (Memory<
AIToolRankingInfo
> RequiredTools, Memory<
AIToolRankingInfo
> OptionalTools) PartitionToolRankings(
243
Memory<
AIToolRankingInfo
> toolRankingInfo, IList<AITool> tools, ChatToolMode? toolMode)
264
private async Task ComputeSimilarityScoresAsync(Memory<
AIToolRankingInfo
> toolInfo, Embedding<float> queryEmbedding, CancellationToken cancellationToken)
271
ref
var
info = ref toolInfo.Span[i];
307
ref
var
info = ref toolInfo.Span[toolInfoIndex];
315
public static readonly Comparer<
AIToolRankingInfo
> CompareByDescendingSimilarityScore
316
= Comparer<
AIToolRankingInfo
>.Create(static (a, b) =>
324
public static readonly Comparer<
AIToolRankingInfo
> CompareByOriginalIndex
325
= Comparer<
AIToolRankingInfo
>.Create(static (a, b) => a.OriginalIndex.CompareTo(b.OriginalIndex));