linshenkx/prompt-optimizer
An AI prompt optimizer for writing better prompts and getting better AI results.
Backblaze Generative Media Hackathon
Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.
Loading star history...
Use Cases & Benefits
- Optimizes AI prompts to improve the quality and accuracy of AI-generated responses through iterative refinement and testing.
- Enables multi-model integration and supports various deployment methods including web, desktop, Chrome extension, and Docker for flexible usage.
- Use for enhancing prompt effectiveness in role-playing AI conversations to unlock smaller model potential in cost-sensitive or privacy-focused environments.
- Use for generating structured outputs like knowledge graphs in production environments to ensure stable and reliable AI responses with lower model requirements.
- Use for refining creative prompts such as poetry writing to precisely express user intent and collaboratively generate unique AI content.
About prompt-optimizer
Prompt Optimizer (提示词优化器) 🚀
📖 项目简介
Prompt Optimizer是一个强大的AI提示词优化工具,帮助你编写更好的AI提示词,提升AI输出质量。支持Web应用、桌面应用、Chrome插件和Docker部署四种使用方式。
🎥 功能演示
1. 角色扮演对话:激发小模型潜力
在追求成本效益的生产或注重隐私的本地化场景中,结构化的提示词能让小模型稳定地进入角色,提供沉浸式、高一致性的角色扮演体验,有效激发其潜力。
2. 知识图谱提取:保障生产环境的稳定性
在需要程序化处理的生产环境中,高质量的提示词能显著降低对模型智能程度的要求,使得更经济的小模型也能稳定输出可靠的指定格式。本工具旨在辅助开发者快速达到此目的,从而加速开发、保障稳定,实现降本增效。
3. 诗歌写作:辅助创意探索与需求定制
当面对一个强大的AI,我们的目标不只是得到一个“好”答案,而是得到一个“我们想要的”独特答案。本工具能帮助用户将一个模糊的灵感(如“写首诗”)细化为具体的需求(关于什么主题、何种意象、何种情感),辅助您探索、发掘并精确表达自己的创意,与AI共创独一无二的作品。
✨ 核心特性
- 🎯 智能优化:一键优化提示词,支持多轮迭代改进,提升AI回复准确度
- 📝 双模式优化:支持系统提示词优化和用户提示词优化,满足不同使用场景
- 🔄 对比测试:支持原始提示词和优化后提示词的实时对比,直观展示优化效果
- 🤖 多模型集成:支持OpenAI、Gemini、DeepSeek、智谱AI、SiliconFlow等主流AI模型
- 🔒 安全架构:纯客户端处理,数据直接与AI服务商交互,不经过中间服务器
- 📱 多端支持:同时提供Web应用、桌面应用、Chrome插件和Docker部署四种使用方式
- 🔐 访问控制:支持密码保护功能,保障部署安全
- 🧩 MCP协议支持:支持Model Context Protocol (MCP) 协议,可与Claude Desktop等MCP兼容应用集成
快速开始
1. 使用在线版本(推荐)
直接访问:https://prompt.always200.com
项目是纯前端项目,所有数据只存储在浏览器本地,不会上传至任何服务器,因此直接使用在线版本也是安全可靠的
2. Vercel部署
方式1:一键部署到自己的Vercel(方便,但后续无法自动更新):
方式2: Fork项目后在Vercel中导入(推荐,但需参考部署文档进行手动设置):
- 先Fork项目到自己的GitHub
- 然后在Vercel中导入该项目
- 可跟踪源项目更新,便于同步最新功能和修复
- 配置环境变量:
ACCESS_PASSWORD:设置访问密码,启用访问限制VITE_OPENAI_API_KEY等:配置各AI服务商的API密钥
更多详细的部署步骤和注意事项,请查看:
3. 下载桌面应用
从 GitHub Releases 下载最新版本。我们为各平台提供安装程序和压缩包两种格式。
- 安装程序 (推荐): 如
*.exe,*.dmg,*.AppImage等。强烈推荐使用此方式,因为它支持自动更新。 - 压缩包: 如
*.zip。解压即用,但无法自动更新。
桌面应用核心优势:
- ✅ 无跨域限制:作为原生桌面应用,它能彻底摆脱浏览器跨域(CORS)问题的困扰。这意味着您可以直接连接任何AI服务提供商的API,包括本地部署的Ollama或有严格安全策略的商业API,获得最完整、最稳定的功能体验。
- ✅ 自动更新:通过安装程序(如
.exe,.dmg)安装的版本,能够自动检查并更新到最新版 。 - ✅ 独立运行:无需依赖浏览器,提供更快的响应和更佳的性能。
4. 安装Chrome插件
- 从Chrome商店安装(由于审批较慢,可能不是最新的):Chrome商店地址
- 点击图标即可打开提示词优化器
5. Docker部署
点击查看 Docker 部署命令
# 运行容器(默认配置)
docker run -d -p 8081:80 --restart unless-stopped --name prompt-optimizer linshen/prompt-optimizer
# 运行容器(配置API密钥和访问密码)
docker run -d -p 8081:80 \
-e VITE_OPENAI_API_KEY=your_key \
-e ACCESS_USERNAME=your_username \ # 可选,默认为"admin"
-e ACCESS_PASSWORD=your_password \ # 设置访问密码
--restart unless-stopped \
--name prompt-optimizer \
linshen/prompt-optimizer
国内镜像: 如果Docker Hub访问较慢,可以将上述命令中的
linshen/prompt-optimizer替换为registry.cn-guangzhou.aliyuncs.com/prompt-optimizer/prompt-optimizer
6. Docker Compose部署
点击查看 Docker Compose 部署步骤
# 1. 克隆仓库
git clone https://github.com/linshenkx/prompt-optimizer.git
cd prompt-optimizer
# 2. 可选:创建.env文件配置API密钥和访问认证
cp env.local.example .env
# 编辑 .env 文件,填入实际的 API 密钥和配置
# 3. 启动服务
docker compose up -d
# 4. 查看日志
docker compose logs -f
# 5. 访问服务
Web 界面:http://localhost:8081
MCP 服务器:http://localhost:8081/mcp
你还可以直接编辑docker-compose.yml文件,自定义配置:
点击查看 docker-compose.yml 示例
services:
prompt-optimizer:
# 使用Docker Hub镜像
image: linshen/prompt-optimizer:latest
# 或使用阿里云镜像(国内用户推荐)
# image: registry.cn-guangzhou.aliyuncs.com/prompt-optimizer/prompt-optimizer:latest
container_name: prompt-optimizer
restart: unless-stopped
ports:
- "8081:80" # Web应用端口(包含MCP服务器,通过/mcp路径访问)
environment:
# API密钥配置
- VITE_OPENAI_API_KEY=your_openai_key
- VITE_GEMINI_API_KEY=your_gemini_key
# 访问控制(可选)
- ACCESS_USERNAME=admin
- ACCESS_PASSWORD=your_password
7. MCP Server 使用说明
点击查看 MCP Server 使用说明
Prompt Optimizer 现在支持 Model Context Protocol (MCP) 协议,可以与 Claude Desktop 等支持 MCP 的 AI 应用集成。
当通过 Docker 运行时,MCP Server 会自动启动,并可通过 http://ip:port/mcp 访问。
环境变量配置
MCP Server 需要配置 API 密钥才能正常工作。主要的 MCP 专属配置:
# MCP 服务器配置
MCP_DEFAULT_MODEL_PROVIDER=openai # 可选值:openai, gemini, deepseek, siliconflow, zhipu, custom
MCP_LOG_LEVEL=info # 日志级别
Docker 环境下使用 MCP
在 Docker 环境中,MCP Server 会与 Web 应用一起运行,您可以通过 Web 应用的相同端口访问 MCP 服务,路径为 /mcp。
例如,如果您将容器的 80 端口映射到主机的 8081 端口:
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
那么 MCP Server 将可以通过 http://localhost:8081/mcp 访问。
Claude Desktop 集成示例
要在 Claude Desktop 中使用 Prompt Optimizer,您需要在 Claude Desktop 的配置文件中添加服务配置。
-
找到 Claude Desktop 的配置目录:
- Windows:
%APPDATA%\Claude\services - macOS:
~/Library/Application Support/Claude/services - Linux:
~/.config/Claude/services
- Windows:
-
编辑或创建
services.json文件,添加以下内容:
{
"services": [
{
"name": "Prompt Optimizer",
"url": "http://localhost:8081/mcp"
}
]
}
请确保将 localhost:8081 替换为您实际部署 Prompt Optimizer 的地址和端口。
可用工具
- optimize-user-prompt: 优化用户提示词以提高 LLM 性能
- optimize-system-prompt: 优化系统提示词以提高 LLM 性能
- iterate-prompt: 对已经成熟/完善的提示词进行定向迭代优化
更多详细信息,请查看 MCP 服务器用户指南。
⚙️ API密钥配置
点击查看API密钥配置方法
方式一:通过界面配置(推荐)
- 点击界面右上角的"⚙️设置"按钮
- 选择"模型管理"选项卡
- 点击需要配置的模型(如OpenAI、Gemini、DeepSeek等)
- 在弹出的配置框中输入对应的API密钥
- 点击"保存"即可
支持的模型:OpenAI、Gemini、DeepSeek、Zhipu智谱、SiliconFlow、自定义API(OpenAI兼容接口)
除了API密钥,您还可以在模型配置界面为每个模型单独设置高级LLM参数。这些参数通过一个名为 llmParams 的字段进行配置,它允许您以键值对的形式指定LLM SDK支持的任何参数,从而更精细地控制模型行为。
高级LLM参数配置示例:
- OpenAI/兼容API:
{"temperature": 0.7, "max_tokens": 4096, "timeout": 60000} - Gemini:
{"temperature": 0.8, "maxOutputTokens": 2048, "topP": 0.95} - DeepSeek:
{"temperature": 0.5, "top_p": 0.9, "frequency_penalty": 0.1}
有关 llmParams 的更详细说明和配置指南,请参阅 LLM参数配置指南。
方式二:通过环境变量配置
Docker部署时通过 -e 参数配置环境变量:
-e VITE_OPENAI_API_KEY=your_key
-e VITE_GEMINI_API_KEY=your_key
-e VITE_DEEPSEEK_API_KEY=your_key
-e VITE_ZHIPU_API_KEY=your_key
-e VITE_SILICONFLOW_API_KEY=your_key
# 多自定义模型配置(支持无限数量)
-e VITE_CUSTOM_API_KEY_ollama=dummy_key
-e VITE_CUSTOM_API_BASE_URL_ollama=http://localhost:11434/v1
-e VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b
📖 详细配置指南: 查看 多自定义模型配置文档 了解完整的配置方法和高级用法
本地开发
详细文档可查看 开发文档
点击查看本地开发命令
# 1. 克隆项目
git clone https://github.com/linshenkx/prompt-optimizer.git
cd prompt-optimizer
# 2. 安装依赖
pnpm install
# 3. 启动开发服务
pnpm dev # 主开发命令:构建core/ui并运行web应用
pnpm dev:web # 仅运行web应用
pnpm dev:fresh # 完整重置并重新启动开发环境
🗺️ 开发路线
- 基础功能开发
- Web应用发布
- Chrome插件发布
- 国际化支持
- 支持系统提示词优化和用户提示词优化
- 桌面应用发布
- mcp服务发布
详细的项目状态可查看 项目状态文档
📖 相关文档
- 文档索引 - 所有文档的索引