将 GitHub Copilot 转换为可以使用 GPT4 的 API

注意

不要把后端部署在大厂(AWS、GCP 等等)机器上,尽量不要用机场的 IP 去登录这个号,如果机场 IP 有人被封过号,会被连带封号。玩 GPT4 拿到 TOKEN 之后就把号退了,不要把 Cookie 留在浏览器上。

1. 安装

使用 Docker 安装 aaamoon/copilot-gpt4-service

docker run -d \

–name copilot-gpt4-service \
–restart always \
-p 8099:8080 \
-e HOST=0.0.0.0 \

aaamoon/copilot-gpt4-service:latest</code></pre><p style="">这里将使用 <code>http://your_ip:8099</code> 作为 API 接口</p><h3 style="" id="2.-%E8%8E%B7%E5%8F%96-copilot-token">2. 获取 Copilot Token</h3><p style=""><strong>如果已经有 TOKEN 了,这一步不用走,<span color="#dc2626" style="color: #dc2626">直接跳到 3. 使用服务</span>。</strong></p><p style="">首先,安装 requests 库:</p><pre><code>pip install requests

sudo apt install python3-requests # 如果是 Debian 12+ 的系统

然后,运行以下命令以获取 GitHub Copilot 插件的 Token:

python3 <(curl -fsSL https://raw.githubusercontent.com/aaamoon/copilot-gpt4-service/master/shells/get_copilot_token.py)

输出类似于:

$ python3 get_copilot_token.py

Please open https://github.com/login/device in browser and enter 6A95-CAC9 to login.

这里访问 https://github.com/login/device 填入 6A95-CAC9(根据你上面的输出决定)

Your token is:
ghu_xxxxxxxxxxxxxxxx

这里的 ghu_xxxxxxxxxxxxxxxx 就是最后的 TOKEN

然后浏览器访问 https://github.com/login/device ,填入授权码即可得到 Token。

授权码.png3. 使用服务

1. 通过 ChatGPT-Next-Web 部署

docker run -d -p 3000:3000 \

-e OPENAI_API_KEY=ghu-xxxx \
-e CODE=your-password \
-e BASE_URL=http://your_ip:8099 \

yidadaa/chatgpt-next-web</code></pre><p style="">然后访问 <a target="_blank" rel="noopener noreferrer nofollow" href="#id-3.-shi-yong-fu-wu">http://your_ip:3000</a> 就能使用了!</p><p style="">如果配置了 <code>OPENAI_API_KEY</code> <code>BASE_URL</code> 以及 <code>CODE</code> 可以输入上面的 <code>your-password</code> ,然后到设置将模型修改为 <code>gpt-4</code>,就能使用了。</p><p style=""> 如果没有配置环境变量或者密钥过期,可以手动输入 API 网址和 TOKEN</p><p style=""><img src="/upload/访问密码.png" alt="访问密码.png" style="display: inline-block"><img src="/upload/设置.png" alt="设置.png" style="display: inline-block"><span fontsize="" color="">现在可以使用了:</span></p><p style=""><img src="/upload/聊天界面.png" alt="聊天界面.png" style="display: inline-block"></p>