diff --git a/sample/Cnblogs.DashScope.Sample/Program.cs b/sample/Cnblogs.DashScope.Sample/Program.cs index c5958f3..8841af4 100644 --- a/sample/Cnblogs.DashScope.Sample/Program.cs +++ b/sample/Cnblogs.DashScope.Sample/Program.cs @@ -56,6 +56,13 @@ case SampleType.MicrosoftExtensionsAiToolCall: await dashScopeClient.ToolCallWithExtensionAsync(); break; + case SampleType.ApplicationCall: + Console.Write("Application Id > "); + var applicationId = Console.ReadLine()!; + Console.Write("Prompt > "); + userInput = Console.ReadLine()!; + await ApplicationCallAsync(applicationId, userInput); + break; } return; @@ -215,3 +222,10 @@ async Task ChatWithMicrosoftExtensions() var serializerOptions = new JsonSerializerOptions(JsonSerializerDefaults.Web) { WriteIndented = true }; Console.WriteLine(JsonSerializer.Serialize(response, serializerOptions)); } + +async Task ApplicationCallAsync(string applicationId, string prompt) +{ + var request = new ApplicationRequest() { Input = new ApplicationInput() { Prompt = prompt } }; + var response = await dashScopeClient.GetApplicationResponseAsync(applicationId, request); + Console.WriteLine(response.Output.Text); +} diff --git a/sample/Cnblogs.DashScope.Sample/SampleType.cs b/sample/Cnblogs.DashScope.Sample/SampleType.cs index 94d119d..feddf79 100644 --- a/sample/Cnblogs.DashScope.Sample/SampleType.cs +++ b/sample/Cnblogs.DashScope.Sample/SampleType.cs @@ -14,5 +14,7 @@ public enum SampleType MicrosoftExtensionsAi, - MicrosoftExtensionsAiToolCall + MicrosoftExtensionsAiToolCall, + + ApplicationCall } diff --git a/sample/Cnblogs.DashScope.Sample/SampleTypeDescriptor.cs b/sample/Cnblogs.DashScope.Sample/SampleTypeDescriptor.cs index e39f284..26988a5 100644 --- a/sample/Cnblogs.DashScope.Sample/SampleTypeDescriptor.cs +++ b/sample/Cnblogs.DashScope.Sample/SampleTypeDescriptor.cs @@ -13,6 +13,7 @@ public static string GetDescription(this SampleType sampleType) SampleType.ChatCompletionWithFiles => "File upload sample using qwen-long", SampleType.MicrosoftExtensionsAi => "Use with Microsoft.Extensions.AI", SampleType.MicrosoftExtensionsAiToolCall => "Use tool call with Microsoft.Extensions.AI interfaces", + SampleType.ApplicationCall => "Call pre-defined application", _ => throw new ArgumentOutOfRangeException(nameof(sampleType), sampleType, "Unsupported sample option") }; } diff --git a/src/Cnblogs.DashScope.Core/ApplicationRequest.cs b/src/Cnblogs.DashScope.Core/ApplicationRequest.cs index ca67ff4..b367d5e 100644 --- a/src/Cnblogs.DashScope.Core/ApplicationRequest.cs +++ b/src/Cnblogs.DashScope.Core/ApplicationRequest.cs @@ -15,7 +15,7 @@ public class ApplicationRequest /// /// Optional configurations. /// - public required ApplicationParameters? Parameters { get; init; } + public ApplicationParameters? Parameters { get; init; } } ///