openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.1.0-beta.2

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

examples/Chat/Example05_VisionAsync.cs

32lines · modeblame

9f9f2936Jose Arriaga Maldonado2 years ago1using NUnit.Framework;
2using OpenAI.Chat;
3using System;
4using System.Collections.Generic;
5using System.IO;
6using System.Threading.Tasks;
7
8cc6643fJose Arriaga Maldonado2 years ago8namespace OpenAI.Examples;
74848f8dJose Arriaga Maldonado2 years ago9
8cc6643fJose Arriaga Maldonado2 years ago10public partial class ChatExamples
9f9f2936Jose Arriaga Maldonado2 years ago11{
74848f8dJose Arriaga Maldonado2 years ago12[Test]
7a8bc8beJose Arriaga Maldonado1 years ago13public async Task Example05_VisionAsync()
9f9f2936Jose Arriaga Maldonado2 years ago14{
74848f8dJose Arriaga Maldonado2 years ago15ChatClient client = new("gpt-4o", Environment.GetEnvironmentVariable("OPENAI_API_KEY"));
9f9f2936Jose Arriaga Maldonado2 years ago16
8cc6643fJose Arriaga Maldonado2 years ago17string imageFilePath = Path.Combine("Assets", "images_dog_and_cat.png");
18using Stream imageStream = File.OpenRead(imageFilePath);
19BinaryData imageBytes = BinaryData.FromStream(imageStream);
9f9f2936Jose Arriaga Maldonado2 years ago20
31c2ba63Jose Arriaga Maldonado1 years ago21List<ChatMessage> messages =
22[
74848f8dJose Arriaga Maldonado2 years ago23new UserChatMessage(
2ab1a942Jose Arriaga Maldonado1 years ago24ChatMessageContentPart.CreateTextPart("Please describe the following image."),
31c2ba63Jose Arriaga Maldonado1 years ago25ChatMessageContentPart.CreateImagePart(imageBytes, "image/png")),
74848f8dJose Arriaga Maldonado2 years ago26];
9f9f2936Jose Arriaga Maldonado2 years ago27
31c2ba63Jose Arriaga Maldonado1 years ago28ChatCompletion completion = await client.CompleteChatAsync(messages);
9f9f2936Jose Arriaga Maldonado2 years ago29
31c2ba63Jose Arriaga Maldonado1 years ago30Console.WriteLine($"[ASSISTANT]: {completion.Content[0].Text}");
9f9f2936Jose Arriaga Maldonado2 years ago31}
32}