likes
comments
collection
share

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

作者站长头像
站长
· 阅读数 17

由于 OpenAI 的 API 并不对中国开放。

所以很多小伙伴想通过 API Key 的方式开发一些自己的小项目,但都 ping 不通。

这时该怎么办呢?

架一个代理服务就可以了。

代理服务的原理

代理的原理极其简单。

如果用户 A 无法直接与服务 Y 相连,但是可以和服务 X 相连。

服务 X 可以和服务 Y 相连。

那我们就可以把服务 X 作为代理服务。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

有点像中转站的概念。

用户 A 的请求全部发往服务 X,服务 X 代替用户 A 请求服务 Y。即可解决 A 和 Y 之间不能直连的问题。

代理还有很多好处,比如可以隐藏 A 的 IP 地址。这样对 Y 来说,请求的人就是 X。

代理还可以设置缓存,减少请求次数,提高响应速度等等。

往细了分,还可以分为正向代理和反向代理。

它俩的区别主要是位置和搭建者不同。

正向代理离客户端近,通常由使用者搭建。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

反向代理离服务器近,通常由服务器维护者搭建。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

我们常用的各种上网工具、VPN 等,都是正向代理。它能帮我们隐藏 IP,连接一些原本连接不到的网络。

反向代理主要是为了优化服务器性能的,比如可以做负载均衡和流量转发。保证服务器的高可用和高并发。

好,我相信概念和原理各位小伙伴应该都懂了。

代理服务的实现

接下来讲讲怎么实现代理。

每种编程语言都有代理库。

以 nodejs 举例,可以使用 node-http-proxy。仓库地址:github.com/http-party/…

这个库非常容易使用,示例代码如下:

var http = require('http'),
    httpProxy = require('http-proxy');
//
// Create your proxy server and set the target in the options.
//
httpProxy.createProxyServer({target:'http://localhost:9000'}).listen(8000); // See (†)


//
// Create your target server
//
http.createServer(function (req, res) {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.write('request successfully proxied!' + '\n' + JSON.stringify(req.headers, true, 2));
  res.end();
}).listen(9000);

这段代码的意思是同时启动两个服务,一个是 8000 端口,一个是 9000 端口。

9000 端口是真实的服务地址,8000 端口就是一个代理服务。

我们所有对 8000 的访问,都会被转发到 9000 端口上面。

是不是非常简单和方便?

如何部署

只是实现了代理服务还不够,接下来就是如何把代理程序弄到代理服务器上。

我们需要有一台服务器,既要保证在大陆直接能 ping 通,又要保证这台服务器能 ping 通 OpenAI 的服务。

我们可以选择美国、英国、日本、韩国这些地区的服务器。

注意,香港地区的服务器也被封锁了,不能用。

国内有很多服务商,像阿里云、腾讯云、华为云、百度云等等都可以选择海外服务器使用。

另外像 Cloudflare、Azure 这些对大陆开放的服务商也可以用。

每种服务的申请方式、配置和费用等规则各不相同,过程可能比较折腾。感兴趣的同学可以自己去尝试一下,我就不过多讲解了。

不需要写一行代码就能实现的私有部署

因为有很多群友不断向 Noah 反馈这个问题,所以 IChatI 上线了一个新的功能模块:白泽。

通过白泽,几秒钟就可以架设出一个自己的私有部署。

整个操作过程就两步,保证傻子都能学会。

第一步进入白泽:www.ichati.cn/deploy

在输入框中输入私钥。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

第二步,点击开始部署。

稍等 1-2 秒,部署就会成功进入到项目列表。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

现在私有部署就完成了。

我们来测试一下。

拿 List Models 举例吧,它的作用是列出所有模型。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

我们只需要复制项目的 URL,加上 OpenAI 的 URL。

可以看到,私有部署的 API 调用成功。

全网最简单 ChatGPT ApiKey 私有部署教程和代理原理讲解,傻子都能看懂

注意这个 URL 是不可以分享的哦,因为这是私有部署。随便告诉其他人容易导致被蹭 API Key 的额度。