前段时间遇到一个小问题,后来发现这是个挺常见的坑,顺手整理一篇笔记。
前言
刚着手用 AI 时,提示词其实很好管理。
常用的就那么几条,放在记事本里随时复制就行。但随着写这篇、做图、写代码和方案越来越多,Prompt 很快会散到聊天记录、微信收藏、文档和浏览器书签里。同一条提示词还可能被改出好几个版本,真正需要使用时,反而着手想不起“上次效果最好的是哪一条”。
prompts.chat 适合解决的就是这个问题。
它可以把提示词统一整理到一个 Web 平台中,为每条 Prompt 保存名称、说明、变量、输出类型和效果示例,还可以从社区导入已有提示词,后续再通过搜索和分类快速调用。
本文会在飞牛 NAS 上部署 prompts.chat,实际创建一条提示词、上传效果图,并体验社区提示词导入。局域网确认正常以后,再通过 cpolar 给本地 7701 服务增加远程访问入口和固定二级子域名。
真正想解决的不是“再收藏更多 Prompt”,而是让那些已经验证过、以后还会重复使用的提示词,终于有一个固定的地方可以长期保存。
1 prompts.chat 是什么?
prompts.chat 是一个开源的 AI 提示词库项目,前身是很多人熟悉的 Awesome ChatGPT Prompts。它最早是一个用于整理 ChatGPT 提示词的开源列表,后来逐渐发展成了一个面向 ChatGPT、Claude、Gemini、Llama、Mistral 等多种 AI 助手的提示词社区和自托管平台。
截至目前,f/prompts.chat 仓库已经拥有约 164K Star、21.3K Fork,累计提交数超过 7,000 次,项目官方对它的定位也很明确:这是一个用于收集、发现和分享 AI 提示词的开源提示词库。它不仅可以在线浏览社区中的提示词,也支持自托管部署,方便个人或团队搭建自己的私有提示词管理平台。
简单来说,prompts.chat 解决的不是“和 AI 对话”的问题,而是“如何管理提示词”的问题。平时我们写这篇、写代码、做图、做方案时,都会积累很多好用的 Prompt。如果这些内容一直散落在聊天记录、备忘录和文档里,时间一长就很难复用。而 prompts.chat 就可以把这些提示词统一收集起来,通过分类、标签、搜索等方式进行整理。
2 Docker 一键部署prompts.chat
飞牛 NAS 本身支持 Docker,因此这里不需要单独安装 Docker,只需要将其启用即可。
2.1 启用 Docker 和连接 SSH
首先打开飞牛 NAS 桌面的【Docker】,确认 Docker 服务已经开启。然后进入【系统设置】里的【SSH】,把 SSH 服务打开,后面的命令需要通过终端执行。
然后进入【系统设置】中,选择【SSH】,将其启用:
接着,电脑摁下【Win + X】键,选择【终端(管理员)】打开PowerShell窗口:
然后在终端输入如下ssh命令,进行远程连接你的飞牛Nas终端(注意命令中的用户名和IP更换为你自己设备的):
ssh rk3566@192.168.50.212
如下图所示:
接着,在终端执行如下命令,切换至root用户(输入密码时不会显示):
sudo -i
2.2 部署prompts.chat
连接上ssh终端后,直接在终端输入如下一键部署命令:
curl -fsSL https://gitee.com/jun-wan/script/raw/master/prompts-chat-manager/prompts-chat-manager.sh -o /tmp/prompts-chat-manager.sh && chmod +x /tmp/prompts-chat-manager.sh && /tmp/prompts-chat-manager.sh
执行后,会进入如下界面:
在如下界面,输入数字【1】,然后进行回车,依次进行自定义选择设置,即可着手拉取镜像进行部署:
部署完成如下图所示:
可以看到部署完成后,输出了访问的地址以及默认生成的管理员账号和密码,在浏览器访问测试一下:
可以看到,成功的访问到了页面啦!这样我们就成功的自建了一个提示词库啦!
3 简单体验
3.1 创建我的第一个提示词
点击右上角登录按钮,使用前面终端输出的管理员账号信息即可成功登录啦,接着,我们点击页面上的【+】号,进行创建提示词:
这里以一个简单的绘图提示词举例:
茶饮品牌520场景海报生成
用于生成适合520节日营销场景的横版奶茶海报,画面偏国风、浪漫、年轻化,适合公众号封面、B站封面、活动宣传图和社交媒体配图。提示词会突出奶茶产品、520氛围、中式美学、温柔色调和商业海报质感。
生成一张${name:茶颜悦色}的海报图,适合${scene:520场景},比例16:9
如下图:
然后下滚动到【AI响应】部分,选择该提示词响应的内容是文本,还是图片,还是视频。我这段提示词是图片,因此选择图片,选择对应的类型后,可以上传该提示词的效果,如下图:
点击创建后,如果你的提示词太短,可能会出现提示,需要点击重新上架,然后进后台审核上架即可,如下图操作:
重新上架后,回到首页,便可以看到我们创建的第一个提示词了:
点击名称,进入详情,可以看到详情显示了提示词名称、描述、响应效果、提示词、运行、评论等多种功能:
这样,第一个提示词就创建好啦!点击运行,然后选择对应的预设跳转,还会自动将该提示词填写到官网的对话框中(注意:个别网站需要一定的网络环境才可以访问):
3.2 导入官方提示词库
回到后台管理面板,然后选择提示词页面,选择从社区导入,如下图:
点击导入后会在线将官方提示词导入进来,然后回到首页,就可以看到已经有许多的提示词啦:
到这里,prompts.chat 的基础功能就体验得差不多啦!既可以自己创建提示词,也可以从官方社区导入现成的提示词库。对于经常写这篇、生成图片、折腾 AI 工具的人来说,把这些 Prompt 统一放在 NAS 上管理,确实比散落在微信收藏、文档和聊天记录里舒服很多。
4 穿透 prompts.chat 以实现公网访问
本地提示词库跑起来以后,还有一个很现实的问题:在家用着很方便,一旦离开局域网就打不开了。尤其是写文章、做图、写代码时,很多 Prompt 都是临时要用才想起来找,如果 prompts.chat 只能通过 NAS 内网 IP 访问,那提示词虽然整理好了,真正需要的时候还是拿不到。
因此接下来使用 cpolar 做内网穿透,把 NAS 上的 prompts.chat 映射到公网。这样这个提示词库就不只是“部署成功”,而是可以在手机、公司电脑、外出网络环境下随时访问。
4.1 什么是 cpolar?
cpolar 是一款内网穿透工具,可以把局域网内运行的服务映射到公网。
简单来说,只要服务已经在本地跑起来,比如本文中的 prompts.chat 网页 7701 端口,就可以通过 cpolar 创建公网访问地址。这样外部设备不需要配置路由器端口转发,也能远程访问本地服务。
cpolar 支持 Windows、macOS、Linux、树莓派、群晖 NAS 等平台,也适合飞牛 NAS 这类支持 SSH 和 Docker 的设备使用。
4.2 安装 cpolar
回到 SSH 终端窗口,也就是前面连接飞牛 NAS 的终端,执行下面命令安装 cpolar:
sudo curl https://get.cpolar.sh | sh
如下图所示:
安装完成后,执行下面命令查看 cpolar 服务状态:
sudo systemctl status cpolar
如下图所示:
如果状态中显示 active (running)就说明 cpolar 已经正常启动。
接着,在浏览器中输入下面地址,访问 cpolar 的 Web UI 控制台,例如我这里的飞牛 NAS IP 是 192.168.50.212,所以访问地址就是:
http://192.168.50.212:9200
如下图所示:
可以看到,已经成功进入 cpolar 的 Web UI 页面。如果还没有注册 cpolar 账号,也可以点击页面底部的注册入口先完成账号注册。
4.3 将 Hermes WebUI 映射到公网
注册好账号以后,回到该页面进行登录即可,登录成功后,进入侧边的【隧道管理>隧道列表】,可以看到有2条隧道:
选择website这条隧道,点击编辑进行修改(或者点击创建新的隧道),填写参考如下图所示:
创建或者更新完成后,接着点击【状态>在线隧道列表】,可以看到同一个隧道生成了两个公网访问地址,一个是 http协议,另一个是 https协议:
这里以https为例,访问测试一下:
可以看到,成功的访问到了飞牛nas上部署的prompts.chat提示词界面,已经支持外网访问啦!
5 固定二级子域名
虽然前面我们使用 cpolar 的永久免费套餐版成功实现了内网穿透,但免费版的随机域名存在一些不便之处:域名又长又难记忆,而且每隔 24 小时左右就会自动变化一次。这意味着每次域名变化后,我们都需要重新分享新的地址,使用起来相当不方便。
为了解决这个问题,cpolar 提供了固定二级子域名功能。只需升级到任意付费套餐,就可以配置一个固定不变、简短易记的专属域名,彻底告别域名频繁变化的烦恼。下面我们来看一下如何配置固定二级子域名。
5.1 设置二级子域名
首先,进入官网的预留页面:
https://dashboard.cpolar.com/reserved
然后,选择预留菜单,即可看到保留二级子域名项,填写其中的地区、名称、描述(可不填)项,然后点击保留按钮,操作步骤图如下:
列表中显示了一条已保留的二级子域名记录:
- 地区:显示为China。
- 二级域名:显示为prompts01。
5.2 修改隧道为子域名方式
进入侧边菜单栏的【隧道管理】下的【隧道列表】,可以看到名为【 prompts-chat】的隧道:
点击【编辑】按钮进入编辑页面,修改域名类型为【二级子域名】,然后填写前面配置好的子域名,点击更新按钮:
接着来到【状态】菜单下的【在线隧道列表】可以看到隧道名称为【prompts-chat】的公网地址已经变更为【二级子域名+固定域名主体及后缀】的形式了:
这里以https访问并登录测试一下:
访问成功!并且也可以成功的登录,现在,你的prompts.chat提示词库已经拥有了一个固定的公网访问地址。
总结
prompts.chat 真正好用的地方,并不是它里面一开始有多少提示词。
社区里的 Prompt 再多,如果最终只是继续收藏,过一段时间依然会回到原来的问题:哪些自己真正用过、哪一版效果更好、某个提示词到底适合生成文字还是图片,还是需要重新翻记录。
自建以后更有价值的是,可以把这些信息逐渐变成自己的东西。
提示词正文负责保存具体指令,描述负责记录使用场景,变量让同一个模板可以重复使用,效果图则可以直接告诉未来的自己“这条到底生成过什么”。时间久了以后,这套库保存的就不只是 Prompt 本身,还有自己实际使用 AI 的经验。
通过 cpolar 增加远程入口以后,在公司、手机或其他网络环境中也可以继续打开这套提示词库。不过既然里面可能逐渐积累工作模板、客户要求甚至内部流程,公网使用时应及时修改默认管理员密码,也不要随意公开管理地址。
另外,Prompt 并不存在“一条永久通吃所有模型”的版本。模型升级、参数变化甚至不同平台之间,都可能让同一段提示词产生不同结果。
生成过什么”。时间久了以后,这套库保存的就不只是 Prompt 本身,还有自己实际使用 AI 的经验。
通过 cpolar 增加远程入口以后,在公司、手机或其他网络环境中也可以继续打开这套提示词库。不过既然里面可能逐渐积累工作模板、客户要求甚至内部流程,公网使用时应及时修改默认管理员密码,也不要随意公开管理地址。
另外,Prompt 并不存在“一条永久通吃所有模型”的版本。模型升级、参数变化甚至不同平台之间,都可能让同一段提示词产生不同结果。
所以真正值得长期积累的,不只是提示词文本,而是提示词、适用场景和实际效果之间的对应关系。
暂时整理到这里。以上都是个人理解,可能有疏漏,欢迎指正。
评论 (0)
暂无评论