大家好,我是大圣,一个致力于使用AI工具和技术将自己打造为超级个体的程序员
文章首发于掘金:未经作者(微信ID:nmbbAI666)允许,禁止转载
一、引言
如果你正在有以下困惑:
- 你公司的业务需要接入 ChatGPT 的 API,但是因为业务部署在国内,导致网络问题不好解决
- 你想要为公司/亲朋好友搭建一套不需要科学上网就能使用 ChatGPT 的网页系统
- 你是一个 AI 的爱好者,想要接入 OpenAI 的 API 玩一玩,但是却卡在了网络问题上
那我强烈建议你阅读这篇文章,它一定会给你带来启发。
在阅读本文之前,你需要有如下准备
这篇文章对于编程知识没有硬性要求,非程序员也可以放心享用。
OK,我们话不多说,正式开始!
二、该方案的架构与原理
我们先来了解下该方案的原理:
- 首先,我们使用阿里云的函数计算功能搭建一个美国环境的服务
- 该服务启动了一个进程用来对国内的请求进行转发,以此达到通过美国环境访问 OpenAI 服务的能力
- 而国内的网络环境访问阿里云的美国服务器是没有问题的,因此我们就达到了使用阿里云作为中转访问 OpenAI 服务的目的
如果你是个程序员,你可能会问了,不就是搭了套中转代理么?有什么值得讲的
这套方案最关键的点在于阿里云的函数计算功能
使用函数计算,我们就不需要购买海外服务器也可以快速 0 成本的搭建一个中转代理服务
如果你不能理解这个套架构的意思,没有关系,直接跟着下面的教程实操就好啦!
三、部署函数计算服务
前置条件:拥有了一个阿里云的账号:注册非常简单,这里不再赘述
- 首先,我们访问阿里云的官网,然后在搜索框中搜索函数计算
- 此时我们会进入到函数计算的控制台页面
如果你对函数计算感兴趣,请参考其帮助文档。
- 创建 Web 函数
当进入到创建函数的页面时,按照如下的方式进行填写
代码包如下:
启动命令和端口
启动命令:npm run start
端口号:9000
最后点击创建按钮,会出现如下的界面,首先进行下简单的测试,然后选择配置,复制公网访问地址
至此,这个中转代理就搭建完成了,下面进行下测试
四、测试
打开你的 Terminal,然后将下面这段请求复制进去
curl ${替换成你的配置中的公网地址}[/v1/chat/completions](https://api.openai.com/v1/chat/completions) \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${替换成你的OpenAI的apiKey}" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Hello!"
}
]
}'
如果出现如下响应,则代表成功啦
{
"id" : "chatcmpl-95XLd5y5ZYkP6rH6q" ,
"object" : "chat.completion" ,
"created" : 1711106857,
"model" : "gpt-3.5-turbo-0125" ,
"choices" : [
{
"index" : 0,
"message" : {
"role" : "assistant" ,
"content" : "Hello! How can I assist you today?"
},
"logprobs" : null,
"finish_reason" : "stop"
}
],
"usage" : {
"prompt_tokens" : 19,
"completion_tokens" : 9,
"total_tokens" : 28
},
"system_fingerprint" : "fp_3bc1b5746c"
}
五、总结
这篇文章给大家提供了一种最简单的访问 OpenAI 的 API 的方式,而且阿里云的函数计算能力也有很多应用场景。
希望能给大家带来启发!有任何问题,欢迎评论区与我沟通交流
老规矩,如果文章对你有帮助,帮忙点个赞呀!
关注我,带你一起搞AI,打造AI时代的超级个体
V:nmbbAI666
公众号:大圣AI之旅