目 录CONTENT

文章目录

Docker部署实战:FastGPT项目打造优质ChatGPT体验

慧行说
2023-06-19 / 0 评论 / 0 点赞 / 1,030 阅读 / 1,870 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2023-06-19,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

最近在写产品需求文档(PRD)时,有一个场景,会有大量的重复工作,就是设计短信模板,比如我们需要用户下单时给卖家发短信,会有对应的短信模板。在阿里云申请短信模板时需要把短信模板中的变量生成为英文变量,并且用$(argument)这种格式包裹,类似下方这种样式:

${warehouse}你好,${seller}已安排存放于${address}的${category}放货${quantity}(具体放货信息见邮件),提货人${consignee}(身份证号${consigneeid},联系电话${consigneephone})将前往提货,请协助放货!

对于产品而言,我们会提前在短信服务商那边申请短信模板,因此我们一般会提前准备好下面这样的短信模板。

${仓储单位}你好,${卖家}已安排存放于${交货地}的{货物类目品种}放货${吨数}${计量单位}(具体放货信息见邮件),提货人${提货人姓名}(身份证号${提货人身份证号},联系电话${提货人联系电话})将前往提货,请协助放货!

然后把上面的带变量的短信模板自动输出给我,最好再给我一个json数据包,方便我调用接口测试,见下方:

{"warehouse":"某某仓库","seller":"某某公司","address":"陕西省延安市某某路","category":"大米","quantity":"1000.000吨","consignee":"张全蛋","consigneeid":"410811199911010101","consigneephone":"18888888888"}

我希望输入第二种,让chatGPT自动帮我输出1跟3,于是我自己写了下面的prompt:

我给你3个模块的内容,分别是模板内容、模板变量内容、测试json。示例如下:

模板内容
${仓储单位}你好,${卖家}已安排存放于${交货地}的{货物类目品种}放货${吨数}${计量单位}(具体放货信息见邮件),提货人${提货人姓名}(身份证号${提货人身份证号},联系电话${提货人联系电话})将前往提货,请协助放货!

模板变量内容
${warehouse}你好,${seller}已安排存放于${address}的${category}放货${quantity}(具体放货信息见邮件),提货人${consignee}(身份证号${consigneeid},联系电话${consigneephone})将前往提货,请协助放货!

测试json
{"warehouse":"某某仓库","seller":"某某公司","address":"陕西省延安市某某路","category":"大米","quantity":"1000.000吨","consignee":"张全蛋","consigneeid":"410811199911010101","consigneephone":"18888888888"}

接下来我会想你输入模板内容,你需要像我输出模板变量内容与测试json,明白的话回复我明白。

但是有一个痛点,那就是每次我都需要把我的prompt丢给chatGPT,然后再输入输出。我就在想,有没有一款开源的chatGPT应用,可以把prompt保存下来,同时也能分享给其他同事使用的产品,还真有,就是今天要介绍的开源项目:fastGPT AI,项目地址:点击进入项目github地址,我自己也用作者的项目搭了一个方便大家体验。fastGPT:点击进入,注册下即可体验。之前部署过一款php的,两者各有优劣。

项目部署

这个项目其实部署起来不复杂,但是因为网上资料太少,最多的就是作者在B站的部署视频跟另外一个创作者也是发了视频跟教程,但是基本上都不能用。我是在进入作者的问题反馈群后才解决了这些问题的。我是使用docker-compose部署的,本文予以记录。

  • 首先把作者的项目整体下载到本地。

image-20230619223819667

  • 然后在宝塔的任意目录中新建网站的目录,这里有一点注意,等下docker-compose.yml中的目录必须跟当前目录所对应,不然安装不了。我这里是在www/wwwroot目录中新建了fastgpt的文件夹,并且将源码中的fastgpt文件夹中的所有文件,都上传到服务器的fastgpt目录中。

image-20230619224247723

image-20230619224309748

  • 然后编辑docker-compose.yml文件,将文件中不需要用到的都删除,我这里主要删除了https,以及一些用不到的配置项。把邮箱跟授权码配置好,把openai的key配置好基本就可以了。

image-20230619224547723

  • 接着配置下www/wwwroot/fastgpt/nginx中的nginx.conf文件,把多余的都去掉,只留下当前http请求的端口,这点跟上面docker-compose.yml中的port配置的是一样的。(其实这一步我配置了我也不知道到底有没有生效)

image-20230619224653907

  • 配置完成之后通过终端进入到当前目录www/wwwroot/fastgpt,然后执行sh run.sh命令即可进行安装,安装成功后见下图:

image-20230619225200223

  • 安装成功后访问:ip:端口即可进入fastGPT的首页,自行注册以及登录便可开始使用。如果不能访问请在云服务器与宝塔面板中都放行这个搭配的端口。

image-20230619225641514

  • 如果需要使用域名访问,则可以通过反向代理的方式,我们之前的博文有写过如何反向代理,这里就不赘述了。

项目描述

这个项目我最欣赏的就是应用市场功能与知识库功能,我在一开始的背景中就介绍了,这种提示词应用商店很有意思,然后知识库功能也非常牛,不过我都还没有进一步探索。

image-20230619225914894

我尝试了将整本书放进知识库,然后进行提问,效果似乎还不错。

Q&A

作为一个在docker领域的纯小白,其实回过头来写的时候,好像安装很简单一样,实际上遇到了非常多的问题,这里也求助了群里的大佬,还有前公司开发的帮助。

  • nginx源的问题,很多次不能推送镜像:把镜像源换成腾讯云的;
  • docker-compose.yml文件配置的问题:这个最坑,而且我自己都讲不清楚那个配置到底是干什么的,就在群里一边问一边改;
  • ng的配置,这个直接是我前公司开发帮我改好直接运行的;
  • fastGPT ADMIN:这个是最后群里问大佬得知的一个后台;

其它还有很多问题,但是我很多都不记得了,我国内服务器是我从头到尾自己搭的,今晚搭好之后我又重装了一遍docker,现在就搭不起来了。

参考资料
fastGPT常见问题
fastGPT项目地址
chatGPT中文调教指南
chatGPT 咒语
chatGPT 角色调教指南

0

评论区