微软Azure申请OpenAI以及ChatGPT-Next-Web部署使用教程
微软Azure申请OpenAI
首先,你需要有一个Azure。可用是免费试用版,Azure Stu版,Azure 企业版 等等。
第二,申请的时候官方也表明需要用企业邮箱!不用用gmail,outlook等
第三,还需要填写企业官网(官网域名和邮箱域名得一致)
然后就是看运气了等审核通过了。短的4小时,长的可能得几个月。
部分人审核期间可能需要补充一些资料。也有几个小时就通过的。
当然了这个申请也是有技巧的。有朋友基本上目前100%几小时就通过了。
一切操作均有风险!小心你的Azure订阅翻车!
步骤
创建OpenAI
1,搜索资源 OpenAI 可找到Azure OpenAI。点击创建!
填写信息!名称随意!定价选S0
区域,可选美国东部(法国和欧洲,看你使用情况可选)
2,网络选择所有网络 即可。
3,标记。没有啥标记的直接下一步!
4,验证相关信息,验证通过后,直接点击创建即可!
5,稍等几分钟,部署完成!
记录关键信息
打开新建的OpenAI 有几个关键的内容,保存好后面会使用!
1,终结点 ,如图就是我们专属的接口域名地址
2,密钥,点击管理密钥可看见密钥内容
模型部署
1,点击 模型部署,点击 【管理部署】按钮。浏览器会在当前页面打开模型管理的另一个平台。
2,在Azure AI 平台中,点击【新建部署】
3,这里需要选择模型,以及填写部署名称。
模型,选择 gpt-35-turbo(如果你有gpt-4.0,选择这个也行)
部署名,填写即可。这个部署名后面也会用到!
高级选项, 可设置Token上限,最高支持240K(酌情选择设置)
自定义过滤器,按需设置即可
4,分分钟创建成功!Azure AI中也提供了和可以直接聊天的功能,操场设置各类参数。
5,体验自带的会话功能。
使用
前面折腾这么多!我们主要要是为了将OpenAI集成到实际场景中。
Azure OpenAI 和 OpenAI官方的调用方式基本相似。
我这里使用两个软件库ChatGPT-Next-Web和azure-openai-proxy
azure-openai-proxy将openaiapi接口调用转化为azure openapi
安装azure-openai-proxy
我这里使用Docker安装
docker run -d -p 8080:8080 --name=azure-openai-proxy \
--env AZURE_OPENAI_ENDPOINT=your_azure_endpoint \
--env AZURE_OPENAI_API_VER=your_azure_api_ver \
--env AZURE_OPENAI_MODEL_MAPPER=your_azure_deploy_mapper \
stulzq/azure-openai-proxy:latest
your_azure_endpoint 替换成前面Azure openai终结点:https://你的.openai.azure.com/的形式
your_azure_api_ver 替换成模型版本 :2023-03-15-preview
your_azure_deploy_mapper 替换成刚刚部署的名称:gpt-3.5-turbo=你的名称 ##如果有gpt4就换成gpt4
注意:=左边是模型名称,右边是部署名
运行成功后,进行测试
curl --location --request POST 'localhost:8080/v1/chat/completions' \
-H 'Authorization: Bearer <key>' \
-H 'Content-Type: application/json' \
-d '{
"max_tokens": 1000,
"model": "gpt-3.5-turbo",
"temperature": 0.8,
"top_p": 1,
"presence_penalty": 1,
"messages": [
{
"role": "user",
"content": "Hello"
}
],
"stream": true
}'
注意:key换成自己密钥,如使用gpt4,model也换成gpt4的模型名称
这样就说明部署成功了,下面安装
安装ChatGPT-Next-Web
由于azure-openai-proxy使用的是Docker的桥接模式,所以ChatGPT-Next-Web调用接口时,访问的就是docker局域网网络
使用ifconfig查看docker的虚拟网络段,一般都是172.17.0.1
ChatGPT-Next-Web我们也是用Docker安装
docker pull yidadaa/chatgpt-next-web
docker run -d -p 3515:3000 --name=azure-openai\
-e OPENAI_API_KEY="azure openai key" \
-e CODE="ChatGPT-Next-Web的访问密码" \
-e BASE_URL="http://172.17.0.1:8080" \
yidadaa/chatgpt-next-web
OPENAI_API_KEY
(必填项)
这里填写 Azure OpanAI 密钥,你在 Azure openai 账户页面申请的 api key。
CODE
(可选)
访问密码,可选,可以使用逗号隔开多个密码。
警告:如果不填写此项,则任何人都可以直接使用你部署后的网站,可能会导致你的 token 被急速消耗完毕,建议填写此选项。
BASE_URL
(可选)
前面搭建的azure-openai-proxy 接口代理 URL:http://172.17.0.1:8080
如果遇到 ssl 证书问题,请将 BASE_URL
的协议设置为 http。
使用nginx进行网页反代
location / {
proxy_pass http://localhost:3515;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_hide_header 'Access-Control-Allow-Origin';
proxy_hide_header 'Content-Security-Policy';
}
重启nginx服务(我是用的服务器是CentOS7,别的服务器自行百度)
systemctl restart nginx
启动成功后打开你的域名就可以愉快玩耍了
这里输入之前设置的访问密码测试,大功告成!