21 instantiations of RequiredChatToolMode
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatToolMode.cs (2)
57
public static RequiredChatToolMode RequireAny { get; } =
new
(requiredFunctionName: null);
65
public static RequiredChatToolMode RequireSpecific(string functionName) =>
new
(functionName);
Microsoft.Extensions.AI.Abstractions.Tests (19)
ChatCompletion\ChatToolModeTests.cs (19)
25
Assert.False(ChatToolMode.Auto.Equals(new
RequiredChatToolMode
(null)));
26
Assert.False(ChatToolMode.Auto.Equals(new
RequiredChatToolMode
("func")));
32
Assert.False(ChatToolMode.None.Equals(new
RequiredChatToolMode
(null)));
33
Assert.False(ChatToolMode.None.Equals(new
RequiredChatToolMode
("func")));
39
Assert.False(ChatToolMode.RequireAny.Equals(new
RequiredChatToolMode
("func")));
41
Assert.True(ChatToolMode.RequireAny.Equals(new
RequiredChatToolMode
(null)));
42
Assert.Equal(ChatToolMode.RequireAny.GetHashCode(), new
RequiredChatToolMode
(null).GetHashCode());
45
Assert.True(new
RequiredChatToolMode
("func").Equals(new
RequiredChatToolMode
("func")));
46
Assert.Equal(new
RequiredChatToolMode
("func").GetHashCode(), new
RequiredChatToolMode
("func").GetHashCode());
48
Assert.False(new
RequiredChatToolMode
("func1").Equals(new
RequiredChatToolMode
("func2")));
49
Assert.NotEqual(new
RequiredChatToolMode
("func1").GetHashCode(), new
RequiredChatToolMode
("func2").GetHashCode()); // technically not guaranteed
51
Assert.False(new
RequiredChatToolMode
("func1").Equals(new
RequiredChatToolMode
("FUNC1")));
52
Assert.NotEqual(new
RequiredChatToolMode
("func1").GetHashCode(), new
RequiredChatToolMode
("FUNC1").GetHashCode()); // technically not guaranteed
12 references to RequiredChatToolMode
Microsoft.Extensions.AI (1)
ChatCompletion\FunctionInvokingChatClient.cs (1)
1016
else if (options.ToolMode is
RequiredChatToolMode
)
Microsoft.Extensions.AI.Abstractions (7)
ChatCompletion\ChatToolMode.cs (4)
18
[JsonDerivedType(typeof(
RequiredChatToolMode
), typeDiscriminator: "required")]
57
public static
RequiredChatToolMode
RequireAny { get; } = new(requiredFunctionName: null);
64
/// <returns>An instance of <see cref="
RequiredChatToolMode
"/> for the specified function name.</returns>
65
public static
RequiredChatToolMode
RequireSpecific(string functionName) => new(functionName);
ChatCompletion\RequiredChatToolMode.cs (3)
26
/// Initializes a new instance of the <see cref="
RequiredChatToolMode
"/> class that requires a specific tool to be called.
50
obj is
RequiredChatToolMode
other &&
56
typeof(
RequiredChatToolMode
).GetHashCode();
Microsoft.Extensions.AI.OpenAI (4)
OpenAIChatClient.cs (1)
675
case
RequiredChatToolMode
required:
OpenAIRealtimeClientSession.cs (2)
709
RequiredChatToolMode
r when r.RequiredFunctionName is not null =>
711
RequiredChatToolMode
=> Sdk.RealtimeDefaultToolChoice.Required,
OpenAIResponsesChatClient.cs (1)
1088
case
RequiredChatToolMode
required: