5 分钟跑通 prompt-optimizer:从本地试用到 Docker 私有部署的完整指南
反复改提示词,模型输出还是平庸,问题往往在提示词本身。prompt-optimizer 负责重写增强原始提示词,并在测试区跑出优化前后的对比。纯客户端架构,数据与 API 密钥都留在本地。3 分钟跑通本地版,1 条命令完成 Docker 私有化部署,预置 8 家模型服务商。
🎯 它适合谁:提示词需要反复迭代的三类场景
- 做客服、销售、审稿类对话提示词,需要多轮测试验证稳定性
- 提示词资产要在团队内复用,需要版本历史、导出备份
- 要求私有化部署,密钥不出内网,访问加密码保护
隐私说明:纯客户端处理,提示词文本与密钥只发往你自己配置的模型服务商,不经过任何中间服务器。
🚀 三步拿到第一个结果:启动、配密钥、对比验证
从克隆到第一个可验证的优化结果,三步约 3 分钟。
1. 跑起来
前置环境:Node.js 24+、pnpm、Git。克隆仓库后装依赖、起开发服务:
git clone https://gitcode.com/GitHub_Trending/pro/prompt-optimizer
cd prompt-optimizer && pnpm install
pnpm dev
构建完成、本地地址弹出即可用。完整分步操作可查 docs/user/quick-start.md。
2. 接上密钥
打开右上角「设置 → 模型管理」,点选一家服务商(OpenAI、DeepSeek、Gemini 等),填入 API key 并保存。也可以在启动前用 VITE_OPENAI_API_KEY 这类环境变量预置,完整清单见 env.local.example。
3. 出第一个结果
左侧输入区写好提示词,选系统提示词或用户提示词模式,挑一个模板,点「开始优化」,首轮几十秒出结果。右侧推理过程解释了优化理由,不满意就点「继续优化」迭代。验证方式:打开右侧测试区,用同一条测试输入分别跑优化前后两条提示词,测试区的差距才是真凭据,不是主观感觉。结果满意就点收藏,存成可复用资产。
🧩 功能全景:一张表看懂能做什么
| 模块 | 一句话说明 |
|---|---|
| 智能优化 | 提示词一键优化 + 多轮迭代,区分系统 / 用户提示词模式 |
| 对比评估 | 单结果评估、多结果并排打分,判断优化是否真的变好 |
| 多模型支持 | 预置 OpenAI、Gemini、DeepSeek、Grok、智谱、SiliconFlow、MiniMax、ModelScope 等 |
| 图像生成 | 文生图、图生图、多图生成,支持风格迁移 |
| 高级测试 | 上下文变量管理、多轮对话测试、Function Calling |
| 收藏与模板 | 提示词资产带版本历史、可复现示例,支持整库导出 |
| MCP 协议 | 3 个工具对接 Claude Desktop 等 MCP 应用 |
| 多平台 | Web、Electron 桌面、Chrome 扩展、Docker 四端一致 |
图像生成走同一套回路。 一句「夜空中的悬浮图书馆」,会被扩写成带主体、空间关系和氛围锚点的关键视觉提示词,再进入优化与测试环节。
图里左侧是原始短句概念,右侧是补足主体结构与画面重心后的视觉提示词。
多轮变量测试看真实表现。 高级测试模式下引入上下文变量,跑完整多轮对话,观察提示词策略在连续交互里是否稳定,而不是单次问答的运气。
图中可看到替换商品、报价、底线等变量后,模型围绕价格分歧组织回复的多轮记录。
对比评估替代主观感觉。 单结果评估或多结果并排打分,判断哪版提示词更优,让迭代有依据。
页面展示了优化后的提示词在审查任务中的结构化输出与评估结论。
📦 私有化部署:一条命令拉起 Web 与 MCP
单条 docker 命令同时跑起 Web 界面与 MCP 服务,一个 1 核 1G 的容器就够用。
docker run -d -p 8081:80 --restart unless-stopped --name prompt-optimizer \
-e VITE_OPENAI_API_KEY=your_key \
-e ACCESS_PASSWORD=your_password \
linshen/prompt-optimizer
Web 界面在 http://localhost:8081,MCP 服务在同端口 /mcp 路径。多模型、密码保护、重启策略建议直接改 docker/docker-compose.yml。
| 变量 | 作用 |
|---|---|
VITE_<提供商>_API_KEY | 预置模型密钥,GEMINI / DEEPSEEK / GROK / ZHIPU / SILICONFLOW 等同理 |
ACCESS_USERNAME / ACCESS_PASSWORD | Web 访问账号密码,默认用户名 admin,不设置则无密码 |
MCP_DEFAULT_MODEL_PROVIDER | MCP 服务首选模型,支持 custom_<suffix> 指向自定义模型 |
MCP_LOG_LEVEL | MCP 日志级别:debug / info / warn / error |
⚠️ 公开的前端部署不要把密钥预置进 VITE_* 变量。 这些值会打进浏览器产物、任何人可见。正确做法是不预置,让每个用户在自己的设置面板里填。
⚠️ 真正的成本在模型调用。 优化加对比评估链路会多次调用模型。低预算场景用一个小模型跑测试区,大模型留给最终评估。
⚙️ 进阶配置:接入自有模型与 MCP 生态
三条进阶路径都靠环境变量完成,不改一行代码。
接入任意 OpenAI 兼容模型。 三组环境变量,后缀自取(字母、数字、下划线、连字符,不超过 50 字符,数量不限)。以本地 Ollama 为例:
VITE_CUSTOM_API_KEY_ollama=your-key
VITE_CUSTOM_API_BASE_URL_ollama=http://localhost:11434/v1
VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b
新模型立刻出现在模型列表里。可选加 VITE_CUSTOM_API_PARAMS_<suffix> 注入额外请求参数,规则见 docs/user/multi-custom-models.md。
细调模型参数。 每个模型支持 llmParams 高级参数,temperature、max_tokens、timeout 按 key-value 填入,按场景收紧或放开输出边界。
对接 MCP 生态。 Docker 部署时 MCP 服务随容器启动,暴露 optimize-user-prompt、optimize-system-prompt、iterate-prompt 三个工具,用法见 docs/user/mcp-server.md。
🧭 边界与演进:先知道限制再判断合不合适
Web 版受浏览器 CORS 限制,连不上跨域策略严格的商业 API,这类场景换桌面版(无 CORS 限制、可直连本地 Ollama)或走 API 代理。数据持久化在浏览器本地存储(桌面版用本地文件库),靠导出备份。目前没有多用户协作与团队权限。
- 工作区 / 项目管理,把提示词集合变成可管理的项目
- 与 Prompt Garden 的资产互通做得更深
- 模型与图像生成服务商持续扩充
核心回路——优化、测试、存成可复用资产——已经跑通。你的上手成本只是 3 分钟本地试用或 1 条命令部署,之后每次提示词迭代都能用测试对比验证,并沉淀为可复用资产。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考






