OpenAI 发布适用于 .NET 库的稳定版本
OpenAI 在 6 月发布测试版后发布了其官方 .NET 库的稳定版本。它以 NuGet 包的形式提供,支持 GPT-4o 和 GPT-4o mini 等最新模型,以及完整的 OpenAI REST API。该版本包括同步和异步 API、流式聊天完成以及用于提高 API 一致性的关键性更改。开发人员可以扩展该库,并在支持 .NET Standard 2.0 的所有 .NET 平台上使用它。
Microsoft 的 .NET 团队在 10 月 1 日的一篇文章中说。“今天,我们很高兴地宣布,适用于 .NET 的官方 OpenAI 库的稳定版本现已上线。此版本可确保开发人员在其 .NET 应用程序中使用 OpenAI 和 Azure OpenAI 服务时获得流畅可靠的集成体验。
其目的是提供工具来简化将 OpenAI 的尖端模型集成到 .NET 应用程序中的过程,为开发人员提供简化的体验,用 Microsoft 的话来说,其功能包括:
- 完整的 OpenAI REST API 支持:包括 Assistants v2 和 Chat Completions,可实现灵活和高级的交互。
- 支持最新型号:OpenAI 的最新旗舰模型,包括 GPT-4o、GPT-4o mini、o1-preview 和 o1-mini,得到全面支持,确保开发人员能够获得尖端的 AI 功能。
- 扩展:该库在设计时考虑了可扩展性,允许社区在其上构建其他库。
- 同步和异步 API:这确保了开发人员可以根据其应用程序的需求灵活地使用同步或异步模式。
- 流式补全:通过 IAsyncEnumerable 访问流式补全,从而提供更动态的交互模型。
- 代码质量改进:在整个测试周期中,根据社区反馈进行了大量改进。
- .NET Standard 2.0 兼容性:此库以 C# 编写,支持实现 .NET Standard 2.0 的所有 .NET 变体,确保与最新的 .NET 平台兼容。
对于从 2.0.0-beta.* 版本升级的开发人员,引入了几项重大更改,以提高 API 的一致性和可用性:
ChatMessageContent现在将内容部分封装在ChatMessage、ChatCompletionStreaming和ChatCompletionUpdate中。- 函数参数现在表示为多个区域,包括
BinaryDataChatToolCall和StreamingChatToolCallUpdate。 - 应用了多种重命名约定:已重命名为
ApplicationId、UserAgentApplicationId为FileClient和OpenAIFileClient为ModelClient ,等。OpenAIModelClient - 已弃用的构造函数和方法已替换为新选项
ChatFunctionChoice,例如将Auto和None替换为CreateAutoChoice()和CreateNoneChoice()。
其 GitHub 存储库说明了如何使用 Azure OpenAI:
对于 Azure OpenAI 方案,请使用 Azure SDK,更具体地说,使用适用于 .NET 的 Azure OpenAI 客户端库。
适用于 .NET 的 Azure OpenAI 客户端库是此库的配套库,OpenAI 和 Azure OpenAI 之间的所有常见功能共享相同的方案客户端、方法和请求/响应类型。它旨在使 Azure 特定方案变得简单明了,并扩展了 Azure 特定概念,例如负责任 AI 内容筛选器结果和“On Your Data”集成。
这些更改增强了清晰度并保持了整个 API 的一致性。适用于 .NET 的 OpenAI 库是开源的,并根据 GitHub 上的持续社区贡献开发。它将继续接收更新,与 OpenAI 的最新功能和改进保持一致。该库以及 OpenAI 现有的 Python 和 JavaScript/TypeScript 库可确保为跨不同平台工作的开发人员提供统一的体验。社区很高兴能够探索此稳定版本的全部潜力,这标志着在为 .NET 生态系统提供强大的 AI 功能方面向前迈出了重要一步,提供了构建高级应用程序所需的工具。
OpenAI 发布适用于 .NET 库的稳定版本的更多相关文章
- 【我的Android进阶之旅】快速创建和根据不同的版本类型(Dev、Beta、Release)发布Android 开发库到Maven私服
前言 由于项目越来越多,有很多公共的代码都可以抽取出一个开发库出来传到公司搭建好的Maven私服,以供大家使用. 之前搭建的Maven仓库只有Release和Snapshot两个仓库,最近由于开发库有 ...
- centos 安装最新稳定版本docker
直接yum安装的docker版本是 : docker --versionDocker version 1.12.6, build 85d7426/1.12.6 一些新特性需要安装最新的稳定版本 国内可 ...
- hadoop最新稳定版本使用建议
Apache Hadoop Apache版本衍化比较快,我给大家介绍一下过程 ApacheHadoop版本分为两代,我们将第一代Hadoop称为Hadoop 1.0,第二代Hadoop称为Hadoop ...
- 手把手图文并茂教你发布Android开源库
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼,文章链接: http://blog.csdn.net/hejjunlin/article/details/52452220 经常逛githu ...
- 教你一步步发布一个开源库到 JCenter
今天想来分享下,如何一步步自己发布一个开源库到 JCenter 这方面的博客网上已经特别多了,所以本篇并不打算仅仅只是记录流程步骤而已,而是尽可能讲清楚,为什么需要有这个步骤,让大伙知其然的同时还知其 ...
- 官宣,PyTorch 1.0 稳定版本现已推出
简评:快来一起快乐地学习吧. 随着 PyTorch 生态系统和社区继续为开发人员提供有趣的新项目和教育资源,今天(12 月 7日)在 NeurIPS 会议上发布了 PyTorch 1.0 稳定版.研究 ...
- 发布Android开源库,看这个文章就够了!
最近在Flipboard实习期间写了一个轮播工具,技术上没什么难点,不过动画效果还是不错的,决定改改代码写个库开源出去.项目地址:http://github.com/chengdazhi/Decent ...
- 使用Jitpack发布开源Java库
原文:使用Jitpack发布开源Java库 | Stars-One的杂货小窝 很久之前也写过一篇使用Jitpack发布Android开源库的文章,详见Android开发--发布第三方库到JitPack ...
- 创建/发布cocoapods公共库
对于大多数iOS开发者而言,cocoapods都是一个非常便捷的第三方库引导工具,该工具可以帮助我们快速导入所需第三方库,并且进行相关配置. 本文即为描述如何发布一个第三方库,提供给所有的开发者使用. ...
- MyEclipse安装插件的几种方式(适用于Eclipse或MyEclipse其他版本)
MyEclipse2014安装插件的几种方式(适用于Eclipse或MyEclipse其他版本) 2014-04-28 21:09 MyEclipse 阿超 19171 views 众所周知M ...
随机推荐
- 关于SpringBoot中事务回滚没有生效
在SpringBoot中,事务回滚可以用注解@Transactional标识. Spring声明式事务管理默认对非检查型异常和运行时异常进行事务回滚,而对检查型异常则不进行回滚操作. 1.非检查型异常 ...
- Python编写html文件
背景:部门需要发送周报.月报,每次都需要去数据库导出数据整理统计发送给领导,人工操作显得繁琐且费时间. 1.可以定时用python将数据库查询数据结果写成html文件,达到浏览器访问的效果,定时发送给 ...
- SpringBoot配置过滤器、拦截器
拦截器概述 Spring Boot提供了一种简单且强大的方式来定义和使用拦截器(Interceptor).Spring Boot的拦截器基于Spring框架的拦截器机制,可以在请求的处理过程中插入自定 ...
- 《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第二章
图 2.1 import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams['font.sans-serif']=['Sim ...
- [JLOI2015] 城池攻占 题解
前言 题目链接:洛谷. 题目分析 其他人要么倍增,要么左偏树,那我就来讲讲朴实无华的 dfs 序加上线段树的做法. 首先发现题目中明确指出了作乘法的时候一定是乘上一个大于零的数,这是为什么呢?首先把可 ...
- HTTP 常见状态码【5种最最最常见的状态码】
HTTP 常见状态码 一.200 [ok] 一切正常 二.400 [Bad Request] 客户端 出现问题 需要注意:前端传入的参数与后台接收数据时的 参数名 必须保持一致 三.500 [Inte ...
- java如何保证一个方法只能执行一次
我们经常会遇到一些情况需要某一个方法或者操作只执行一次,比如说配置信息加载,如果配置信息需要动态刷新,这个不在适用范围.下面列举几种方式 第一种 如果是web容器,可以使用servlet或者Liste ...
- k8s获取集群内所有在使用镜像
kubectl get pods --all-namespaces -o jsonpath="{..image}" | tr -s '[[:space:]]' ' ' | sort ...
- LaTeX 交叉引用的四次编译
编译包含交叉引用的 LaTeX 文件需要编译四次(pdflatex + bibtex + pdflatex * 2),一直对这四次编译都干了什么事很好奇.这次就来看一下每一步具体都干了些什么. 源文件 ...
- [C#基础1/21] C#概述
Notion原笔记 1. C# 简介 1.1 C# 定义 C# 在继承 C 和 C++ 强大功能的同时去掉了一些它们的复杂特性,使其成为 C 语言家族中的一种高效强大的编程语言 1.2 C# 用途 用 ...