适用于 .NET 稳定的官方OpenAI库

news/2024/10/20 12:30:50

前言

今天给大家分享一个由 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支持💖。

  • 开源地址:https://github.com/openai/openai-dotnet

优秀项目和框架精选

该项目已收录到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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/73774.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

20241313 刘鸣宇 《计算机基础与科学概论》第四周学习总结

《C语言程序设计》学习总结 1.学习了基础算数运算符并通过AI 了解了常用运算符的优先级 2.学习了复合的赋值运算符,增1与减1运算符,以及前缀与后缀的不同 3.学习了宏常量与宏替换#define 4.学习了const 函数并对比了解const函数相比于宏常量的优势(const函数有数据类型,编译…

z-library镜像地址,如何获取最新网址(2024.10.20)

zlibrary数字图书馆介绍 Z-library被称为全球最大的数字图书馆,里面包含 9,826,996 本电子书,84,837,646 篇期刊文章。 从各种知名文学著作,理工学科,人文艺术、到学术论文等应有尽有!支持PDF、epub、mobi等多种格式图书资源下载绝对是你找书的不二选择。zlibrary数字图书…

会话层技术-cookie

cookie技术拿下!会话层技术cookie的使用 package com.atguigu.servlet;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpSer…

什么是PLC

PLC Programmable Logic Controller,可编程逻辑控制器,一种用于自动化控制系统的数位电子设备。 PLC 运作流程接收输入信号 PLC借由连接各种传感器和开关,接收来自现场的输入信号(温度、压力、流量、开关的数位信号等)。PLC通过这些输入信号来感知现场的工作状态和环境参数…

IDEA代码不想提交了,如何回滚

前言 我们在使用IDEA开发Java应用时,经常是需要用git提交代码的,但是有时候,突然不想修改了,就需要把代码进行回滚,那么我们该如何操作呢? 如何回滚代码 首先,我们点击左侧的commit窗口,然后点击下我们要回滚的文件,鼠标右击下。然后,我们在选项中,点击下【Rollback…

IDEA如何配置自己的maven和maven设置阿里云仓库

前言 我们在使用IDEA开发Java应用时,一般是需要配置maven仓库的,那么我们应该如何配置呢?此外,默认的maven仓库下载速度很慢,我们一般可以配置阿里云或者华为云仓库,这个又应该怎么配置呢? 如何配置maven及配置阿里云仓库 首先,我们打开设置面板。然后,我们点击【Buil…

2024-2025-1 20241327 《计算机基础与程序设计》第四周学习总结

作业信息 |2024-2025-1-计算机基础与程序设计)| |-- |- |2024-2025-1计算机基础与程序设计第四周作业)| |快速浏览一遍教材计算机科学概论(第七版),课本每章提出至少一个自己不懂的或最想解决的问题并在期末回答这些问题 |作业正文|https://www.cnblogs.com/shr060414/p/18…