本文转自 ShīnChvën 的博客,原文:https://atlassc.net/2023/04/25/azure-openai-service,版权归原作者所有。欢迎投稿,投稿请添加微信好友:cloud-native-yang

Microsoft 的 Azure[1]上已经推出 Azure OpenAI Service[2] 试用,在申请[3]到测试资格以后便可以部署私有的 OpenAI GPT-3.5 模型 API。同时还可以申请 GPT-4 模型[4]的试用资格。

私有部署的好处显而易见,它稳定可靠速度快,最重要的是再也不用担心被 OpenAI 无厘头的风控政策反复折磨了。

注册 Azure 账号的心得

注册国版 Azure 账号

Azure OpenAI Service 是 Azure Cognitive Services 的一部分,所以需要先注册 Azure 账号。目前只在 Azure 国际版上提供,所以请到 Azure 国际版[5]上注册账号。

地区与手机号验证

f1fae82f3c1516d9e7e017d29a736fd3.jpeg
Azure Phone Number

注册时可以选择中国地区,这样你可以直接输入+86 的手机号进行验证。注册中国地区的账号也可以申请 Azure OpenAI Service。

如果你选择了其他的国家 / 地区,但你仍然想使用+86 的手机号进行验证,你可以先输入一个你选择的地区的手机号,然后在电话下面勾选请使用其他电话号码来码证你的身份,此时会展开一个新的电话号码输入框并让你手动选择手机号的国家 / 地区代码,选择中国,然后输入+86 的手机号即可进行验证。

一旦注册,当前账号的国家 / 地区将无法更改。

信用卡验证

账单地址应该与你选国家 / 地区保持一致,否则会提示注册失败。

申请 Azure OpenAI Service 试用

Azure OpenAI Service[6]目前需要以企业的身份来申请试用。如果你的 Azure 账号已经注册好了,可以点击这里[7]来申请。

Azure OpenAI Service 接受来自中国的企业申请,请依照表单如实填写信息,其中最重要的是:

  • Your Company Email Address:请填写你在你公司的企业邮箱地址。

  • Your Company Name:请填写你所在公司的名称。

  • Azure Subscription ID:请根据表单内的提示来获取你的 Azure Subscription ID,千万不要填错成 Tenant ID 了,否则无法通过或者看不到订价层。

  • Company Website:请填写你所在公司的网站的网址。网址里最好能展示一个与你企业邮箱地址同一个域名的邮箱地址。

  • 你的企业邮箱的域名、公司网站的域名需要保持一致,域名的主体需要与公司的名称保持一致,否则会在审核时被拒绝。

  • 如果你填写的资料存在明显的问题,Azure 甚至不会给你任何回复。

  • 如果你填写的资料还需要进一步的证明材料,Azure 会给你发送邮件要求提供。

运气好的话,一般两天能通过审核,如果超过两周没有收到审核结果,请尝试重新提交申请。

部署 Azure OpenAI Service

恭喜你已经申请到了 Azure OpenAI Service 的试用资格,接下来就是部署 Azure OpenAI Service 了。

ccc7fe0fa6a4c0f361de7815e37ff212.jpeg
Azure services

登录到 Azure 以后,你会在首页的 Azure services 里面看到 Azure OpenAI 的图标,点击进入来创建部署 OpenAI Service 资源。

  • 创建 Azure OpenAI 的页面,订阅-资源组一栏如果没有,新建一个即可。

  • 名称一栏根据要求输入一个简短好记的资源名,未来需要通过它来访问你的私有 OpenAI API。

  • 定价层选择默认选项。

  • 标记一页,如果你不需要通过 tags 来管理自己的资源,可暂时不填。

  • 审阅+提交之后,即可进入部署阶段,部署资源需要几分钟时间,请耐心等待,待部署成功之后便可开始使用。

部署模型

3710998f4e34929d5797cdba2ee27666.jpeg
Models

部署 Azure OpenAI Service 资源成功后,还要为服务资源部署模型才可以使用。

dbb3026b0b998377d717d7f17dad5f57.jpeg
Create deployment

请进到资源详情页面左边栏的模型部署中,点击创建按钮来部署模型。

  • 输入模型部署名称,此名称在后面使用 Cloudflare Worker 转换映射 API 时要用到。

  • 选择模型,建议使用 gpt-35-turbo (version 0301),该模型与 ChatGPT 3.5 一致。

  • 点击保存以后即可完成部署。

在模型部署完以后,就可以转到 Azure OpenAI Studio 中进行试用。

Azure OpenAI Studio

这里和 OpenAI 的功能比较类似:

  • Completions playground:可调用模型根据已输入的文本生成补全文本,与 GitHub CopilotBing Chat 的输入框自动补完功能类似。

  • Chat playground(Preview):一个类似 ChatGPT 的聊天式 AI 助手应用。

  • 在两个 playground 中,你都可以点击 View code 来查看当前操作的示例代码,供你学习怎样开发自己的 GPT 应用。

配置客户端

我们部署 Azure OpenAI Service 资源的主要目的还是为了在客户端中使用,所以接下来我们要将 Azure OpenAI API 配置到流行的 OpenAI 客户端中。

CloudFlare 转换 Azure OpenAI API

现有的 OpenAI 客户端都是基于 OpenAI API 来实现的,而 Azure OpenAI Service 的 API 与 OpenAI API 并不兼容,如果你直接配置到 OpenAI 的客户端中可能会收到 Resource Not Found 的错误。

所幸,我们可以使用cf-openai-azure-proxy[8]这个项目,通过 CloudFlare Worker 来转换映射 Azure OpenAI API

部署 Worker 时,可按下面的代码对 Worker 进行配置:

// The name of your Azure OpenAI Resource.
const resourceName="你的 Azure OpenAI 资源名称"

// The deployment name you chose when you deployed the model.
const mapper = { // 模型名称与模型部署名称映射
    'gpt-3.5-turbo': "模型部署名称",
    // 'gpt-4': DEPLOY_NAME_GPT4 // 如果没有 GPT-4 服务可先注释掉
};

// ...
// ...
// ...
// 跳过中间代码找到下面这一句

const deployName = mapper[modelName] || '模型部署名称' // 设置默认使用已部署的模型,而不是空。

CloudFlare Worker 部署完成之后,我们就可以去配置客户端了。

获取 API KEY

Azure OpenAI ServiceAPI KEY 就在资源详情页面密钥与终结点中,点击显示密钥即可查看。

此时的终结点,即为 Azure OpenAI APIAPI URL,应该已经配置到上一步的 CloudFlare Worker 中了,不需要直接使用。

配置 OpenAI 客户端

以openai translator[9]为例:

  • 请在设置中选择 OpenAI 作为 Default Service Provider

  • API KEY:请填写 Azure OpenAI Service密钥

  • API URL:请填写 CloudFlare Worker 的 URL。

  • API Model 选择你已部署的 Model,例如 gpt-35-turbo (version 0301),而这个 Model 需要你在 CloudFlare Worker 代码最前面的 mapper 中做好映射。

而ChatBox[10]的配置就更简单了:

  • OpenAI API Key 中填写 Azure OpenAI Service密钥

  • 展开 Proxy,在 API Host 中填写 CloudFlare Worker 的 URL。

  • 展开 Model & Token,在 Model 中选择你已部署的 Model,例如 gpt-35-turbo-0301

FAQ

🙋 创建 Azure OpenAI Service 资源时无法选择定价层(Pricing Tier)?

43123d78cc7c68b40c38a1596594e791.jpeg
no pricing tier

请确保你在注册好 Azure 账号以后,单独申请了 Azure OpenAI Service 的试用,否则你将无法创建 Azure OpenAI Service 资源。

申请通过会有邮件回复。

如果申请通过了,而仍然看不到定价层选项,那就得联系 Azure Cognitive 客服了。

刚收到网友反馈是 Subscription ID 填错了,请一定根据表单内的指引去获取 Subscription ID 而不是 Tenant ID

🙋 申请 Azure OpenAI Service 通过以后使用 Azure 账号登录还是用申请 Azure OpenAI Service 的企业邮箱登录?

使用 subscription 相关的 Azure 账号登录,企业邮箱仅用于验证企业身份。

🙋 收到了 GPT-4 模型的回信却不能部署 GPT-4 模型?

再读一读邮件,是不是告诉你被加入到 GPT-4 的 waitlist 了?而不是通过了申请。

GPT-4 模型连 waitlist 都要申请和审核,审核通过了才进 waitlist。微软真有你的。

引用链接

[1]

Azure: https://azure.microsoft.com/

[2]

Azure OpenAI Service: https://azure.microsoft.com/en-us/products/cognitive-services/openai-service

[3]

申请: https://go.microsoft.com/fwlink/?linkid=2222006&clcid=0x409&culture=en-us&country=us

[4]

申请 GPT-4 模型: https://azure.microsoft.com/en-us/blog/introducing-gpt4-in-azure-openai-service/

[5]

Azure 国际版: https://azure.microsoft.com/

[6]

Azure OpenAI Service: https://azure.microsoft.com/en-us/products/cognitive-services/openai-service

[7]

这里: https://go.microsoft.com/fwlink/?linkid=2222006&clcid=0x409&culture=en-us&country=us

[8]

cf-openai-azure-proxy: https://github.com/haibbo/cf-openai-azure-proxy

[9]

openai translator: https://github.com/yetone/openai-translator

[10]

ChatBox: https://github.com/Bin-Huang/chatbox

关于 Laf

Laf 是一款为所有开发者打造的集函数、数据库、存储为一体的云开发平台,助你像写博客一样写代码,随时随地发布上线应用!3 分钟上线 ChatGPT 应用!

Laf 的适用场景非常广泛,大到企业官网和信息化建设,小到个人博客、微信小程序,理论上可以开发任何应用!未来 AI 应用一定会爆炸式增长,很多传统的方式都将会被彻底颠覆,在这个浪潮中兵贵神速,Laf 的快速发布上线能力恰好可以快速开发各种 AI 应用,让 AI 能力快速落地,帮助 AI 浪潮下的企业在竞争中快速胜出。Laf 提供了开箱即用的云函数,云数据库,对象存储等能力,请求更快、开发更简单、性价比更高,而且完全开源,支持私有化部署。我们致力于为所有开发者提供敏捷高效的服务。

🌟GitHub:https://github.com/labring/laf

🏠官网(国内):https://laf.run

🌎官网(海外):https://laf.dev

💻开发者论坛:https://forum.laf.run

关注 Laf 公众号与我们一同成长👇👇👇

4dca2ea0fcd2274142c7837233e0f7c9.png

Logo

昇腾万里,让智能无所不及

更多推荐