linshenkx/prompt-optimizer
Prompt Optimizer (提示词优化器) 🚀
📖 项目简介
Prompt Optimizer是一个强大的AI提示词优化工具,帮助你编写更好的AI提示词,提升AI输出质量。支持Web应用和Chrome插件两种使用方式。
🎥 功能演示

✨ 核心特性
- 🎯 智能优化:一键优化提示词,支持多轮迭代改进,提升AI回复准确度
- 🔄 对比测试:支持原始提示词和优化后提示词的实时对比,直观展示优化效果
- 🤖 多模型集成:支持OpenAI、Gemini、DeepSeek、智谱AI、SiliconFlow等主流AI模型
- ⚙️ 高级参数配置:支持为每个模型单独配置temperature、max_tokens等LLM参数
- 🔒 安全架构:纯客户端处理,数据直接与AI服务商交互,不经过中间服务器
- 💾 隐私保护:本地加密存储历史记录和API密钥,支持数据导入导出
- 📱 多端支持:同时提供Web应用和Chrome插件两种使用方式
- 🎨 用户体验:简洁直观的界面设计,响应式布局和流畅交互动效
- 🌐 跨域支持:Vercel部署时支持使用Edge Runtime代理解决跨域问题
- 🔐 访问控制:支持密码保护功能,保障部署安全
快速开始
1. 使用在线版本(推荐)
直接访问:https://prompt.always200.com
项目是纯前端项目,所有数据只存储在浏览器本地,不会上传至任何服务器,因此直接使用在线版本也是安全可靠的
2. Vercel部署
方式2: Fork项目后在Vercel中导入(推荐):
- 先Fork项目到自己的GitHub
- 然后在Vercel中导入该项目
- 可跟踪源项目更新,便于同步最新功能和修复
- 配置环境变量:
ACCESS_PASSWORD
:设置访问密码,启用访问限制VITE_OPENAI_API_KEY
等:配置各AI服务商的API密钥
更多详细的部署步骤和注意事项,请查看:
3. 安装Chrome插件
- 从Chrome商店安装(由于审批较慢,可能不是最新的):Chrome商店地址
- 点击图标即可打开提示词优化器
4. Docker部署
|
|
5. Docker Compose部署
|
|
你还可以直接编辑docker-compose.yml文件,自定义配置:
|
|
⚙️ API密钥配置
方式一:通过界面配置(推荐)
- 点击界面右上角的"⚙️设置"按钮
- 选择"模型管理"选项卡
- 点击需要配置的模型(如OpenAI、Gemini、DeepSeek等)
- 在弹出的配置框中输入对应的API密钥
- 点击"保存"即可
支持的模型:
- OpenAI (gpt-3.5-turbo, gpt-4, gpt-4o)
- Gemini (gemini-1.5-pro, gemini-2.0-flash)
- DeepSeek (deepseek-chat, deepseek-coder)
- Zhipu智谱 (glm-4-flash, glm-4, glm-3-turbo)
- SiliconFlow (Pro/deepseek-ai/DeepSeek-V3)
- 自定义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
参数配置环境变量:
|
|
本地开发
详细文档可查看 开发文档
|
|
🗺️ 开发路线
- 基础功能开发
- Web应用发布
- Chrome插件发布
- 自定义模型支持
- 多模型支持优化
- 国际化支持
详细的项目状态可查看 项目状态文档
📖 相关文档
- 文档索引 - 所有文档的索引
- 技术开发指南 - 技术栈和开发规范
- LLM参数配置指南 - 高级LLM参数配置详细说明
- 项目结构 - 详细的项目结构说明
- 项目状态 - 当前进度和计划
- 产品需求 - 产品需求文档
- Vercel部署指南 - Vercel部署详细说明
Star History
常见问题
API连接问题
Q1: 为什么配置好API密钥后仍然无法连接到模型服务?
A: 大多数连接失败是由跨域问题(CORS)导致的。由于本项目是纯前端应用,浏览器出于安全考虑会阻止直接访问不同源的API服务。模型服务如未正确配置CORS策略,会拒绝来自浏览器的直接请求。
Q2: 如何解决本地Ollama的连接问题?
A: Ollama完全支持OpenAI标准接口,只需配置正确的跨域策略:
- 设置环境变量
OLLAMA_ORIGINS=*
允许任意来源的请求 - 如仍有问题,设置
OLLAMA_HOST=0.0.0.0:11434
监听任意IP地址
Q3: 如何解决商业API(如Nvidia的DS API、字节跳动的火山API)的跨域问题?
A: 这些平台通常有严格的跨域限制,推荐以下解决方案:
-
使用Vercel代理(便捷方案)
- 使用在线版本:prompt.always200.com
- 或自行部署到Vercel平台
- 在模型设置中勾选"使用Vercel代理"选项
- 请求流向:浏览器→Vercel→模型服务提供商
- 详细步骤请参考 Vercel部署指南
-
使用自部署的API中转服务(可靠方案)
- 部署如OneAPI等开源API聚合/代理工具
- 在设置中配置为自定义API端点
- 请求流向:浏览器→中转服务→模型服务提供商
Q4: Vercel代理有什么缺点或风险?
A: 使用Vercel代理可能会触发某些模型服务提供商的风控机制。部分厂商可能会将来自Vercel的请求判定为代理行为,从而限制或拒绝服务。如遇此问题,建议使用自部署的中转服务。
🤝 参与贡献
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature
) - 提交更改 (
git commit -m '添加某个特性'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 提交 Pull Request
提示:使用cursor工具开发时,建议在提交前:
- 使用"code_review"规则进行代码审查
- 按照审查报告格式检查:
- 变更的整体一致性
- 代码质量和实现方式
- 测试覆盖情况
- 文档完善程度
- 根据审查结果进行优化后再提交
👏 贡献者名单
感谢所有为项目做出贡献的开发者!
📄 开源协议
本项目采用 MIT 协议开源。
如果这个项目对你有帮助,请考虑给它一个 Star ⭐️
👥 联系我们
- 提交 Issue
- 发起 Pull Request
- 加入讨论组