如何实现基于ChatGPT API的C#接入?( 二 )


我觉得他们都是很不错的,都是基于的API格式进行了一定程度的面向对象的包装,使得我们基于C#开发起来更方便 。
例如我们基于

如何实现基于ChatGPT API的C#接入?

文章插图
来查看使用代码,它的介绍也比较详细,基本上覆盖到了各个方面 。
我们可以模仿来生成自己的代码即可,如下所示 。
/// /// 基于OpenAI-DotNet的使用/// public class Test2{public static async Task ExcuteCode(){var api = new OpenAIClient(new OpenAIAuthentication(Constants.ApiKey));var result = await api.CompletionsEndpoint.CreateCompletionAsync("读取图片文件的展示到窗体的C#代码", null, null, 1000, 0.1);Log.Information(result.ToJson());}
运行效果,可以看到输出的结果 。
对于图片的生成和处理,我们也可以按照类似的API进行调用接口,如下是一段寻找图片的代码 。
var results = await api.ImagesEndPoint.GenerateImageAsync("中国布达拉宫的全景图片", 1, ImageSize.Large);foreach (var item in results){Log.Information(item);
为了验证图片的AI处理,我们生成两张正方形的图片,图片右下角扣掉一块空白的图片,图片格式使用PNG格式,然后调用如下代码进行替换处理 。
【如何实现基于ChatGPT API的C#接入?】var imageAssetPath = "images/休息区.png";var maskAssetPath = "images/休息区2.png";var imageResults = await api.ImagesEndPoint.CreateImageEditAsync(Path.GetFullPath(imageAssetPath), Path.GetFullPath(maskAssetPath), "阳光明媚的室内休息区,有一个鸭子在池塘中", 1, ImageSize.Small);foreach (var item in imageResults){Log.Information(item);}
生成后的图片效果如下所示 。
生成的空白地方,填入一个所需要的区域,红色框是我加上去醒目的 。