前语
最近ChatGPT好火,也发明了很多优秀的使用
于是乎,我也想出一篇教程,带领我们打造一款免费 ChatGPT 使用。
准备工作
▼ 搭建免费服务器 ▼
薅免费服务器,引荐注册Vercel
▼ 搭建免费数据库 ▼
引荐注册supabase
▼ 下载使用源码 ▼
下载项目模板,或许我们能够fork到自己的github进行修改
布置使用
▼ 创立数据库 ▼
注册完supabase之后,初始化sql,项目中supabase\migrations\20230406025118_init.sql
▼ 创立使用 ▼
最快的方法直接引用我的项目
创立使用
选择使用
导入你的使用代码
点击布置即可
装备openAI token key变量
装备supabase变量
装备之后,重新布置一下使用
优化答案
为什么还要做这一步呢?由于用户一般会提问题都会很简单,所以可能会导致答案会很简单。
那怎么处理呢?
扩展!我们能够尽可能地给ChatGPT提供更多的关键词,让他的答案更加丰富。
完成方法:在项目中 /pages/docs/xxxx.mdx 创立markdown文件,发明相关的内容
完成原理
构建时
项目布置的时候,generate-embeddings.ts 里面的逻辑会解析mdx文件内容 插入到 nods_page、nods_page_section 表中。
embedding 字段存储了一大串的数字,这个是经过恳求ChatGPT解析得到向量数据(PS:可自行学习一下向量搜索,这个我也没深入了解)
插入是的数据如下:
运行时
- 用户建议恳求的时候,同样是经过恳求ChatGPT embeddings接口得到向量数据,然后和nods_page_section表中的embedding 字段进行匹配;
- 在过程2中得相关的关键词之后,经过组装数据,建议ChatGPT completions 会话接口;
- 给用户返回答案。
体验
好了,布置成功,此时我们能够经过拜访 interview-ai.vercel.app
界面如下
本地开发
- cp .env.example .env
- 在新创立的
.env
文件中设置OPENAI_KEY
。
# 装置pnpm
npm install -g pnpm@7.32.0
# 装置next
npm install next --registry=https://registry.npmmirror.com
# 装置项目依靠包
npm install --registry=https://registry.npmmirror.com
# 发动项目
pnpm dev
PS:本地开发会有一些小问题,openAI 接口需要署理,本地是无法直接恳求,需要改造一下代码走署理才行。
总结
Vercel 虽然是国外的服务器,但国内拜访还是挺快的,并且布置也很方便,主要是免费!!!
能够凭借开发模板快速构建AI使用