最近在写产品需求文档(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部署的,本文予以记录。
- 首先把作者的项目整体下载到本地。
- 然后在宝塔的任意目录中新建网站的目录,这里有一点注意,等下docker-compose.yml中的目录必须跟当前目录所对应,不然安装不了。我这里是在
www/wwwroot
目录中新建了fastgpt
的文件夹,并且将源码中的fastgpt
文件夹中的所有文件,都上传到服务器的fastgpt
目录中。
- 然后编辑
docker-compose.yml
文件,将文件中不需要用到的都删除,我这里主要删除了https,以及一些用不到的配置项。把邮箱跟授权码配置好,把openai的key配置好基本就可以了。
- 接着配置下
www/wwwroot/fastgpt/nginx
中的nginx.conf
文件,把多余的都去掉,只留下当前http请求的端口,这点跟上面docker-compose.yml中的port配置的是一样的。(其实这一步我配置了我也不知道到底有没有生效)
- 配置完成之后通过终端进入到当前目录
www/wwwroot/fastgpt
,然后执行sh run.sh
命令即可进行安装,安装成功后见下图:
- 安装成功后访问:ip:端口即可进入fastGPT的首页,自行注册以及登录便可开始使用。如果不能访问请在云服务器与宝塔面板中都放行这个搭配的端口。
- 如果需要使用域名访问,则可以通过反向代理的方式,我们之前的博文有写过如何反向代理,这里就不赘述了。
项目描述
这个项目我最欣赏的就是应用市场功能与知识库功能,我在一开始的背景中就介绍了,这种提示词应用商店很有意思,然后知识库功能也非常牛,不过我都还没有进一步探索。
我尝试了将整本书放进知识库,然后进行提问,效果似乎还不错。
Q&A
作为一个在docker领域的纯小白,其实回过头来写的时候,好像安装很简单一样,实际上遇到了非常多的问题,这里也求助了群里的大佬,还有前公司开发的帮助。
- nginx源的问题,很多次不能推送镜像:把镜像源换成腾讯云的;
- docker-compose.yml文件配置的问题:这个最坑,而且我自己都讲不清楚那个配置到底是干什么的,就在群里一边问一边改;
- ng的配置,这个直接是我前公司开发帮我改好直接运行的;
- fastGPT ADMIN:这个是最后群里问大佬得知的一个后台;
其它还有很多问题,但是我很多都不记得了,我国内服务器是我从头到尾自己搭的,今晚搭好之后我又重装了一遍docker,现在就搭不起来了。
参考资料
fastGPT常见问题
fastGPT项目地址
chatGPT中文调教指南
chatGPT 咒语
chatGPT 角色调教指南
评论区