openai/openai-dotnet
Publicmirrored from https://github.com/openai/openai-dotnetAvailable
examples/Chat/Example02_SimpleChatStreamingAsync.cs
27lines · modeblame
9f9f2936Jose Arriaga Maldonado2 years ago | 1 | using NUnit.Framework; |
| 2 | using OpenAI.Chat; | |
| 3 | using System; | |
| 4 | using System.ClientModel; | |
| 5 | using System.Threading.Tasks; | |
| 6 | | |
8cc6643fJose Arriaga Maldonado2 years ago | 7 | namespace OpenAI.Examples; |
74848f8dJose Arriaga Maldonado2 years ago | 8 | |
8cc6643fJose Arriaga Maldonado2 years ago | 9 | public partial class ChatExamples |
9f9f2936Jose Arriaga Maldonado2 years ago | 10 | { |
74848f8dJose Arriaga Maldonado2 years ago | 11 | [Test] |
8cc6643fJose Arriaga Maldonado2 years ago | 12 | public async Task Example02_SimpleChatStreamingAsync() |
9f9f2936Jose Arriaga Maldonado2 years ago | 13 | { |
7a8bc8beJose Arriaga Maldonado1 years ago | 14 | ChatClient client = new(model: "gpt-4o", apiKey: Environment.GetEnvironmentVariable("OPENAI_API_KEY")); |
9f9f2936Jose Arriaga Maldonado2 years ago | 15 | |
e4af1691Jose Arriaga Maldonado1 years ago | 16 | AsyncCollectionResult<StreamingChatCompletionUpdate> completionUpdates = client.CompleteChatStreamingAsync("Say 'this is a test.'"); |
9f9f2936Jose Arriaga Maldonado2 years ago | 17 | |
31c2ba63Jose Arriaga Maldonado1 years ago | 18 | Console.Write($"[ASSISTANT]: "); |
| 19 | await foreach (StreamingChatCompletionUpdate completionUpdate in completionUpdates) | |
74848f8dJose Arriaga Maldonado2 years ago | 20 | { |
31c2ba63Jose Arriaga Maldonado1 years ago | 21 | if (completionUpdate.ContentUpdate.Count > 0) |
9f9f2936Jose Arriaga Maldonado2 years ago | 22 | { |
31c2ba63Jose Arriaga Maldonado1 years ago | 23 | Console.Write(completionUpdate.ContentUpdate[0].Text); |
9f9f2936Jose Arriaga Maldonado2 years ago | 24 | } |
| 25 | } | |
| 26 | } | |
| 27 | } |