适用于 .NET 稳定的官方OpenAI库
前言
今天给大家分享一个由 OpenAI 官方提供,旨在为 .NET 开发者提供方便的接口来访问 OpenAI 的 REST API。这个项目通过 NuGet 包的形式发布,使得 .NET 应用程序能够轻松地集成和使用 OpenAI 的各种 AI 模型和功能,如文本生成、图像生成、音频转写等。

类库主要特性
- 命名空间组织:该库按 OpenAI REST API 的功能区域组织成不同的命名空间,每个命名空间包含对应的客户端类。
- 异步支持:所有客户端方法都提供同步和异步两种调用方式,方便开发者根据需要进行选择。
- 环境变量和配置文件:推荐通过环境变量或配置文件来管理 API 密钥,以提高安全性。
- 流式传输:支持流式传输聊天完成结果,允许在结果生成过程中就开始处理,减少等待时间。
- 工具调用:允许在聊天完成请求中集成外部工具调用,增强模型的功能和准确性。
- 结构化输出:支持使用 JSON Schema 来约束聊天完成的内容,使输出更加结构化和可控。
- 支持最新模型: OpenAI 的最新旗舰模型,包括 GPT-4o、GPT-4o mini、o1-preview 和 o1-mini,均得到全面支持,确保开发人员能够使用最前沿的 AI 功能。
命名空间组织

安装 NuGet 包体验其功能
安装OpenAI NuGet包既可以体验OpenAI 的各种 AI 模型和功能,如文本生成、图像生成、音频转写等。
dotnet add package OpenAI
以下是在 .NET 应用程序中使用 OpenAI 库的简单概述。以下代码片段演示了如何创建 OpenAI 客户端并使用它来完成聊天交互:
using OpenAI.Chat;
ChatClient client = new(model: "gpt-4o", apiKey: Environment.GetEnvironmentVariable("OPENAI_API_KEY"));
ChatCompletion completion = client.CompleteChat("Say 'this is a test.'");
Console.WriteLine($"[ASSISTANT]: {completion.Content[0].Text}");


项目源码地址
更多项目实用功能和特性欢迎前往项目开源地址查看,别忘了给项目一个Star支持。
优秀项目和框架精选
该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没)。
- GitHub开源地址:https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
- Gitee开源地址:https://gitee.com/ysgdaydayup/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
适用于 .NET 稳定的官方OpenAI库的更多相关文章
- 六轴加速度传感器MPU6050官方DMP库到瑞萨RL78/G13的移植
2015年的电赛已经结束了.赛前接到器件清单的时候,看到带防护圈的多旋翼飞行器赫然在列,又给了一个瑞萨RL78/G13的MCU,于是自然联想到13年的电赛,觉得多半是拿RL78/G13做四旋翼的主控, ...
- 【Qt官方MQTT库的使用,附一个MqttClient例子】
Qt官方MQTT库的使用,附一个MqttClient例子 开发环境:win7 64 + Qt5.9 记录时间:2018年3月11日 00:48:42 联系邮箱: yexiaopeng1992@126. ...
- REST API TO MiniProgram 上线WordPress官方插件库
全新开发的用于 wordpress微信小程序的插件 REST API TO MiniProgram今天上线WordPress官方插件库.这个插件的上一个版本叫:wp-rest-api-for-app, ...
- 基于STM32F4移植W5500官方驱动库ioLibrary_Driver(转)
源: 基于STM32F4移植W5500官方驱动库ioLibrary_Driver 参考: 基于STM32+W5500 的Ethernet和Internet移植 Upgrade W5500 Throug ...
- STM32F407VET6之IAR之ewarm7.80.4工程建立(基于官方固件库1.6版本)
今天把stm32F407的工程之IAR建立完成了,特此记录下. 下载官方固件库,STM32F4xx_DSP_StdPeriph_Lib_V1.6.1,V1.8.0版本的同理.新建以下几个文件 src放 ...
- MySQL 官方测试库
MySQL 官方测试库 github 地址 https://github.com/datacharmer/test_db MySQL 文档地址 https://dev.mysql.com/doc/em ...
- 谷歌官方颜色库 MaterialDesignColor
谷歌官方颜色库 MaterialDesignColor
- 【开源】libserial_protocol:适用于单片机的串口通信协议基础库
借助五一假期,写了一个串口通信协议基础库,虽然写着适用于单片机,但实际上并不限制具体的硬件平台. 特点如下: 不涉及到具体硬件,libserial_protocol 纯软件协议,与具体硬件分离. 内存 ...
- 我的OpenAI库发布了!!!
chatGPT正式发布已经有段时间了,这段时间我也深度体验了chatGPT的魅力. OpenAI除了提供网页版的chatGPT,还通过api的形式提供了很多其它服务,包括文字纠错.图片生成.音频转换等 ...
- WeUI—微信官方UI库
WeUI 为微信 Web 服务量身设计 概述 WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一.包含button.cell ...
随机推荐
- PyTorch视觉模型库torchvision.models介绍
安装pytorch时我们一般都是会一并选择安装自带的视觉模型库 torchvision , 该库不仅有经典的视觉模型结构同时还提供了对应参数的下载功能,可以说torchvision库是十分方便于研究 ...
- 再探 游戏 《 2048 》 —— AI方法—— 缘起、缘灭(1) —— Firefox浏览器下自动运行游戏篇
四年前曾经写过一过博客: 对 游戏 < 2048 > 的一些思考 虽然过去几年了,但是这个游戏一直没有搞懂该怎么使用AI算法来进行求解,这里再次对这个问题进行一些探索. ========= ...
- tf.py_func的一些使用笔记——TensorFlow1.x
tensorflow.py_func是TensorFlow1.x版本下的函数,在TensorFlow.2.x已经不建议使用了,但是依然可以通过tf.compat.v1.py_func的方式来进行调用. ...
- # games101 作业3分析 详解bump mapping
games101 作业3分析 详解bump mapping 代码分析 整体代码结构 其实变化还是不大 主要是引入了vertexshader(什么都没做) 与 fragmentshader(使用了不同的 ...
- 【单调栈+倍增】[P7167 [eJOI2020 Day1] Fountain
[单调栈+倍增][P7167 [eJOI2020 Day1] Fountain 思路 用单调栈处理每个圆盘溢出后流到的第一个位置,然后倍增优化. 代码 #include <bits/stdc++ ...
- .NET 7 + Vue 权限管理系统 小白快速上手
前言 今天给大家推荐一个超实用的开源项目<.NET 7 + Vue 权限管理系统 小白快速上手>,DncZeus的愿景就是做一个.NET 领域小白也能上手的简易.通用的后台权限管理模板系统 ...
- celery僵死导致jumpserver提示 连接WebSocket失败
celery僵死导致jumpserver提示连接WebSocket失败 Celery的任务监控位于堡垒机 "作业中心"下的"任务监控" 中,点击打开新的页面如下 ...
- java_父类子类
private 只有自身能访问自身 自身 同包子 不同包子类 同包类 其他类 可以访问 不能继承 不能继承 不能访问 不能访问 package/friendly/default == 不写 自身 同包 ...
- 对GEE下载时分块影像进行镶嵌(GDAL)
前言 GDAL自带的镶嵌功能比较单一,只能将图像简单拼接到一起,不能实现直方图匀色以及羽化等功能,但是对GEE导出的分块影像进行镶嵌较为适合. 优点: 使用代码,镶嵌多个影像较为简便 GDAL较为稳定 ...
- Wordpress 建立公司网站
1. 先安装好wordpress wordpress 6.4.2-php8.1-fpm-alpine php8.1 Login to wordpress http://www.hei-ya.com/w ...