ManagedCode.OpenAI
0.0.5
Prefix Reserved
See the version list below for details.
dotnet add package ManagedCode.OpenAI --version 0.0.5
NuGet\Install-Package ManagedCode.OpenAI -Version 0.0.5
<PackageReference Include="ManagedCode.OpenAI" Version="0.0.5" />
paket add ManagedCode.OpenAI --version 0.0.5
#r "nuget: ManagedCode.OpenAI, 0.0.5"
// Install ManagedCode.OpenAI as a Cake Addin #addin nuget:?package=ManagedCode.OpenAI&version=0.0.5 // Install ManagedCode.OpenAI as a Cake Tool #tool nuget:?package=ManagedCode.OpenAI&version=0.0.5
OpenAI
This is an unofficial C# library for the OpenAI API. As there are no official libraries available, we have created our own to help C# developers interact with the API easily.
Installation
To install the ManagedCode.OpenAI library from NuGet, you can use the following methods:
Package Manager
Open the Package Manager Console in Visual Studio and run the following command:
Install-Package ManagedCode.OpenAI
.NET CLI
You can also use the .NET CLI to install the package. Open a terminal/command prompt and run the following command:
dotnet add package ManagedCode.OpenAI
Usage
Initializing the client You can initialize the client in two ways:
var client1 = GptClient.Builder("#API_KEY#")
.WithOrganization("#ORGANIZATION#")
.Build();
var client2 = GptClient.Builder("#API_KEY#")
.WithOrganization("#ORGANIZATION#")
.Configure(x => x.SetDefaultModel(GptModel.Ada))
.Build();
or using DI
builder.Services.AddOpenAI("#API_KEY#");
public class MyClass
{
public MyClass(IGptClient client)
{
var chat = client.OpenChat();
}
}
Ask chat gpt
var client = GptClient.Builder("#API_KEY#")
.WithOrganization("#ORGANIZATION#")
.Build();
var chat = client.OpenChat();
var answer = await chat.AskAsync("2+2?");
Console.WriteLine($"Answer: {answer.Data.Content}");
Generating an image URL
var client = new GptClient("#API_KEY#");
var img = await client.ImageClient
.GenerateImage("Big man")
.AsUrl().ExecuteAsync();
var url = img.Content;
Console.WriteLine(url);
Generating an image URL with editing
var client = new GptClient("#API_KEY#");
var imgBytes = new byte[] { };
var maskBase64 = "#CONTENT#";
var img = await client.ImageClient
.EditImage("Change color to red", x => x.FromBytes(imgBytes))
.SetImageMask(x => x.FromBase64(maskBase64))
.AsUrl().ExecuteAsync();
// Edited img URL
Console.WriteLine(img.Content);
Editing an image using a mask
var client = new GptClient("#API_KEY#");
var imgBytes = new byte[] { };
var imgCollection = await client.ImageClient
.VariationImage(x => x.FromBytes(imgBytes))
.AsBase64String()
.ExecuteMultipleAsync(5);
foreach (var imageBase64 in imgCollection.Content)
Console.WriteLine(imageBase64);
Generating multiple image variations as base64 strings
Create multiple variations of an image in base64 string format with 5 results:
var client = new GptClient("#API_KEY#");
var imgBytes = new byte[] { };
var imgCollection = await client.ImageClient
.VariationImage(x => x.FromBytes(imgBytes))
.AsBase64String()
.ExecuteMultipleAsync(5);
foreach (var imageBase64 in imgCollection.Content)
Console.WriteLine(imageBase64);
Contributing
We welcome contributions to this project. Please submit a pull request or create an issue if you'd like to help improve this library.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
NuGet packages (1)
Showing the top 1 NuGet packages that depend on ManagedCode.OpenAI:
Package | Downloads |
---|---|
ManagedCode.OpenAI.Azure
OpenAI |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.0.11-alpha | 530 | 10/3/2023 |
0.0.10-alpha | 435 | 7/24/2023 |
0.0.9-alpha | 151 | 7/24/2023 |
0.0.8-alpha | 101 | 7/23/2023 |
0.0.7-alpha | 97 | 7/21/2023 |
0.0.6-alpha | 89 | 7/21/2023 |
0.0.5 | 485 | 7/7/2023 |
0.0.4 | 324 | 4/6/2023 |
0.0.3 | 194 | 4/6/2023 |
0.0.2 | 256 | 4/3/2023 |
0.0.1 | 227 | 3/19/2023 |