ChatGPT 虽然只是一个对话型人工智能,但已经震惊了全世界,有人甚至认为人工智能的奇点已经到来。未来一定会有很多人失业,从工业革命开始,每出现一次重大的技术变革,就必然会有一批人失业,我们要直面现实,承认自己的工作会被 AI 代替,你逃避也罢,无视也罢,都没有用,改变不了事实。
虽然目前网上基于 ChatGPT 的产品已经琳琅满目,但很多人还是觉得 ChatGPT 对自己的生活并没有产生多大的影响。但是你忽略了一个事实,ChatGPT 才问世几个月而已,基于 ChatGPT 的应用场景目前还在探索中,很多场景还是把 ChatGPT 当成一个玩具,所以对大家的工作和生活并没有产生重大的影响。
现在我们来想象一个场景,假设有这样一个机器人,它对某个开源项目文档的内容了如指掌,就像一个全知全能的神,你对这个产品的使用有任何疑问,都可以直接问它,它会立刻给你一个准确的答案,这会不会彻底改变你的项目文档使用体验?
现在开源项目的标配都有微信群和 Slack 群或者 Discord 群,你把这个全知全能的神接入这些社群,任何人的任何问题都可以得到及时有效的回复,这该有多爽?
你再想想我们之前都是怎么使用项目文档的,有的文档会提供一个搜索框,你可以直接通过关键词进行搜索,它会给你呈现一大堆跟你的关键词相关的内容,但是究竟这些内容是不是你想要的,你需要自己一个一个点开链接去看一看,找一找,这个筛选和判断过程非常浪费时间和精力。
还有的项目文档更惨,连搜索功能都没有,你需要自己根据目录去判断哪个章节可能有你想要的内容,体验更糟。。。
现在我告诉你还真有这样一个机器人,它大大简化了在项目文档中寻找信息的过程。由于它集成了强大的 ChatGPT,开发人员可以轻松地提出文档涉及的相关项目的问题,并及时得到准确的答案,让你告别耗时的手动搜索。它就是 DocsGPT!!
项目地址:https://github.com/arc53/DocsGPT
我 Fork 了该项目,并将 Web 界面语言改成了中文,英文不太给力的同学可以直接使用我的项目🐶 https://github.com/yangchuansheng/DocsGPT
使用起来非常简单,首先在浏览器中输入访问地址 https://docsgpt.icloudnative.io/ 打开 Web 界面,然后输入自己的 OpenAI API Key:
你可以选择特定的文档来进行提问,比如我这里选择了 Pandas:
默认只支持部分文档,包含 pandas、langchain、python 等。
但是我们可以通过训练其他文档来使它支持任意文档。以我的中文版 DocsGPT 为例,我就拿它训练了一个让前端能够搞全栈的神奇的工具 laf。
有搞云开发的,有可能知道 Unicloud。laf 就是类似 Unicloud 的东西,也是一个一体化的开发平台。
说简单点,让前端搞后端,那么需要几几样东西,首先就是存放东西的数据库,还有就是用来存放图片文件的文件存储,最后就是前端要去调用后端服务的接口。
这三件套,laf 平台都集成了,大大降低了门槛,只要你懂 js,就可以去写后端的业务了,其他都不用你操心。
这是 laf 的官方文档:https://www.lafyun.com/
文档的 GitHub 链接在这里:https://github.com/labring/laf/tree/main/docs
我要做的事情很简单,先把 DocsGPT 和 laf 项目 clone 到本地,然后进入 DocsGPT 项目的 scripts
目录,新建目录 inputs
,再将 laf 项目中的 docs
目录复制到 inputs
目录下。
接下来需要在 scripts 目录下创建一个文件 .env
,输入以下内容:
OPENAI_API_KEY=<your-api-key>
请将 <your-api-key>
替换成你的 OpenAI API Key。
最终执行以下命令就会开始训练:
$ python ingest.py ingest
训练完成后,会生成两个文件:index.faiss
和 index.pkl
。将这两个文件移动到 application
目录即可完工。
最后按照正常的步骤启动 DocsGPT 即可。
为了方便大家快速部署,我还构建了 Docker 镜像,可以直接通过以下命令部署:
$ docker run -d --name docsgpt ghcr.io/yangchuansheng/docsgpt:zh-cn
同时我还提供了一个 Demo 页面,想直接体验的同学可以访问 Demo 页面:https://docsgpt.icloudnative.io/
❝注意:如果出现异常(比如机器人没有回应),可以清空页面缓存重试。