如何优化提示词:prompt-optimizer 从浏览器到 MCP 的完整指南
【免费下载链接】prompt-optimizerAn AI prompt optimizer for writing better prompts and getting better AI results.项目地址: https://gitcode.com/GitHub_Trending/pro/prompt-optimizer
上次我让 AI 写产品复盘,它回了我一堆正确的废话。我改了三轮措辞,越改越糟。后来把这段 prompt 丢给 prompt-optimizer,它把提示词本身重写了一遍,补上缺失的上下文、约束和结构,再用改完的版本实测一轮——输出这才像回事。
prompt-optimizer(提示词优化器)干的事一句话就能说清:输入一段提示词,输出一段更好用的提示词。它有 Web 应用、桌面端、Chrome 扩展、Docker 四种形态,你的 prompt 和 API 密钥全程留在本地。
图里左侧是原始提示词与优化结果,右侧测试区可以直接对比优化前后的输出差异。
先看你是不是需要它
- 经常写 prompt、对输出质量不满意:适合,这是它的主场。
- prompt 和密钥不想出本机,想用本地 Ollama 或内网网关:适合,纯客户端架构支持任意 OpenAI 兼容端点。
- 只是随手和 AI 聊天、不想调 prompt:跳过,默认内置模型够用,不用折腾。
它怎么工作
prompt-optimizer 用大模型重写你的提示词:补上缺失的上下文、约束和输出格式,然后把重写结果在测试区跑一轮,让你直接对比优化前后。它的差异点在架构:纯客户端,请求从浏览器或桌面端直连 AI 服务商,不经过任何中间服务器,所以公开部署时数据也只存在你自己的浏览器里。
场景一:工位上随手改一条 prompt——浏览器扩展
这个场景解决"只想快速改一条 prompt,不想专门开一个应用"。步骤:
- 克隆仓库并构建扩展:
git clone https://gitcode.com/GitHub_Trending/pro/prompt-optimizer cd prompt-optimizer pnpm install pnpm build:ext- 打开
chrome://extensions/,开启"开发者模式",点"加载已解压的扩展程序",选packages/extension/dist。 - 点工具栏图标打开优化器,填模型密钥,选中一段 prompt 点优化。
值得留意的细节:packages/extension/public/manifest.json 里"permissions": []——扩展没申请 storage、tabs 这类权限,配了"offline_enabled": true可离线加载,最低要求 Chrome 88。
同一条角色 prompt,优化后从泛泛的"反方意见"变成了有结构、有证据要求的评审。
退路:不想本地构建,直接从 Chrome 应用商店安装扩展,上面四行命令全省掉。
场景二:接上本地模型——自定义端点配置
这个场景解决"不想用 OpenAI 官方 API,想用本地 Ollama 或公司内网网关"。OpenAI、Gemini、DeepSeek 之外,它允许用环境变量挂任意 OpenAI 兼容端点,数量不限,每个模型一组带后缀的变量:
| 变量 | 示例值(Ollama) | 说明 |
|---|---|---|
VITE_CUSTOM_API_KEY_qwen3 | ollama | 必填,鉴权密钥,本地服务随便填 |
VITE_CUSTOM_API_BASE_URL_qwen3 | http://localhost:11434/v1 | 必填,API 地址 |
VITE_CUSTOM_API_MODEL_qwen3 | qwen3:8b | 必填,模型名 |
VITE_CUSTOM_API_PARAMS_qwen3 | {"temperature":0.7} | 可选,注入请求体 |
VITE_CUSTOM_API_HEADERS_qwen3 | {"x-tenant-id":"a"} | 可选,网关附加头 |
想要第二个模型,换一组后缀再来一遍,扩展的模型管理里会同时看到它们,完整规则见 docs/user/multi-custom-models.md。
值得留意的细节:三个必填变量缺一个,该模型会被整体跳过而不是报错;PARAMS里的model、messages、stream是保留字段,写了也会被自动忽略,防止覆盖核心请求结构。
一句粗略的诗歌诉求,被补成了要素完整的创作指南。
退路:默认模型够用就跳过这一步,不用碰环境变量。
场景三:给别的 AI 应用装个优化助手——MCP 服务器
这个场景解决"想在 Claude Desktop 这类应用里直接调优化器,不用来回切窗口"。MCP 服务器把三件事封装成标准工具:optimize-user-prompt(优化用户提示词)、optimize-system-prompt(优化系统提示词)、iterate-prompt(针对具体问题迭代)。Docker 镜像里 MCP 随 Web 应用一起启动:
docker run -d -p 8081:80 \ -e VITE_OPENAI_API_KEY=your-openai-key \ -e MCP_DEFAULT_MODEL_PROVIDER=openai \ --name prompt-optimizer \ linshen/prompt-optimizer起来后 Web 界面在http://localhost:8081,MCP 服务在http://localhost:8081/mcp。接 Claude Desktop 就是在它的services.json里加一行:
{ "services": [ { "name": "Prompt Optimizer", "url": "http://localhost:8081/mcp" } ] }值得留意的细节:docker/nginx.conf 里/mcp路由显式写了auth_basic off——MCP 端点不受ACCESS_PASSWORD设置的 Web 访问保护,所以 8081 端口不要直接暴露公网。
MCP 工具背后的优化效果:小模型从泛泛附和被拉回结构化评审,给出具体修改建议。
退路:不想搭服务,直接在扩展或桌面端用,效果相同,MCP 只是给别的客户端开的门。
部署方式怎么选
| 方式 | 适合谁 | 怎么起 | 注意什么 |
|---|---|---|---|
| Chrome 扩展 | 个人使用,零服务器成本 | 构建后加载packages/extension/dist | 数据存浏览器本地,密钥不用反复填 |
| 桌面端 | 接本地模型、想避开浏览器 CORS | 下载各平台安装包 | 选安装包格式才有自动更新 |
| Docker | 团队共享、私有服务器 | docker run -p 8081:80 | 一个端口同时提供 Web 和/mcp |
| Vercel 公开 | 快速公开分享 | pnpm build:web,产物在packages/web/dist | VITE_*变量会打进前端产物,别塞真实密钥;建议配ACCESS_PASSWORD |
| 本地 pnpm | 自己开发、改代码 | pnpm install && pnpm dev | 需要 Node 22 和 pnpm 10 |
接下来你可以做这三件事
- 克隆仓库,
pnpm build:ext后把dist拖进chrome://extensions/,选中你手边那条写不利的 prompt 点优化,看看它改成了什么。 - 在模型管理里填一个 API 密钥,点"测试连接",确认你的环境能跑通一次优化。
- 给本地 Ollama 配一组
VITE_CUSTOM_API_*_qwen3变量,把优化链路完全切到本地模型。
【免费下载链接】prompt-optimizerAn AI prompt optimizer for writing better prompts and getting better AI results.项目地址: https://gitcode.com/GitHub_Trending/pro/prompt-optimizer
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考