openai-dotnet:OpenAI官方提供的.NET SDK库!

自从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前后端分离的开源项目

自学编程的几点个人心得与经历体会!

相关推荐
冬天vs不冷17 分钟前
Java基础(九):Object核心类深度剖析
java·开发语言·python
TS的美梦18 分钟前
【1:1复刻R版】python版火山图函数一键出图
开发语言·python·r语言·scanpy·火山图
CF14年老兵29 分钟前
Python万物皆对象:从懵懂到顿悟的奇妙之旅
后端·python·trae
这里有鱼汤32 分钟前
发现个用《道德经》+价值投资大咖的智慧,做A股的AI诊股神器,居然还开源了
python
陈天伟教授1 小时前
(二)Python + 地球信息科学与技术 (GeoICT)=?
开发语言·python
之歆2 小时前
大模型微调分布式训练-大模型压缩训练(知识蒸馏)-大模型推理部署(分布式推理与量化部署)-大模型评估测试(OpenCompass)
人工智能·笔记·python
人工干智能2 小时前
pygame的帧处理中,涉及键盘的有`pg.event.get()`与`pg.key.get_pressed()` ,二者有什么区别与联系?
python·游戏·计算机外设·pygame
R-G-B2 小时前
【P18 3-10】OpenCV Python—— 鼠标控制,鼠标回调函数(鼠标移动、按下、。。。),鼠标绘制基本图形(直线、圆、矩形)
python·opencv·计算机外设·鼠标回调函数·鼠标控制·鼠标移动·鼠标绘制图形
IT古董5 小时前
第四章:大模型(LLM)】06.langchain原理-(3)LangChain Prompt 用法
java·人工智能·python
fantasy_arch9 小时前
pytorch例子计算两张图相似度
人工智能·pytorch·python