早在2021年11月,微软Azure就推出了OpenAI预览服务,允许企业用户通过REST API去访问OpenAI的语言模型,当时也只有非常有限的客户可以预览这个功能。在今年1月份,微软宣布Azure OpenAI面向全球客户正式开放,其中就包括了中国区,全球的企业用户都可以访问到世界先进的人工智能模型,可以使用GPT-3.5、Codex、DALL E2在内的人工智能模型,并可使用API打造自己的智能化创新应用。
人工智能是未来的趋势,但眼下ChatGPT对国内用户非常不友好,不仅申请麻烦,需要使用专用代理服务器,接验证码还得去注册接码平台的,而且在使用过程中还磕磕碰碰,一不小心没开代理调用了API接口,就有可能面临被封接口权限甚至直接封号。那么在国内有没有没那么麻烦的AI人工智能模型可以用呢?也许你会说百度有文心一言,Google也有Bard,还有Notion AI,这些都是行业内的竞争者,但我认为就目前的体验来说,OpenAI ChatGPT仍然是最优选。
因此,在本篇文章中,将简要介绍一下如何申请中国区Azure OpenAI服务,并以此代替原本ChatGPT的功能,在一些需要使用OpenAI API的场景中,可以直接替换。
注册微软Azure用户
注册之前,建议先去注册一下微软的邮箱,全球收发邮件都不受阻碍,而且有行业领先反垃圾邮件的系统,建议可以长期使用。邮箱的注册这里不展开。我们直接访问微软Azure平台进行申请。
注意:中国区Azure是由“世纪互联”运营的,如果你填写资料时选择的国家是中国,那么就是由国内提供服务的。如果你选择了其他国家/地区,则是由微软国际版Azure运营的。
中国区Azure和国际版Azure存在一些政策上和使用上的差异,具体差异可以看一下这篇文章:Azure 国际版与中国版服务列表对(2020年6月版)。如果你只是为了体验Azure OpenAI的API,那么没差别,申请下来的接口都可以用。
噢,对了,Azure申请成功后,会告诉你有一些服务可以免费用12个月,也有一定数额的赠金。
我由于已经有Azure账号了,就不去申请再多的账号,直接跳到下一步,申请API接口。
申请OpenAI API接口权限
登陆Azure之后,直接在顶部搜索关键词“openai”,就可以找到
然后点击“Azure OpenAI”进入接口创建页面,在底下有提示,点击“创建Azure OpenAI”
在这个页面中,选择你的订阅,如果你刚注册的,应该就是免费试用的订阅,然后再创建一个资源组用于OpenAI,这里就起名“OpenAI”好了
注意看这个红框位置,OpenAI服务需要额外申请,点击申请。会弹出一个多达25道题的问卷,需要仔细填好。
注意,这里要提供准确的订阅ID
这个ID在这里可以找到,注意这里不是目录ID(租户ID),而是要提交订阅ID
在顶部搜索“订阅”,在打开的页面中,把订阅ID复制到上面的问卷中
还有这个公司信息,不论国内版Azure还是国际版Azure,OpenAI都只面向企业服务,所以这里要填你的公司信息和公司邮箱,如果你使用一些常用的私人邮箱,申请会即刻被拒绝。
把这二十几道问卷题答完,就等着审核吧。大概要几天到十几天不等,最近申请人数开始增多,可能会延期。
我申请了有几天了,刚好又是周末,还没下来,先把大纲写了
等了有几天了,公司的邮箱收到一份验证邮件,复制链接到浏览器验证一下。
昨天凌晨收到邮件,拿到权限了!嘿嘿~
齐活了,可以开始接下来的配置。
配置Azure OpenAI
打开这个页面:https://portal.azure.com/?quickstart=true#create/Microsoft.CognitiveServicesOpenAI
选完订阅、资源组,再选择好区域、名称、定价层,直接下一步就好了。
点击创建后,需要等待状态由 Creating 变为 Succeeded,这样就算部署完成了。
然后点击这个资源,配置所需的资源版本,目前是GPT-3.5,如下图所示:
Azure OpenAI 目前所使用的版本只有GPT-3.5,如果需要GPT-4,只能去申请ChatGPT,直接开Plus订阅就有了。不过GPT-3.5已经足够使用啦。
创建完模型部署之后,就可以用了。
这时可以直接去ChatGPT PlayGround愉快玩耍了,你可以问它一些问题,就像OpenAI ChatGPT那样。
在打开的页面中,可以看到有一些优化选项:
开始调戏一下吧:
申请OpenAI API
我们最终是需要申请得到API的使用权限的,所以回到刚刚的资源页面概览面板
在概览面板,那个“终结点”(英文:endpoint)要记起来,后续对接需要用。或者直接在下面选开发tab,也可以看到关于api的一些介绍。主要用到就是密钥1,密钥2的用途看官方的介绍,其实就是个备用。功能一样。
对接需要OpenAI API的应用
申请这个OpenAI,其实也是为了方便公司里的同事们能更高效地工作(调戏机器人),在我公司,用的最多的还是网页版的ChatGPT,这个就用常用的chatgpt-web的项目吧,然后也有在飞书群里用的机器人,以及Discord里用于辅助生成Midjourney的prompt的机器人,这些都可以对接Azure OpenAI API。
其他对接还没试过,但是在对接chatgpt-web时遇到问题,搜索之后发现需要额外的代理,这里引用’stulzq’的解决方案,具体请看这里:https://www.cnblogs.com/stulzq/p/17271937.html
这里参考GitHub上的内容,我直接在美国的vps上部署了代理。为自己后续需要使用OpenAI API接口的应用铺路。
以下是 docker compose 脚本:
version: '3'
services:
azure-openai:
image: stulzq/azure-openai-proxy
ports:
- 8080:8080
environment:
AZURE_OPENAI_ENDPOINT: <Auzre OpenAI API Endpoint>
AZURE_OPENAI_MODEL_MAPPER: <Auzre OpenAI API Deployment Mapper>
AZURE_OPENAI_API_VER: 2023-03-15-preview
启动有 2 个环境变量需要配置:
变量名 | 说明 |
---|---|
AZURE_OPENAI_ENDPOINT | Azure 密钥和终结点 里提供的终结点 |
AZURE_OPENAI_MODEL_MAPPER | Azure 部署模型名称映射到 OpenAI 官方模型名称 |
特别说明一下 AZURE_OPENAI_MODEL_MAPPER
使用 OpenAI 官方标准发起的请求里包含的模型名称是固定的,在这里可以查询,而在 Azure OpenAI 模型部署时是可以自定义名称的,请求 Azure yes需要提供这个部署模型的名称,所以建立了一个映射关系。
比如我在 Azure 部署了一个 gpt-3.5-turbo
模型,我设置的部署名称为:xc-gpt-35
,此时我的设置:
AZURE_OPENAI_MODEL_MAPPER: gpt-3.5-turbo=xc-gpt-35
最后执行启动就好:
docker compose up -d
后续在需要调用api的地方,就把你服务器的endpoint地址填进去就好了
您也可以联系文章作者本人进行修改,若内容侵权或非法,可以联系我们进行处理。
任何个人或组织,转载、发布本站文章到任何网站、书籍等各类媒体平台,必须在文末署名文章出处并链接到本站相应文章的URL地址。
本站文章如转载自其他网站,会在文末署名原文出处及原文URL的跳转链接,如有遗漏,烦请告知修正。
如若本站文章侵犯了原著者的合法权益,亦可联系我们进行处理。
hi3个月前0
请问有详细一点的自己搭建的教程吗你好4个月前0
你好,可以再帮我看看吗? 我已经按照你的方法设定了,还是一样,wordpress后台的 Purge Varnish Cache 插件还是清除不到cache,依旧显示 the varnish control terminal is not responding at。谢谢 https://mjj.today/i/Srk2Tz https://mjj.today/i/Srkcoi你好4个月前0
对,你说的没错,我配置的时候改了一些东西,现在我按照你的教学,可以启动了,网页可以缓存了,不过wordpress 清除cache 那个插件没用的,我输入本地回环地址127.0.0.1 :6082 ,再输入API key ,插件显示the varnish control terminal is not responding at 127.0.0.1:6082,就你图片那样,然后试一下点击清除cache 那里,他显示error,研究了一天,还是没有不行。你好4个月前1
你好,为啥我按照你的方法,到第三部分,去到真正后源的服务器设定Varnish 部分,我填了真正后源的IP跟端口跟域名,然后重启 Varnish ,就出现这样了? 这是怎么回事? 谢谢 [Linux] AMH 7.1 https://amh.sh [varnish-6.6 start] ================================================== =========== [OK] varnish-6.6 is already installed. Could not delete 'vcl_boot.1713549650.959259/vgc.sym': No such file or directory Error: Message from VCC-compiler: VCL version declaration missing Update your VCL to Version 4 syntax, and add vcl 4.1; on the first line of the VCL files. ('/home/usrdata/varnish/default.conf' Line 1 Pos 1) ... #--- Running VCC-compiler failed, exited with 2 VCL compilation failedchu4个月前0
很完善的教程‘hu4个月前0
我用gmail EMAIL_SERVER="smtp://********@gmail.com:bpyfv*********[email protected]:587"叽喳4个月前0
MAIL_SERVER="smtp://[email protected]:[email protected]:587" 大佬 这个使用outlook 或者gmail 是什么样子的格式? 邮寄已经开启smtp了hu4个月前0
输入框的问题解决了,我没有设置反代,NEXTAUTH_URL改为域名+端口就好了