利用Github和Railway搭建专属的ChatGPT

本文涉及的产品
.cn 域名,1个 12个月
NLP自然语言处理_基础版,每接口每天50万次
NLP 自学习平台,3个模型定制额度 1个月
简介: 利用Github和Railway搭建专属的ChatGPT

!! 大家好,我是乔克,一个爱折腾的运维工程,一个睡觉都被自己丑醒的云原生爱好者。


这篇文章重新发表一次,之前加了一个小广告,对此深表抱歉。那个星球我去体验了
几天,从体验效果来看“一般”,里面一篇混乱,没有实际的东西,全是网上的一些文
章整理,然后一群小白在那里问问题。我已经退出了,各位自行考虑。


ChatGPT

什么是 ChatGPT

ChatGPT 是一个基于人工神经网络技术的自然语言处理模型,由 OpenAI 开发。它可以理解和生成自然语言,用于进行对话、翻译、文本摘要等任务。ChatGPT 是目前最先进的自然语言处理模型之一,它使用了大量的预训练数据和深度学习算法来实现高质量的自然语言处理能力。

ChatGPT 的工作原理

ChatGPT 是一个基于 Transformer 模型的自然语言处理模型,其工作原理可以分为两个阶段:预训练和微调。下面分别对这两个阶段进行详细介绍。

  1. 预训练阶段

ChatGPT 使用了大量的文本数据进行无监督的预训练,从而学习到了自然语言的表示方式。在这个阶段中,ChatGPT 使用了一种称为“掩码语言建模”的技术来训练模型。具体来说,它会将输入的文本中的一些单词随机掩盖掉,然后让模型去预测这些被掩盖掉的单词。这样的训练方式可以使得模型学习到单词之间的关系,从而获得更好的语言表示能力。

  1. 微调阶段

在预训练完成后,ChatGPT 可以通过微调来适应特定的任务。例如,对于对话任务,我们可以通过给 ChatGPT 提供一些已知的对话历史和当前回复来微调模型,从而使其能够更好地生成有意义的回复。在微调阶段中,ChatGPT 通常会使用有监督的学习方法,即使用带标注的数据进行训练,并通过优化损失函数来更新模型参数。总之,ChatGPT 的工作原理是通过预训练和微调两个阶段来学习自然语言表示,并在特定任务中使用这些表示来生成有意义的输出。

ChatGPT 的使用场景

ChatGPT 是一种通用的自然语言处理模型,它的使用场景非常广泛。以下是一些 ChatGPT 的主要应用场景:

  1. 对话系统:ChatGPT 可以被用来构建聊天机器人、智能客服等对话系统,通过学习大量的对话数据来生成自然流畅的回复。
  2. 机器翻译:ChatGPT 可以被用来进行机器翻译任务,即将一种语言的文本自动翻译成另一种语言的文本。
  3. 文本摘要:ChatGPT 可以被用来进行文本摘要任务,即从一篇较长的文章中提取出关键信息,并生成一份简洁的摘要。
  4. 问答系统:ChatGPT 可以被用来构建问答系统,即回答用户的问题。在这个场景下,ChatGPT 通常需要阅读和理解输入的问题,并通过搜索或推理来生成答案。
  5. 文本分类:ChatGPT 可以被用来进行文本分类任务,例如情感分析、垃圾邮件检测等。在这个场景下,ChatGPT 需要学习如何将文本映射到不同的类别。

哎,等等,这不都是说了一些废话么?到底用在哪呢?

这就看你具体的需求了,比如这篇文章上面的内容就是 ChatGPT 写的。

image.pngimage.png

还比如我叫它帮我写一个创建 pipeline 的步骤。

image.pngimage.png

这不比百度香?

下面就带搭建一个无需科学上网的 ChatGPT。

注册 ChatGPT

注册的步骤并不复杂,主要包含以下几步:

  1. 注册 ChatGPT 账号
  2. 通过短信接码平台[https://sms-activate.org/](https://sms-activate.org/)完成手机验证
  3. 通过[https://chat.openai.com/chat](https://chat.openai.com/chat)登录使用

获取 API Token

账号注册完成过后,通过https://platform.openai.com/登录。

image.pngimage.png

然后点击 Personal 获取 API Keys。

image.pngimage.png

创建一个新的 Secret Key 即可。

image.pngimage.png

获取 Github 代码

项目自己写?

不可能!白嫖才香。

https://github.com/Chanzhaoyu/chatgpt-web项目 fork 到自己的仓库中。

image.pngimage.png

这不快哉?

开始部署

买服务器?安装软件?安装 Docker?

No!!!

那样的成本太高了。这里我们直接用国外的部署网站,目前比较著名的有:

  • fly.io
  • render.com
  • railway.app
  • vercel.com

我们选取 raliway.app 来进行我们的部署工作,访问:https://railway.app/,点击 Login,选择 Github 登录,并进行相关授权:

image.pngUntitled 8.png

创建项目

点击New Project

image.pngimage.png

然后选择Deploy from Github repo

image.pngimage.png

然后选择 chatgpt-web 项目。

image.pngimage.png

然后点击Deploy Now即可。

部署过程中,会 Build 镜像,可以查看具体的日志。

image.pngimage.png

但是现在应用是无法正常启动的,因为我们没有配置ChatGPT API Key,报错如下:

image.pngimage.png

添加配置

为了能够正常启动,我们需要添加OPENAI_API_KEY或者OPENAI_ACCESS_TOKEN参数,我这里使用前者,另外还要添加一个PORT参数,默认3002端口。除此之外我还添加了AUTH_SECRET_KEY参数,主要是为我们自己的 GPT 增加一层访问控制,避免任何人都能使用。

添加完成后如下:

image.png

image.png

我们再来看应用日志,应用启动成功。

image.pngimage.png

访问

1、我们可以在 Settings 处生成一个随机域名,如下:

image.pngimage.png

然后就可以使用随机的域名访问了。

image.pngimage.png

2、使用自定义域名,前提是需要自己准备一个可用的域名。

首先,添加一个自定义域名。

image.pngimage.png

然后,添加一个 CNAME 即可。

image.pngimage.png

然后就可以对话了。

更新

如果主代码有更新,我们只需要到 Github 上同步最新的代码。

image.pngimage.png

然后 Railway 会自动更新。

关于 Railway

Railway 提供 5 美元,500 个小时/月的额度,用完了要么充钱,要么死亡,可以根据实际情况来选择,个人使用其实是足够了,无外乎多搞几个账号。

相关文章
|
7月前
|
人工智能 搜索推荐 大数据
GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
【2月更文挑战第13天】GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
88 2
GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
|
4月前
|
人工智能 算法 机器人
Github上5个实用的ChatGPT仓库
Github上5个实用的ChatGPT仓库
|
7月前
|
机器学习/深度学习 自然语言处理 IDE
GitHub Copilot 与 OpenAI ChatGPT 的区别及应用领域比较
GitHub Copilot 和 OpenAI ChatGPT 都是近年来颇受关注的人工智能项目,它们在不同领域中的应用继续引发热议。本文旨在分析和比较这两个项目的区别,从技术原理、应用场景、能力和限制、输出结果、能力与限制和发展前景等方面进行综合评估,帮助读者更好地了解这两个项目的特点和适用性。
629 0
|
4月前
|
开发工具 git 开发者
2024最简七步完成 将本地项目提交到github仓库方法
该文章提供了一个简洁的七步教程,指导用户如何将本地项目提交到GitHub仓库。
2024最简七步完成 将本地项目提交到github仓库方法
|
2月前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
90 3
|
4月前
|
存储 安全 Java
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
在一次意外中,作者因三年前将测试代码遗忘在GitHub上而遭遇了代码被他人fork的问题。为解决这一危机,作者详细介绍了如何通过GitHub的DMCA下架通知流程安全删除敏感代码,包括处理私人信息和商标侵权的具体步骤。本文不仅提供了实用的操作指南,还强调了及时响应的重要性,帮助读者避免类似风险
65 1
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
|
4月前
|
Rust 前端开发 JavaScript
Github 2024-05-20 开源项目周报 Top15
根据Github Trendings的统计,2024年5月20日当周共有15个项目上榜。按开发语言分类,项目数量如下:Python项目5个,TypeScript项目3个,C++项目2个,Jupyter Notebook项目2个,C、Go、Rust和C#项目各1个。介绍了多个值得关注的项目,包括ChatGPT桌面应用程序、Fooocus图像生成软件、Jellyfin媒体系统等。这些项目涵盖了多种功能和技术领域,值得关注和研究。
75 3
|
4月前
|
SQL JavaScript 前端开发
Github 2024-08-05 开源项目周报 Top15
根据 Github Trendings 的统计,本周(2024年8月5日统计)共有15个项目上榜。以下是根据开发语言汇总的项目数量: - Go 项目:4个 - JavaScript 项目:3个 - Python 项目:3个 - Java 项目:2个 - TypeScript 项目:2个 - C 项目:1个 - Shell 项目:1个 - Dockerfile 项目:1个 - 非开发语言项目:1个
147 2
|
4月前
|
人工智能 Rust JavaScript
Github 2024-08-26 开源项目周报Top15
根据Github Trendings的统计,本周共有15个项目上榜。以下是按开发语言汇总的项目数量:Python项目8个,TypeScript、C++ 和 Rust 项目各2个,Jupyter Notebook、Shell、Swift 和 Dart 项目各1个。其中,RustDesk 是一款用 Rust 编写的开源远程桌面软件,可作为 TeamViewer 的替代品;Whisper 是一个通用的语音识别模型,基于大规模音频数据集训练而成;初学者的生成式人工智能(第2版)则是由微软提供的18门课程,教授构建生成式AI应用所需的知识。
142 1
|
4月前
|
Rust Dart 前端开发
Github 2024-08-19 开源项目周报Top15
根据Github Trendings的统计,本周(2024年8月19日统计)共有15个项目上榜。按开发语言分类,上榜项目数量如下:Python项目最多,有7项;其次是JavaScript和TypeScript,各有3项;Dart有2项;HTML、PowerShell、Clojure和C++各1项。此外,还介绍了多个热门项目,包括Bootstrap 5、RustDesk、ComfyUI、易采集、Penpot等,涵盖了Web开发、远程桌面、自动化测试、设计工具等多个领域。
123 1