自从ChatGPT大火以来,针对OpenaAI提供的API接口,封装的SDK库非常多。
之前也推荐过几个.Net版本,今天推荐下OpenAI官方提供的.NET 库!
01 项目简介
openai-dotnet是OpenAI 官方提供的 .NET库,用于方便.NET应用程序中访问 OpenAI REST API。
该项目的关键特点和功能:
1、快速开发:该库使得开发者在 .NET环境中快速调用 OpenAI 的各种功能,如聊天补全、文本嵌入、图像生成、音频转录等。
2、OpenAPI 规范:库是根据 OpenAI 的 OpenAPI 规范生成的,并且与 Microsoft 合作开发。
3、使用简单:通过NuGet包管理器可以很容易地将这个库添加到你的 .NET 项目中。
4、支持异步API:提供了同步和异步两种方法来调用API ,方便开发者根据需要选择使用。
5、流式传输:支持流式传输 API 响应,可以实时获取部分生成的结果,而不必等待整个响应生成完毕。
6、工具和函数调用:支持在聊天补全中使用工具和函数调用,使模型能够根据需要调用外部函数来获取信息。
7、Azure OpenAI 集成:暂未实现,但不久将来将支持与 Azure OpenAI 服务的集成。
8、独立命名空间:每一个功能都有独立的命名空间。
02 使用方法
1、安装依赖
dotnet add package OpenAI --prerelease
2、快速使用
using OpenAI.Chat;
ChatClient client = new(model: "gpt-4o", Environment.GetEnvironmentVariable("OPENAI_API_KEY"));
ChatCompletion completion = client.CompleteChat("请自我介绍下!");
Console.WriteLine($"[ASSISTANT]: {completion}");
3、流媒体聊天
CollectionResult<StreamingChatCompletionUpdate> updates
= client.CompleteChatStreaming("Say 'this is a test.'");
Console.WriteLine($"[ASSISTANT]:");
foreach (StreamingChatCompletionUpdate update in updates)
{
foreach (ChatMessageContentPart updatePart in update.ContentUpdate)
{
Console.Write(updatePart);
}
}
**更多的功能使用,**如:使用工具和函数调用、生成图像、转录音频、使用具有检索增强生成(RAG)功能的助手、使用流媒体和GPT-4o视觉与助手等,可以详细查阅文档。
03 项目地址
https://github.com/openai/openai-dotnet
- End -
推荐阅读
让ChatGPT帮我写SQL
一个.Net版本的ChatGPT SDK
基于.Net开发的ChatGPT客户端,兼容Windows、IOS、安卓、MacOS、Linux
盘点6个.NetCore+Vue前后端分离的开源项目
自学编程的几点个人心得与经历体会!