5 instantiations of FunctionInvocationContext
Microsoft.Extensions.AI (2)
ChatCompletion\FunctionInvokingChatClient.cs (1)
1178
(callContent, aiFunction, callIndex) => new
FunctionInvocationContext
Realtime\FunctionInvokingRealtimeClientSession.cs (1)
331
(callContent, aiFunction, _) => new
FunctionInvocationContext
Microsoft.Extensions.AI.Tests (3)
ChatCompletion\FunctionInvocationContextTests.cs (3)
15
FunctionInvocationContext ctx =
new
();
36
FunctionInvocationContext ctx =
new
();
45
FunctionInvocationContext ctx =
new
();
44 references to FunctionInvocationContext
Microsoft.Extensions.AI (27)
ChatCompletion\FunctionInvocationContext.cs (3)
16
/// <see cref="
FunctionInvocationContext
"/> start with this as the target function.
18
private static readonly AIFunction _nopFunction = AIFunctionFactory.Create(() => { }, nameof(
FunctionInvocationContext
));
20
/// <summary>Initializes a new instance of the <see cref="
FunctionInvocationContext
"/> class.</summary>
ChatCompletion\FunctionInvokingChatClient.cs (6)
69
/// <summary>The <see cref="
FunctionInvocationContext
"/> for the current function invocation.</summary>
70
private static readonly AsyncLocal<
FunctionInvocationContext
?> _currentContext = new();
107
/// Gets or sets the <see cref="
FunctionInvocationContext
"/> for the current function invocation.
112
public static
FunctionInvocationContext
? CurrentContext
274
public Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>>? FunctionInvoker { get; set; }
1319
protected virtual ValueTask<object?> InvokeFunctionAsync(
FunctionInvocationContext
context, CancellationToken cancellationToken)
Common\FunctionInvocationProcessor.cs (9)
25
private readonly Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>> _invokeFunction;
42
Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>> invokeFunction,
57
/// <param name="createContext">Delegate to create a <see cref="
FunctionInvocationContext
"/> for each function call.</param>
66
Func<FunctionCallContent, AIFunction, int,
FunctionInvocationContext
> createContext,
67
Action<
FunctionInvocationContext
?> setCurrentContext,
110
Func<FunctionCallContent, AIFunction, int,
FunctionInvocationContext
> createContext,
111
Action<
FunctionInvocationContext
?> setCurrentContext,
129
var
context = createContext(callContent, aiFunction, callIndex);
155
private async Task<object?> InstrumentedInvokeFunctionAsync(
FunctionInvocationContext
context, CancellationToken cancellationToken)
Realtime\FunctionInvokingRealtimeClient.cs (3)
48
/// Gets the <see cref="
FunctionInvocationContext
"/> for the current function invocation.
53
public static
FunctionInvocationContext
? CurrentContext => FunctionInvokingRealtimeClientSession.CurrentContext;
122
public Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>>? FunctionInvoker { get; set; }
Realtime\FunctionInvokingRealtimeClientSession.cs (6)
57
/// <summary>The <see cref="
FunctionInvocationContext
"/> for the current function invocation.</summary>
58
private static readonly AsyncLocal<
FunctionInvocationContext
?> _currentContext = new();
99
/// Gets or sets the <see cref="
FunctionInvocationContext
"/> for the current function invocation.
104
internal static
FunctionInvocationContext
? CurrentContext
122
private Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>>? FunctionInvoker => _client.FunctionInvoker;
407
private ValueTask<object?> InvokeFunctionAsync(
FunctionInvocationContext
context, CancellationToken cancellationToken)
Microsoft.Extensions.AI.Tests (17)
ChatCompletion\FunctionInvocationContextTests.cs (4)
15
FunctionInvocationContext
ctx = new();
28
Assert.Equal(nameof(
FunctionInvocationContext
), ctx.Function.Name);
36
FunctionInvocationContext
ctx = new();
45
FunctionInvocationContext
ctx = new();
ChatCompletion\FunctionInvokingChatClientTests.cs (13)
68
Func<
FunctionInvocationContext
, CancellationToken, ValueTask<object?>> invoker = (ctx, ct) => new ValueTask<object?>("test");
1268
var invocationContexts = new List<
FunctionInvocationContext
>();
1274
var
context = FunctionInvokingChatClient.CurrentContext!;
1326
void AssertInvocationContext(
FunctionInvocationContext
context, int iteration, bool terminate)
2366
var
context = FunctionInvokingChatClient.CurrentContext!;
2460
var
context = FunctionInvokingChatClient.CurrentContext!;
2562
var
context = FunctionInvokingChatClient.CurrentContext!;
2666
var
context = FunctionInvokingChatClient.CurrentContext!;
2770
var
context = FunctionInvokingChatClient.CurrentContext!;
2946
var
context = FunctionInvokingChatClient.CurrentContext!;
3047
var
context = FunctionInvokingChatClient.CurrentContext!;
3150
var
context = FunctionInvokingChatClient.CurrentContext!;
3315
var
context = FunctionInvokingChatClient.CurrentContext!;