前言
现在用 AI,很多人都有过类似体验。同样是一句需求,有时能得到接近成品的结果,有时却像一份没做完的草稿。让它写文案、做网页、改代码,看起来都能完成,真正符合预期的地方却不多。接下来只能继续补要求、反复生成,聊天窗口越堆越长,结果依旧不稳定。
问题往往出在提示词。很多人心里知道想做什么,却很难一次说清目标、使用场景、限制条件和最终效果。需求说得太简单,AI 需要自己猜;补充得太零散,前后要求又容易互相打架。
Prompt Optimizer 可以把这一步单独拿出来处理。输入一段普通描述后,它会帮助整理和优化提示词,支持继续迭代、测试、分析和结果对比,让你能看出一段提示词到底改进了什么。后面会用一个实际案例跑一遍,看看同一个需求经过整理之后,最终结果是否真的会变好。
1 Prompt Optimizer 是什么
Prompt Optimizer 是一个开源的提示词优化工具。面对一段比较粗的需求,它会从目标、使用场景、限制条件和输出形式等方面进行整理,让原本零散的想法变成更完整的提示词。
整理完成后,还可以继续补充和修改,再把同一份提示词交给不同模型测试,对比生成结果,保留更适合当前任务的版本。它更像一个提示词工作台,适合写文章、做网页、改代码、生成工具等各种需求。
2 部署前准备
本文以飞牛 NAS 为例,通过 Docker 部署 Prompt Optimizer。开始之前,需要准备一台已经安装飞牛 fnOS,并且能够正常运行 Docker 的 NAS。
如果使用的是其他品牌 NAS、Linux 主机或小型服务器,只要支持 Docker,也可以参考后面的步骤进行部署。
本次使用的是一台搭载 RK3566 处理器的小主机,安装了 ARM 版飞牛 fnOS,配备约 4GB 内存和 8GB eMMC 存储。
Prompt Optimizer 主要提供网页操作界面,提示词优化过程由接入的大模型完成,对 NAS 的处理器、内存和存储空间要求都不高。NAS 主要负责运行网页服务,因此这类 ARM 小主机也能够承担。
部署前需要准备下面这些内容。
- 已经安装并正常运行的飞牛 fnOS
- 飞牛 NAS 中已经安装 Docker
- NAS 能够正常访问网络并拉取镜像
- 一个可用的大模型 API Key
Prompt Optimizer 支持 OpenAI、DeepSeek、Gemini、智谱、硅基流动和 MiniMax 等模型服务。API Key 暂时不需要写入 Docker 容器,部署完成后可以在网页中添加。
如果也想使用 RK3566 小主机安装 ARM 版飞牛 NAS,可以参考下面这篇教程。
https://www.cpolar.com/blog/tutorial-on-installing-arm-version-of-feibo-nas-system-on-rk3566-device-even-beginners-can-easily-complete-it
教程中记录了系统写入和基础配置过程:
准备好飞牛 NAS 与 Docker 环境后,就可以开始部署 Prompt Optimizer。
3 使用Docker部署Prompt Optimizer
飞牛 NAS 本身支持 Docker,所以这里不需要单独安装 Docker,只需要将其启用即可。
3.1 启用 Docker 和连接 SSH
首先打开飞牛 NAS 桌面的【Docker】,确认 Docker 服务已经开启。然后进入【系统设置】里的【SSH】,把 SSH 服务打开,后面的命令需要通过终端执行。
然后进入【系统设置】中,选择【SSH】,将其启用:
接着,电脑摁下【Win + X】键,选择【终端(管理员)】打开PowerShell窗口:
然后在终端输入如下ssh命令,进行远程连接你的飞牛Nas终端(注意命令中的用户名和IP更换为你自己设备的):
ssh rk3566@192.168.50.212
如下图所示:
接着,在终端执行如下命令,切换至root用户(输入密码时不会显示):
sudo -i
3.2 部署Prompt Optimizer
连接到飞牛 NAS 的终端后,执行下面的命令创建并启动 Prompt Optimizer 容器。
docker run -d --name prompt-optimizer -p 8081:80 -e ACCESS_USERNAME=admin -e ACCESS_PASSWORD=请改成自己的密码 --restart unless-stopped linshen/prompt-optimizer:latest
执行这条命令时,如果 NAS 中还没有对应镜像,Docker 会先自动下载镜像,再创建并启动容器,不需要单独执行 docker pull。
命令中的访问账号为 admin,请改成自己的密码需要替换成自己设置的密码。例如:
docker run -d --name prompt-optimizer -p 8081:80 -e ACCESS_USERNAME=admin -e ACCESS_PASSWORD=admin123456 --restart unless-stopped linshen/prompt-optimizer:latest
这里演示的密码不要直接照搬,建议使用自己设置的复杂密码。
其中,8081 是网页访问端口。如果这个端口已经被其他容器占用,可以将前面的 8081 换成其他空闲端口,后面的容器端口 80 不需要修改。
容器创建完成后,可以执行下面的命令查看运行状态:
docker ps
可以在列表中能够看到 prompt-optimizer,并且状态显示为 Up,说明容器已经正常启动。
接着在浏览器中打开:
http://192.168.50.212:8081
可以看到成功的打开了页面!这样就部署好了Prompt Optimizer了!
4 配置 AI 模型
Prompt Optimizer 本身不提供大模型算力。输入原始提示词后,它需要调用已经配置好的模型,才能完成优化、分析和结果测试。 进入 Prompt Optimizer 后,点击页面右上角的设置按钮,找到模型管理:
接着点击编辑按钮,进去编辑。然后进入deepseek官网的api keys页面,创建一个api key:
https://platform.deepseek.com/api_keys
复制下来后填写到【API密钥】中,然后在选择模型位置重新获取模型列表:

可以看到成功获取到模型列表了,代表配置成功了,接着点击保存按钮即可。
5 实测提示词优化效果
模型配置完成后,就可以开始优化提示词了。
为了方便观察前后的变化,这里使用一个比较常见的内容创作需求进行测试。假设手里有一部闲置安卓手机,准备把它改造成家庭监控,同时需要为这个方案写一段短视频口播文案。
如果直接向 AI 描述需求,很多人可能会这样写:
帮我写一段旧手机改造成家庭监控的短视频口播文案,时长一分钟左右。
这句话已经说明了主题和时长,但没有交代具体方案、目标观众、视频开场和表达方式。AI 只能根据自己的理解补充内容,因此生成结果可能符合主题,却不一定符合实际使用的方案。
5.1 优化原始提示词
回到 Prompt Optimizer 首页,将刚才准备好的内容粘贴到原始提示词输入区域。
帮我写一段旧手机改造成家庭监控的短视频口播文案,时长一分钟左右。
在页面中选择用于优化的模型。这里继续使用前面配置好的 DeepSeek,然后点击优化按钮:
等待模型处理完成后,页面右侧会显示优化后的提示词。原来只有一句话的需求,会被整理成一份更加完整的任务说明:
从优化结果可以看到,原来只有一句话的需求,被整理成了角色、能力、规则、工作流程和输出目标等多个部分。
其中明确了目标观众是家中有闲置手机、希望低成本搭建家庭监控的普通用户;文案需要控制在 220 至 260 字,开头三秒设置钩子,中间按照准备条件、核心操作和使用效果展开,结尾再自然收束。
5.2 对比优化前后的效果
接着我们可以直接在右侧区域,填写测试内容,用同一个模型测试【原始】和【v1】优化后的版本提示词做对比,然后点击全部测试按钮:
原始提示词生成的内容加入了标题、镜头动作和画面提示,更像一份短视频拍摄脚本。它介绍了旧手机安装监控 App、连接 Wi-Fi 和查看实时画面等步骤,不过整体比较零散,模型也自行决定了文案结构。
优化后的版本则更接近一段可以直接朗读的口播。开头先用闲置手机和购买监控设备的成本引出问题,中间按照准备条件、安装 App、手机配对和使用场景展开,最后再用省钱和旧物利用收尾。内容更加紧凑,也更符合一分钟短视频的节奏。
6 公网访问 Prompt Optimizer
目前 Prompt Optimizer 已经可以通过 NAS 的局域网地址访问。
http://192.168.50.212:8081
不过,这个地址只能在连接同一路由器的设备上打开。离开家里或公司网络后,电脑和手机就无法继续访问。
一种常见方式是配置公网 IP、端口转发和域名,但家庭宽带未必拥有公网 IPv4,路由器配置也相对麻烦。这里使用 cpolar 创建一条 HTTP 隧道,把飞牛 NAS 中的 8081 端口映射到公网。
Prompt Optimizer 部署时已经设置了访问账号和密码,因此从公网打开页面后,仍然需要完成身份验证。
6.1 安装cpolar
前面已经打开了ssh功能,我们再次连接进入飞牛NAS的终端:
ssh 飞牛用户名@你的Nas系统IP地址
进入终端中后输入如下命令,一键安装cpolar:
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
接着,在浏览器中输入飞牛NAS的IP地址+9200端口访问 web ui管理界面,如:
http://192.168.50.212:9200/
如果还没有账号,可以点击页面上的免费注册,进行注册账号。输入注册好的账号登录即可进入后台页面:
6.2 穿透配置 Prompt Optimizer
点击左侧菜单栏的【隧道管理】的【创建隧道】,进入创建隧道页面,隧道名称可以自定义,本地地址填写 Prompt Optimizer 的访问端口,然后点击创建:
接着,来到状态下的在线隧道列表,可以看到同一隧道2条不同协议的公网地址:
复制其中的公网地址,在浏览器中进行访问,以https为例:
可以看到,成功访问到了,左上角的地址已经变成穿透后的地址了,输入一下用户名密码登录测试一下:

完成验证后,就能进入 Prompt Optimizer。此时,即使电脑或手机没有连接 NAS 所在的局域网,也可以通过这个地址配置模型、优化提示词和对比生成结果。
免费版提供随机公网地址,适合临时在外使用,不过地址会定期变化。如果希望长期使用同一个地址,可以按需配置固定二级子域名。相关教程可以参考:
https://www.cpolar.com/blog/secondary-subdomain-name
需要注意,公网地址相当于给 Prompt Optimizer 增加了一个外部入口。建议使用独立的高强度访问密码,不要公开域名,也不要在截图中展示 API Key。没有远程使用需求时,可以暂停对应隧道。
另外,Prompt Optimizer 的模型配置和提示词数据主要保存在当前浏览器中。换一台电脑或手机打开公网地址时,原有配置不一定会自动同步,可能需要重新添加模型。
总结
Prompt Optimizer 将提示词优化、继续迭代和结果对比放进了同一个网页中。输入一段比较简单的需求后,它可以补充目标用户、内容结构、语言风格和输出限制,再通过同一个模型测试优化前后的效果。部署到 NAS 后,家中的电脑和手机也能通过浏览器使用。
- 原始需求越简单,优化后的提示词通常变化越明显,可以减少模型自行猜测的内容;
- 提示词变长并不代表结果一定更好,模型补充的软件、功能和使用场景仍然需要人工检查;
- Prompt Optimizer 本身不提供大模型算力,需要配置 DeepSeek 等模型的 API Key,调用产生的费用由对应平台收取;
- 模型配置和提示词数据主要保存在当前浏览器中,更换电脑、手机或清除浏览器数据后,可能需要重新配置;
- 公网访问前应设置独立的高强度密码,不要在截图或文章中公开 API Key 和访问凭据。
因此,Prompt Optimizer 更适合作为提示词整理和测试工具,而不是替代人工确认需求。写文案、做网页或修改代码前,可以先用它把零散想法整理清楚,再交给模型执行,通常能减少后续反复补充要求的次数。将工具部署在 NAS 后,局域网内可以随时打开;结合 cpolar 添加公网地址后,在外也能按需访问。
感谢您阅读本篇文章,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网 IP | 远程访问 | 搭建网站




























