如何利用 github copilot搭建 chatgpt-4 服务

如何利用 github copilot搭建 chatgpt-4 服务

Github Copilot 是 GitHub 开发 AI 助手,它可以帮助开发者编写代码。它是一个基于 OpenAI Codex 的 Visual Studio Code 插件,它可以为你提供代码提示、自动补全、自动修复、自动重构等功能。现在 Github Copilot 还支持chat功能,它的底层逻辑基于GPT-4,但是目前仅支持在vs code 中使用, 但是我日常开发环境是Golang,本文将介绍如何利用github copilot搭建chatgpt-4服务,使得我们可以在任何地方使用chatgpt-4。

本文涉及的开源组建

  • ChatGPT-Next-Web One-Click to get a well-designed cross-platform ChatGPT web UI, with GPT3, GPT4 & Gemini Pro support.
  • copilot-gpt4-service
  • 一个 aws ec2 服务器, 我们需要再上面运行 copilot-gpt4-service 服务,您也可以选择您喜欢的云服务商。或者在本地运行都可以。
  • Vercel 一个免费的静态网站托管服务,我们需要再上面部署 ChatGPT-Next-Web 服务
  • cloudflare 一个免费的cdn服务,我们用来解析域名。

获取 GitHub Copilot token

请参考这个文档 [GitHub Copilot token](https://github.com/aaamoon/copilot-gpt4-service/blob/master/README_CN.md#%E8%8E%B7%E5%8F%96-copilot-token)
在 mac 电脑上,您可以使用下面的命令获取 token

1
bash -c "$(curl -fsSL https://raw.githubusercontent.com/aaamoon/copilot-gpt4-service/master/shells/get_copilot_token.sh)"

如图所示。您需要将token 复制到剪切板,后面会用到。

运行 copilot-gpt4-service 服务

  1. copilot-gpt4-service 支持docker部署,官方提供 docker-compose 文件,我们只需要修改一下环境变量即可。
    image-20240112110203576
  2. 再nginx 上添加一个server
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name chat.example.com;

    ssl_certificate /etc/nginx/cert/public.pem;
    ssl_certificate_key /etc/nginx/cert/private.key;
    location / {
    proxy_pass http://127.0.0.1:8086/; # copilot-gpt4-service addr
    rewrite ^/(.*)$ /$1 break;
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade-Insecure-Requests 1;
    proxy_set_header X-Forwarded-Proto https;
    }
    }
    别忘记 重新加载nginx 配置文件
  3. 再cloudflare 上添加一个域名解析 chat.example.com 解析到nginx 服务器的ip地址

再 Vercel 上部署 ChatGPT-Next-Web 服务

ChatGPT-Next-Web 支持 一键部署到vercel。 您不用改动任何东西。

部署完成后,您可以在vercel 上添加一个个性化的域名。比如 chatnext.example.com

测试

打开浏览器,输入 chatnext.example.com, 点击左下角的设置按钮,选择自定义接口,输入 https://chat.example.com, api token 使用 第一步复制的 GitHub Copilot token, 点击保存,然后就可以开始聊天了。

ps: 我不知道这种做法是不是符合github copilot 的使用协议,但是我这么做只是为了方便我的使用,我不会分享给其他人使用,如果您也部署了 自己的服务,也请不要分享给其他人使用。


如果您喜欢我的文章,麻烦给我follow、鼓掌,这对我很有帮助。谢谢!