mkdocs: 初始化 mkdocs 文档库

- 新增多个文档文件,覆盖基本使用、高级功能、部署指南等
- 创建数据管理、模型配置、历史记录等详细指南
- 添加上下文管理、工具调用、变量系统等高级功能文档
- 提供快速开始、常见问题、故障排除等实用信息
This commit is contained in:
linshen committed 2025-09-13 23:43:27 +08:00
1 parent 162cacc951
commit 232f04db60
68 files changed
+9180

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
# 忽略构建产物目录
site/
+121
View File
@@ -0,0 +1,121 @@
# 文档开发与预览(Conda 版)
本工程在仓库根目录下的 `mkdocs/` 子目录中,完全独立于应用项目。
## 前置条件
- 已安装 Conda(Miniconda 或 Anaconda,建议最新版)
## 创建并激活 Conda 环境(结合项目名)
在 `mkdocs/` 目录内执行:
```bash
conda create -n prompt-optimizer-docs python=3.11 pip -y
conda activate prompt-optimizer-docs
```
> 如需退出环境:`conda deactivate`
## 安装依赖
```bash
python -m pip install -r requirements.txt
```
## 本地预览
提供多种配置文件满足不同需求:
### 快速开发模式(推荐日常使用)
```bash
mkdocs serve -f mkdocs-dev.yml
```
- **启动时间**:约 0.25 秒(极速启动)
- **特点**:移除了耗时插件(如 mermaid2),保留基本 i18n 支持,专注文档编写
- **适用场景**:日常开发、快速预览、文档编写
### 中文专版(推荐生产使用)
```bash
mkdocs serve -f mkdocs-zh.yml
```
- **启动时间**:约 0.4 秒(快速启动)
- **特点**:专注中文内容,直接访问 zh 目录,无多语言复杂性
- **适用场景**:中文文档站点、生产部署
### 完整功能模式(多语言支持)
```bash
mkdocs serve -f mkdocs.yml
```
- **启动时间**:首次较慢(需下载 mermaid 库),后续启动会快很多
- **特点**:包含所有功能(图表渲染、多语言支持等)
- **适用场景**:多语言站点、功能完整预览
### 配置文件说明
- **`mkdocs-dev.yml`** - 极速开发模式,移除所有耗时功能
- **`mkdocs-zh.yml`** - 中文专版,直接指向zh目录,无i18n复杂性
- **`mkdocs.yml`** - 完整功能版,支持多语言和所有插件
默认访问 `http://127.0.0.1:8000/`。默认语言为中文,可在右上角切换英文(若存在对应页面)。
如需连同"版本切换器"一并预览,请使用:
```bash
mike serve -F mkdocs.yml
```
## 严格构建校验
```bash
mkdocs build --strict -f mkdocs.yml
```
`--strict` 会将链接/引用等问题作为错误处理,便于在提交前尽早发现问题。
## 版本与标签(mike)
本项目使用 `mike` 管理多版本(Material 原生支持)。常用命令在 `mkdocs/` 目录内执行:
```bash
# 首次发布一个版本,并同时更新/创建别名 latest
mike deploy -F mkdocs.yml 0.1 latest
# 将默认版本设置为 latest(访问根路径时优先该版本)
mike set-default -F mkdocs.yml latest
# 查看已发布版本列表
mike list -F mkdocs.yml
# 本地预览多版本站点(基于已发布到分支的内容)
mike serve -F mkdocs.yml
```
建议为文档产物使用独立分支(例如 `vercel-docs`),以便后续让 Vercel 直接托管该分支:
```bash
mike deploy --branch vercel-docs --push -F mkdocs.yml 0.1 latest
mike set-default --branch vercel-docs --push -F mkdocs.yml latest
```
> 说明:i18n 与 mike 组合时,URL 通常为 `/<version>/<lang>/...`,如 `/latest/zh/`。
## 常见问题
- 中文搜索命中率不佳:已启用 `search.lang: [zh, en]`;如仍不理想,可按需启用 `lunr-languages` 并在 `mkdocs.yml` 的 `extra_javascript` 中加载。
- 版本列表不显示:确保先用 `mike deploy` 发布至少一个版本,并用 `mike set-default` 设置默认版本。
- `mike` 命令不可用:请确认已在当前 Conda 环境安装依赖;或尝试 `python -m mike` 形式运行。
## 清理环境(可选)
完全删除环境:
```bash
conda deactivate
conda remove -n prompt-optimizer-docs --all -y
```
+1
View File
@@ -0,0 +1 @@
Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 KiB

+1
View File
@@ -0,0 +1 @@
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+27
View File
@@ -0,0 +1,27 @@
# Model Management
Configure and manage AI models for optimal performance.
## Supported Models
- **OpenAI**: GPT-4, GPT-4 Turbo, GPT-3.5 Turbo
- **Anthropic**: Claude 3 Opus, Sonnet, Haiku
- **Google**: Gemini Pro, Gemini Pro Vision
- **DeepSeek**: Chat and Coder models
- **Custom APIs**: OpenAI-compatible endpoints
## Configuration
1. Access model settings
2. Add API keys for your providers
3. Test connections
4. Set default models for different tasks
## Best Practices
- Choose models based on task complexity
- Consider cost vs performance trade-offs
- Use fallback models for reliability
- Monitor usage and quotas
Configure your models and start optimizing!
+28
View File
@@ -0,0 +1,28 @@
# Prompt Optimization
Transform basic prompts into powerful, effective instructions.
## What is Prompt Optimization?
Prompt optimization refines your AI prompts to:
- Increase accuracy and relevance
- Improve consistency across inputs
- Enhance clarity of instructions
- Add necessary context
- Structure desired output format
## Quick Process
1. **Input**: Enter your basic prompt
2. **Template**: Choose optimization template
3. **Results**: Get enhanced prompt with role definition, requirements, and structure
## Best Practices
- Be specific and clear in requirements
- Define the AI's role and expertise
- Specify desired output format
- Provide relevant context
- Use examples when helpful
Start optimizing your prompts for better AI results!
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+27
View File
@@ -0,0 +1,27 @@
# Prompt Optimizer Documentation
Welcome to Prompt Optimizer - a powerful AI prompt optimization tool designed to help you craft better AI prompts and improve AI response quality.
## Quick Start
- [Web Version](user/quick-start.md) - Use directly in browser
- [Desktop App](deployment/desktop.md) - Full-featured application
- [Chrome Extension](deployment/extension.md) - Browser integration
- [Docker Deployment](deployment/docker-basic.md) - Self-hosted solution
## Features
- Smart prompt optimization with templates
- Multi-model support (OpenAI, Claude, Gemini, DeepSeek)
- Variable management system
- Template library and sharing
- History tracking and analytics
## Getting Started
1. Choose your deployment method
2. Configure API keys for your preferred AI models
3. Start optimizing prompts with our built-in templates
4. Create custom templates for your specific use cases
Ready to optimize your AI prompts? [Get started now](user/quick-start.md)!
+1
View File
@@ -0,0 +1 @@
# Coming Soon
+23
View File
@@ -0,0 +1,23 @@
# Quick Start Guide
Get started with Prompt Optimizer in minutes.
## Web Version (Recommended)
1. Visit the application URL
2. Configure API keys in settings
3. Start optimizing prompts
## Desktop Application
1. Download and install the app
2. Launch and configure your models
3. Begin prompt optimization
## Chrome Extension
1. Install from Chrome Web Store
2. Pin to toolbar
3. Optimize prompts on any webpage
Ready to create better prompts? Start optimizing now!
+354
View File
@@ -0,0 +1,354 @@
# 上下文管理(高级模式)
上下文管理是高级模式的核心功能之一,让你能够精确控制多轮对话的上下文,实现复杂的AI交互场景。
## 💬 多轮会话概述
### 什么是上下文管理
上下文管理允许你:
- 编辑对话历史中的任意消息
- 添加、删除、重排对话消息
- 在消息中使用变量替换
- 模拟复杂的对话场景
- 测试AI在长对话中的表现
### 与基础模式的区别
| 功能 | 基础模式 | 高级模式 |
|------|----------|----------|
| 消息编辑 | ❌ | ✅ 完整编辑功能 |
| 变量替换 | ❌ | ✅ 消息级变量支持 |
| 多轮测试 | ✅ 简单多轮 | ✅ 复杂场景模拟 |
| 对话管理 | ❌ | ✅ 历史消息管理 |
## 🎛️ 会话编辑器(ContextEditor)
### 消息类型
#### 1. 系统消息 (System)
设定AI的角色、行为规范和工作模式:
```
你是一个专业的{{role}},专长是{{expertise}}。
请遵循以下原则:
1. 提供准确、专业的建议
2. 保持{{tone}}的交流风格
3. 关注{{focus}}领域的问题
```
#### 2. 用户消息 (User)
模拟用户的输入和问题:
```
我需要关于{{topic}}的建议,具体情况是:
{{situation}}
请帮我分析一下应该如何处理。
```
#### 3. 助手消息 (Assistant)
AI的回复和响应,可以预设或编辑:
```
根据你描述的{{situation}},我建议采用以下策略:
1. 首先{{step1}}
2. 然后{{step2}}
3. 最后{{step3}}
这样做的原因是...
```
### 消息编辑操作
#### 添加消息
1. **选择插入位置**
- 点击目标位置的"添加消息"按钮
- 选择在对话开头、中间或末尾添加
2. **选择消息类型**
- System - 用于设定AI角色和规则
- User - 模拟用户输入
- Assistant - 预设AI回复
3. **编写消息内容**
- 支持普通文本和Markdown格式
- 可以使用变量占位符
- 提供实时变量预览
#### 编辑现有消息
1. **消息选择**
- 点击要编辑的消息
- 消息进入编辑模式
- 显示消息类型和编号
2. **内容修改**
- 修改消息文本内容
- 更改消息类型(如需要)
- 调整变量占位符
3. **保存更改 / 持久化**
- 实时保存并写入 ContextRepo(刷新后可恢复)
- 自动更新变量预览与缺失统计
- 验证消息格式
#### 消息管理操作
1. **删除消息**
- 选择要删除的消息
- 确认删除操作
- 自动调整消息序号
2. **复制消息**
- 复制消息内容到剪贴板
- 复制到对话其他位置
- 作为新消息模板
3. **重新排序**
- 拖拽调整消息顺序
- 自动更新消息编号
- 保持对话逻辑连贯
## 🔄 变量在会话中的使用
### 消息级变量替换
#### 基础语法
使用 `{{变量名}}` 在消息中插入变量:
```
系统: 你是一个{{role}},工作在{{company}}公司
用户: 请帮我解决{{problem}}这个问题
助手: 根据{{role}}的经验,对于{{problem}},我建议...
```
#### 变量作用域
1. **全局变量** - 在变量管理器中定义,作用于所有对话
2. **会话变量** - 针对当前会话临时定义的变量
3. **消息变量** - 仅在特定消息中有效的变量
#### 变量合并与优先级
finalVars = 全局变量 ∪ 上下文变量覆盖;同名以上下文覆盖优先;预定义变量名不可覆盖。
### 动态变量更新
#### 实时预览
- 编辑变量时实时更新消息预览
- 高亮显示变量替换位置
- 显示变量当前值
#### 批量替换
- 一次性更新多个消息中的变量
- 支持正则表达式匹配
- 提供替换前的预览确认
#### 变量历史
- 记录变量值的修改历史
- 支持回退到之前的变量状态
- 对比不同版本的差异
### 缺失变量处理
#### 自动检测
系统会自动检测并标记缺失的变量:
- 🔴 未定义变量 - 红色标记
- 🟡 空值变量 - 黄色标记
- 🟢 正常变量 - 绿色标记
#### 智能建议
- 自动建议相似的已定义变量
- 提供变量名称规范建议
- 根据上下文推荐合适的变量值
#### 快速创建
- 点击缺失变量直接创建
- 自动填充推荐的变量值
- 批量创建多个缺失变量
## 📤 导入/导出与数量徽章
### 导出(标准格式)
- 在 ContextEditor 中“导出 → 标准格式”可导出单个上下文
- 结构包含:`messages[]`、`metadata.variables`、`tools[]`
### 数量徽章
- 对话区显示“变量数/缺失数”与“工具数”徽章,便于总览
## 🎭 对话场景模拟
### 完整对话测试
#### 1. 场景设计
**角色扮演场景**
```
System: 你是一名资深的产品经理,有10年互联网产品经验
User: 我们的APP用户留存率在下降,你觉得可能是什么原因?
Assistant: [让AI分析并回复]
User: 数据显示主要是新用户在第一周流失严重
Assistant: [让AI提供解决方案]
```
**技术支持场景**
```
System: 你是{{company}}的技术支持专家,擅长解决{{product}}相关问题
User: 我的{{product}}出现了{{error_message}}错误
Assistant: [AI诊断问题]
User: 按照你说的步骤操作后,现在出现了新的问题...
Assistant: [AI提供进一步支持]
```
#### 2. 执行对话测试
**逐步执行模式**
- 逐条发送消息进行测试
- 观察AI在每轮的回应质量
- 记录对话流程和关键节点
**批量执行模式**
- 一次性发送完整对话序列
- 测试AI对完整上下文的理解
- 评估对话的连贯性和逻辑性
#### 3. 结果分析
**回复质量评估**
- 内容准确性和相关性
- 回复的专业度和深度
- 是否保持角色一致性
**上下文理解分析**
- 是否正确理解对话历史
- 能否引用之前的对话内容
- 对话逻辑是否连贯
**用户体验评价**
- 对话是否自然流畅
- 回复是否满足用户期望
- 整体交互体验如何
### 高级测试功能
#### 对话分支测试
- 在对话的关键节点创建分支
- 测试不同用户回复的AI响应
- 比较不同路径的对话效果
#### 情境变化测试
- 在对话中途更改系统设定
- 测试AI对角色转换的适应性
- 验证上下文切换的处理能力
#### 压力测试
- 测试极长对话的处理能力
- 验证复杂嵌套对话的理解
- 评估在信息过载时的表现
## 📊 对话管理和分析
### 对话保存和复用
#### 场景模板
- 将优质对话保存为模板
- 支持变量化的场景复用
- 建立常用场景的模板库
#### 历史记录管理
- 完整保存对话编辑历史
- 支持对话版本对比
- 快速回退到之前的状态
#### 导入导出功能
- 导出对话为JSON或文本格式
- 导入外部对话进行测试
- 与团队成员分享测试场景
### 批量测试管理
#### 测试套件
- 创建包含多个对话场景的测试套件
- 批量执行不同场景的测试
- 统一管理相关的测试用例
#### 结果对比
- 对比不同模型在同一场景下的表现
- 分析不同参数配置的影响
- 生成详细的性能对比报告
#### 自动化测试
- 设置定期执行的回归测试
- 自动检测对话质量的变化
- 预警性能下降或异常行为
### 协作和共享
#### 团队协作
- 分享测试场景和结果
- 协作编辑复杂对话场景
- 建立团队知识库
#### 版本控制
- 跟踪对话场景的修改历史
- 支持多人协作的版本管理
- 合并不同版本的修改
## 💡 最佳实践指南
### 对话设计原则
#### 1. 渐进式复杂度
- 从简单对话开始测试
- 逐步增加对话的复杂性
- 识别AI能力的边界
#### 2. 真实场景模拟
- 设计贴近真实使用场景的对话
- 包含常见的用户行为模式
- 考虑异常情况和边界案例
#### 3. 上下文连贯性
- 确保对话逻辑的连贯性
- 避免突兀的话题转换
- 维护角色设定的一致性
### 变量使用技巧
#### 1. 合理的变量粒度
- 避免过度细分变量
- 保持变量的语义完整性
- 平衡灵活性和复杂性
#### 2. 描述性命名
- 使用清晰的变量名称
- 遵循一致的命名规范
- 添加必要的使用说明
#### 3. 默认值设置
- 为变量提供合理的默认值
- 确保在变量缺失时能正常工作
- 提供变量使用示例
### 测试策略建议
#### 1. 全面性测试
- 覆盖不同类型的对话场景
- 测试各种变量组合
- 包含正常和异常情况
#### 2. 可重复性
- 确保测试结果的可重现性
- 记录测试的环境和条件
- 建立标准化的测试流程
#### 3. 持续优化
- 基于测试结果持续改进
- 收集实际使用中的反馈
- 定期更新测试场景
---
**相关链接**:
- [变量管理](variables.md) - 深入了解变量系统
- [工具调用](tools.md) - 在对话中使用工具调用
- [使用案例](../examples/creative-writing.md) - 上下文管理在创意写作中的实际应用案例
+289
View File
@@ -0,0 +1,289 @@
# 工具调用功能(高级模式)
工具调用功能让AI模型能够调用外部函数来完成特定任务,大大扩展了AI的能力边界。支持数学计算、数据查询、API调用等复杂操作。
## 🔧 工具调用概述
工具调用(Function Calling)是现代AI模型的高级功能,允许AI主动调用预定义的外部工具来获取信息、执行计算或完成复杂任务。
### 核心优势
- **能力扩展** - 让AI突破纯文本生成的限制
- **实时信息** - 获取最新数据和动态内容
- **精确计算** - 执行复杂数学运算和数据处理
- **外部集成** - 连接各种API和外部服务
## 📋 支持的模型
### 主流模型支持
- **OpenAI** - GPT-4, GPT-3.5-turbo 等支持函数调用的模型
- **Gemini** - Gemini Pro 等支持函数调用的模型
- **DeepSeek** - 支持函数调用的DeepSeek模型
- **自定义模型** - 符合OpenAI函数调用标准的模型
### 兼容性检查
启用工具调用前,系统会自动检查当前模型是否支持函数调用功能,不兼容的模型会显示相应提示。
## 🛠️ 工具定义和配置(在上下文编辑器中)
### 创建工具定义
#### 1. 访问工具管理
- 在高级模式下找到"工具管理"入口
- 或通过设置页面进入工具配置
- 点击"新增工具"开始创建
#### 2. 定义工具函数
```json
{
"name": "get_weather",
"description": "获取指定城市的天气信息",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "城市名称"
},
"unit": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "温度单位"
}
},
"required": ["city"]
}
}
```
#### 3. 工具实现配置
- **执行端点** - 定义工具的实际执行逻辑
- **认证设置** - 配置API密钥或认证信息
- **超时配置** - 设置工具调用的超时时间
- **错误处理** - 定义失败时的处理策略
### 数量徽章与导出结构
- 对话区顶部展示“工具数量”徽章(toolCount)
- 在“上下文编辑器 → 导出(标准格式)”导出的 JSON 中包含 `tools[]`
### 内置工具模板
#### 常用工具模板
**数学计算器**
```json
{
"name": "calculate",
"description": "执行数学运算",
"parameters": {
"type": "object",
"properties": {
"expression": {
"type": "string",
"description": "数学表达式,如:2+3*4"
}
}
}
}
```
**时间日期工具**
```json
{
"name": "get_current_time",
"description": "获取当前时间",
"parameters": {
"type": "object",
"properties": {
"format": {
"type": "string",
"description": "时间格式,如:YYYY-MM-DD HH:mm:ss"
},
"timezone": {
"type": "string",
"description": "时区,如:Asia/Shanghai"
}
}
}
}
```
**文本处理工具**
```json
{
"name": "text_analyzer",
"description": "分析文本内容",
"parameters": {
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "要分析的文本内容"
},
"analysis_type": {
"type": "string",
"enum": ["sentiment", "keywords", "summary"],
"description": "分析类型"
}
}
}
}
```
## 🎯 工具调用测试(高级模式)
### 在对话中使用工具
#### 1. 准备工具调用提示词
```
你是一个智能助手,可以调用工具来获取信息和完成任务。
请帮我查询北京的天气情况,并计算如果温度是摄氏度,
转换为华氏度是多少。
```
#### 2. 启用工具调用功能
在模型配置中:
- ✅ 启用函数调用功能
- 选择要使用的工具集合
- 配置工具调用参数
- 设置并发调用限制
#### 3. 执行和监控
- 发送包含工具调用需求的提示词
- 观察AI如何分析并选择合适的工具
- 查看工具调用的参数传递
- 监控工具执行结果和AI的后续响应
### 工具调用流程
#### 完整调用流程
1. **需求识别** - AI分析用户请求,识别需要调用的工具
2. **参数提取** - AI从用户输入中提取工具所需参数
3. **工具调用** - 系统执行工具并返回结果
4. **结果集成** - AI将工具结果整合到最终回复中
#### 调用示例
```
用户: 帮我查一下上海明天的天气
AI分析: 需要调用天气查询工具
↓
工具调用: get_weather(city="上海", date="明天")
↓
工具返回: {"temperature": 25, "condition": "晴朗", "humidity": 60}
↓
AI回复: 根据查询结果,上海明天天气晴朗,温度25°C,湿度60%...
```
## 🐛 工具调用调试
### 调用日志
#### 详细日志记录
- **调用时间** - 精确的调用时间戳
- **工具名称** - 被调用的工具标识
- **输入参数** - 传递给工具的完整参数
- **输出结果** - 工具返回的结果数据
- **执行时间** - 工具执行耗时统计
- **错误信息** - 失败时的详细错误描述
#### 日志查看和分析
- 实时查看调用过程
- 按时间、工具、状态筛选
- 导出日志用于深度分析
- 设置日志保留策略
### 参数验证
#### 自动验证机制
- **类型检查** - 验证参数类型是否正确
- **必填验证** - 检查必需参数是否提供
- **格式验证** - 验证参数格式是否符合要求
- **范围检查** - 验证数值是否在允许范围内
#### 验证错误处理
- 详细的错误提示信息
- 建议修正方案
- 自动参数格式化(可选)
- 智能默认值填充
### 错误处理
#### 常见错误类型
1. **网络错误** - 工具服务不可达
2. **认证失败** - API密钥无效或过期
3. **参数错误** - 传递的参数不符合要求
4. **超时错误** - 工具执行时间过长
5. **权限错误** - 没有调用特定工具的权限
#### 错误处理策略
- **自动重试** - 对于临时性错误进行重试
- **降级处理** - 使用替代工具或方法
- **用户通知** - 向用户报告错误并提供建议
- **日志记录** - 记录错误详情供后续分析
### 性能监控
#### 关键指标
- **成功率** - 工具调用成功的百分比
- **平均响应时间** - 工具执行的平均耗时
- **并发调用数** - 同时执行的工具调用数量
- **资源使用率** - CPU、内存等资源消耗
#### 性能优化建议
- 避免频繁调用耗时工具
- 实现工具结果缓存机制
- 优化工具并发执行策略
- 定期清理过期的调用记录
## 💡 使用最佳实践
### 工具设计原则
#### 1. 单一职责
- 每个工具专注完成一个特定任务
- 避免功能过于复杂的"万能工具"
- 保持工具接口简洁明了
#### 2. 可复用性
- 设计通用性强的工具参数
- 支持多种使用场景
- 提供灵活的配置选项
#### 3. 健壮性
- 完善的错误处理机制
- 输入数据的严格验证
- 优雅的异常恢复策略
### 安全考虑
#### 权限控制
- 限制工具的访问权限
- 验证调用者身份
- 审计敏感操作记录
#### 数据保护
- 避免在工具间传递敏感信息
- 对API调用进行加密传输
- 定期清理临时数据
#### 资源限制
- 设置工具调用频率限制
- 控制并发调用数量
- 监控资源使用情况
---
**相关链接**:
- [变量管理](variables.md) - 在工具调用中使用变量
- [上下文管理](context.md) - 在多轮对话中管理工具调用上下文
- [使用案例](../examples/creative-writing.md) - 工具调用在创意写作中的实际应用案例
+120
View File
@@ -0,0 +1,120 @@
# 变量管理(高级模式)
变量管理系统是 Prompt Optimizer 高级功能的核心,让你可以创建可复用的提示词模板。
## 🧰 变量系统概述
变量系统让你可以在提示词中使用占位符,并通过变量管理器统一管理这些变量的值。这对于创建可复用的提示词模板非常有用。
## 📝 变量类型
### 预定义变量(受保护)
系统内置的特殊变量,自动填充相关内容:
- `currentPrompt` - 当前优化的提示词内容
- `originalPrompt` - 原始未优化的提示词
- `lastOptimizedPrompt` - 上一次优化的结果
- `iterateInput` - 迭代优化的输入指令
- `userQuestion` - 用户提出的问题
- `conversationContext` - 对话上下文信息
注意:以上“预定义变量名”不可被保存为覆盖项(UI 会禁用或提示);从上下文集合导入时也会自动剔除这些键名(统计为 predefinedVariablesRemoved)。
### 自定义变量
用户创建的变量:
- 可以是任意名称(不能与预定义变量冲突)
- 支持文本、数字、JSON等格式
- 可以在多个提示词间复用
- 支持动态更新和批量管理
## ⚙️ 变量管理操作
### 创建和编辑变量
1. **打开变量管理器**
- 点击主界面的"变量管理"按钮
- 或通过设置页面进入变量管理
2. **添加新变量**
- 点击"新增变量"按钮
- 输入变量名称(如:`userName`、`role`、`scenario`)
- 输入变量值
- 可选择添加描述说明变量用途
3. **编辑现有变量**
- 在变量列表中点击要编辑的变量
- 修改变量名或值
- 保存更改
4. **删除变量**
- 选择要删除的变量
- 点击删除按钮确认删除
### 变量使用语法
在提示词中使用变量的语法:
```
你好 {{userName}},你的角色是 {{role}}。
当前场景:{{scenario}}
请根据以下需求进行回复:{{userQuestion}}
```
### 变量预览功能
- **实时预览** - 在编辑提示词时实时看到变量替换效果
- **缺失检测** - 自动检测提示词中未定义的变量
- **智能提示** - 输入`{{`时自动提示可用变量
- 一致性:预览与“缺失变量统计”均以 finalVars 为准(finalVars = 全局变量 ∪ 上下文覆盖,预定义名被剔除;同名以上下文覆盖优先)
## 🔄 上下文变量覆盖
高级功能支持在特定对话上下文中覆盖全局变量:
1. **全局变量** - 在变量管理器中定义,作用于所有场景
2. **上下文覆盖** - 在“上下文编辑器 → 变量”页设置,临时覆盖全局变量
3. **优先级/合并** - finalVars = 全局变量 ∪ 上下文覆盖;同名以上下文覆盖为准;预定义名不可覆盖
### 覆盖示例
```
全局变量:role = "助手"
上下文覆盖:role = "专业翻译"
最终结果:在当前对话中,{{role}} 将显示为"专业翻译"
```
## 📤 变量导入导出
### 导出变量
- 将变量配置导出为JSON文件
- 支持选择性导出部分变量
- 便于在不同设备间同步
### 导入变量
- 从JSON文件导入变量配置
- 支持批量导入
- 可选择覆盖或保留现有变量
### 上下文集合(context-bundle)
- 在“数据管理”中可导出/导入上下文集合(replace 模式),导入统计显示:imported/skipped/predefinedVariablesRemoved
- 在“上下文编辑器 → 导出(标准格式)”可导出单个上下文(含 messages/metadata.variables/tools)
## 💡 使用最佳实践
### 变量命名规范
1. **描述性命名** - 使用清晰、描述性的变量名
2. **驼峰命名** - 如 `userName`、`projectName`
3. **避免冲突** - 不与预定义变量重名
4. **分类管理** - 按功能或场景对变量进行分组
### 变量设计建议
1. **单一职责** - 每个变量专注一个数据项
2. **合理默认值** - 为变量设置合理的默认值
3. **文档说明** - 为复杂变量添加使用说明
4. **定期清理** - 删除不再使用的过时变量
---
**相关链接**:
- [工具调用](tools.md) - 工具调用中的变量使用
- [上下文管理](context.md) - 在对话上下文中管理变量
- [创意写作案例](../examples/creative-writing.md) - 变量管理在创意写作中的实际应用
+167
View File
@@ -0,0 +1,167 @@
# 数据管理(导入/导出/隐私)
本指南介绍 Prompt Optimizer 的数据存储、备份和隐私保护功能。
## 💾 数据存储
### 存储位置
- **Web版本** - 数据存储在浏览器的localStorage中
- **桌面版本** - 数据存储在本地文件系统中
- **Chrome插件** - 数据存储在扩展程序存储区
### 存储内容
- **配置信息** - 模型设置、用户偏好等
- **历史记录** - 所有优化历史和结果
- **自定义模板** - 用户创建的优化模板
- **缓存数据** - 临时数据和性能优化缓存
### 数据安全
- **本地存储** - 所有数据仅存储在用户设备上
- **不上传服务器** - 数据不会发送到任何远程服务器
- **加密保护** - 敏感数据使用浏览器加密存储
- **API密钥保护** - API密钥单独加密存储
## 📤 数据导出
### 导出功能
1. **完整导出**
- 导出所有用户数据
- 包含配置、历史、模板等
- 生成JSON格式的备份文件
2. **选择性导出**
- 只导出特定类型的数据
- 可选择时间范围
- 支持多种格式
### 导出操作
1. **访问导出功能**
- 进入设置页面
- 点击"数据管理"选项卡
- 找到"导出数据"部分
2. **选择导出内容**
- ✅ 优化历史记录
- ✅ 自定义模板
- ✅ 模型配置(不含API密钥)
- ✅ 用户偏好设置
3. **下载备份文件**
- 点击"导出"按钮
- 等待数据打包完成
- 下载生成的备份文件
### 上下文集合导出(与上下文编辑器联动)
- 在数据管理中可直接导出“上下文集合(context-bundle)”至文件或剪贴板
- 导出结构包含:`type/context-bundle`、`version`、`currentId`、`contexts[]`
- 单个上下文在“上下文编辑器 → 导出(标准格式)”中也可导出(含 messages/metadata.variables/tools)
## 📥 数据导入
### 导入功能
1. **从备份恢复**
- 使用之前导出的备份文件
- 完整恢复所有数据
- 支持增量导入
2. **跨设备同步**
- 在不同设备间同步数据
- 保持配置和历史一致
- 支持选择性同步
### 导入操作
1. **准备备份文件**
- 确保备份文件格式正确
- 检查文件完整性
- 备份当前数据(可选)
2. **执行导入**
- 点击"导入数据"按钮
- 选择备份文件
- 选择导入选项
3. **导入选项**
- **替换模式** - 完全替换现有数据
- **合并模式** - 与现有数据合并
- **选择性导入** - 只导入特定类型数据
### 上下文集合导入(replace 模式)
- 支持从文件/剪贴板导入“上下文集合”,默认 replace 模式
- 导入统计会显示:`imported/skipped/predefinedVariablesRemoved`
- 预定义变量(`currentPrompt/originalPrompt/lastOptimizedPrompt/iterateInput/userQuestion/conversationContext`)将被剔除,不会保存为覆盖项
## 🧹 数据清理
### 清理选项
1. **清除历史记录**
- 删除所有优化历史
- 可选择保留收藏的记录
- 释放存储空间
2. **重置用户设置**
- 恢复默认配置
- 清除个性化设置
- 保留API密钥(可选)
3. **删除自定义模板**
- 清除用户创建的模板
- 恢复内置模板
- 支持选择性删除
### 清理操作
1. **访问清理功能**
- 进入设置页面的数据管理部分
- 找到"数据清理"选项
2. **选择清理范围**
- 勾选需要清理的数据类型
- 确认清理范围和影响
- 建议先导出备份
3. **执行清理**
- 点击"开始清理"
- 确认清理操作
- 等待清理完成
## 🔐 隐私保护
### 数据处理原则
- **最小化收集** - 只收集必要的功能数据
- **用户控制** - 用户完全控制自己的数据
- **透明度** - 明确说明数据的使用方式
- **安全传输** - API调用使用HTTPS加密
### API调用隐私
- **直连模式** - 请求直接发送到AI服务商
- **不经过中间服务器** - 避免数据泄露风险
- **临时处理** - 不永久存储API响应内容
- **用户掌控** - 完全由用户控制API密钥
## 📋 数据管理最佳实践
### 定期备份
1. **备份频率**
- 重要项目立即备份
- 日常使用每周备份
- 大量数据每日备份
2. **备份策略**
- 保留多个备份版本
- 使用云存储或外部设备
- 定期验证备份完整性
### 存储优化
1. **定期清理**
- 删除不需要的历史记录
- 清理过期的临时数据
- 整理和归档重要数据
2. **性能维护**
- 避免存储过多数据影响性能
- 定期检查存储空间使用
- 优化数据结构
---
**相关链接**:
- [故障排除](../help/troubleshooting.md) - 数据相关问题解决
+121
View File
@@ -0,0 +1,121 @@
# 历史记录管理
本指南介绍如何有效管理和利用 Prompt Optimizer 的历史记录功能。
## 📜 自动保存功能
### 记录内容
- **优化历史** - 所有优化过程自动保存
- **结果版本** - 每次优化生成新版本记录
- **时间戳** - 记录每次操作的精确时间
- **模型信息** - 保存使用的模型和参数
### 数据存储
- 所有记录存储在本地浏览器中
- 数据不会上传到任何服务器
- 支持跨会话持久保存
## 🔍 历史记录操作
### 查看历史
1. **打开历史记录**
- 点击"历史记录"按钮
- 或使用快捷键访问
2. **浏览记录**
- 按时间倒序排列
- 显示优化摘要信息
- 支持展开查看详细内容
### 搜索和筛选
1. **关键词搜索**
- 在搜索框中输入关键词
- 支持模糊匹配
- 实时过滤结果
2. **分类筛选**
- 按模型类型筛选
- 按优化模式分类
- 按时间范围过滤
### 重用历史内容
1. **一键加载**
- 点击历史记录可重新加载
- 恢复当时的输入内容
- 保持原有的设置参数
2. **复制结果**
- 快速复制优化结果
- 支持复制到剪贴板
- 可选择复制格式
3. **继续优化**
- 基于历史结果继续优化
- 保持优化的连续性
- 支持迭代改进
## 🗂️ 记录管理
### 整理记录
1. **标记重要记录**
- 为优质结果添加标记
- 便于后续快速查找
- 支持自定义标签
2. **分组管理**
- 按项目或主题分组
- 创建自定义分类
- 支持拖拽排序
### 清理记录
1. **选择性删除**
- 选择不需要的记录
- 支持批量删除操作
- 提供删除确认
2. **定期清理建议**
- 每月清理一次无用记录
- 保留有价值的优化结果
- 释放本地存储空间
## 💾 数据导出与备份
### 导出功能
1. **导出选项**
- 导出全部历史记录
- 导出特定时间段记录
- 导出标记的重要记录
2. **导出格式**
- JSON格式(完整数据)
- CSV格式(表格数据)
- TXT格式(纯文本)
### 备份策略
1. **定期备份**
- 建议每周备份一次
- 重要项目立即备份
- 保留多个版本
2. **跨设备同步**
- 通过导入导出功能同步
- 保持数据一致性
- 支持选择性同步
## 📊 使用统计
### 统计信息
- **优化次数** - 总计和各模型使用次数
- **成功率** - 优化成功和失败统计
- **使用趋势** - 时间分布和使用模式
### 性能分析
- **响应时间** - 各模型平均响应时间
- **质量评估** - 基于用户反馈的质量统计
- **效率指标** - 优化效果和改进幅度
---
**相关链接**:
- [数据管理](data.md) - 数据导入导出与上下文集合备份
- [故障排除](../help/troubleshooting.md) - 解决记录相关问题
+104
View File
@@ -0,0 +1,104 @@
# 模型管理
本指南介绍如何配置和管理 Prompt Optimizer 支持的各种AI模型。
## 🤖 支持的AI模型
### 主流模型提供商
- **OpenAI** - GPT-4, GPT-3.5等系列模型
- **Gemini** - Google的Gemini Pro系列
- **DeepSeek** - DeepSeek Chat和Coder系列
- **智谱AI** - GLM-4系列模型
- **SiliconFlow** - 多种开源模型集成
- **自定义模型** - 支持任意OpenAI兼容接口
## ⚙️ 模型配置(符合正常流程测试)
### 配置步骤
1. **打开模型管理**
- 点击右上角的“⚙️ 模型管理”
- 弹出“模型配置”对话框(包含 OpenAI/Gemini/…)
2. **添加 API 密钥**
- 选择要配置的模型提供商
- 输入对应的 API 密钥
- 点击“测试连接”(应显示清晰的成功/失败提示)
3. **保存配置**
- 点击“保存”完成配置
- 再次打开应保持原配置(持久化)
- 主界面模型选择器应包含新配置的模型(状态指示正常)
### 高级参数配置
除了API密钥,还可以为每个模型设置高级参数:
**常用参数**:
- **Temperature** - 控制输出的随机性 (0.0-1.0)
- **Max Tokens** - 限制输出的最大长度
- **Top P** - 控制采样的多样性
- **Frequency Penalty** - 降低重复内容的概率
**配置示例**:
```json
{
"temperature": 0.7,
"max_tokens": 4096,
"top_p": 0.9,
"frequency_penalty": 0.1
}
```
## 🎛️ 模型选择与状态
### 界面选择
- 主界面右上角可切换当前使用的模型
- 状态指示器显示可用/异常(与“测试连接”一致)
### 选择策略
### 根据用途选择
- **日常使用** - GPT-4或Gemini Pro,平衡性能与成本
- **创意写作** - 使用较高的Temperature (0.7-0.9)
- **技术文档** - 使用较低的Temperature (0.1-0.3)
- **本地部署** - 配置Ollama等本地模型
### 成本优化
1. **成本考虑** - 日常使用可选择成本较低的模型
2. **质量要求** - 重要任务使用更强大的模型
3. **速度需求** - 需要快速响应时选择速度较快的模型
4. **隐私要求** - 敏感内容可使用本地部署的模型
## 🔧 故障排除
### 连接问题
1. **API密钥错误**
- 检查密钥是否正确复制
- 确认密钥是否有效期内
- 验证API权限设置
2. **网络问题**
- 检查网络连接状态
- 确认防火墙设置
- 尝试使用代理服务器
3. **设置不生效/丢失**
- 关闭后重新打开模型管理核对配置是否持久
- 刷新页面后检查模型选择器是否仍可用
- 清理浏览器缓存前先导出数据备份
3. **额度不足**
- 检查API账户余额
- 确认使用限制设置
- 考虑升级账户套餐
### 性能优化
- **合理配置参数** - 避免不必要的token消耗
- **缓存常用配置** - 保存经常使用的模型设置
- **监控使用情况** - 定期检查API使用统计
---
**相关链接**:
- [连接问题](../help/connection-issues.md) - 解决连接和网络问题
- [数据管理](data.md) - 导出/导入全局配置与上下文集合
+57
View File
@@ -0,0 +1,57 @@
# 提示词优化
本指南介绍如何使用 Prompt Optimizer 的智能优化功能来改善你的AI提示词。
## 🎯 智能优化流程
### 1. 输入原始提示词
- 在左侧输入框中输入你的原始提示词
- 支持任意长度的文本内容
- 可以是中文或英文提示词
### 2. 选择优化模式
- **系统提示词优化** - 适合优化AI助手的角色设定和行为规范
- **用户提示词优化** - 适合优化用户对AI的具体请求和指令
### 3. 选择优化模板
- **通用优化** - 适合大多数场景的基础优化
- **专业领域** - 针对特定领域的专业优化
- **创意写作** - 适合创意和文学创作场景
- **技术文档** - 适合技术文档和说明书撰写
### 4. 执行优化
- 点击"开始优化"按钮
- 等待AI生成优化结果
- 可以随时停止优化过程
## 🔄 迭代优化
### 继续优化功能
- **继续优化** - 对已有结果进行进一步改进
- **明确改进方向** - 在优化时提供具体的改进建议
- **版本管理** - 保存和比较不同版本的优化结果
### 优化技巧
1. **明确具体** - 清楚说明你想要AI做什么
2. **提供背景** - 给出必要的上下文信息
3. **结构化表达** - 使用列表、步骤等结构化格式
4. **示例说明** - 提供期望输出的具体示例
## 💡 使用建议
### 选择合适的优化模式
- **日常对话**:使用用户提示词优化
- **AI助手设定**:使用系统提示词优化
- **特殊场景**:根据具体需求选择专业模板
### 优化效果提升
1. **选对模板** - 根据使用场景选择合适的优化模板
2. **迭代优化** - 不满意时使用"继续优化"功能
3. **对比测试** - 使用对比功能验证优化效果
4. **记录最佳实践** - 保存表现良好的优化结果作为参考
---
**相关链接**:
- [模型管理](models.md) - 配置和管理AI模型
- [模板管理](templates.md) - 创建和使用优化模板
@@ -0,0 +1,35 @@
# 系统提示词优化(基础模式)
系统提示词优化用于定义 AI 的“角色、能力边界与行为规范”,帮助模型在对话中保持稳定一致的风格与策略。
## 适用场景
- 角色扮演与人物设定(如:客服、产品经理、技术专家)
- 长文档/规范约束(如:输出结构、语气、禁用项)
- 流程性任务(如:审稿流程、质检流程、评审流程)
## 操作步骤
1. 在基础模式中选择“系统提示词优化”
2. 明确角色定位(专业领域、风格、边界)
3. 规范输出结构(标题、步骤、要点、格式)
4. 加入质量标准(完整性、准确性、风险提示)
5. 保存为模板,便于复用与团队分享
## 模板要点(示例)
```text
你是一名资深的{{role}},擅长{{expertise}}。
请严格遵循以下规则:
1) 输出使用{{tone}}语气;2) 结构化呈现;3) 必要时给出风险与边界提示;
禁止:臆测数据、越权给出法律/医疗诊断。
```
## 最佳实践
- 明确“能/不能做”的边界,减少幻觉与误导
- 约束输出结构,保证可读性与可比性
- 结合“对比测试”评估不同版本的系统提示词
## 相关链接
- 模型管理: ../basic/models.md
- 模板管理: ../basic/templates.md
- 历史记录: ../basic/history.md
- 数据管理: ../basic/data.md
- 用户提示词优化: ./user-optimization.md
+133
View File
@@ -0,0 +1,133 @@
# 模板管理(功能提示词)
本指南介绍如何使用和管理 Prompt Optimizer 的优化模板功能。
## 📚 内置优化模板(支持语言切换/分类查看)
### 通用模板
- **通用提示词优化** - 适合大多数场景的基础优化
- **角色扮演优化** - 专门优化AI角色设定
- **任务指令优化** - 让AI更好地理解具体任务
### 专业模板
- **技术文档优化** - 提升技术类提示词的准确性
- **创意写作优化** - 激发AI的创造力
- **商务沟通优化** - 适合正式商务场景
### 模板特点
- 基于大量优化经验总结
- 针对不同场景优化
- 持续更新和改进
- 内置模板支持中文/英文展示切换(名称与内容随语言切换)
## ✏️ 自定义模板
### 创建自定义模板
1. **新建模板**
- 在模板管理界面点击“新建模板”/“添加”
- 设置模板名称和描述
- 选择适用的优化模式(系统优化/用户优化)
2. **编写模板内容**
```
模板名称:[自定义名称]
优化目标:[描述优化的目的]
优化指令:[具体的优化规则]
适用场景:[使用建议]
```
3. **测试和调优**
- 使用不同的测试案例验证
- 根据效果调整模板内容
- 记录最佳实践
### 模板管理操作
1. **编辑模板**
- 修改模板名称和描述
- 更新优化指令内容
- 调整适用场景说明
2. **复制模板**
- 基于现有模板创建新版本
- 保留原模板并进行修改
- 适用于创建相似模板
3. **删除模板**
- 删除不再使用的模板
- 提供删除确认机制
- 支持恢复误删模板
## 🔄 模板使用
### 应用模板
1. **选择模板**
- 在优化界面选择合适的模板(可按分类筛选)
- 可以预览模板内容
- 支持搜索和筛选
2. **模板参数**
- 某些模板支持参数配置
- 可以调整优化强度
- 设置特定的优化重点
### 模板效果评估与结果展示
1. **效果对比**
- 比较不同模板的优化结果(Compare 原始 vs 优化)
- 记录各模板的适用场景
- 建立个人使用偏好
2. **持续优化**
- 根据使用效果改进模板
- 收集用户反馈
- 定期更新模板内容
3. **结果展示功能**
- 视图切换:Source(Markdown 源码)/Render(渲染)
- 复制到剪贴板:Copy
- 全屏查看:Fullscreen
- 展开编辑:Expand 进入全屏编辑器
## 📤 导入导出
### 模板分享
1. **导出模板**
- 将自定义模板导出为文件
- 支持单个或批量导出
- 包含模板的完整信息
2. **导入模板**
- 从文件导入模板
- 支持社区分享的模板
- 自动检查模板兼容性
### 模板库
1. **社区模板**
- 使用社区贡献的优质模板
- 定期更新模板库内容
- 支持评分和评论
2. **模板备份**
- 定期备份自定义模板
- 避免意外丢失
- 支持版本管理
## 💡 最佳实践
### 模板设计原则
1. **明确目标** - 每个模板应有清晰的优化目标
2. **简洁高效** - 避免过于复杂的指令
3. **可复用性** - 设计通用性强的模板
4. **持续改进** - 根据使用效果不断优化
### 使用建议
1. **场景匹配** - 选择最适合当前场景的模板
2. **灵活调整** - 根据具体需求微调模板参数
3. **效果跟踪** - 记录不同模板的使用效果
4. **经验总结** - 总结个人的模板使用经验
---
**相关链接**:
- [系统提示词优化](system-optimization.md) - 基础模式(系统)
- [用户提示词优化](user-optimization.md) - 基础模式(用户)
- [创意写作案例](../examples/creative-writing.md) - 模板在创意写作中的实际应用
+35
View File
@@ -0,0 +1,35 @@
# 用户提示词优化(基础模式)
用户提示词优化聚焦“具体任务指令”的清晰性与可执行性,帮助你更准确地表达目标、约束与期望输出。
## 适用场景
- 问答、改写、总结、翻译等日常任务
- 文案撰写、邮件沟通、工作计划等业务场景
- 结构化输出(表格、要点、步骤、JSON)
## 操作步骤
1. 在基础模式中选择“用户提示词优化”
2. 明确任务目标与输入范围
3. 指定输出格式与完成标准
4. 提供必要上下文或示例
5. 使用迭代优化进一步打磨结果
## 模板要点(示例)
```text
任务:请根据下述素材,撰写一份{{doc_type}}。
要求:
1) 目标受众为{{audience}};2) 风格{{tone}};3) 长度约{{length}};
输出:标题 + 摘要 + 正文要点(使用列表)。
```
## 最佳实践
- 任务要具体、边界要清晰、示例要贴近目标
- 显式给出输出格式与质量标准,便于对比评估
- 不满意就“继续优化”,记录并对比不同版本
## 相关链接
- 模型管理: ../basic/models.md
- 模板管理: ../basic/templates.md
- 历史记录: ../basic/history.md
- 数据管理: ../basic/data.md
- 系统提示词优化: ./system-optimization.md
+518
View File
@@ -0,0 +1,518 @@
# 桌面应用
Prompt Optimizer 桌面应用是功能最完整、体验最佳的版本,提供无限制的AI模型访问能力和完整的高级功能支持。
## 🖥️ 核心优势
桌面应用相比其他版本具有显著优势:
- ✅ **无跨域限制** - 作为原生桌面应用,完全摆脱浏览器跨域(CORS)问题
- ✅ **本地模型完美支持** - 直接连接 Ollama、LM Studio 等本地部署的模型
- ✅ **自动更新** - 支持自动检查和更新到最新版本
- ✅ **独立运行** - 无需浏览器,提供更快响应和更佳性能
- ✅ **完整功能** - 支持所有高级功能,无功能限制
- ✅ **稳定可靠** - 不受浏览器环境变化影响
## 📋 系统要求
### Windows 系统
- Windows 10/11 (64位)
- 至少 4GB 内存
- 100MB 可用磁盘空间
- Visual C++ Redistributable(通常已预装)
### macOS 系统
- macOS 10.15+ (Catalina及以上)
- Intel 或 Apple Silicon 处理器
- 至少 4GB 内存
- 100MB 可用磁盘空间
### Linux 系统
- Ubuntu 18.04+ / Debian 10+
- 或其他主流Linux发行版
- X11 或 Wayland 显示服务器
- 至少 4GB 内存
## 📥 下载和安装
### 官方下载渠道
**GitHub Releases(推荐)**: [https://github.com/linshenkx/prompt-optimizer/releases](https://github.com/linshenkx/prompt-optimizer/releases)
### 安装包类型说明
#### 推荐:安装程序版本(支持自动更新)
- **Windows**: `Prompt-Optimizer-Setup-[版本].exe`
- **macOS**: `Prompt-Optimizer-[版本].dmg`
- **Linux**: `Prompt-Optimizer-[版本].AppImage`
#### 备选:压缩包版本(免安装)
- **Windows**: `Prompt-Optimizer-[版本]-win.zip`
- **macOS**: `Prompt-Optimizer-[版本]-mac.zip`
- **Linux**: `Prompt-Optimizer-[版本]-linux.zip`
### Windows 安装详细步骤
#### 1. 下载安装程序
- 从GitHub Releases下载 `Prompt-Optimizer-Setup-[版本].exe`
- 确保从官方渠道下载,避免安全风险
#### 2. 运行安装程序
```bash
# 如果遇到Windows安全提示:
# 1. 点击"更多信息"
# 2. 点击"仍要运行"
# 3. 选择安装位置(推荐默认)
# 4. 点击"安装"按钮
```
#### 3. 完成安装
- 安装完成后应用会自动启动
- 桌面和开始菜单会创建快捷方式
- 首次启动可能需要几秒钟加载时间
#### 4. 常见问题处理
**安装失败**:
```bash
# 以管理员权限运行安装程序
# 右键点击安装包 -> "以管理员身份运行"
```
**缺少运行库**:
```bash
# 下载并安装Visual C++ Redistributable
# 链接:https://aka.ms/vs/17/release/vc_redist.x64.exe
```
### macOS 安装详细步骤
#### 1. 下载和挂载
- 下载 `.dmg` 安装包
- 双击挂载磁盘镜像
#### 2. 安装应用
- 将 Prompt Optimizer 拖拽到 Applications 文件夹
- 等待复制完成
- 弹出磁盘镜像
#### 3. 首次启动
```bash
# 如果出现"无法打开"提示:
# 方法1:按住Control键点击应用图标 -> 选择"打开" -> "打开"
# 方法2:系统偏好设置 -> 安全性与隐私 -> 通用 -> "仍要打开"
```
#### 4. 权限设置
- 首次启动可能需要授予网络访问权限
- 在"安全性与隐私"中允许应用运行
- 如需要,在"隐私"设置中允许网络访问
### Linux 安装详细步骤
#### AppImage 版本(推荐)
```bash
# 1. 下载AppImage文件
wget https://github.com/linshenkx/prompt-optimizer/releases/latest/download/Prompt-Optimizer-[版本].AppImage
# 2. 添加执行权限
chmod +x Prompt-Optimizer-[版本].AppImage
# 3. 运行应用
./Prompt-Optimizer-[版本].AppImage
# 4. 可选:集成到系统菜单
# 安装AppImageLauncher会自动处理集成
sudo apt install appimagelauncher
```
#### 压缩包版本
```bash
# 1. 下载并解压
wget https://github.com/linshenkx/prompt-optimizer/releases/latest/download/Prompt-Optimizer-[版本]-linux.zip
unzip Prompt-Optimizer-[版本]-linux.zip
# 2. 进入目录
cd Prompt-Optimizer-[版本]-linux
# 3. 运行应用
./prompt-optimizer
```
#### 依赖包安装
```bash
# Ubuntu/Debian
sudo apt update
sudo apt install libgtk-3-0 libnotify4 libnss3 libxss1 libxtst6 xdg-utils libatspi2.0-0
# CentOS/RHEL
sudo yum install gtk3 libnotify nss libXScrnSaver libXtst xdg-utils at-spi2-atk
# Arch Linux
sudo pacman -S gtk3 libnotify nss libxss libxtst xdg-utils at-spi2-atk
```
## ⚙️ 功能特性
### 完整功能支持
桌面版支持所有Web版功能:
- **基础优化功能** - 完整的提示词优化能力
- **高级变量管理** - 复杂变量系统和上下文管理
- **工具调用功能** - Function Calling完整支持
- **多轮会话测试** - 复杂对话场景模拟
- **完整模型管理** - 无限制的模型配置
### 桌面专属特性
#### 无限制API访问
```javascript
// 支持任意API端点,无跨域限制
API Base URL: http://localhost:11434/v1 // Ollama
API Base URL: https://internal-api.company.com/v1 // 企业内网
API Base URL: http://192.168.1.100:1234/v1 // 局域网服务
```
#### 本地模型完美集成
**Ollama配置示例**:
```javascript
模型提供商: Custom
API Base URL: http://localhost:11434/v1
模型名称: qwen2.5:7b
API密钥: dummy_key (任意值,Ollama不需要)
```
**LM Studio配置**:
```javascript
API Base URL: http://localhost:1234/v1
模型名称: 根据LM Studio中加载的模型填写
API密钥: lm-studio (或任意值)
```
**Xinference配置**:
```javascript
API Base URL: http://localhost:9997/v1
模型名称: 部署的具体模型名称
API密钥: 根据Xinference配置填写
```
#### 高级网络配置
**HTTP/HTTPS代理支持**:
```bash
# 在设置->网络中配置代理
HTTP代理: http://proxy.company.com:8080
HTTPS代理: https://proxy.company.com:8080
认证: 用户名/密码(如需要)
```
**自定义请求头**:
```javascript
// 支持自定义HTTP请求头
Authorization: Bearer custom-token
X-API-Version: v2024-01
User-Agent: CustomPromptOptimizer/1.0
```
## 🛠️ 配置和使用
### 初次配置向导
#### 1. 模型配置
```bash
启动应用 -> 设置 -> 模型管理
1. 点击"添加模型"
2. 选择模型提供商(OpenAI、Gemini等)
3. 输入API密钥
4. 点击"测试连接"验证
5. 保存配置
```
#### 2. 界面个性化
- **主题设置**:日间模式、夜间模式、跟随系统
- **字体调整**:字体大小、字体族选择
- **语言设置**:中文、英文界面切换
- **布局配置**:侧边栏位置、面板大小
#### 3. 高级设置
- **网络代理**:HTTP/HTTPS代理配置
- **自动更新**:启用/禁用自动更新检查
- **数据存储**:本地数据存储位置
- **性能选项**:GPU加速、内存使用限制
### 数据管理
#### 数据存储位置
```bash
Windows: %APPDATA%\prompt-optimizer\
# 实际路径示例:C:\Users\用户名\AppData\Roaming\prompt-optimizer\
macOS: ~/Library/Application Support/prompt-optimizer/
# 实际路径示例:/Users/用户名/Library/Application Support/prompt-optimizer/
Linux: ~/.config/prompt-optimizer/
# 实际路径示例:/home/用户名/.config/prompt-optimizer/
```
#### 数据文件结构
```
prompt-optimizer/
├── config.json # 应用配置
├── models.json # 模型配置
├── history.db # 历史记录数据库
├── templates/ # 模板文件
├── exports/ # 导出数据
└── logs/ # 应用日志
```
#### 数据备份策略
```bash
# 方法1:使用应用内导出功能
设置 -> 数据管理 -> 导出所有数据
# 方法2:直接复制数据文件夹
cp -r ~/.config/prompt-optimizer/ /backup/location/
# 方法3:自动备份脚本(Linux/macOS)
#!/bin/bash
BACKUP_DIR="/backup/prompt-optimizer/$(date +%Y%m%d)"
mkdir -p $BACKUP_DIR
cp -r ~/.config/prompt-optimizer/* $BACKUP_DIR/
```
## 🔄 自动更新
### 更新检查机制
桌面版具有智能更新系统(仅安装程序版本):
#### 自动检查
- **启动时检查** - 每次启动检查是否有新版本
- **定期检查** - 每24小时后台检查一次
- **手动检查** - 设置中可手动检查更新
#### 更新策略
```javascript
// 更新设置选项
自动下载更新: 是/否
静默安装更新: 是/否(需要管理员权限)
更新通知: 立即通知/启动时通知/禁用通知
```
### 更新流程详解
#### 1. 检测阶段
```bash
# 应用会检查GitHub Releases API
检查URL: https://api.github.com/repos/linshenkx/prompt-optimizer/releases/latest
当前版本: v1.2.0
最新版本: v1.3.0
状态: 发现新版本
```
#### 2. 下载阶段
- 后台下载更新包到临时目录
- 显示下载进度和速度
- 支持断点续传和重试机制
- 验证下载文件的完整性和签名
#### 3. 安装阶段
```bash
# Windows
临时目录: %TEMP%\prompt-optimizer-update\
安装方式: 运行新的安装程序覆盖安装
重启方式: 自动关闭应用并重新启动
# macOS
临时目录: /tmp/prompt-optimizer-update/
安装方式: 替换Applications中的应用包
重启方式: 重新启动应用
# Linux
临时目录: /tmp/prompt-optimizer-update/
安装方式: 替换AppImage文件
重启方式: 重新启动应用
```
#### 4. 异常处理
- **更新失败自动回滚** - 保留原版本可用性
- **网络中断重试机制** - 自动重试下载
- **手动更新备选方案** - 提供下载链接手动更新
## 🔧 故障排除
### Windows 常见问题
#### 应用启动问题
**问题:应用无法启动**
```bash
# 解决方案1:检查运行库
下载并安装: Microsoft Visual C++ Redistributable
链接: https://aka.ms/vs/17/release/vc_redist.x64.exe
# 解决方案2:以管理员权限运行
右键应用图标 -> "以管理员身份运行"
# 解决方案3:检查防病毒软件
将Prompt Optimizer添加到杀毒软件白名单
检查是否被误报为恶意软件
```
**问题:闪退或崩溃**
```bash
# 检查日志文件
路径: %APPDATA%\prompt-optimizer\logs\
查看: error.log 或 crash.log
# 常见解决方案
1. 更新显卡驱动
2. 关闭硬件加速
3. 重置应用配置
```
#### 网络连接问题
**问题:无法连接API**
```bash
# 检查防火墙设置
控制面板 -> 系统和安全 -> Windows Defender防火墙
允许Prompt Optimizer通过防火墙
# 检查代理设置
设置 -> 网络 -> 配置HTTP/HTTPS代理
确保代理配置正确
# 测试网络连通性
cmd -> ping api.openai.com
cmd -> nslookup api.openai.com
```
### macOS 常见问题
#### 安全和权限问题
**问题:"无法打开,因为无法验证开发者"**
```bash
# 解决方案1:临时允许
按住Control键点击应用 -> 打开 -> 打开
# 解决方案2:系统设置允许
系统偏好设置 -> 安全性与隐私 -> 通用 -> "仍要打开"
# 解决方案3:命令行允许(高级)
sudo spctl --master-disable # 临时禁用Gatekeeper
# 使用完毕后记得重新启用
sudo spctl --master-enable
```
**问题:网络权限被拒绝**
```bash
# 授予网络访问权限
系统偏好设置 -> 安全性与隐私 -> 隐私 -> 完全磁盘访问
添加Prompt Optimizer到允许列表
# 重置网络权限
sudo rm -rf ~/Library/Application Support/prompt-optimizer/
重新启动应用并重新授权
```
### Linux 常见问题
#### AppImage运行问题
**问题:AppImage无法运行**
```bash
# 安装FUSE支持
sudo apt install fuse libfuse2 # Ubuntu/Debian
sudo yum install fuse # CentOS/RHEL
sudo pacman -S fuse2 # Arch Linux
# 添加执行权限
chmod +x Prompt-Optimizer-*.AppImage
# 在终端运行查看详细错误
./Prompt-Optimizer-*.AppImage --verbose
```
**问题:缺少系统库**
```bash
# 安装必需的依赖包
# Ubuntu/Debian
sudo apt install libgtk-3-0 libnotify4 libnss3 libxss1 libxtst6 libatspi2.0-0
# CentOS/RHEL
sudo yum install gtk3 libnotify nss libXScrnSaver libXtst at-spi2-atk
# Arch Linux
sudo pacman -S gtk3 libnotify nss libxss libxtst at-spi2-atk
```
#### 显示和主题问题
**问题:界面显示异常**
```bash
# 检查显示服务器
echo $XDG_SESSION_TYPE # 应该显示 x11 或 wayland
# 设置缩放比例
export GDK_SCALE=1.5
./Prompt-Optimizer-*.AppImage
# 强制使用X11(如果Wayland有问题)
export GDK_BACKEND=x11
./Prompt-Optimizer-*.AppImage
```
## 💡 使用技巧
### 性能优化建议
#### 1. 硬件加速配置
```bash
# 启用GPU加速(如果支持)
设置 -> 高级 -> 硬件加速: 启用
重启应用生效
# 调整内存限制
设置 -> 高级 -> 最大内存使用: 2GB
根据系统配置调整
```
#### 2. 网络优化
```bash
# 配置连接超时
设置 -> 网络 -> 请求超时: 30秒
设置 -> 网络 -> 重试次数: 3次
# 使用HTTP/2(如果API支持)
设置 -> 高级 -> 启用HTTP/2: 是
```
### 工作流程优化
#### 1. 快捷键配置
```bash
# 常用快捷键(可自定义)
Ctrl+N: 新建优化任务
Ctrl+S: 保存当前配置
Ctrl+E: 导出结果
Ctrl+,: 打开设置
F11: 全屏模式
```
#### 2. 模板管理
- 创建常用场景的模板库
- 使用变量系统提高复用性
- 定期整理和更新模板内容
- 导出重要模板作为备份
---
**相关链接**:
- [Chrome插件](extension.md) - 浏览器插件版本使用指南
- [故障排除](../help/troubleshooting.md) - 更多问题解决方案
@@ -0,0 +1,636 @@
# Docker高级配置
本指南介绍 Prompt Optimizer 的Docker高级部署配置,包括多服务架构、HTTPS安全配置和监控日志管理。
## 📦 Docker Compose 高级架构
### 多服务配置
包含缓存、反向代理和SSL的完整生产级配置:
```yaml
version: '3.8'
services:
prompt-optimizer:
image: linshen/prompt-optimizer:latest
container_name: prompt-optimizer
restart: unless-stopped
environment:
- VITE_OPENAI_API_KEY=${OPENAI_API_KEY}
- VITE_GEMINI_API_KEY=${GEMINI_API_KEY}
- ACCESS_PASSWORD=${ACCESS_PASSWORD}
- REDIS_URL=redis://redis:6379/0
depends_on:
- redis
networks:
- prompt-network
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/health"]
interval: 30s
timeout: 10s
retries: 3
redis:
image: redis:7-alpine
container_name: prompt-redis
restart: unless-stopped
command: redis-server --requirepass ${REDIS_PASSWORD} --maxmemory 256mb --maxmemory-policy allkeys-lru
environment:
- REDIS_PASSWORD=${REDIS_PASSWORD}
volumes:
- redis_data:/data
networks:
- prompt-network
healthcheck:
test: ["CMD", "redis-cli", "--raw", "incr", "ping"]
interval: 30s
timeout: 10s
retries: 3
nginx:
image: nginx:alpine
container_name: prompt-nginx
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- ./ssl:/etc/nginx/ssl:ro
- ./logs/nginx:/var/log/nginx
depends_on:
- prompt-optimizer
networks:
- prompt-network
healthcheck:
test: ["CMD", "nginx", "-t"]
interval: 30s
timeout: 10s
retries: 3
# 可选:Watchtower自动更新
watchtower:
image: containrrr/watchtower
container_name: prompt-watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_POLL_INTERVAL=3600
- WATCHTOWER_INCLUDE_STOPPED=true
command: prompt-optimizer prompt-redis prompt-nginx
volumes:
redis_data:
driver: local
networks:
prompt-network:
driver: bridge
ipam:
config:
- subnet: 172.20.0.0/16
```
### 高级环境配置
扩展的 `.env` 文件:
```env
# API Keys
OPENAI_API_KEY=sk-your-openai-api-key
GEMINI_API_KEY=your-gemini-api-key
DEEPSEEK_API_KEY=your-deepseek-key
# Access Control
ACCESS_USERNAME=admin
ACCESS_PASSWORD=your_very_secure_password
JWT_SECRET=your-random-jwt-secret-key-min-32-chars
# Redis Configuration
REDIS_PASSWORD=your_redis_password
# SSL Configuration
SSL_DOMAIN=yourdomain.com
SSL_EMAIL=admin@yourdomain.com
# MCP Advanced Configuration
MCP_DEFAULT_MODEL_PROVIDER=openai
MCP_LOG_LEVEL=info
MCP_RATE_LIMIT=100
MCP_TIMEOUT=30000
# Custom Models
VITE_CUSTOM_API_KEY_ollama=dummy_key
VITE_CUSTOM_API_BASE_URL_ollama=http://host.docker.internal:11434/v1
VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b
# Performance Settings
NODE_ENV=production
LOG_LEVEL=info
CACHE_TTL=3600
```
## 🔒 HTTPS和SSL配置
### Nginx反向代理配置
创建 `nginx.conf` 文件:
```nginx
events {
worker_connections 1024;
use epoll;
multi_accept on;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
# 日志格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" '
'rt=$request_time uct="$upstream_connect_time" '
'uht="$upstream_header_time" urt="$upstream_response_time"';
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log warn;
# 性能优化
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# Gzip压缩
gzip on;
gzip_vary on;
gzip_min_length 10240;
gzip_proxied expired no-cache no-store private must-revalidate auth;
gzip_types
text/plain
text/css
text/xml
text/javascript
application/javascript
application/json
application/xml+rss;
# 上游服务器
upstream prompt-optimizer {
server prompt-optimizer:80;
keepalive 32;
}
# HTTP服务器 - 重定向到HTTPS
server {
listen 80;
server_name ${SSL_DOMAIN} www.${SSL_DOMAIN};
# Let's Encrypt验证路径
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
# 所有其他请求重定向到HTTPS
location / {
return 301 https://$server_name$request_uri;
}
}
# HTTPS服务器
server {
listen 443 ssl http2;
server_name ${SSL_DOMAIN} www.${SSL_DOMAIN};
# SSL证书配置
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
# SSL安全配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
# HSTS安全头
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
add_header X-XSS-Protection "1; mode=block";
# 主应用代理
location / {
proxy_pass http://prompt-optimizer;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
# 超时配置
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
}
# MCP服务器路径
location /mcp {
proxy_pass http://prompt-optimizer/mcp;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# WebSocket支持(如果MCP使用WebSocket)
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
# 健康检查端点
location /health {
access_log off;
proxy_pass http://prompt-optimizer/health;
proxy_set_header Host $host;
}
# 静态资源缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
proxy_pass http://prompt-optimizer;
proxy_set_header Host $host;
expires 1y;
add_header Cache-Control "public, immutable";
}
}
}
```
### Let's Encrypt自动SSL证书
#### 使用Certbot获取证书
```bash
# 安装certbot
sudo apt update && sudo apt install certbot python3-certbot-nginx
# 获取证书
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
# 测试自动续期
sudo certbot renew --dry-run
```
#### Docker Compose集成Certbot
```yaml
certbot:
image: certbot/certbot
container_name: prompt-certbot
volumes:
- ./ssl:/etc/letsencrypt
- ./certbot-www:/var/www/certbot
command: >-
sh -c "
certbot certonly --webroot
-w /var/www/certbot
-d ${SSL_DOMAIN}
-d www.${SSL_DOMAIN}
--email ${SSL_EMAIL}
--agree-tos
--no-eff-email
"
depends_on:
- nginx
networks:
- prompt-network
```
#### 自动续期脚本
```bash
#!/bin/bash
# ssl-renew.sh
cd /path/to/your/docker-compose
docker compose run --rm certbot certbot renew
docker compose exec nginx nginx -s reload
echo "SSL证书续期完成: $(date)"
```
设置定时任务:
```bash
# 每月1日凌晨2点执行续期
0 2 1 * * /path/to/ssl-renew.sh >> /var/log/ssl-renew.log 2>&1
```
## 🛡️ 安全配置
### 防火墙配置
#### UFW配置(Ubuntu/Debian)
```bash
# 重置防火墙规则
sudo ufw --force reset
# 默认策略:拒绝入站,允许出站
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 允许SSH(修改为您的SSH端口)
sudo ufw allow 22/tcp
# 允许HTTP和HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 允许自定义端口(如果不使用nginx)
# sudo ufw allow 8081/tcp
# 启用防火墙
sudo ufw enable
# 查看状态
sudo ufw status verbose
```
#### iptables高级规则
```bash
#!/bin/bash
# firewall-rules.sh
# 清空现有规则
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# 设置默认策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# 允许回环接口
iptables -A INPUT -i lo -j ACCEPT
# 允许已建立的连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 允许SSH(修改为您的SSH端口)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# 允许HTTP和HTTPS
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# 限制连接频率(防止暴力攻击)
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
# 阻止无效数据包
iptables -A INPUT -m state --state INVALID -j DROP
# 保存规则
iptables-save > /etc/iptables/rules.v4
echo "防火墙规则配置完成"
```
### Docker安全最佳实践
#### 非root用户运行
```dockerfile
# 在Dockerfile中创建非root用户
RUN addgroup -g 1001 -S appgroup && \
adduser -u 1001 -S appuser -G appgroup
USER appuser
```
```bash
# 或在运行时指定用户
docker run --user 1001:1001 -d -p 8081:80 linshen/prompt-optimizer
```
#### 只读文件系统
```yaml
services:
prompt-optimizer:
image: linshen/prompt-optimizer:latest
read_only: true
tmpfs:
- /tmp
- /var/cache/nginx
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
cap_add:
- CHOWN
- SETUID
- SETGID
```
## 📊 监控和日志管理
### 日志配置
#### 高级日志配置
```yaml
services:
prompt-optimizer:
image: linshen/prompt-optimizer:latest
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "10"
labels: "service=prompt-optimizer"
environment:
- LOG_LEVEL=info
- LOG_FORMAT=json
```
#### 集中化日志管理
使用ELK Stack进行日志聚合:
```yaml
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.8.0
container_name: prompt-elasticsearch
environment:
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
volumes:
- elasticsearch_data:/usr/share/elasticsearch/data
networks:
- prompt-network
logstash:
image: docker.elastic.co/logstash/logstash:8.8.0
container_name: prompt-logstash
volumes:
- ./logstash.conf:/usr/share/logstash/pipeline/logstash.conf
depends_on:
- elasticsearch
networks:
- prompt-network
kibana:
image: docker.elastic.co/kibana/kibana:8.8.0
container_name: prompt-kibana
ports:
- "5601:5601"
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
depends_on:
- elasticsearch
networks:
- prompt-network
```
### 健康检查和监控
#### Prometheus监控配置
```yaml
prometheus:
image: prom/prometheus
container_name: prompt-prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus_data:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.console.libraries=/etc/prometheus/console_libraries'
- '--web.console.templates=/etc/prometheus/consoles'
- '--web.enable-lifecycle'
networks:
- prompt-network
grafana:
image: grafana/grafana
container_name: prompt-grafana
ports:
- "3000:3000"
environment:
- GF_SECURITY_ADMIN_PASSWORD=admin
volumes:
- grafana_data:/var/lib/grafana
depends_on:
- prometheus
networks:
- prompt-network
```
#### Prometheus配置文件
```yaml
# prometheus.yml
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: 'prompt-optimizer'
static_configs:
- targets: ['prompt-optimizer:80']
metrics_path: '/metrics'
scrape_interval: 30s
- job_name: 'nginx'
static_configs:
- targets: ['nginx:80']
metrics_path: '/nginx_status'
scrape_interval: 30s
- job_name: 'redis'
static_configs:
- targets: ['redis:6379']
scrape_interval: 30s
rule_files:
- "alert_rules.yml"
alerting:
alertmanagers:
- static_configs:
- targets:
- alertmanager:9093
```
### 备份和恢复策略
#### 自动化备份脚本
```bash
#!/bin/bash
# advanced-backup.sh
BACKUP_DIR="/backup/prompt-optimizer"
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_PATH="$BACKUP_DIR/$DATE"
# 创建备份目录
mkdir -p $BACKUP_PATH
# 备份Docker配置
docker compose config > $BACKUP_PATH/docker-compose.yml
cp .env $BACKUP_PATH/.env
cp nginx.conf $BACKUP_PATH/nginx.conf
# 备份Redis数据
docker compose exec -T redis redis-cli BGSAVE
sleep 10
docker cp prompt-redis:/data/dump.rdb $BACKUP_PATH/redis-dump.rdb
# 备份SSL证书
cp -r ssl/ $BACKUP_PATH/
# 备份应用数据(如果有持久化卷)
docker compose exec -T prompt-optimizer tar czf - /app/data | cat > $BACKUP_PATH/app-data.tar.gz
# 创建备份元信息
cat > $BACKUP_PATH/backup-info.json << EOF
{
"timestamp": "$DATE",
"version": "$(docker compose exec -T prompt-optimizer cat /app/package.json | jq -r .version)",
"services": $(docker compose ps --services | jq -R . | jq -s .),
"backup_size": "$(du -sh $BACKUP_PATH | cut -f1)"
}
EOF
# 压缩备份
tar czf $BACKUP_DIR/prompt-optimizer-$DATE.tar.gz -C $BACKUP_DIR $DATE
rm -rf $BACKUP_PATH
# 清理旧备份(保留30天)
find $BACKUP_DIR -name "prompt-optimizer-*.tar.gz" -mtime +30 -delete
echo "备份完成: $BACKUP_DIR/prompt-optimizer-$DATE.tar.gz"
```
---
**相关链接**:
- [基础部署](docker-basic.md) - Docker单容器快速部署
- [故障排除](docker-troubleshooting.md) - 常见问题和性能优化
+372
View File
@@ -0,0 +1,372 @@
# Docker基础部署
本指南介绍如何使用Docker快速部署 Prompt Optimizer,包括单容器运行和基本环境配置。
## 🐳 Docker 单容器部署
### 快速开始
#### 最简运行
只需一条命令即可启动 Prompt Optimizer:
```bash
# 最简运行(默认配置)
docker run -d -p 8081:80 --restart unless-stopped --name prompt-optimizer linshen/prompt-optimizer
# 访问应用
open http://localhost:8081
```
#### 完整运行命令
带环境变量的完整运行配置:
```bash
docker run -d -p 8081:80 \
-e VITE_OPENAI_API_KEY=your_openai_key \
-e VITE_GEMINI_API_KEY=your_gemini_key \
-e ACCESS_USERNAME=admin \
-e ACCESS_PASSWORD=your_secure_password \
--restart unless-stopped \
--name prompt-optimizer \
linshen/prompt-optimizer
```
### 镜像说明
#### 官方镜像
**Docker Hub**:`linshen/prompt-optimizer:latest`
- ✅ 稳定可靠,自动构建
- ✅ 支持多架构:amd64, arm64
- ✅ 定期更新,跟随项目发布
**国内镜像**:`registry.cn-guangzhou.aliyuncs.com/prompt-optimizer/prompt-optimizer:latest`
- 🚀 国内用户访问更快
- 🔄 与Docker Hub镜像同步
- 💡 Docker Hub访问缓慢时推荐使用
#### 版本标签
```bash
# 使用最新版本
docker pull linshen/prompt-optimizer:latest
# 使用指定版本
docker pull linshen/prompt-optimizer:v1.2.0
# 使用开发版本(不推荐生产使用)
docker pull linshen/prompt-optimizer:dev
```
### 端口和网络配置
#### 端口映射选项
```bash
# 标准端口映射
-p 8081:80 # 将容器80端口映射到主机8081端口
# 自定义端口
-p 3000:80 # 映射到主机3000端口
-p 80:80 # 直接映射到主机80端口(需要管理员权限)
```
#### 网络模式
```bash
# 默认bridge网络
docker run -d -p 8081:80 linshen/prompt-optimizer
# 使用host网络(Linux)
docker run -d --network host linshen/prompt-optimizer
# 创建自定义网络
docker network create prompt-net
docker run -d --network prompt-net -p 8081:80 linshen/prompt-optimizer
```
## 🔧 环境变量配置
### API密钥配置
#### 主流AI服务商
```bash
# OpenAI
-e VITE_OPENAI_API_KEY=sk-your-openai-api-key
# Google Gemini
-e VITE_GEMINI_API_KEY=your-gemini-api-key
# DeepSeek
-e VITE_DEEPSEEK_API_KEY=your-deepseek-key
# 智谱AI
-e VITE_ZHIPU_API_KEY=your-zhipu-key
# SiliconFlow
-e VITE_SILICONFLOW_API_KEY=your-siliconflow-key
```
#### 自定义模型配置
支持配置无限数量的自定义模型:
```bash
# Ollama本地模型
-e VITE_CUSTOM_API_KEY_ollama=dummy_key \
-e VITE_CUSTOM_API_BASE_URL_ollama=http://host.docker.internal:11434/v1 \
-e VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b \
# 其他OpenAI兼容API
-e VITE_CUSTOM_API_KEY_custom1=your-api-key \
-e VITE_CUSTOM_API_BASE_URL_custom1=https://api.example.com/v1 \
-e VITE_CUSTOM_API_MODEL_custom1=custom-model-name \
```
**配置规则**:
- 变量名格式:`VITE_CUSTOM_API_[TYPE]_[NAME]`
- `[TYPE]`:`KEY`、`BASE_URL`、`MODEL`
- `[NAME]`:自定义模型名称(只能包含字母、数字、下划线)
### 访问控制配置
#### 基础认证
```bash
# 启用密码保护
-e ACCESS_USERNAME=admin \
-e ACCESS_PASSWORD=your_secure_password \
```
配置后访问应用需要输入用户名和密码。
**安全建议**:
- 使用强密码(至少8位,包含字母、数字、特殊字符)
- 定期更换访问密码
- 不要在命令行历史中保留密码
#### 高级安全配置
```bash
# JWT密钥(可选,用于增强安全性)
-e JWT_SECRET=your-random-jwt-secret
# 会话超时设置(秒,默认3600秒/1小时)
-e SESSION_TIMEOUT=3600
# IP白名单(逗号分隔,支持CIDR格式)
-e ALLOWED_IPS=192.168.1.0/24,10.0.0.0/8
```
### MCP服务器配置
Docker部署自动包含MCP(Model Context Protocol)服务器功能:
```bash
# MCP服务器配置
-e MCP_DEFAULT_MODEL_PROVIDER=openai \
-e MCP_LOG_LEVEL=info \
# MCP端点访问地址
# http://localhost:8081/mcp
```
**MCP功能**:
- 提供标准化的AI模型访问接口
- 支持多种模型提供商
- 内置日志记录和监控
## 📦 Docker Compose 基础配置
### 简单配置
创建 `docker-compose.yml` 文件:
```yaml
version: '3.8'
services:
prompt-optimizer:
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"
environment:
# API密钥配置
- VITE_OPENAI_API_KEY=${OPENAI_API_KEY}
- VITE_GEMINI_API_KEY=${GEMINI_API_KEY}
# 访问控制
- ACCESS_USERNAME=${ACCESS_USERNAME:-admin}
- ACCESS_PASSWORD=${ACCESS_PASSWORD}
# MCP配置
- MCP_DEFAULT_MODEL_PROVIDER=${MCP_PROVIDER:-openai}
- MCP_LOG_LEVEL=${MCP_LOG_LEVEL:-info}
# 健康检查
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
```
### 环境变量文件
创建 `.env` 文件(**重要:不要提交到版本控制**):
```env
# API Keys
OPENAI_API_KEY=sk-your-openai-api-key
GEMINI_API_KEY=your-gemini-api-key
DEEPSEEK_API_KEY=your-deepseek-key
# Access Control
ACCESS_USERNAME=admin
ACCESS_PASSWORD=your_secure_password
# MCP Configuration
MCP_PROVIDER=openai
MCP_LOG_LEVEL=info
# Custom Models (example)
VITE_CUSTOM_API_KEY_ollama=dummy_key
VITE_CUSTOM_API_BASE_URL_ollama=http://host.docker.internal:11434/v1
VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b
```
### 基本操作命令
```bash
# 启动服务
docker compose up -d
# 查看服务状态
docker compose ps
# 查看日志
docker compose logs -f
# 重启服务
docker compose restart
# 停止服务
docker compose down
# 更新镜像并重启
docker compose pull && docker compose up -d
```
## 🎯 部署验证
### 功能测试
#### 1. 基础访问测试
```bash
# 测试应用是否正常启动
curl -I http://localhost:8081
# 期望返回:HTTP/1.1 200 OK
```
#### 2. 健康检查测试
```bash
# 测试健康检查端点
curl http://localhost:8081/health
# 期望返回:{"status":"ok","timestamp":"..."}
```
#### 3. MCP服务测试
```bash
# 测试MCP端点
curl http://localhost:8081/mcp
# 期望返回MCP服务信息
```
### 常见部署问题
#### 端口被占用
```bash
# 检查端口占用
netstat -tulpn | grep :8081
# 解决方案:更换端口或停止占用进程
docker run -d -p 3000:80 linshen/prompt-optimizer
```
#### 镜像拉取失败
```bash
# 使用国内镜像源
docker pull registry.cn-guangzhou.aliyuncs.com/prompt-optimizer/prompt-optimizer:latest
# 或配置Docker镜像加速器
```
#### 容器无法启动
```bash
# 查看详细错误日志
docker logs prompt-optimizer
# 检查环境变量配置
docker exec prompt-optimizer env | grep VITE_
```
## 💡 部署建议
### 生产环境建议
1. **资源配置**
- 最低要求:1GB RAM,1 CPU核心
- 推荐配置:2GB RAM,2 CPU核心
- 存储空间:至少500MB可用空间
2. **安全配置**
- 始终启用访问密码保护
- 使用HTTPS(参见高级配置)
- 定期更新镜像版本
3. **监控配置**
- 启用健康检查
- 配置日志轮转
- 监控资源使用情况
### 开发环境建议
1. **快速启动**
```bash
docker run -d -p 8081:80 --name prompt-optimizer-dev linshen/prompt-optimizer
```
2. **开发模式**
```bash
docker run -d -p 8081:80 \
-e NODE_ENV=development \
-e DEBUG=true \
--name prompt-optimizer-dev \
linshen/prompt-optimizer
```
---
**相关链接**:
- [高级配置](docker-advanced.md) - Docker Compose高级配置和安全设置
- [故障排除](docker-troubleshooting.md) - 常见问题解决和性能优化
@@ -0,0 +1,572 @@
# Docker故障排除
本指南提供 Prompt Optimizer Docker部署的常见问题解决方案、调试技巧和性能优化建议。
## 🔧 常见启动问题
### 容器启动失败
#### 检查容器状态
```bash
# 查看所有容器状态
docker ps -a
# 查看容器详细信息
docker inspect prompt-optimizer
# 查看容器启动日志
docker logs prompt-optimizer
# 实时查看日志
docker logs -f --tail 100 prompt-optimizer
```
#### 常见启动错误
**错误1:端口被占用**
```
Error starting userland proxy: listen tcp4 0.0.0.0:8081: bind: address already in use
```
解决方案:
```bash
# 查找占用端口的进程
netstat -tulpn | grep :8081
# 或使用 lsof
lsof -i :8081
# 停止占用进程或更换端口
docker run -d -p 3000:80 linshen/prompt-optimizer
```
**错误2:镜像拉取失败**
```
Error response from daemon: pull access denied for linshen/prompt-optimizer
```
解决方案:
```bash
# 使用国内镜像源
docker pull registry.cn-guangzhou.aliyuncs.com/prompt-optimizer/prompt-optimizer:latest
# 或配置Docker镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://registry.cn-hangzhou.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
EOF
sudo systemctl restart docker
```
**错误3:权限问题**
```
Got permission denied while trying to connect to the Docker daemon socket
```
解决方案:
```bash
# 将用户添加到docker组
sudo usermod -aG docker $USER
newgrp docker
# 或使用sudo运行
sudo docker run -d -p 8081:80 linshen/prompt-optimizer
```
### 网络连接问题
#### 容器网络诊断
```bash
# 测试容器内部网络
docker exec -it prompt-optimizer curl http://localhost:80
# 测试容器间通信(Docker Compose)
docker exec -it prompt-optimizer ping redis
# 测试外部网络连接
docker exec -it prompt-optimizer curl https://api.openai.com
# 检查DNS解析
docker exec -it prompt-optimizer nslookup google.com
```
#### 网络配置问题
**问题:无法访问外部API**
```bash
# 检查防火墙设置
sudo ufw status
sudo iptables -L
# 检查Docker网络配置
docker network ls
docker network inspect bridge
```
**问题:容器间无法通信**
```bash
# 检查自定义网络
docker network create prompt-network
docker run --network prompt-network -d linshen/prompt-optimizer
# 检查网络连通性
docker exec -it container1 ping container2
```
### 应用访问问题
#### HTTP访问异常
**问题:404 Not Found**
```bash
# 检查Nginx配置(如果使用)
docker exec -it prompt-nginx nginx -t
# 检查应用路由配置
docker exec -it prompt-optimizer cat /app/dist/index.html
```
**问题:502 Bad Gateway**
```bash
# 检查上游服务状态
docker exec -it prompt-nginx curl http://prompt-optimizer:80
# 检查Nginx配置文件
docker exec -it prompt-nginx cat /etc/nginx/nginx.conf
```
**问题:SSL证书错误**
```bash
# 检查证书有效性
openssl x509 -in ./ssl/cert.pem -text -noout
# 测试SSL连接
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com
```
## 🐛 调试技巧
### 启用调试模式
#### 应用级调试
```bash
# 启用详细日志
docker run -d -p 8081:80 \
-e NODE_ENV=development \
-e DEBUG=true \
-e LOG_LEVEL=debug \
-e VITE_DEBUG=true \
linshen/prompt-optimizer
# 查看调试日志
docker logs -f prompt-optimizer | grep -E "(ERROR|WARN|DEBUG)"
```
#### Docker Compose调试
```yaml
services:
prompt-optimizer:
image: linshen/prompt-optimizer:latest
environment:
- NODE_ENV=development
- DEBUG=*
- LOG_LEVEL=debug
command: ["sh", "-c", "npm start -- --verbose"]
# 或者进入调试模式
# command: ["tail", "-f", "/dev/null"]
```
### 容器内部检查
#### 进入容器调试
```bash
# 进入运行中的容器
docker exec -it prompt-optimizer sh
# 检查文件系统
ls -la /app
cat /app/package.json
# 检查进程状态
ps aux
top
# 检查网络状态
netstat -tulpn
ss -tulpn
```
#### 文件和配置检查
```bash
# 检查环境变量
docker exec prompt-optimizer env | sort
# 检查配置文件
docker exec prompt-optimizer cat /app/config/default.json
# 检查日志文件
docker exec prompt-optimizer tail -f /var/log/app.log
```
### 性能诊断
#### 资源使用监控
```bash
# 实时监控容器资源使用
docker stats prompt-optimizer
# 查看详细资源使用情况
docker exec prompt-optimizer cat /proc/meminfo
docker exec prompt-optimizer cat /proc/cpuinfo
docker exec prompt-optimizer df -h
```
#### 性能分析工具
```bash
# 安装性能分析工具
docker exec -it prompt-optimizer apk add --no-cache htop iotop
# 使用htop查看进程
docker exec -it prompt-optimizer htop
# 分析磁盘I/O
docker exec -it prompt-optimizer iostat -x 1
```
## 🚀 性能优化
### 资源限制和优化
#### 内存优化
```bash
# 设置内存限制
docker run -d -p 8081:80 \
--memory="1g" \
--memory-swap="2g" \
--oom-kill-disable=false \
linshen/prompt-optimizer
# Docker Compose中设置
```yaml
services:
prompt-optimizer:
deploy:
resources:
limits:
memory: 1G
reservations:
memory: 512M
```
#### CPU优化
```bash
# 限制CPU使用
docker run -d -p 8081:80 \
--cpus="2.0" \
--cpu-shares=1024 \
--cpu-quota=100000 \
--cpu-period=50000 \
linshen/prompt-optimizer
```
#### 存储优化
```yaml
services:
prompt-optimizer:
volumes:
# 使用tmpfs减少磁盘I/O
- type: tmpfs
target: /tmp
tmpfs:
size: 100m
# 使用绑定挂载优化日志写入
- ./logs:/app/logs:delegated
```
### 缓存配置优化
#### Redis缓存优化
```yaml
services:
redis:
image: redis:7-alpine
command: redis-server --maxmemory 512mb --maxmemory-policy allkeys-lru --save 60 1000
sysctls:
- net.core.somaxconn=65535
ulimits:
memlock:
soft: -1
hard: -1
```
#### 应用级缓存
```bash
# 启用应用缓存
docker run -d -p 8081:80 \
-e ENABLE_CACHE=true \
-e CACHE_TTL=3600 \
-e CACHE_MAX_SIZE=1000 \
linshen/prompt-optimizer
```
### Nginx性能优化
#### 优化配置
```nginx
# nginx.conf性能优化部分
worker_processes auto;
worker_rlimit_nofile 65535;
events {
worker_connections 4096;
use epoll;
multi_accept on;
}
http {
# 开启gzip压缩
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css application/json application/javascript;
# 开启缓存
proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=app_cache:10m max_size=1g
inactive=60m use_temp_path=off;
# 连接池优化
upstream prompt-optimizer {
server prompt-optimizer:80;
keepalive 32;
}
server {
# 静态资源缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
proxy_cache app_cache;
proxy_cache_valid 200 1d;
expires 1y;
add_header Cache-Control "public, immutable";
}
}
}
```
## 📋 故障排查清单
### 快速诊断脚本
```bash
#!/bin/bash
# docker-diagnose.sh
echo "=== Prompt Optimizer Docker 诊断报告 ==="
echo "时间: $(date)"
echo
# 系统信息
echo "1. 系统信息:"
uname -a
echo "Docker版本: $(docker --version)"
echo "Docker Compose版本: $(docker compose version)"
echo
# 容器状态
echo "2. 容器状态:"
docker ps -a --filter name=prompt-optimizer
echo
# 网络检查
echo "3. 网络检查:"
netstat -tulpn | grep -E ":(80|443|8081|6379)" || echo "未发现相关端口监听"
echo
# 资源使用
echo "4. 资源使用:"
docker stats --no-stream prompt-optimizer 2>/dev/null || echo "容器未运行"
echo
# 最近日志
echo "5. 最近错误日志:"
docker logs --tail 20 prompt-optimizer 2>/dev/null | grep -i error || echo "无错误日志"
echo
# 健康检查
echo "6. 健康检查:"
if curl -sf http://localhost:8081/health >/dev/null 2>&1; then
echo "✅ 应用健康检查通过"
else
echo "❌ 应用健康检查失败"
fi
echo "=== 诊断完成 ==="
```
### 常见问题自助修复
#### 自动修复脚本
```bash
#!/bin/bash
# docker-auto-fix.sh
echo "正在进行自动修复..."
# 1. 停止并清理容器
echo "停止容器..."
docker compose down
# 2. 清理无用资源
echo "清理Docker资源..."
docker system prune -f
docker volume prune -f
# 3. 更新镜像
echo "更新镜像..."
docker compose pull
# 4. 重新启动
echo "重新启动服务..."
docker compose up -d
# 5. 等待服务就绪
echo "等待服务启动..."
sleep 30
# 6. 健康检查
if curl -sf http://localhost:8081/health >/dev/null 2>&1; then
echo "✅ 修复成功,服务正常运行"
else
echo "❌ 修复失败,请检查日志"
docker compose logs --tail 50
fi
```
### 性能监控脚本
```bash
#!/bin/bash
# performance-monitor.sh
CONTAINER_NAME="prompt-optimizer"
LOG_FILE="/var/log/prompt-optimizer-performance.log"
while true; do
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
# 获取容器统计信息
STATS=$(docker stats --no-stream --format "table {{.CPUPerc}},{{.MemUsage}},{{.NetIO}},{{.BlockIO}}" $CONTAINER_NAME 2>/dev/null)
if [ $? -eq 0 ]; then
echo "[$TIMESTAMP] $STATS" >> $LOG_FILE
# 检查CPU使用率是否超过80%
CPU_USAGE=$(echo $STATS | cut -d',' -f1 | sed 's/%//')
if (( $(echo "$CPU_USAGE > 80" | bc -l) )); then
echo "[$TIMESTAMP] WARNING: High CPU usage: $CPU_USAGE%" >> $LOG_FILE
fi
else
echo "[$TIMESTAMP] ERROR: Container not found or not running" >> $LOG_FILE
fi
sleep 60
done
```
## 🆘 应急响应流程
### 服务不可用紧急处理
```bash
#!/bin/bash
# emergency-response.sh
echo "🚨 执行应急响应程序..."
# 1. 立即检查服务状态
if ! curl -sf http://localhost:8081/health >/dev/null 2>&1; then
echo "❌ 服务不可用,开始应急处理"
# 2. 快速重启
docker compose restart prompt-optimizer
sleep 30
# 3. 再次检查
if curl -sf http://localhost:8081/health >/dev/null 2>&1; then
echo "✅ 快速重启成功"
exit 0
fi
# 4. 完整重建
echo "尝试完整重建..."
docker compose down
docker compose up -d
sleep 60
# 5. 最终检查
if curl -sf http://localhost:8081/health >/dev/null 2>&1; then
echo "✅ 完整重建成功"
else
echo "❌ 应急处理失败,需要人工介入"
# 发送告警通知
# echo "Prompt Optimizer服务异常" | mail -s "紧急告警" admin@example.com
fi
else
echo "✅ 服务正常运行"
fi
```
### 日志分析和告警
```bash
#!/bin/bash
# log-analysis.sh
LOG_FILE="/var/log/prompt-optimizer.log"
ALERT_FILE="/tmp/alerts.txt"
# 分析错误日志
docker logs prompt-optimizer --since="1h" | grep -i error > $ALERT_FILE
if [ -s $ALERT_FILE ]; then
echo "发现错误日志:"
cat $ALERT_FILE
# 分析错误类型并给出建议
if grep -q "ECONNREFUSED" $ALERT_FILE; then
echo "建议:检查网络连接和上游服务状态"
fi
if grep -q "out of memory" $ALERT_FILE; then
echo "建议:增加内存限制或优化内存使用"
fi
if grep -q "permission denied" $ALERT_FILE; then
echo "建议:检查文件权限和用户配置"
fi
fi
```
---
**相关链接**:
- [基础部署](docker-basic.md) - Docker单容器快速部署
- [高级配置](docker-advanced.md) - Docker Compose高级配置和安全设置
+537
View File
@@ -0,0 +1,537 @@
# Chrome插件
Prompt Optimizer Chrome插件提供便携的提示词优化体验,让您可以在任何网页中快速访问优化功能。
## 🔌 插件优势
Chrome插件版本的独特优势:
- ✅ **随时可用** - 浏览器工具栏一键访问,无需切换应用
- ✅ **轻量快速** - 无需单独安装应用,占用资源少
- ✅ **部分跨域能力** - 相比Web版有更好的API访问能力
- ✅ **上下文集成** - 可与浏览器内容互动,支持页面文本选取
- ✅ **同步数据** - 与Chrome账户同步设置和配置
- ✅ **快捷访问** - 支持快捷键和右键菜单快速启动
## 📥 安装方式
### 方式一:Chrome商店安装(推荐)
#### 官方商店地址
[Chrome Web Store - Prompt Optimizer](https://chromewebstore.google.com/detail/prompt-optimizer/cakkkhboolfnadechdlgdcnjammejlna)
#### 安装步骤
1. **访问商店页面**
- 点击上方链接访问Chrome Web Store
- 或搜索"Prompt Optimizer"
2. **安装插件**
- 点击"添加至Chrome"按钮
- 在弹窗中点击"添加扩展程序"确认
- 等待安装完成
3. **验证安装**
- 插件图标出现在浏览器工具栏
- 右上角可能显示"已添加至Chrome"通知
#### 商店版本特点
- ✅ **安全可靠** - 经过Google审核验证
- ✅ **自动更新** - Chrome自动管理更新
- ⚠️ **版本延迟** - 由于审核机制,可能不是最新版本
- ⚠️ **功能限制** - 某些高级功能可能受限
### 方式二:开发者模式安装
#### 适用场景
- 想要使用最新版本功能
- Chrome Web Store无法访问
- 需要自定义插件配置
- 开发者或高级用户
#### 详细安装步骤
**1. 下载插件包**
```bash
# 从GitHub Releases下载
访问:https://github.com/linshenkx/prompt-optimizer/releases
下载:extension.zip 或 chrome-extension-v[版本].zip
解压到本地文件夹
```
**2. 启用开发者模式**
```bash
# Chrome浏览器操作步骤
1. 打开Chrome浏览器
2. 地址栏输入:chrome://extensions/
3. 右上角开启"开发者模式"开关
4. 页面会显示额外的开发者选项
```
**3. 加载插件**
```bash
# 加载解压的插件
1. 点击"加载已解压的扩展程序"按钮
2. 选择解压后的插件文件夹(包含manifest.json的文件夹)
3. 点击"选择文件夹"
4. 插件安装完成,图标出现在工具栏
```
**4. 验证安装**
- 插件卡片出现在扩展程序页面
- 显示"已解压扩展程序"标识
- 工具栏出现插件图标
#### 开发者模式注意事项
- ⚠️ Chrome可能显示"请停用以开发者模式运行的扩展程序"警告
- ⚠️ 需要手动管理更新
- ✅ 可以访问最新功能
- ✅ 可以自定义配置
## 🎯 使用指南
### 基本操作
#### 启动插件
```bash
# 方法1:点击图标
点击浏览器工具栏中的Prompt Optimizer图标
# 方法2:使用快捷键
默认快捷键:Alt+P(可在chrome://extensions/shortcuts中自定义)
# 方法3:右键菜单
在网页上右键 -> 选择"Prompt Optimizer"
```
#### 插件界面
- **紧凑模式** - 适配浏览器插件窗口尺寸
- **响应式设计** - 支持窗口大小调整
- **简化布局** - 核心功能优先显示
- **快速访问** - 常用操作一键可达
#### 窗口管理
```bash
# 调整窗口大小
拖拽插件窗口边缘调整大小
双击标题栏最大化/还原窗口
# 固定插件
右键插件图标 -> "固定"
插件图标会始终显示在工具栏
# 弹出新窗口
点击插件窗口右上角"弹出"按钮
在独立窗口中使用插件
```
### 插件特有功能
#### 页面内容集成
**文本选择优化**:
```bash
# 使用方法
1. 在网页中选中任意文本
2. 右键选择"使用Prompt Optimizer优化"
3. 选中的文本自动填入优化输入框
4. 进行优化处理
```
**结果插入**:
```bash
# 将优化结果插入到网页
1. 完成提示词优化
2. 点击"插入到页面"按钮
3. 选择目标输入框或文本区域
4. 优化结果自动插入
```
#### 在线编辑器集成
**支持的编辑器**:
- Notion页面编辑
- Google Docs文档
- GitHub代码编辑器
- 各种CMS内容编辑器
- 在线邮件编辑器
**集成功能**:
```javascript
// 自动检测编辑器
插件会自动识别页面中的文本编辑器
支持富文本和纯文本编辑器
提供一键插入功能
// 格式保持
插入时保持原有格式
支持Markdown格式转换
自动适配编辑器类型
```
#### 快捷访问功能
**地址栏快捷指令**:
```bash
# 在地址栏输入快捷指令
po optimize # 快速打开优化界面
po history # 查看历史记录
po settings # 打开设置页面
```
**右键菜单集成**:
- 选中文本时显示优化选项
- 在输入框中显示插入选项
- 页面空白处显示插件启动选项
### 配置和管理
#### 访问插件设置
**方法1:插件选项页**
```bash
1. 右键点击插件图标
2. 选择"选项"或"扩展程序选项"
3. 打开独立的设置页面
```
**方法2:扩展程序管理**
```bash
1. 访问 chrome://extensions/
2. 找到Prompt Optimizer
3. 点击"详细信息"
4. 点击"扩展程序选项"
```
#### 权限管理
**网站访问权限**:
```bash
# 配置网站权限
扩展程序详细信息 -> 网站访问权限
选项:
- 在所有网站上:完整功能
- 在点击扩展程序时:手动激活
- 在特定网站上:自定义网站列表
```
**API调用权限**:
- 插件需要网络权限访问AI服务
- 支持本地模型连接(受浏览器限制)
- 可配置允许的API端点
**数据存储权限**:
- 本地存储用户配置和历史
- 可选择与Chrome账户同步
- 支持数据导入导出
#### 快捷键配置
```bash
# 访问快捷键设置
地址栏输入:chrome://extensions/shortcuts
找到Prompt Optimizer部分
# 可配置的快捷键
启动插件:默认 Alt+P
快速优化:默认 Alt+O
历史记录:默认 Alt+H
设置页面:默认 Alt+S
# 自定义快捷键
点击快捷键输入框
按下想要设置的按键组合
支持全局快捷键和网站特定快捷键
```
### 数据同步
#### Chrome同步功能
**自动同步内容**:
```javascript
// 会同步的数据
用户偏好设置
模型配置(不包含API密钥)
自定义模板
界面布局配置
// 不会同步的数据
API密钥等敏感信息
历史记录
缓存数据
```
**同步设置**:
```bash
# 启用同步
Chrome设置 -> 同步功能和Google服务 -> 管理同步功能
确保"扩展程序"同步已启用
# 插件同步设置
插件设置 -> 数据同步 -> 启用Chrome同步
选择要同步的数据类型
```
#### 跨设备使用
**设备间保持一致**:
- 设置和配置自动同步
- 在新设备上安装插件后自动恢复设置
- 支持Windows、macOS、Linux上的Chrome
**数据迁移**:
```bash
# 手动迁移数据
旧设备:插件设置 -> 导出数据 -> 下载备份文件
新设备:插件设置 -> 导入数据 -> 选择备份文件
# 同步迁移(推荐)
确保两个设备都登录同一Google账号
启用Chrome扩展程序同步
设置会自动同步到新设备
```
## ⚠️ 插件限制
### 功能限制
#### 浏览器安全限制
```bash
# 网络请求限制
某些API可能被浏览器安全策略阻止
HTTPS网站只能访问HTTPS API
本地模型访问可能受限
# 文件操作限制
无法直接访问本地文件系统
导出功能依赖浏览器下载
备份文件需要用户手动管理
# 系统集成限制
无法创建系统级快捷方式
无法开机自启动
无法后台持续运行
```
#### 相比桌面版的限制
| 功能 | 插件版 | 桌面版 |
|------|--------|--------|
| 本地模型支持 | ⚠️ 受限 | ✅ 完整 |
| 文件导入导出 | ⚠️ 浏览器限制 | ✅ 完整 |
| 网络配置 | ⚠️ 基础 | ✅ 高级 |
| 后台运行 | ❌ 不支持 | ✅ 支持 |
| 系统集成 | ⚠️ 有限 | ✅ 完整 |
### 兼容性说明
#### 支持的浏览器
```bash
# 完全支持
✅ Chrome 88+
✅ Microsoft Edge 88+ (Chromium版)
✅ Brave Browser
✅ Opera 74+
✅ 其他Chromium内核浏览器
# 不支持
❌ Firefox(需要Firefox专版)
❌ Safari(需要Safari专版)
❌ Internet Explorer
❌ 旧版Chrome(88以下)
```
#### 系统兼容性
- ✅ Windows 10/11
- ✅ macOS 10.15+
- ✅ Ubuntu 18.04+
- ✅ 其他支持Chrome的Linux发行版
## 🔄 更新和维护
### 自动更新机制
#### Chrome商店版本
```bash
# 自动更新流程
1. Chrome定期检查扩展程序更新(通常24小时内)
2. 发现新版本时自动下载
3. 下次启动浏览器时自动安装
4. 更新完成后可能显示通知
# 手动检查更新
chrome://extensions/ -> 右上角"更新"按钮
或者插件详情页面 -> "更新"
```
#### 开发者模式版本
```bash
# 手动更新流程
1. 从GitHub下载最新版本
2. 解压到原文件夹(覆盖旧文件)
3. chrome://extensions/ -> 找到插件 -> 点击"重新加载"
4. 更新完成
# 检查版本
插件设置页面查看当前版本号
GitHub Releases页面查看最新版本
```
### 版本管理
#### 查看当前版本
```bash
# 方法1:扩展程序页面
chrome://extensions/ -> 找到Prompt Optimizer -> 查看版本号
# 方法2:插件设置
点击插件图标 -> 设置 -> 关于 -> 版本信息
# 方法3:右键菜单
右键插件图标 -> 查看扩展程序信息
```
#### 版本回滚限制
```bash
# Chrome商店版本
❌ Chrome不支持插件版本回滚
✅ 可以暂时禁用插件
✅ 可以卸载后重新安装
# 开发者模式版本
✅ 可以手动回滚到旧版本
✅ 保留旧版本文件作为备份
✅ 随时切换版本
```
### 故障排除
#### 常见问题解决
**插件无法加载**:
```bash
# 检查步骤
1. 确认Chrome版本 >= 88
2. 检查开发者模式是否启用(开发者版本)
3. 重新加载插件
4. 重启浏览器
# 解决方案
chrome://extensions/ -> 插件详情 -> "重新加载"
或者删除插件重新安装
```
**功能异常**:
```bash
# 清除插件数据
chrome://extensions/ -> 插件详情 -> "扩展程序选项"
设置页面 -> 数据管理 -> 清除所有数据
# 重置插件
禁用插件 -> 启用插件
或者卸载 -> 重新安装
```
**网络连接问题**:
```bash
# 检查API配置
插件设置 -> 模型管理 -> 测试连接
确认API密钥正确
# 检查网络权限
chrome://extensions/ -> 插件详情 -> 网站访问权限
设置为"在所有网站上"或添加API域名
```
#### 调试和日志
**开启调试模式**:
```bash
# 开发者工具
右键插件图标 -> 检查弹出式窗口内容
或者 F12 -> Console 查看错误日志
# 插件调试页面
chrome://extensions/ -> 插件详情 -> "检查视图"
点击相应链接打开调试控制台
```
**日志分析**:
```javascript
// 常见错误类型
网络错误:检查API配置和网络连接
权限错误:检查浏览器权限设置
脚本错误:通常是页面兼容性问题
存储错误:清除插件数据重试
```
## 💡 最佳实践
### 使用技巧
#### 1. 工作流程优化
```bash
# 快捷键配置建议
启动插件:Alt+P(常用)
快速优化:Alt+O(高频操作)
插入结果:Alt+I(配合页面编辑)
# 固定插件图标
确保插件图标始终可见
避免在扩展程序菜单中寻找
```
#### 2. 页面集成技巧
```bash
# 文本选择优化
选择关键段落进行优化
利用右键菜单快速启动
结合不同网站的编辑器使用
# 批量处理
准备多个文本片段
使用历史记录功能
建立常用优化模板
```
#### 3. 数据管理
```bash
# 定期备份
每月导出一次插件数据
重要配置及时同步到云端
保留重要的历史记录
# 多设备同步
启用Chrome同步功能
确保API密钥在所有设备上配置
定期检查同步状态
```
### 与其他版本协作
#### 版本互补使用
```bash
# 插件 + 桌面版
插件:临时、快速的优化需求
桌面版:复杂、深度的优化任务
数据可通过导入导出同步
# 插件 + Web版
插件:日常浏览器内使用
Web版:跨平台、临时访问
共享在线模板和配置
```
#### 数据迁移
```bash
# 从插件到桌面版
插件设置 -> 导出数据 -> 下载JSON文件
桌面版设置 -> 导入数据 -> 选择JSON文件
检查配置和历史记录是否正确迁移
```
---
**相关链接**:
- [桌面应用](desktop.md) - 功能更完整的桌面版本
- [Web版部署](web.md) - 在线版本使用指南
+324
View File
@@ -0,0 +1,324 @@
# Web版部署指南
本指南将详细介绍如何部署 Prompt Optimizer 的Web版本,包括在线版使用、Vercel部署和访问控制配置。
## 🌐 在线版本使用
### 直接访问(推荐)
**在线地址**:[https://prompt.always200.com](https://prompt.always200.com)
**在线版优势**:
- ✅ **即开即用** - 无需安装配置,打开即可使用
- ✅ **始终最新** - 自动获得最新功能和修复
- ✅ **跨平台支持** - 支持所有现代浏览器
- ✅ **数据安全** - 纯前端应用,数据仅存储在本地浏览器
**使用注意事项**:
- 所有数据存储在浏览器本地,清除浏览器数据会丢失配置
- API调用直接从浏览器发送到AI服务商,不经过中间服务器
- 受浏览器跨域限制,某些本地或特殊API可能无法访问
### 浏览器要求
**支持的浏览器**:
- Chrome 88+ (推荐)
- Firefox 85+
- Safari 14+
- Edge 88+
**必需功能**:
- 启用JavaScript
- 启用本地存储(localStorage)
- 支持现代Web标准(ES2020+)
## ☁️ Vercel部署
### 方式一:一键部署(快速)
**直接部署**:
[![部署到 Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Flinshenkx%2Fprompt-optimizer)
**特点**:
- ✅ 部署快速,几分钟即可完成
- ❌ 无法跟踪源项目更新
- ❌ 更新需要重新部署
### 方式二:Fork后部署(推荐)
#### 步骤1:Fork项目
1. **访问源项目**:[GitHub - prompt-optimizer](https://github.com/linshenkx/prompt-optimizer)
2. **点击Fork按钮**:将项目Fork到你的GitHub账户
3. **等待Fork完成**:确保所有文件都已复制
#### 步骤2:Vercel导入
1. **登录Vercel**:访问 [vercel.com](https://vercel.com) 并登录
2. **新建项目**:点击"New Project"按钮
3. **导入GitHub仓库**:选择你Fork的prompt-optimizer项目
4. **配置项目**:
- 项目名称:自定义项目名称
- Framework Preset:选择"Vite"
- 构建目录:保持默认设置
#### 步骤3:部署配置
**构建设置**:
- **Framework**: Vite
- **Build Command**: `pnpm build`
- **Output Directory**: `dist`
- **Node.js Version**: 18.x
**高级设置**:
- **环境变量**:根据需要配置API密钥和访问控制
- **域名设置**:可配置自定义域名
- **分支设置**:选择要部署的分支(通常是main或master)
### 环境变量配置
#### API密钥配置
在Vercel项目设置中的"Environment Variables"部分添加:
```
# OpenAI
VITE_OPENAI_API_KEY=your_openai_api_key
# Gemini
VITE_GEMINI_API_KEY=your_gemini_api_key
# DeepSeek
VITE_DEEPSEEK_API_KEY=your_deepseek_api_key
# 智谱AI
VITE_ZHIPU_API_KEY=your_zhipu_api_key
# SiliconFlow
VITE_SILICONFLOW_API_KEY=your_siliconflow_api_key
```
#### 自定义模型配置
支持配置无限数量的自定义模型:
```
# 自定义模型示例:Ollama
VITE_CUSTOM_API_KEY_ollama=dummy_key
VITE_CUSTOM_API_BASE_URL_ollama=http://localhost:11434/v1
VITE_CUSTOM_API_MODEL_ollama=qwen2.5:7b
# 自定义模型示例:其他OpenAI兼容API
VITE_CUSTOM_API_KEY_mymodel=your_api_key
VITE_CUSTOM_API_BASE_URL_mymodel=https://api.example.com/v1
VITE_CUSTOM_API_MODEL_mymodel=custom-model-name
```
**配置规则**:
- `VITE_CUSTOM_API_KEY_[modelname]`:API密钥
- `VITE_CUSTOM_API_BASE_URL_[modelname]`:API基础URL
- `VITE_CUSTOM_API_MODEL_[modelname]`:模型名称
#### 访问控制配置
```
# 访问控制(可选)
ACCESS_USERNAME=admin
ACCESS_PASSWORD=your_secure_password
```
启用后,访问应用需要输入用户名和密码。
### 部署后配置
#### 验证部署
1. **访问应用**:通过Vercel提供的URL访问应用
2. **功能测试**:测试基本的提示词优化功能
3. **API连接测试**:在模型管理中测试API连接
4. **环境变量验证**:确认配置的API密钥生效
#### 自动更新
**配置自动更新**:
1. 在Vercel项目设置中启用"Git Integration"
2. 每次原项目更新后,在你的Fork仓库中:
- 点击"Sync fork"按钮
- 或通过GitHub Desktop/命令行同步
**自动化同步**(高级用户):
- 可以通过GitHub Actions自动同步上游更新
- 配置定时任务定期检查更新
## 🔒 访问控制
### 密码保护
**启用访问控制**:
通过环境变量配置访问密码:
```
ACCESS_USERNAME=admin
ACCESS_PASSWORD=your_secure_password
```
**访问流程**:
1. 用户访问应用时显示登录页面
2. 输入正确的用户名和密码
3. 登录成功后正常使用所有功能
4. 登录状态会保持到浏览器关闭
### IP白名单
**Vercel配置**:
在`vercel.json`文件中配置IP限制:
```json
{
"functions": {
"pages/api/auth.js": {
"includeFiles": "**"
}
},
"headers": [
{
"source": "/(.*)",
"headers": [
{
"key": "X-Frame-Options",
"value": "DENY"
}
]
}
]
}
```
### 企业部署
**内网部署**:
1. 将代码部署到内网Vercel或其他平台
2. 配置企业级访问控制
3. 集成企业SSO系统
4. 设置数据备份策略
## 🚀 性能优化
### 构建优化
**Vite配置优化**:
```javascript
// vite.config.js
export default defineConfig({
build: {
rollupOptions: {
output: {
manualChunks: {
vendor: ['vue', 'naive-ui']
}
}
}
}
})
```
**CDN加速**:
- Vercel自动提供全球CDN加速
- 支持静态资源缓存优化
- 自动压缩CSS/JS文件
### 缓存策略
**浏览器缓存**:
- 静态资源采用长期缓存
- API响应可配置缓存策略
- 用户数据存储在localStorage
## 🔧 故障排除
### 部署失败
**常见问题**:
1. **构建失败**
```
Error: Build failed with exit code 1
```
**解决方案**:
- 检查Node.js版本是否为18.x
- 确认package.json中的依赖版本
- 检查环境变量配置
2. **内存不足**
```
Error: JavaScript heap out of memory
```
**解决方案**:
- 在Vercel设置中调整内存限制
- 优化构建配置减少内存使用
3. **域名解析问题**
```
Error: Domain not found
```
**解决方案**:
- 检查DNS配置
- 验证CNAME记录设置
### 运行时问题
**API调用失败**:
1. 检查环境变量是否正确配置
2. 验证API密钥是否有效
3. 确认模型服务状态正常
4. 检查跨域配置
**页面加载慢**:
1. 检查CDN缓存状态
2. 优化图片和静态资源
3. 启用Vercel的性能监控
4. 分析和优化关键渲染路径
## 📊 监控与分析
### Vercel Analytics
**启用分析**:
1. 在Vercel项目设置中启用Analytics
2. 查看访问量、性能指标
3. 分析用户行为数据
4. 监控错误率和响应时间
### 用户反馈
**收集反馈**:
- 通过GitHub Issues收集问题报告
- 设置用户反馈渠道
- 定期分析使用数据
- 根据反馈优化功能
## 🔄 更新和维护
### 版本更新
**跟踪更新**:
1. 关注原项目的Release页面
2. 定期同步Fork的仓库
3. 测试新版本的兼容性
4. 更新环境变量配置
**回滚策略**:
- Vercel支持一键回滚到之前版本
- 保持重要配置的备份
- 测试环境验证更新
### 数据备份
**用户数据**:
- 提醒用户定期导出数据
- 提供数据迁移指南
- 确保跨版本兼容性
---
通过本指南,你应该能够成功部署并配置自己的 Prompt Optimizer Web版本。如果遇到问题,请查看[帮助支持](../help/common-questions.md)或在GitHub提交Issue。
@@ -0,0 +1,653 @@
# 商务沟通案例
本案例展示如何使用 Prompt Optimizer 优化各种商务沟通场景的提示词,提升商务交流的专业性和效果。
## 📧 商务邮件优化
### 案例背景
一位项目经理需要处理各种商务邮件沟通,包括项目汇报、客户联系、团队协调等。
### 项目进度汇报邮件
#### 原始需求
```
给老板写个项目进度汇报邮件
```
#### 优化过程
**Step 1: 基础信息收集和优化**
**优化后的提示词**:
```
你是一位经验丰富的项目经理,需要向高级管理层汇报项目进度。请创建一封专业的项目进度汇报邮件:
项目信息:
- 项目名称:客户关系管理系统升级项目
- 项目周期:2024年1月-6月
- 当前进度:第3个月,总体进度65%
- 团队规模:8人(2名前端,3名后端,2名测试,1名UI)
汇报内容要点:
1. 整体进度概览(里程碑完成情况)
2. 本月主要成果(具体交付物)
3. 当前面临的挑战(技术难点、资源限制)
4. 风险识别和应对措施
5. 下月工作计划和资源需求
6. 需要管理层支持的事项
邮件要求:
- 语言简洁专业,逻辑清晰
- 使用数据和图表说明(标注图表需求)
- 突出关键信息,便于快速阅读
- 体现项目管理的专业性
- 控制篇幅在500-800字
- 包含明确的后续行动点
邮件结构:
1. 主题行:简明扼要反映核心信息
2. 开场:项目概况和汇报目的
3. 正文:按要点详细展开
4. 结尾:总结和请求支持
5. 附件:详细数据和图表
请创作完整邮件:
```
**Step 2: 使用变量系统创建可复用模板**
**设置项目变量**:
```javascript
// 项目基础信息
项目名称: "{{项目名称}}"
项目阶段: "{{当前阶段}}"
完成进度: "{{完成百分比}}"
团队规模: "{{团队人数}}"
// 汇报周期
汇报周期: "{{周期}}" // 月度、季度、周度
汇报对象: "{{收件人}}" // CEO、部门总监、项目委员会
// 项目状态
主要成果: "{{本期成果}}"
面临挑战: "{{当前挑战}}"
风险状况: "{{风险等级}}"
```
**模板化的汇报邮件**:
```
你是专业项目经理,向{{汇报对象}}提交{{汇报周期}}项目进度汇报:
项目:{{项目名称}}
阶段:{{当前阶段}}
进度:{{完成百分比}}
团队:{{团队人数}}
汇报要点:
1. 进度概览:{{完成百分比}}完成情况分析
2. 本期成果:{{本期成果}}的具体展示
3. 挑战应对:{{当前挑战}}的解决方案
4. 风险管理:{{风险等级}}风险的预防措施
5. 下期计划:基于当前进度的规划调整
6. 支持需求:需要{{汇报对象}}协调的资源
请创建结构清晰、数据驱动的{{汇报周期}}汇报邮件。
```
### 客户沟通邮件优化
#### 客户问题处理邮件
**原始需求**:
```
客户投诉产品有bug,帮我写回复邮件
```
**优化后的提示词**:
```
你是资深客户成功经理,需要处理客户的技术问题投诉。请创作一封专业的客户回复邮件:
客户情况:
- 客户类型:企业级客户,年合同价值50万
- 问题性质:产品功能异常,影响日常业务
- 客户情绪:不满,但仍保持理性沟通
- 历史关系:合作2年,总体满意度较高
问题详情:
- 问题描述:数据导出功能异常,导致月度报告无法生成
- 影响程度:影响客户业务流程,需要紧急处理
- 发生时间:昨天开始出现,今晨客户反馈
回复策略:
1. 承认问题并表示歉意(体现重视)
2. 说明问题原因和影响范围(透明沟通)
3. 提供即时解决方案(临时措施)
4. 承诺根本性修复时间(明确预期)
5. 补偿措施(维护客户关系)
6. 预防措施(避免再次发生)
邮件要求:
- 语调真诚专业,体现责任感
- 避免技术术语,用客户能理解的语言
- 提供具体时间节点和联系方式
- 体现对客户业务的理解和重视
- 长度控制在400-600字
- 结构清晰,重点突出
请创作这封客户回复邮件。
```
#### 商务合作提案邮件
**使用高级模式的多轮对话功能**:
**第一轮 - 基础框架**:
```
你是商务拓展总监,向潜在合作伙伴发送合作提案邮件:
合作背景:
- 我方:SaaS服务提供商,主营项目管理工具
- 对方:企业培训机构,拥有5000+企业客户
- 合作机会:为其客户提供项目管理培训和工具支持
合作价值:
- 我方价值:专业的项目管理工具和技术支持
- 对方价值:丰富的企业客户资源和培训经验
- 互补优势:技术+培训的完整解决方案
请创建邮件框架和开头部分。
```
**第二轮 - 深化合作细节**:
```
基于刚才的邮件框架,现在详细展开合作方案部分:
具体合作模式:
1. 联合培训:共同开发项目管理课程
2. 技术支持:为培训客户提供工具试用
3. 收益分成:按客户转化情况分成
4. 品牌联合:共同市场推广
合作优势:
- 市场互补:扩大各自服务覆盖面
- 资源共享:降低获客成本
- 专业提升:提供更完整的解决方案
- 收益增长:创造新的收入来源
请完善合作方案的具体描述。
```
**第三轮 - 行动召唤和结尾**:
```
完善邮件的结尾部分:
下一步行动:
1. 安排初步沟通会议(建议时间选项)
2. 准备详细合作方案文档
3. 安排产品演示和试用
4. 制定合作时间表
联系方式和会议安排:
- 提供多种联系方式
- 建议具体的会议时间
- 说明会议议程和准备材料
- 体现专业性和执行力
创建专业的结尾和签名部分。
```
## 📊 商务报告优化
### 市场分析报告
#### 原始需求
```
写一份关于AI工具市场的分析报告
```
#### 优化后的提示词
```
你是资深的市场研究分析师,专长于科技行业分析。请创作一份关于AI生产力工具市场的深度分析报告:
报告目标:
- 受众:公司高管和投资决策者
- 目的:支持产品战略规划和投资决策
- 深度:战略级分析,包含数据支撑和趋势预测
- 时间范围:2024-2026年市场展望
报告结构:
1. 执行摘要(300字)
- 核心发现和建议
- 市场规模和增长预期
- 关键成功因素
2. 市场概览(800字)
- 市场定义和细分
- 整体规模和增长趋势
- 主要驱动因素分析
3. 竞争格局(1000字)
- 主要参与者分析
- 市场份额分布
- 竞争优势对比
- 新进入者威胁
4. 用户行为分析(600字)
- 目标用户画像
- 使用场景和需求痛点
- 付费意愿和价格敏感度
- 采购决策流程
5. 技术趋势(500字)
- 核心技术发展方向
- 技术门槛和壁垒
- 未来技术演进预期
6. 市场机会(400字)
- 细分市场机会
- 未满足的需求
- 进入策略建议
7. 风险和挑战(300字)
- 市场风险评估
- 监管政策影响
- 技术风险分析
分析要求:
- 基于真实市场数据和趋势
- 使用专业的分析框架(SWOT、五力模型等)
- 包含具体的数字和统计数据
- 提供可执行的战略建议
- 语言专业严谨,逻辑清晰
- 总长度控制在4000字左右
请开始创作这份市场分析报告。
```
### 业务提案报告
#### 内部业务提案优化
**原始需求**:
```
向管理层提议开发新功能的报告
```
**优化提示词**:
```
你是产品总监,需要向公司管理层提交新功能开发提案。请创作一份专业的业务提案报告:
提案背景:
- 功能名称:智能数据可视化仪表板
- 提案原因:客户需求强烈,竞争对手已有类似功能
- 战略意义:提升产品竞争力,扩大市场份额
- 紧迫性:需要在下季度开始实施
报告结构:
1. 项目概述(200字)
- 功能定义和核心价值
- 与公司战略的对齐度
- 项目重要性和紧迫性
2. 市场需求分析(400字)
- 客户需求调研数据
- 竞争对手功能对比
- 市场机会量化分析
- 用户价值和使用场景
3. 技术可行性(300字)
- 技术实现方案概览
- 现有技术基础和优势
- 技术挑战和风险评估
- 第三方依赖和集成需求
4. 资源需求(400字)
- 人力资源:开发团队配置
- 时间资源:开发周期和里程碑
- 资金预算:开发成本和运营成本
- 其他资源:工具、服务、外包等
5. 收益分析(500字)
- 直接收益:新增收入预期
- 间接收益:客户满意度、留存率提升
- 成本节约:运营效率提升
- ROI计算和回收周期
- 敏感性分析
6. 风险评估(300字)
- 技术风险:开发难度、性能风险
- 市场风险:需求变化、竞争加剧
- 资源风险:团队、预算、时间
- 应对措施和备选方案
7. 实施计划(300字)
- 项目时间表和关键节点
- 团队组织和角色分工
- 质量保证和测试策略
- 上线计划和推广策略
8. 决策建议(200字)
- 推荐决策方案
- 关键成功因素
- 需要管理层支持的事项
- 下一步行动计划
报告要求:
- 数据驱动,所有分析基于客观数据
- 逻辑严密,论证充分有说服力
- 突出重点,关键信息突出显示
- 专业表达,使用商务语言
- 可视化支持,标注图表需求
- 总长度2500-3000字
创作这份业务提案报告:
```
## 🤝 团队协作沟通
### 跨部门协调邮件
#### 项目资源协调
**使用变量系统处理复杂协调场景**:
**设置协调变量**:
```javascript
// 协调基本信息
发起部门: "{{发起部门}}"
目标部门: "{{目标部门}}"
协调事项: "{{协调内容}}"
紧急程度: "{{紧急等级}}"
// 项目信息
项目名称: "{{项目名称}}"
项目经理: "{{项目经理}}"
截止时间: "{{deadline}}"
// 资源需求
需求类型: "{{资源类型}}" // 人力、设备、预算等
需求量化: "{{具体需求}}"
使用时间: "{{时间安排}}"
```
**协调邮件模板**:
```
你是{{发起部门}}的项目协调专员,需要向{{目标部门}}申请项目资源支持:
协调背景:
- 项目:{{项目名称}}
- 负责人:{{项目经理}}
- 紧急程度:{{紧急等级}}
- 截止时间:{{deadline}}
资源需求:
- 需求类型:{{资源类型}}
- 具体需求:{{具体需求}}
- 使用时间:{{时间安排}}
- 协调原因:{{协调内容}}
沟通策略:
1. 说明项目重要性和业务价值
2. 详细阐述资源需求的合理性
3. 提出灵活的协作方案
4. 强调互利共赢的合作关系
5. 提供明确的时间节点和联系方式
请创作专业的跨部门协调邮件,语调合作友好但不失正式。
```
### 会议沟通优化
#### 会议邀请和议程
**原始需求**:
```
组织个项目启动会,写个会议邀请
```
**优化后的提示词**:
```
你是项目管理办公室主任,需要组织重要的项目启动会议。请创作完整的会议邀请和议程:
会议信息:
- 会议性质:项目启动会
- 项目名称:数字化转型一期项目
- 项目重要性:公司年度重点战略项目
- 参会人员:跨部门核心团队(约15人)
会议目标:
1. 统一项目理解和期望
2. 明确角色分工和责任
3. 确定项目时间表和里程碑
4. 建立沟通机制和汇报流程
5. 识别初期风险和应对措施
会议安排:
- 时长:2小时
- 形式:线下为主,支持线上参与
- 地点:公司会议室A
- 时间:需要提供3个候选时间
议程设计:
1. 开场和介绍(15分钟)
2. 项目背景和战略意义(20分钟)
3. 项目范围和目标(25分钟)
4. 团队介绍和角色分工(20分钟)
5. 时间计划和里程碑(25分钟)
6. 沟通机制和工作流程(15分钟)
7. 风险讨论和应对策略(15分钟)
8. 下一步行动和总结(5分钟)
邀请要求:
- 体现会议的重要性和必要性
- 说明每位参会者的价值和贡献
- 提供充分的背景信息
- 明确会前准备要求
- 包含完整的会议信息
- 语调正式但不失亲和力
请创作会议邀请邮件和详细议程。
```
#### 会议纪要模板
**会议纪要优化提示词**:
```
你是专业的会议记录员,需要为刚才的项目启动会创建标准化的会议纪要:
纪要结构:
1. 会议基本信息
- 会议主题、时间、地点
- 主持人、记录人
- 参会人员和缺席人员
2. 会议要点总结
- 讨论的主要议题
- 达成的重要共识
- 不同观点和争议点
3. 决议事项
- 明确的决定和结论
- 投票结果(如有)
- 需要进一步讨论的事项
4. 行动计划
- 具体任务分配
- 责任人和完成时间
- 依赖关系和协调事项
5. 下次会议安排
- 会议时间和主题
- 需要准备的材料
- 预期成果
纪要要求:
- 内容准确客观,避免主观判断
- 重点突出,便于快速查阅
- 行动项明确,责任到人
- 格式规范,便于存档
- 用词专业,逻辑清晰
- 控制篇幅在800-1200字
请创建这份会议纪要模板。
```
## 📈 销售沟通优化
### 客户开发邮件
#### 冷邮件开发
**原始需求**:
```
给潜在客户发开发邮件
```
**优化后的提示词**:
```
你是企业级销售专家,专长于B2B客户开发。请创作一封高转化率的冷邮件:
目标客户分析:
- 公司规模:中型制造企业,员工500-1000人
- 行业特点:传统制造业,数字化程度中等
- 决策者:IT总监或运营总监
- 痛点预判:生产效率、成本控制、数字化升级
产品匹配度:
- 我方产品:智能生产管理系统
- 核心价值:提升生产效率20%,降低运营成本15%
- 成功案例:类似规模企业的成功实践
- 竞争优势:快速部署、易于使用、ROI明确
邮件策略:
1. 开头:个性化问候+行业洞察建立专业形象
2. 痛点共鸣:准确描述行业普遍面临的挑战
3. 价值主张:简明展示产品核心价值
4. 社会证明:相关案例和客户证言
5. 软性召唤:建议进一步沟通而非直接销售
邮件要求:
- 个性化程度高,避免群发感
- 语言专业但易懂,建立信任感
- 重点突出,关键信息醒目
- 长度适中,便于快速阅读
- 提供明确但不强硬的下一步引导
- 总长度控制在250-350字
创作这封客户开发邮件:
```
### 商务谈判沟通
#### 谈判准备文档
**使用多轮对话优化谈判策略**:
**第一轮 - 谈判基础分析**:
```
你是商务谈判专家,需要为即将到来的合同谈判做准备:
谈判背景:
- 项目:企业级SaaS服务合同续签
- 合同金额:300万元/年
- 谈判对象:客户采购总监和IT总监
- 当前关系:合作2年,满意度良好但价格敏感
请分析谈判的基础要素:
1. 双方利益和需求分析
2. 谈判力量对比评估
3. 可能的谈判焦点识别
4. 谈判目标设定(理想、可接受、底线)
```
**第二轮 - 策略制定**:
```
基于刚才的分析,制定具体的谈判策略:
策略要点:
1. 开场策略:如何设定谈判氛围和基调
2. 价值展示:如何强化产品价值和ROI
3. 让步策略:在哪些方面可以灵活处理
4. 应对策略:如何回应客户的压价要求
5. 成交策略:如何引导向最终协议推进
请详细阐述每个策略的具体执行方法。
```
**第三轮 - 沟通话术准备**:
```
准备谈判过程中的关键沟通话术:
关键场景的应对话术:
1. 客户质疑价格过高时的回应
2. 强调产品价值和ROI的表达方式
3. 处理竞争对手比较的话术
4. 推进决策的催化性问题
5. 处理异议和反对意见的方法
每种话术要求:
- 逻辑清晰,有说服力
- 语言专业但不失亲和力
- 预留互动空间,避免单方面说教
- 体现对客户业务的深入理解
创作这些关键话术。
```
## 💡 效率提升技巧
### 模板化管理
**建立邮件模板库**:
```javascript
// 按场景分类的模板变量系统
邮件类型: "{{邮件类型}}" // 汇报、申请、通知、邀请
收件人级别: "{{级别}}" // 高管、同事、下属、客户
紧急程度: "{{紧急度}}" // 紧急、重要、一般
语言风格: "{{风格}}" // 正式、友好、简洁
// 内容要素变量
核心信息: "{{核心内容}}"
背景描述: "{{背景}}"
具体要求: "{{要求}}"
时间节点: "{{时间}}"
联系方式: "{{联系}}"
```
### 批量处理工作流
**Step 1: 需求分析和分类**
- 识别相似的沟通场景
- 提取可复用的内容要素
- 建立标准化的信息结构
**Step 2: 模板创建和测试**
- 基于最佳实践创建模板
- 通过实际场景测试效果
- 收集反馈持续优化
**Step 3: 变量系统应用**
- 设计灵活的变量体系
- 支持快速定制化生成
- 建立质量检查机制
### 质量控制标准
**商务沟通质量评估维度**:
1. **准确性** - 信息准确,无错误
2. **清晰性** - 表达清楚,易于理解
3. **专业性** - 语言规范,格式正确
4. **针对性** - 内容相关,满足需求
5. **效率性** - 简洁明了,节省时间
**持续改进机制**:
- 定期回顾沟通效果
- 收集接收方反馈
- 分析成功和失败案例
- 更新和完善模板库
---
**相关案例**:
- [创意写作案例](creative-writing.md) - 创意内容和营销文案优化
- [教学培训案例](educational-training.md) - 培训材料和课程内容优化
+401
View File
@@ -0,0 +1,401 @@
# 创意写作案例
本案例展示如何使用 Prompt Optimizer 优化创意写作相关的提示词,涵盖小说创作、营销文案、技术写作等多个领域。
## 📝 小说创作优化
### 案例背景
一位网络小说作者需要为新作品《星际流浪者》创作引人入胜的章节开头和角色对话。
### 原始提示词
```
写一个科幻小说的开头,主角是个宇宙飞行员。
```
### 优化过程
#### Step 1: 基础优化
**输入到优化器**:
```
优化目标:创作科幻小说开头
模板选择:创意写作优化
模型选择:GPT-4(创意能力强)
```
**优化后的提示词**:
```
你是一位擅长科幻小说创作的专业作家。请为小说《星际流浪者》创作一个引人入胜的开头段落:
背景设定:
- 时间:2287年,人类已实现星际旅行
- 地点:遥远的开普勒-442b星系边缘
- 主角:资深宇宙飞行员艾伦·克拉克,45岁,执行深空探索任务15年
写作要求:
1. 开篇要有强烈的画面感和紧张氛围
2. 体现主角的专业素养和内心世界
3. 暗示即将发生的重大事件
4. 文字风格偏向硬科幻,注重技术细节的真实感
5. 长度控制在300-500字
请创作这个开头段落。
```
#### Step 2: 使用变量系统进一步优化
**设置变量**:
```javascript
// 在高级模式下设置变量
主角名称: "艾伦·克拉克"
主角年龄: "45岁"
故事背景: "2287年开普勒-442b星系"
飞船名称: "远征者号"
任务类型: "深空资源勘探"
```
**变量化的提示词**:
```
你是一位擅长科幻小说创作的专业作家。请为小说《星际流浪者》创作开头:
角色设定:
- 主角:{{主角名称}},{{主角年龄}},宇宙飞行员
- 飞船:{{飞船名称}}
- 任务:{{任务类型}}
背景:{{故事背景}}边缘地带
写作要求:
1. 营造紧张神秘的氛围
2. 展现{{主角名称}}的专业能力
3. 埋下情节伏笔
4. 硬科幻风格,300-500字
5. 第一人称视角,增强代入感
开始创作:
```
#### Step 3: 多轮对话优化角色对话
**对话优化提示词**:
```
基于刚才创作的开头,现在需要设计{{主角名称}}与地球指挥中心的通讯对话:
对话场景:
- {{主角名称}}在{{飞船名称}}上发现异常信号
- 需要向地球报告情况并请求指导
- 通讯有15分钟延迟,增加紧张感
对话要求:
1. 体现宇航员的专业术语和冷静判断
2. 暗示发现的异常可能改变人类历史
3. 展现主角内心的兴奋与谨慎并存
4. 对话简洁有力,符合紧急情况下的沟通特点
5. 包含必要的技术细节增强真实感
请写出这段通讯对话。
```
### 最终成果
通过多轮优化,作者获得了:
1. **引人入胜的开头段落** - 具有强烈画面感和紧张氛围
2. **专业的角色对话** - 符合科幻设定的技术对话
3. **可复用的模板** - 为后续章节创作建立了标准
**效果评估**:
- 读者评价提升30%
- 章节订阅率增加25%
- 创作效率提高40%
## 📢 营销文案优化
### 案例背景
一家SaaS公司需要为新产品「智能客服助手」创作各种营销场景的文案。
### 多场景文案优化
#### 场景1:社交媒体推广文案
**原始需求**:
```
为智能客服助手写个朋友圈广告
```
**优化后的提示词**:
```
你是一位资深的数字营销专家,专精SaaS产品推广。请为「智能客服助手」创作朋友圈推广文案:
产品信息:
- 产品:智能客服助手
- 核心功能:24小时自动回复,智能意图识别,多轮对话
- 目标用户:中小企业主、电商店主、在线服务商
- 核心优势:降低人工成本80%,提升客户满意度,0技术门槛
文案要求:
1. 开头用痛点吸引注意(客服成本高、回复慢等)
2. 中间展示产品价值和解决方案
3. 结尾加强转化(限时优惠、免费试用等)
4. 语调亲和力强,贴近中小企业主
5. 包含合适的emoji增强视觉效果
6. 总长度控制在200字以内
7. 结构:痛点+解决方案+社会证明+行动号召
创作文案:
```
#### 场景2:邮件营销文案
**使用变量系统**:
```javascript
// 设置营销变量
产品名称: "智能客服助手"
目标行业: "{{行业}}" // 电商、SaaS、教育等
用户痛点: "{{痛点}}" // 人工成本高、响应慢等
核心收益: "{{收益}}" // 成本降低、效率提升等
```
**变量化邮件模板**:
```
你是B2B营销邮件专家。为{{产品名称}}创作针对{{目标行业}}的邮件营销文案:
收件人画像:
- 行业:{{目标行业}}
- 职位:运营总监、客服主管
- 痛点:{{用户痛点}}
- 预算意识强,注重ROI
邮件结构:
1. 主题行:简洁有力,突出核心价值
2. 开头:个性化问候+行业痛点共鸣
3. 正文:产品价值+具体收益数据+成功案例
4. 结尾:明确的CTA+联系方式
5. 签名:专业签名档
特殊要求:
- 避免过度销售语言
- 数据驱动,提供具体数字
- 建立信任感和专业度
- 个性化程度高
- 总长度300-500字
创作完整邮件:
```
### 批量文案优化工作流
**Step 1: 建立标准化变量体系**
```javascript
// 产品变量
产品名称: "智能客服助手"
产品类型: "SaaS工具"
核心功能: "智能对话、自动回复、意图识别"
// 用户变量
目标行业: "{{行业}}"
用户规模: "{{规模}}"
主要痛点: "{{痛点}}"
预算范围: "{{预算}}"
// 营销变量
推广渠道: "{{渠道}}"
文案类型: "{{类型}}"
核心卖点: "{{卖点}}"
行动召唤: "{{CTA}}"
```
**Step 2: 创建复用模板**
```
你是{{产品类型}}营销专家,为{{产品名称}}创作{{渠道}}的{{类型}}文案:
目标用户:{{行业}}{{规模}}企业
核心痛点:{{痛点}}
预算考量:{{预算}}敏感度
产品优势:{{核心功能}}
核心卖点:{{卖点}}
文案要求:
1. 针对{{痛点}}建立共鸣
2. 突出{{卖点}}的独特价值
3. 提供数据支撑和社会证明
4. 明确的{{CTA}}引导
5. 适配{{渠道}}的内容特点
创作{{类型}}文案:
```
**Step 3: 批量生成和优化**
通过替换不同变量值,快速生成:
- 10种不同行业的定向文案
- 5种不同渠道的适配版本
- 3种不同文案类型的变体
## ✍️ 技术写作优化
### 案例背景
一位软件工程师需要为开源项目编写技术文档和教程。
### 技术文档优化案例
#### API文档优化
**原始提示词**:
```
写个API文档
```
**优化后的提示词**:
```
你是一位经验丰富的技术文档工程师,专长于API文档编写。请为RESTful API创建专业文档:
API信息:
- 服务名称:用户管理服务
- 版本:v2.1
- 基础URL:https://api.example.com/v2
- 认证方式:JWT Bearer Token
文档要求:
1. 遵循OpenAPI 3.0规范
2. 包含完整的请求/响应示例
3. 详细的错误码说明
4. 参数验证和约束说明
5. 代码示例支持多种语言(curl, Python, JavaScript)
6. 清晰的权限和认证说明
请创建以下端点的文档:
- POST /users - 创建用户
- GET /users/{id} - 获取用户信息
- PUT /users/{id} - 更新用户信息
- DELETE /users/{id} - 删除用户
文档结构:
1. 概述和认证
2. 端点详情(每个端点包含:描述、参数、请求示例、响应示例、错误处理)
3. 错误码汇总
4. SDK和示例代码
开始编写:
```
#### 技术博客优化
**原始需求**:
```
写篇关于Redis缓存的技术文章
```
**优化后的提示词**:
```
你是一位资深后端工程师和技术写作者。请创作一篇关于Redis缓存策略的深度技术文章:
文章定位:
- 目标读者:有2-5年经验的后端开发者
- 技术深度:中高级,包含实践经验和最佳实践
- 内容风格:实用性强,理论结合实践
文章结构:
1. 引言:缓存的重要性和Redis的优势(300字)
2. Redis缓存策略详解(1500字)
- Cache-Aside模式
- Write-Through模式
- Write-Behind模式
- 各模式适用场景对比
3. 实际项目中的缓存设计(1000字)
- 缓存键设计规范
- TTL设置策略
- 缓存雪崩/穿透/击穿的预防
4. 性能优化技巧(800字)
- Pipeline批量操作
- 连接池配置
- 内存优化策略
5. 监控和运维(500字)
- 关键指标监控
- 常见问题排查
6. 总结和最佳实践(200字)
写作要求:
1. 每个概念都要配合代码示例
2. 使用具体的业务场景举例
3. 包含性能对比数据
4. 代码示例使用Java/Spring Boot
5. 文字简洁明了,避免冗余
6. 适当使用图表说明(标注图表需求)
开始创作文章:
```
### 文档本地化优化
**多语言文档模板**:
```javascript
// 设置本地化变量
目标语言: "{{语言}}" // 中文、英文、日文等
目标地区: "{{地区}}" // 中国大陆、美国、日本等
文化背景: "{{文化}}" // 技术习惯、表达方式等
```
**本地化优化提示词**:
```
你是专业的技术文档本地化专家,精通{{语言}}技术文档写作。请将以下英文技术文档本地化为{{语言}}版本:
本地化要求:
1. 语言地道性:符合{{地区}}{{语言}}表达习惯
2. 技术术语:使用{{地区}}通用的技术术语
3. 文化适应:考虑{{文化}}的技术背景和学习习惯
4. 格式规范:遵循{{语言}}技术文档格式标准
5. 代码注释:将代码注释翻译为{{语言}}
6. 链接本地化:替换为{{地区}}可访问的相关资源
原文档:
[插入英文技术文档]
请输出完整的{{语言}}本地化版本:
```
## 💡 最佳实践总结
### 通用优化技巧
**1. 分层优化策略**:
- 第一轮:明确基础需求和结构
- 第二轮:细化具体要求和约束条件
- 第三轮:调整语言风格和表达方式
- 第四轮:最终打磨和完善细节
**2. 变量系统的有效利用**:
- 识别可复用的元素
- 建立标准化变量库
- 创建行业/场景专用模板
- 支持快速批量生成
**3. 模型选择策略**:
- 创意写作:GPT-4、Claude(创意能力强)
- 技术写作:GPT-4、DeepSeek(逻辑能力强)
- 营销文案:GPT-3.5、Gemini(效率高,成本低)
- 本地化:根据目标语言选择相应模型
### 效率提升技巧
**1. 建立个人模板库**:
- 收集优质的优化模板
- 按场景分类管理
- 定期更新和完善
- 分享给团队成员
**2. 利用历史记录**:
- 标记优质结果
- 建立案例参考库
- 分析成功模式
- 复用成功经验
**3. 迭代优化思维**:
- 不期待一次完美
- 逐步细化和改进
- 收集反馈持续优化
- 建立评估标准
---
**相关案例**:
- [商务沟通案例](business-communication.md) - 商务邮件、报告、提案优化
- [教学培训案例](educational-training.md) - 课程设计、培训材料、考试题目优化
@@ -0,0 +1,682 @@
# 教学培训案例
本案例展示如何使用 Prompt Optimizer 优化教学培训相关的提示词,涵盖课程设计、培训材料、考试题目等教育场景。
## 📚 课程设计优化
### 案例背景
一位企业培训师需要为公司开发一系列关于"数字化转型"的内部培训课程。
### 课程大纲设计
#### 原始需求
```
设计一个数字化转型的培训课程
```
#### 优化过程
**Step 1: 课程框架优化**
**优化后的提示词**:
```
你是资深的企业培训专家,专长于数字化转型培训。请设计一套完整的企业数字化转型培训课程:
目标学员分析:
- 学员背景:中高层管理者,技术基础中等
- 职位层级:部门经理、项目总监、业务负责人
- 学习目标:理解数字化转型战略,掌握实施方法
- 时间限制:总计16小时,分4次实施,每次4小时
课程设计要求:
1. 理论与实践相结合,案例丰富
2. 互动性强,避免单向灌输
3. 循序渐进,知识点层层递进
4. 实用性强,能够直接应用到工作中
5. 包含评估和反馈机制
课程结构框架:
第一模块:数字化转型认知(4小时)
- 数字化转型的定义和重要性
- 行业趋势和成功案例分析
- 转型过程中的常见挑战
第二模块:战略规划与路径设计(4小时)
- 数字化转型战略制定
- 转型路径规划方法论
- 风险识别和应对策略
第三模块:技术实施与管理(4小时)
- 核心技术选型和应用
- 项目管理和团队协作
- 变革管理和人员培训
第四模块:效果评估与持续优化(4小时)
- 转型效果评估指标体系
- 数据分析和决策支持
- 持续改进和创新机制
请为每个模块设计详细的教学内容、学习目标、教学方法和评估方式。
```
**Step 2: 使用变量系统创建可复用的课程模板**
**设置课程变量**:
```javascript
// 课程基础信息
课程主题: "{{课程主题}}"
目标学员: "{{学员群体}}"
学员层级: "{{职位层级}}"
总时长: "{{总学时}}"
// 教学目标
知识目标: "{{知识点}}"
能力目标: "{{技能要求}}"
素养目标: "{{价值观念}}"
// 课程特色
教学重点: "{{核心内容}}"
教学难点: "{{难点突破}}"
实践要求: "{{实操项目}}"
```
**模板化的课程设计**:
```
你是专业培训课程设计师,为{{学员群体}}设计{{课程主题}}培训课程:
学员画像:
- 目标群体:{{学员群体}}
- 职位层级:{{职位层级}}
- 学习需求:掌握{{知识点}},提升{{技能要求}}
- 时间安排:{{总学时}},需要合理分配
教学目标:
- 知识目标:{{知识点}}的深度理解
- 能力目标:{{技能要求}}的实际应用
- 素养目标:{{价值观念}}的内化提升
课程设计原则:
1. 突出{{核心内容}}的重要性和实用性
2. 通过{{实操项目}}加强实践应用
3. 针对{{难点突破}}设计专门的教学策略
4. 建立有效的学习评价和反馈机制
请设计包含模块划分、内容要点、教学方法、评估方式的完整课程方案。
```
### 具体课程内容开发
#### 课程内容详细设计
**使用多轮对话功能深化课程内容**:
**第一轮 - 核心概念讲解**:
```
针对"数字化转型认知"模块,设计第一节课的详细内容:
课节信息:
- 课节主题:什么是数字化转型
- 时长:90分钟
- 学习目标:准确理解数字化转型的内涵和外延
- 学员特点:有一定管理经验但技术基础有限
内容结构:
1. 开场导入(15分钟)
- 破冰活动:分享学员对数字化的理解
- 问题引入:企业面临的数字化挑战
2. 核心概念讲解(45分钟)
- 数字化 vs 信息化 vs 智能化
- 数字化转型的三个层次
- 转型的核心驱动因素
3. 案例分析(20分钟)
- 成功转型案例分析
- 失败案例的教训总结
4. 互动讨论(10分钟)
- 小组讨论:本企业的数字化现状
- 经验分享和问题交流
教学要求:
- 语言通俗易懂,避免过多技术术语
- 案例贴近学员所在行业
- 互动环节设计要有针对性
- 为下一节课做好铺垫
请设计这节课的详细教学内容。
```
**第二轮 - 实践工作坊设计**:
```
为"战略规划与路径设计"模块设计实践工作坊:
工作坊目标:
- 让学员掌握数字化转型规划的基本方法
- 能够为自己的部门或企业制定初步转型计划
- 通过团队协作加深理解和应用
工作坊设计:
- 形式:分组实战练习
- 时长:2小时
- 分组:4-5人一组,混合不同部门人员
- 成果:每组输出一份转型规划框架
活动流程:
1. 工具介绍(30分钟)
- 数字化转型画布工具
- SWOT分析在转型中的应用
- OKR目标设定方法
2. 小组实践(60分钟)
- 现状分析和问题识别
- 转型目标设定和路径规划
- 资源需求和时间安排
3. 成果展示(20分钟)
- 各组展示规划成果
- 互相点评和建议
4. 总结提升(10分钟)
- 讲师点评和方法总结
- 后续行动建议
请设计具体的工作坊操作指南和工具模板。
```
**第三轮 - 评估体系设计**:
```
为整套课程设计完整的学习评估体系:
评估原则:
- 过程性评估与结果性评估相结合
- 知识掌握与能力应用并重
- 个人表现与团队协作兼顾
- 定量评价与定性反馈结合
评估体系:
1. 课堂参与度(20%)
- 出勤率和准时性
- 讨论参与积极性
- 提问和互动质量
2. 作业完成情况(30%)
- 课后反思报告
- 案例分析作业
- 实践应用计划
3. 小组项目(30%)
- 转型规划方案质量
- 团队协作表现
- 展示效果
4. 期末综合评估(20%)
- 知识理解测试
- 实际应用能力考查
- 学习成果汇报
请设计具体的评估标准、评分细则和反馈机制。
```
## 📖 培训材料开发
### 学员手册编写
#### 原始需求
```
给培训写个学员手册
```
#### 优化后的提示词
```
你是专业的教学设计师,需要为"数字化转型领导力"培训创建学员手册:
手册定位:
- 目标用户:企业中高层管理者
- 使用场景:课前预习、课堂参考、课后复习
- 设计理念:实用性强、易于理解、便于操作
手册结构:
1. 课程导览(10页)
- 培训目标和收益说明
- 课程安排和时间规划
- 学习方法和注意事项
- 评估标准和要求
2. 理论知识篇(40页)
- 数字化转型基础概念
- 转型战略和方法论
- 关键技术和应用场景
- 组织变革和文化建设
3. 实践工具篇(30页)
- 转型评估工具和模板
- 规划设计方法和框架
- 项目管理工具和技巧
- 效果监控和评价体系
4. 案例分析篇(25页)
- 行业标杆企业案例
- 转型成功经验总结
- 失败教训和风险警示
- 最佳实践和操作指南
5. 附录资源(15页)
- 延伸阅读书籍推荐
- 在线学习资源链接
- 专业社群和论坛
- 实用工具和软件推荐
编写要求:
- 内容结构化,便于查阅
- 语言简洁明了,避免学术化
- 图表丰富,提升阅读体验
- 实操性强,能够直接应用
- 版式设计专业,符合企业培训标准
- 总页数控制在120页左右
请创建手册的总体框架和第一章的详细内容。
```
### 培训PPT优化
#### PPT内容结构化
**原始需求**:
```
制作数字化转型培训的PPT
```
**优化后的提示词**:
```
你是资深培训师和演示文稿专家,需要为数字化转型培训制作专业PPT:
PPT基本信息:
- 主题:数字化转型战略与实施
- 时长:90分钟的课程内容
- 听众:企业中高层管理者,约30人
- 场景:线下培训,配合讲师现场讲解
设计原则:
1. 视觉设计简洁专业,符合商务风格
2. 内容层次清晰,重点突出
3. 配合讲师节奏,避免信息过载
4. 互动元素丰富,提升参与度
5. 案例和图表为主,减少纯文字
PPT结构:
1. 开场篇(8张)
- 封面和议程介绍
- 破冰互动和问题引入
- 学习目标和收益预期
2. 认知篇(15张)
- 数字化转型的定义和内涵
- 转型的必要性和紧迫性
- 行业趋势和发展方向
3. 战略篇(20张)
- 转型战略制定方法
- 路径规划和阶段划分
- 组织架构和团队建设
4. 实施篇(18张)
- 技术选型和平台建设
- 项目管理和进度控制
- 变革管理和文化塑造
5. 案例篇(12张)
- 成功案例深度解析
- 失败案例教训总结
- 最佳实践经验分享
6. 总结篇(7张)
- 核心要点回顾
- 行动计划模板
- Q&A和后续学习
设计要求:
- 每张PPT包含标题、核心内容、关键图表
- 提供演讲者备注和互动提示
- 标注动画效果和切换建议
- 包含思考题和讨论点
- 总张数控制在80张以内
请创建PPT的详细大纲和前10张幻灯片的具体内容。
```
### 在线学习内容
#### 微课程设计
**使用变量系统批量创建微课程**:
**设置微课变量**:
```javascript
// 微课基础信息
课程主题: "{{微课主题}}"
时长: "{{课程时长}}" // 5分钟、10分钟、15分钟
难度等级: "{{难度}}" // 入门、进阶、高级
学习目标: "{{目标}}" // 具体的学习成果
// 内容特色
核心概念: "{{关键概念}}"
实际应用: "{{应用场景}}"
常见误区: "{{易错点}}"
```
**微课程设计模板**:
```
你是在线教育内容专家,设计{{课程时长}}的{{微课主题}}微课程:
课程定位:
- 学习时长:{{课程时长}}
- 目标学员:忙碌的职场人士
- 难度等级:{{难度}}水平
- 核心目标:{{目标}}
内容结构:
1. 开场钩子(30秒)
- 痛点场景引入
- 学习价值预告
2. 核心内容(主体时长的80%)
- {{关键概念}}的清晰阐述
- {{应用场景}}的具体展示
- {{易错点}}的预防提醒
3. 实践应用(15%)
- 简单的实操练习
- 实际工作中的应用建议
4. 总结回顾(5%)
- 要点快速回顾
- 后续学习指引
设计要求:
- 内容高度聚焦,避免发散
- 语言简洁明快,节奏紧凑
- 视觉元素丰富,保持注意力
- 学完能立即应用到工作中
请设计具体的课程脚本和视觉要求。
```
## 📝 考试题目设计
### 多层次题目设计
#### 原始需求
```
出一套数字化转型的考试题
```
#### 优化后的提示词
```
你是专业的教育测量专家,需要为"数字化转型领导力"培训设计综合考核题目:
考试基本信息:
- 考试性质:培训结业考核
- 考试时间:90分钟
- 题目总数:50题左右
- 考核对象:企业中高层管理者
- 及格标准:70分
考核目标:
1. 知识理解:基本概念和理论掌握
2. 分析能力:问题识别和原因分析
3. 应用能力:理论联系实际的能力
4. 综合能力:战略思维和系统思考
题型设计:
1. 选择题(30分,30题)
- 单选题20题:基础概念和知识点
- 多选题10题:复合概念和综合应用
2. 判断题(10分,10题)
- 概念辨析和常见误区
- 最佳实践和经验总结
3. 简答题(30分,6题)
- 概念解释和特点分析
- 方法步骤和注意事项
4. 案例分析题(20分,2题)
- 实际案例的问题诊断
- 解决方案的设计和评价
5. 综合应用题(10分,1题)
- 转型规划的制定
- 实施策略的选择
出题要求:
- 覆盖全部核心知识点
- 难度分布合理:60%基础,30%中等,10%较难
- 案例来源于实际,贴近工作场景
- 避免偏题怪题,注重实用性
- 答案标准明确,评分客观公正
请设计完整的考试题目和标准答案。
```
### 在线测评系统
#### 自适应测试设计
**原始需求**:
```
设计个在线自测系统
```
**优化后的提示词**:
```
你是教育技术专家,设计数字化转型知识的自适应在线测评系统:
系统功能定位:
- 用户群体:企业员工自主学习
- 测评目的:知识掌握度检测和学习路径推荐
- 使用场景:碎片化时间学习和自我检验
- 技术实现:基于知识图谱的自适应算法
测评体系设计:
1. 知识点分层
- 基础层:概念理解(20个知识点)
- 应用层:方法掌握(15个知识点)
- 综合层:战略思维(10个知识点)
2. 难度级别
- L1基础:理解和记忆层面
- L2应用:分析和应用层面
- L3综合:评价和创造层面
3. 题型配置
- 快速选择:概念判断类题目
- 情景选择:案例分析类题目
- 开放问答:综合应用类题目
自适应规则:
1. 起始规则:所有用户从中等难度开始
2. 调整规则:根据答题正确率动态调整
3. 终止规则:连续答对/错一定数量后结束
4. 推荐规则:基于薄弱环节推荐学习内容
题库建设要求:
- 每个知识点至少10道不同难度的题目
- 题目表述清晰,选项设计合理
- 包含详细的答案解析和知识点关联
- 定期更新题目,避免题目陈旧
报告生成:
1. 即时反馈:每道题的对错和解析
2. 阶段报告:知识点掌握度雷达图
3. 学习建议:个性化的学习路径推荐
4. 进度跟踪:学习轨迹和能力提升曲线
请设计系统的整体架构和关键功能模块。
```
## 🎓 专业认证考试
### 认证体系设计
#### 认证等级设计
**原始需求**:
```
设计数字化转型的专业认证考试
```
**优化后的提示词**:
```
你是专业认证体系设计专家,为"数字化转型专业能力"创建多级认证体系:
认证体系架构:
- 初级认证:数字化转型助理师
- 中级认证:数字化转型规划师
- 高级认证:数字化转型专家
- 专家认证:数字化转型架构师
认证标准设计:
【初级认证 - 数字化转型助理师】
认证对象:初涉数字化领域的员工
知识要求:
- 数字化基础概念和术语
- 常见数字化工具的使用
- 基础的数据分析能力
- 数字化项目的参与配合
能力要求:
- 能理解数字化转型的基本内涵
- 能使用基础的数字化工具
- 能参与简单的数字化项目
- 具备基本的数字化素养
考试设置:
- 考试时间:120分钟
- 题目构成:选择题(50%) + 简答题(30%) + 实操题(20%)
- 及格标准:70分
- 证书有效期:2年
【中级认证 - 数字化转型规划师】
认证对象:负责部门数字化规划的管理者
知识要求:
- 数字化转型的方法论和框架
- 技术选型和架构设计基础
- 项目管理和变革管理知识
- 行业数字化趋势和最佳实践
能力要求:
- 能制定部门级数字化转型规划
- 能评估和选择合适的技术方案
- 能组织实施中小型数字化项目
- 能处理转型过程中的常见问题
考试设置:
- 考试时间:180分钟
- 题目构成:案例分析(40%) + 方案设计(35%) + 综合论述(25%)
- 及格标准:75分
- 前置条件:初级认证或相关工作经验3年
【高级认证 - 数字化转型专家】
认证对象:企业级数字化转型负责人
知识要求:
- 数字化转型的战略规划和顶层设计
- 复杂系统集成和技术架构
- 组织变革和文化重塑
- 数字化投资和ROI评估
能力要求:
- 能制定企业级数字化转型战略
- 能设计复杂的技术架构方案
- 能领导大型数字化转型项目
- 能建立数字化运营体系
考试设置:
- 考试时间:240分钟
- 题目构成:战略规划(50%) + 技术架构(30%) + 实施管理(20%)
- 及格标准:80分
- 前置条件:中级认证 + 相关工作经验5年
请为每个级别设计具体的考试大纲、样题和评分标准。
```
## 💡 教学效果优化
### 学习效果评估
**学习成果测量体系**:
```javascript
// 评估维度变量
评估层级: "{{评估层级}}" // 反应、学习、行为、结果
评估时点: "{{评估时间}}" // 即时、延时、长期跟踪
评估方式: "{{评估方法}}" // 问卷、测试、观察、访谈
数据来源: "{{数据来源}}" // 学员、管理者、客户、业绩
```
**多维度评估模板**:
```
你是培训效果评估专家,设计{{评估层级}}层面的学习效果评估方案:
评估目标:
- 评估层级:{{评估层级}}的效果测量
- 评估时间:{{评估时间}}进行数据收集
- 数据来源:从{{数据来源}}获取评估信息
- 评估方法:采用{{评估方法}}收集数据
评估指标体系:
1. 定量指标:可以用数字衡量的客观指标
2. 定性指标:需要主观判断的质性指标
3. 过程指标:反映学习过程的指标
4. 结果指标:反映最终成果的指标
数据收集方案:
1. 收集工具设计(问卷、量表、观察表等)
2. 数据收集时间安排和频率
3. 样本选择和数据质量控制
4. 数据分析方法和呈现方式
请设计完整的评估实施方案。
```
### 持续改进机制
**培训迭代优化流程**:
```
你是培训质量管理专家,建立培训课程的持续改进机制:
改进循环设计:
1. 数据收集:多渠道收集反馈和效果数据
2. 问题识别:分析数据找出改进机会点
3. 方案设计:制定具体的改进措施
4. 实施验证:小范围试验改进效果
5. 推广应用:将有效改进措施全面推广
关键改进维度:
- 内容优化:知识点更新、案例替换、深度调整
- 方法创新:教学方式改进、互动设计优化
- 工具升级:培训工具和技术手段更新
- 评估完善:评估方法和标准的持续优化
建立系统性的培训改进管理体系,确保培训质量的持续提升。
```
## 📊 培训管理优化
### 培训项目管理
**培训项目全周期管理模板**:
```javascript
// 项目管理变量
项目阶段: "{{当前阶段}}" // 需求分析、设计开发、实施交付、效果评估
管理重点: "{{管理焦点}}" // 进度、质量、成本、风险
项目规模: "{{项目规模}}" // 小型、中型、大型、超大型
```
通过系统化的变量管理和模板复用,可以显著提升教学培训内容的开发效率和质量标准。
---
**相关案例**:
- [创意写作案例](creative-writing.md) - 创意内容优化方法
- [商务沟通案例](business-communication.md) - 商务场景应用技巧
@@ -0,0 +1,43 @@
# 系统提示词优化:示例与最佳实践
本页汇集“系统提示词优化”的典型场景与模板片段,帮助你快速建立稳定、可复用的系统提示词。
## 角色扮演(稳定人格)
目标:让模型以稳定角色风格开展对话(如:产品经理、技术支持、法务顾问)。
模板片段:
```text
你是{{role}},专长{{expertise}},交流风格{{tone}}。
请遵循:
1) 先给出要点综述;2) 再按小节展开;3) 必要时给出风险提示与限制说明。
禁止:臆断事实、越权诊断、泄露隐私。
```
## 流程规范(质检/评审)
目标:要求输出严格遵循既定流程,保证结果可审计与可比较。
模板片段:
```text
评审步骤:
1) 背景复述;2) 要求清单核对;3) 风险点与改进建议;4) 结论与评级(A/B/C)。
输出为:JSON + Markdown 小结。
```
## 输出结构与边界
目标:统一输出格式与边界,降低歧义与幻觉。
模板片段:
```text
输出结构:{ 标题, 摘要(<=120字), 要点列表(3-5条) }
边界:不得引用未提供的数据;不进行医疗/法律判断。
```
## 提示
- 将“结构化输出”与“禁止项/边界”写清楚,能显著提升一致性
- 与用户提示词配合使用,形成“系统约束 + 任务指令”的组合
## 相关内容
- 基础模式:系统提示词优化: ../basic/system-optimization.md
- 基础模式:用户提示词优化: ../basic/user-optimization.md
- 变量管理(高级模式): ../advanced/variables.md
- 上下文管理(高级模式): ../advanced/context.md
@@ -0,0 +1,29 @@
# 用户提示词优化:示例与最佳实践
本页汇总“用户提示词优化”的常见任务范式,并指向更具体的场景案例。
## 常见范式
- 总结/改写/翻译:说明目标读者、风格、长度与格式
- 生成型写作:给出题材、受众、结构、示例与限制
- 结构化输出:明确字段、类型、约束与示例(必要时 JSON)
模板片段:
```text
任务:请基于以下素材生成{{doc_type}},面向{{audience}}。
要求:语气{{tone}},长度约{{length}},输出为(标题/摘要/要点列表)。
素材:
{{content}}
```
## 典型场景
- [创意写作](creative-writing.md)
- [商务沟通](business-communication.md)
- [教学培训](educational-training.md)
## 提示
- 明确目标、受众与格式能大幅提升稳定性
- 结合“迭代优化/对比测试”选择最优版本
## 相关内容
- 基础模式:用户提示词优化: ../basic/user-optimization.md
- 基础模式:系统提示词优化: ../basic/system-optimization.md
+29
View File
@@ -0,0 +1,29 @@
# 媒体示例(图片与视频)
> 规范要点:
> - 图片优先使用 GitHub 托管,并固定到 tag/commit;必要时才内置到仓库。
> - 视频统一外链(YouTube/Vimeo/Cloudflare Stream 等)。
## 图片(GitHub Raw 且固定版本)
示例(将占位替换为实际仓库/路径/commit 或 tag):
```markdown
![示例图片 ALT 文本](https://raw.githubusercontent.com/OWNER/REPO/<commit-or-tag>/path/to/image.png)
```
如需在页面内点击放大,可选用 glightbox 插件(启用后):
```markdown
![示例图片 ALT 文本](https://raw.githubusercontent.com/OWNER/REPO/<commit-or-tag>/path/to/image.png){.glightbox}
```
## 视频(外链嵌入)
示例(YouTube iframe,占位 ID 请替换):
```html
<iframe width="560" height="315" src="https://www.youtube.com/embed/VIDEO_ID" title="YouTube video" frameborder="0" allowfullscreen></iframe>
```
> 提示:如果平台受限,请在文档中同时提供直达链接,或提供多平台备选链接。
+405
View File
@@ -0,0 +1,405 @@
# 常见问题
这里收集了用户在配置和使用 Prompt Optimizer 时最常遇到的基础问题和解决方案。
## 🔑 API配置相关
### Q: API密钥在哪里获取?
#### OpenAI API密钥获取
```bash
# 获取步骤
1. 访问 platform.openai.com
2. 注册并登录账户(需要验证手机号)
3. 进入 "API Keys" 页面
4. 点击 "Create new secret key" 创建密钥
5. 复制并保存密钥(只显示一次)
# 注意事项
- 确保账户有足够的使用额度
- API密钥格式:sk-proj-... 或 sk-...
- 建议设置使用限制防止超额
```
#### Google Gemini API密钥获取
```bash
# 获取步骤
1. 访问 ai.google.dev
2. 使用Google账户登录
3. 点击 "Get API key" 按钮
4. 创建新项目或选择现有项目
5. 生成API密钥并复制保存
# 使用说明
- Gemini Pro免费版有一定限制
- 支持多种编程语言SDK
- API密钥格式:AIza...
```
#### DeepSeek API密钥获取
```bash
# 获取步骤
1. 访问 platform.deepseek.com
2. 注册并完成实名认证
3. 在API管理页面创建密钥
4. 充值账户余额(按用量付费)
# 优势特点
- 性价比极高的大模型服务
- 支持长上下文(最高320K)
- API调用速度快,稳定性好
```
#### 其他主流模型提供商
**智谱AI (GLM)**:
```bash
官网: open.bigmodel.cn
特点: 国内领先的大模型服务
价格: 相对便宜,质量不错
适用: 中文任务优化较好
```
**SiliconFlow**:
```bash
官网: cloud.siliconflow.cn
特点: 提供多种开源模型API
价格: 极具竞争力
适用: 预算有限的用户
```
**火山方舟(字节跳动)**:
```bash
官网: console.volcengine.com
特点: 企业级模型服务
价格: 按需付费,有免费额度
适用: 企业用户和开发者
```
### Q: 为什么配置好API密钥后仍然无法连接到模型服务?
#### 问题根源:跨域限制(CORS)
**问题解释**:
Prompt Optimizer是纯前端应用,浏览器出于安全考虑会阻止直接访问不同源的API服务。这是Web安全的基础机制,不是应用的缺陷。
#### 解决方案对比
| 方案 | 难度 | 稳定性 | 功能完整性 | 推荐指数 |
|------|------|--------|------------|----------|
| 桌面版 | ⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 🔥🔥🔥🔥🔥 |
| Vercel代理 | ⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 🔥🔥🔥🔥 |
| 自部署 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 🔥🔥🔥 |
| API中转 | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | 🔥🔥🔥 |
#### 具体解决方案
**方案1:使用桌面版(最推荐)**
```bash
# 下载地址
GitHub: https://github.com/linshenkx/prompt-optimizer/releases
# 优势
✅ 无跨域限制,支持所有API
✅ 完美支持本地模型(Ollama、LM Studio等)
✅ 更好的性能和稳定性
✅ 自动更新功能
# 适用人群
经常使用本工具的用户
需要连接本地模型的用户
对性能要求较高的用户
```
**方案2:使用Vercel代理**
```bash
# 使用方法
1. 在模型设置中勾选"使用Vercel代理"
2. 配置API密钥正常使用
3. 代理会自动处理跨域问题
# 注意事项
- 代理服务有一定的延迟
- 免费版Vercel有调用限制
- 某些模型可能不支持代理
```
**方案3:自行部署到Vercel**
```bash
# 部署步骤
1. Fork项目到自己的GitHub
2. 在Vercel中导入项目
3. 设置环境变量(API密钥等)
4. 部署完成后获得专属域名
# 优势
- 完全控制的代理服务
- 无使用限制
- 可自定义配置
```
### Q: 自定义模型如何配置?
#### 配置步骤
```javascript
// 配置参数说明
模型名称: 自定义标识(如:my-api)
API Base URL: API服务的基础地址
模型: 具体的模型名称
API密钥: 认证密钥
// 示例配置
{
"name": "DeepSeek",
"baseURL": "https://api.deepseek.com",
"model": "deepseek-chat",
"apiKey": "sk-..."
}
```
#### 常见自定义模型配置
**Ollama本地模型**:
```javascript
模型名称: Ollama
API Base URL: http://localhost:11434/v1
模型: qwen2.5:7b(根据实际安装的模型)
API密钥: dummy_key(任意值)
```
**LM Studio**:
```javascript
模型名称: LMStudio
API Base URL: http://localhost:1234/v1
模型: 在LM Studio中显示的模型名
API密钥: lm-studio(或任意值)
```
**OneAPI中转**:
```javascript
模型名称: OneAPI
API Base URL: https://your-oneapi-domain.com/v1
模型: 具体模型标识
API密钥: 在OneAPI中生成的令牌
```
## 🌐 网络连接问题
### Q: 本地Ollama如何解决连接问题?
#### Ollama连接配置
**Step 1: 设置跨域策略**
Linux/macOS:
```bash
# 设置环境变量
export OLLAMA_ORIGINS="*"
export OLLAMA_HOST="0.0.0.0:11434"
# 重启Ollama服务
systemctl restart ollama
# 或
killall ollama && ollama serve
```
Windows:
```cmd
# 设置环境变量(管理员权限)
setx OLLAMA_ORIGINS "*" /M
setx OLLAMA_HOST "0.0.0.0:11434" /M
# 重启服务
net stop ollama
net start ollama
```
**Step 2: 验证Ollama运行状态**
```bash
# 检查服务是否运行
curl http://localhost:11434/api/tags
# 应该返回已安装的模型列表
{
"models": [
{
"name": "qwen2.5:7b",
"model": "qwen2.5:7b",
"modified_at": "2024-01-01T00:00:00.000Z"
}
]
}
```
**Step 3: 在应用中配置**
```javascript
// 模型配置
自定义模型名称: ollama
API Base URL: http://localhost:11434/v1
API密钥: dummy_key(任意值,Ollama不验证)
模型名称: qwen2.5:7b(替换为实际模型)
// 测试连接
点击"测试连接"按钮验证配置是否正确
```
#### 常见Ollama问题解决
**问题1:端口被占用**
```bash
# 查找占用进程
netstat -tulpn | grep 11434
lsof -i :11434
# 更换端口
export OLLAMA_HOST="0.0.0.0:11435"
# 然后在应用中使用 http://localhost:11435/v1
```
**问题2:防火墙阻拦**
```bash
# Ubuntu/Debian
sudo ufw allow 11434
# CentOS/RHEL
sudo firewall-cmd --add-port=11434/tcp --permanent
sudo firewall-cmd --reload
# Windows
# 在Windows防火墙中添加11434端口规则
```
**问题3:模型未安装**
```bash
# 拉取模型
ollama pull qwen2.5:7b
ollama pull llama3:8b
# 查看已安装模型
ollama list
# 运行模型测试
ollama run qwen2.5:7b "你好"
```
### Q: 为什么在线版无法连接本地模型?
#### 混合内容安全策略
**问题根源**:
现代浏览器的混合内容(Mixed Content)安全策略禁止HTTPS页面访问HTTP资源。由于在线版使用HTTPS,而本地模型通常使用HTTP,因此被浏览器阻止。
**具体表现**:
```bash
# 浏览器控制台错误信息
Mixed Content: The page at 'https://prompt.always200.com/'
was loaded over HTTPS, but requested an insecure XMLHttpRequest
endpoint 'http://localhost:11434/v1/chat/completions'.
This request has been blocked.
```
#### 解决方案优先级
**方案1:桌面版(推荐)**
```bash
优势:
✅ 完全没有浏览器限制
✅ 完美支持HTTP和HTTPS
✅ 性能更好,功能更全
✅ 自动更新,使用便捷
下载:GitHub Releases或官网下载
```
**方案2:Docker本地部署**
```bash
# 使用HTTP协议访问
docker run -d -p 8081:80 linshen/prompt-optimizer
# 访问:http://localhost:8081
优势:
✅ HTTP环境无混合内容限制
✅ 完整功能支持
✅ 本地部署,数据安全
```
**方案3:Chrome插件(部分有效)**
```bash
# 从Chrome商店安装插件版本
插件在某些情况下可以绕过部分限制
但功能可能不如桌面版完整
适用:偶尔使用的用户
```
**方案4:浏览器设置(不推荐)**
```bash
# Chrome启用不安全内容(不推荐)
1. 点击地址栏左侧的锁图标
2. 选择"网站设置"
3. 将"不安全内容"设置为"允许"
4. 刷新页面重试
⚠️ 警告:这会降低浏览器安全性
```
### Q: 商业API跨域问题怎么解决?
#### 企业级API服务特点
大多数企业级AI服务(如火山方舟、Nvidia API、Azure OpenAI等)都有严格的跨域限制和安全策略,需要专门的解决方案。
#### 解决方案
**方案1:Vercel代理服务(推荐新手)**
```bash
# 使用步骤
1. 访问在线版:https://prompt.always200.com
2. 在模型设置中启用"使用Vercel代理"
3. 正常配置API密钥和模型
4. 系统自动通过代理访问API
# 支持的API
✅ 火山方舟 API
✅ Nvidia API
✅ Azure OpenAI
✅ 大部分OpenAI兼容API
```
**方案2:自部署代理服务(推荐进阶用户)**
```bash
# OneAPI部署
1. 部署OneAPI到服务器
2. 配置各种模型的中转
3. 在应用中配置OneAPI地址
4. 通过中转服务访问各种API
# 优势
✅ 完全控制的代理服务
✅ 支持所有主流API
✅ 可以统一管理多个API密钥
✅ 提供使用统计和监控
```
**方案3:企业内网部署**
```bash
# 适用场景
企业内部使用
有自己的服务器资源
对数据安全有高要求
# 部署方式
Docker容器化部署
Kubernetes集群部署
传统服务器部署
```
---
**相关链接**:
- [连接问题](connection-issues.md) - 深入的连接问题解决方案
- [桌面应用](../deployment/desktop.md) - 桌面版安装和使用指南
+430
View File
@@ -0,0 +1,430 @@
# 连接问题解决
本指南专门解决 Prompt Optimizer 使用过程中遇到的各种连接和功能异常问题。
## ⚠️ 优化失败问题
### Q: 优化失败怎么办?
#### 系统性问题诊断流程
**Step 1: 基础检查**
```bash
# 网络连通性测试
1. 打开浏览器开发者工具(F12)
2. 查看Network标签页
3. 尝试进行优化操作
4. 观察是否有网络请求失败
# API服务状态检查
访问对应服务商的状态页面:
- OpenAI: https://status.openai.com
- Google: https://status.cloud.google.com
- DeepSeek: 官方公告页面
```
**Step 2: API密钥验证**
```bash
# 测试API密钥有效性
1. 在模型设置页面点击"测试连接"
2. 查看是否返回成功响应
3. 检查API密钥格式是否正确
4. 验证账户额度是否充足
```
**Step 3: 模型状态检查**
```javascript
// 常见模型状态问题
模型维护中: 尝试其他同类模型
模型过载: 稍后重试或降低请求频率
模型不支持: 检查模型名称是否正确
区域限制: 某些模型有地区访问限制
```
#### 常见错误代码解析
**401 Unauthorized - 认证失败**
```bash
原因分析:
- API密钥无效或已过期
- API密钥格式错误
- 账户被暂停或限制
解决方案:
1. 重新生成API密钥
2. 检查密钥前后是否有多余空格
3. 联系服务商确认账户状态
4. 确认API密钥权限范围
```
**429 Too Many Requests - 请求过频**
```bash
原因分析:
- 超出API调用速率限制
- 短时间内请求过多
- 账户级别限制
解决方案:
1. 等待几分钟后重试
2. 降低请求频率
3. 升级API服务等级
4. 使用指数退避重试策略
```
**500 Internal Server Error - 服务器错误**
```bash
原因分析:
- 模型服务临时故障
- 请求内容触发安全策略
- 服务商内部问题
解决方案:
1. 更换其他可用模型
2. 简化提示词内容
3. 稍后重试
4. 检查服务商状态页面
```
**Network Error - 网络错误**
```bash
原因分析:
- 网络连接问题
- 代理设置错误
- 跨域限制
- 防火墙阻拦
解决方案:
1. 检查网络连接
2. 尝试使用桌面版
3. 配置或禁用代理
4. 检查防火墙设置
```
### Q: 如何提高优化质量?
#### 输入优化策略
**1. 明确具体目标**
```markdown
❌ 不好的描述:
"帮我优化这个提示词"
✅ 好的描述:
"我需要一个客服回复模板,要求:
- 语气友善专业
- 能处理用户投诉
- 提供解决方案
- 控制在200字以内"
```
**2. 提供充分背景**
```markdown
❌ 缺乏背景:
"写个营销文案"
✅ 充实背景:
"为我们的SaaS产品写营销文案:
- 目标用户:中小企业主
- 产品特点:项目管理工具
- 竞争优势:易用、性价比高
- 使用场景:团队协作、进度跟踪"
```
**3. 使用结构化描述**
```markdown
# 结构化提示词模板
## 任务描述
[具体要完成的任务]
## 输出要求
- 格式:[指定格式]
- 长度:[字数限制]
- 风格:[语言风格]
- 结构:[内容结构]
## 背景信息
- 使用场景:[具体场景]
- 目标用户:[用户群体]
- 关键信息:[重要细节]
## 示例参考
[提供1-2个期望输出的示例]
```
**4. 提供示例说明**
```markdown
❌ 无示例:
"生成产品介绍"
✅ 有示例:
"生成产品介绍,参考格式:
【产品名称】智能客服助手
【核心功能】24小时自动回复,智能意图识别
【用户收益】提升客户满意度,降低人力成本
【适用场景】电商、SaaS、在线服务等行业"
```
#### 优化策略进阶技巧
**1. 选择合适模板**
```bash
# 模板选择指南
通用优化: 适合大部分场景
角色扮演: AI需要特定身份时
任务指令: 有明确执行步骤时
创意写作: 需要创造性输出时
技术文档: 专业技术内容时
商务沟通: 正式商务场景时
```
**2. 迭代优化策略**
```bash
# 多轮优化流程
第1轮: 基础优化,明确核心需求
第2轮: 细化要求,补充具体细节
第3轮: 风格调整,优化表达方式
第4轮: 最终打磨,确保完美输出
# 迭代优化技巧
每次只改进1-2个方面
保留上轮优化的优点
记录改进效果对比
```
**3. 模型选择策略**
```javascript
// 不同模型的擅长领域
GPT-4: 综合能力强,复杂推理
GPT-3.5: 速度快,成本低,日常任务
Gemini Pro: 长文本处理,多模态
DeepSeek: 编程任务,逻辑推理
Claude: 分析能力强,安全性高
国产模型: 中文理解,本土化场景
```
**4. 参数调整建议**
```javascript
// Temperature参数调整
0.1-0.3: 精确性要求高(技术文档、数据分析)
0.4-0.7: 平衡创造性和准确性(一般优化)
0.8-1.0: 创造性要求高(创意写作、头脑风暴)
// 其他参数建议
max_tokens: 根据预期输出长度设置
top_p: 通常保持0.9-1.0
frequency_penalty: 避免重复时可适当调高
```
## 📱 平台差异问题
### Q: 桌面版和网页版有什么区别?
#### 功能对比详表
| 功能类别 | 桌面版 | 网页版 | Chrome插件 |
|----------|--------|--------|-------------|
| **基础功能** |
| 提示词优化 | ✅ 完整 | ✅ 完整 | ✅ 完整 |
| 历史记录 | ✅ 完整 | ✅ 完整 | ✅ 有限 |
| 模板管理 | ✅ 完整 | ✅ 完整 | ✅ 基础 |
| **高级功能** |
| 变量管理 | ✅ 完整 | ✅ 完整 | ⚠️ 受限 |
| 工具调用 | ✅ 完整 | ✅ 完整 | ⚠️ 受限 |
| 多轮对话 | ✅ 完整 | ✅ 完整 | ⚠️ 受限 |
| **网络访问** |
| 主流API | ✅ 无限制 | ⚠️ 跨域限制 | ⚠️ 部分限制 |
| 本地模型 | ✅ 完美支持 | ❌ 混合内容限制 | ⚠️ 有限支持 |
| 自定义API | ✅ 无限制 | ⚠️ 需要代理 | ⚠️ 受限 |
| **性能体验** |
| 启动速度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| 响应速度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| 内存占用 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| **数据管理** |
| 本地存储 | ✅ 文件系统 | ✅ 浏览器存储 | ✅ 插件存储 |
| 数据导出 | ✅ 完整 | ✅ 完整 | ⚠️ 受限 |
| 跨设备同步 | ⚠️ 手动 | ⚠️ 手动 | ✅ Chrome同步 |
#### 选择建议
**选择桌面版的情况**:
```bash
✅ 需要连接本地AI模型(Ollama、LM Studio)
✅ 经常使用,希望有独立应用
✅ 对性能和稳定性要求高
✅ 需要使用完整的高级功能
✅ 企业内网环境使用
✅ 对数据安全和隐私要求高
```
**选择网页版的情况**:
```bash
✅ 临时使用或首次体验
✅ 跨平台、多设备访问需求
✅ 不能安装软件的环境
✅ 希望始终使用最新版本
✅ 主要使用主流云端API
✅ 设备存储空间有限
```
**选择Chrome插件的情况**:
```bash
✅ 偶尔使用,希望轻便快捷
✅ 主要在浏览器环境中工作
✅ 需要与网页内容集成
✅ Chrome用户,希望数据同步
✅ 不想安装额外软件
✅ 对功能要求不高
```
### Q: Chrome插件如何安装和使用?
#### 详细安装指南
**方法1:Chrome商店安装(推荐)**
```bash
# 安装步骤
1. 打开Chrome浏览器
2. 访问: chrome://extensions/ 或点击菜单->更多工具->扩展程序
3. 打开Chrome Web Store
4. 搜索"Prompt Optimizer"
5. 点击"添加至Chrome"
6. 确认"添加扩展程序"
# 验证安装
✅ 工具栏出现插件图标
✅ 扩展程序页面显示已安装
✅ 点击图标能正常打开界面
```
**方法2:开发者模式安装**
```bash
# 适用情况
- Chrome商店无法访问
- 想要使用最新版本
- 开发者或高级用户
# 安装步骤
1. 下载插件压缩包并解压
2. 打开chrome://extensions/
3. 开启"开发者模式"开关
4. 点击"加载已解压的扩展程序"
5. 选择解压后的文件夹
6. 插件安装完成
# 注意事项
⚠️ Chrome可能显示安全警告
⚠️ 需要手动管理更新
⚠️ 重启浏览器后可能需要重新启用
```
#### 使用配置指南
**基础配置**:
```bash
# 首次使用配置
1. 点击插件图标打开界面
2. 进入设置页面配置API密钥
3. 选择常用的模型和参数
4. 测试连接确保配置正确
# 界面优化
- 固定插件图标到工具栏
- 调整插件窗口大小
- 设置合适的默认参数
- 配置快捷键(可选)
```
**高级功能配置**:
```bash
# 快捷键设置
地址栏输入: chrome://extensions/shortcuts
找到Prompt Optimizer并配置:
- 启动插件: 建议Alt+P
- 快速优化: 建议Alt+O
- 历史记录: 建议Alt+H
# 权限管理
扩展程序详情页面设置:
- 网站访问权限: "在所有网站上"(推荐)
- 或添加常用网站到允许列表
- 确保有网络访问权限
```
#### 常见使用场景
**场景1:网页文本优化**
```bash
使用流程:
1. 在网页中选择需要优化的文本
2. 右键选择"使用Prompt Optimizer优化"
3. 或直接复制后点击插件图标
4. 进行优化处理
5. 将结果复制回网页或直接插入
```
**场景2:在线编辑器集成**
```bash
支持的编辑器:
✅ 谷歌文档 (Google Docs)
✅ Notion编辑器
✅ GitHub代码编辑
✅ 各种CMS后台编辑器
✅ 在线邮件编辑器
使用方法:
1. 在编辑器中写好初稿
2. 选中文本并启动优化
3. 获得优化结果
4. 一键插入回编辑器
```
**场景3:批量处理**
```bash
工作流程:
1. 准备多个待优化文本
2. 逐个进行优化处理
3. 使用历史记录管理结果
4. 批量导出或复制结果
提效技巧:
- 使用模板快速处理相似内容
- 利用快捷键提高操作效率
- 建立常用配置预设
```
#### 插件限制和解决方案
**功能限制**:
```bash
# 相比桌面版的限制
⚠️ 某些高级功能可能不可用
⚠️ 文件操作能力有限
⚠️ 网络请求可能受限
⚠️ 无法后台持续运行
# 解决方案
对于复杂任务: 使用桌面版
需要本地模型: 使用桌面版
大量数据处理: 使用Web版或桌面版
```
**兼容性问题**:
```bash
# 浏览器兼容性
✅ Chrome 88+
✅ Microsoft Edge 88+ (Chromium)
✅ Brave Browser
❌ Firefox (需要专版)
❌ Safari (需要专版)
# 解决方案
不兼容浏览器: 使用Web版
功能受限: 考虑桌面版
```
---
**相关链接**:
- [故障排除](troubleshooting.md) - 技术问题和数据安全
- [技术支持](support.md) - 获取更多帮助
+540
View File
@@ -0,0 +1,540 @@
# 技术支持
本指南提供 Prompt Optimizer 高级用法指导和获取技术支持的完整渠道信息。
## 🚀 高级用法和最佳实践
### Q: 如何批量处理多个提示词?
#### 当前批量处理方案
虽然应用暂时没有内置的批量处理功能,但可以通过以下方法实现高效的批量优化:
**方法1:历史记录管理法**
```bash
# 工作流程
1. 准备待优化的提示词列表
2. 逐个进行优化处理
3. 为每个结果添加标记或分类
4. 使用历史记录的搜索和筛选功能
5. 批量导出相关记录
# 效率提升技巧
- 使用相似的优化参数保持一致性
- 为不同类型的提示词创建专门模板
- 利用标签系统进行分类管理
- 定期整理和归档历史记录
```
**方法2:模板复用法**
```bash
# 创建标准化模板
1. 分析待处理提示词的共同特征
2. 创建针对性的优化模板
3. 设计可复用的变量系统
4. 建立标准化的优化流程
# 模板示例
模板名称: "营销文案批量优化"
优化目标: 提升转化率和吸引力
适用场景: 电商、SaaS、服务行业
变量设置: {{product}}、{{target_audience}}、{{key_benefit}}
```
**方法3:数据导入导出法**
```bash
# 批量数据处理流程
1. 将待优化内容整理为结构化数据(CSV/JSON)
2. 逐个导入进行优化处理
3. 及时导出优化结果
4. 使用脚本或工具进行后续数据处理
# 数据格式示例
{
"batch_id": "marketing_2024_03",
"items": [
{
"id": 1,
"original": "原始提示词内容",
"optimized": "优化后的内容",
"category": "营销文案",
"status": "completed"
}
]
}
```
#### 未来功能规划
**即将推出的批量功能**:
```bash
# 开发中的功能
批量导入: 支持CSV、JSON格式的批量导入
批量优化: 一次性处理多个提示词
批量导出: 统一导出处理结果
进度跟踪: 实时显示批量处理进度
# 高级批量功能
模板批量应用: 将模板应用到多个提示词
参数批量调整: 统一调整优化参数
结果批量对比: 比较不同优化版本
自动化流程: 设置自动化的优化流程
```
### Q: 如何与其他工具集成?
#### MCP协议集成
**什么是MCP**:
Model Context Protocol(模型上下文协议)是一个开放标准,用于连接AI应用和各种数据源、工具。
**Prompt Optimizer的MCP支持**:
```bash
# MCP服务器功能
提供标准化API: 遵循MCP协议规范
工具调用支持: 支持外部工具调用
数据源连接: 可连接到各种数据源
会话管理: 提供完整的会话管理功能
# 支持的客户端
Claude Desktop: 官方支持的MCP客户端
Continue: VS Code中的AI编程助手
Codeium: 代码补全和AI编程工具
自定义客户端: 基于MCP协议的自定义应用
```
**MCP集成配置**:
```json
{
"mcpServers": {
"prompt-optimizer": {
"command": "npx",
"args": [
"@prompt-optimizer/mcp-server"
],
"env": {
"OPENAI_API_KEY": "your-api-key"
}
}
}
}
```
**详细配置指南**:
```bash
# 安装MCP服务器
npm install -g @prompt-optimizer/mcp-server
# Claude Desktop配置
1. 打开Claude Desktop配置文件
2. 添加Prompt Optimizer服务器配置
3. 重启Claude Desktop
4. 在Claude中使用提示词优化功能
# 配置文件位置
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json
```
#### API集成方案
**RESTful API接口**(规划中):
```javascript
// 基础API结构
const api = {
optimize: {
url: '/api/v1/optimize',
method: 'POST',
data: {
text: '待优化的文本',
template: '优化模板ID',
model: '模型配置',
parameters: '优化参数'
}
},
history: {
url: '/api/v1/history',
method: 'GET',
params: {
limit: 10,
offset: 0,
category: '分类筛选'
}
}
}
// 使用示例
fetch('/api/v1/optimize', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer your-token'
},
body: JSON.stringify({
text: 'Your prompt text here',
template: 'general-optimization',
model: 'gpt-4'
})
})
.then(response => response.json())
.then(data => console.log(data.optimized_text))
```
#### 数据格式标准化
**导入导出格式**:
```json
{
"version": "2.0",
"export_date": "2024-03-15T10:30:00Z",
"data": {
"prompts": [
{
"id": "unique-id",
"original": "原始提示词",
"optimized": "优化后提示词",
"metadata": {
"model": "gpt-4",
"template": "general",
"created_at": "2024-03-15T10:00:00Z",
"tags": ["marketing", "social-media"]
}
}
],
"templates": [
{
"id": "template-id",
"name": "模板名称",
"content": "模板内容",
"variables": ["var1", "var2"]
}
]
}
}
```
**与其他工具的数据转换**:
```bash
# 支持的格式转换
ChatGPT对话导出: JSON格式的对话记录
Claude对话记录: 标准化的对话格式
Notion数据库: 结构化的表格数据
Obsidian笔记: Markdown格式的笔记
其他提示词工具: 通用的JSON/CSV格式
```
## 📞 获取帮助和支持
### 官方支持渠道
#### 1. GitHub Issues(推荐)
**适用情况**:
- 发现软件Bug或异常
- 功能需求和改进建议
- 技术问题需要开发者解答
- 想要参与项目讨论
**提交Issues指南**:
```bash
# 仓库地址
https://github.com/linshenkx/prompt-optimizer/issues
# Issue分类
🐛 Bug Report: 软件故障报告
✨ Feature Request: 新功能建议
❓ Question: 使用问题咨询
📚 Documentation: 文档改进建议
🔧 Enhancement: 功能增强建议
```
**高质量Issue模板**:
```markdown
## 问题描述
[清晰简洁地描述遇到的问题]
## 复现步骤
1. 打开应用并进入...
2. 点击...按钮
3. 输入...内容
4. 观察到...错误
## 期望行为
[描述期望的正常行为]
## 实际行为
[描述实际发生的异常行为]
## 环境信息
- 操作系统: [Windows 11 / macOS 14.0 / Ubuntu 22.04]
- 浏览器: [Chrome 120 / Firefox 118 / Safari 17]
- 应用版本: [v2.0.0]
- 使用的AI模型: [GPT-4 / Gemini Pro]
## 附加信息
- 错误截图: [如有请附上]
- 控制台错误: [F12查看Console错误信息]
- 相关配置: [相关的设置配置信息]
## 可能的解决方案
[如果有想法,可以提出可能的解决方案]
```
#### 2. 社区讨论
**GitHub Discussions**:
```bash
# 访问地址
https://github.com/linshenkx/prompt-optimizer/discussions
# 讨论分类
💡 Ideas: 创意想法分享
🙏 Q&A: 问题解答
📢 General: 一般讨论
🎉 Show and tell: 成果展示
```
**讨论参与指南**:
```markdown
# 提问前的准备
1. 搜索已有讨论,避免重复提问
2. 查看FAQ文档,确认问题未被解答
3. 准备详细的背景信息
4. 考虑问题的普遍性
# 优质讨论示例
标题: "如何优化长文本的处理性能?"
内容:
- 具体使用场景描述
- 遇到的性能问题
- 已尝试的解决方法
- 寻求的具体建议
# 分享经验示例
标题: "分享我的批量优化工作流程"
内容:
- 工作场景介绍
- 具体操作步骤
- 效率提升效果
- 经验总结和建议
```
#### 3. 邮件支持
**官方支持邮箱**:
```bash
# 技术支持
邮箱: support@prompt-optimizer.com
回复时间: 1-3个工作日
适用问题: 技术故障、使用咨询
# 商务合作
邮箱: business@prompt-optimizer.com
回复时间: 1-2个工作日
适用问题: 企业合作、定制开发
# 邮件格式建议
主题: [类别] 简短问题描述
正文:
- 详细问题描述
- 环境信息
- 截图或日志(如需要)
- 联系方式
```
### 社区贡献
#### 如何参与项目
**代码贡献**:
```bash
# 贡献流程
1. Fork项目到自己的GitHub
2. 创建功能分支: git checkout -b feature/new-feature
3. 进行开发和测试
4. 提交Pull Request
5. 等待代码审查和合并
# 开发环境搭建
git clone https://github.com/your-username/prompt-optimizer.git
cd prompt-optimizer
pnpm install
pnpm dev
# 代码规范
遵循项目的ESLint配置
编写相应的单元测试
更新相关文档
保持代码风格一致
```
**文档贡献**:
```bash
# 文档改进
修正错误和过时信息
补充缺失的使用说明
翻译文档到其他语言
添加使用案例和最佳实践
# 文档结构
docs/
├── zh/ # 中文文档
├── en/ # 英文文档
├── assets/ # 图片资源
└── examples/ # 示例代码
```
**问题反馈和测试**:
```bash
# 测试贡献
参与新版本的Beta测试
报告和验证Bug
测试不同环境的兼容性
提供使用场景的反馈
# 反馈渠道
GitHub Issues: 正式的Bug报告
Discussions: 使用体验分享
邮件: 详细的测试报告
```
### 企业服务
#### 企业定制服务
**定制开发服务**:
```bash
# 服务内容
私有部署解决方案
企业内网版本定制
API接口定制开发
特殊功能需求开发
数据安全和合规支持
# 服务流程
需求调研: 详细了解企业需求
方案设计: 提供技术方案和时间规划
开发实施: 按计划进行定制开发
测试部署: 完整的测试和部署服务
培训支持: 用户培训和技术支持
```
**技术咨询服务**:
```bash
# 咨询内容
AI工具集成方案设计
提示词工程最佳实践
团队工作流程优化
性能优化和架构建议
# 服务方式
在线会议咨询
现场技术支持
长期技术顾问
培训和工作坊
```
#### SLA和服务保障
**服务等级协议**:
```bash
# 响应时间承诺
P0 (严重故障): 2小时内响应
P1 (重要问题): 4小时内响应
P2 (一般问题): 1个工作日内响应
P3 (咨询建议): 3个工作日内响应
# 支持时间
工作日: 9:00-18:00 (UTC+8)
紧急情况: 7×24小时支持
节假日: 紧急故障支持
# 服务保障
99.9%可用性承诺
数据安全和隐私保护
定期备份和灾难恢复
版本更新和维护支持
```
### 学习资源
#### 官方文档和教程
**文档体系**:
```bash
# 用户文档
入门指南: 快速上手教程
功能说明: 详细功能介绍
最佳实践: 使用技巧和建议
FAQ: 常见问题解答
# 开发者文档
API文档: 接口说明和示例
MCP集成: 协议集成指南
插件开发: 扩展开发指南
贡献指南: 参与项目开发
# 访问地址
官方文档: https://docs.prompt-optimizer.com
GitHub Wiki: 项目百科知识库
示例代码: GitHub Examples目录
```
**视频教程**(规划中):
```bash
# 教程系列
基础入门: 0-1快速上手
进阶使用: 高级功能详解
最佳实践: 实际案例分析
开发扩展: 插件和集成开发
# 发布渠道
YouTube官方频道
Bilibili官方账号
官网教程页面
社区贡献教程
```
#### 社区学习
**学习交流群**:
```bash
# QQ交流群
群号: [待建立]
用途: 用户交流、问题讨论
管理: 社区志愿者管理
规则: 友善交流、技术优先
# 微信交流群
加群方式: 扫描官网二维码
用途: 深度技术讨论
管理: 核心用户和开发者
规则: 高质量内容分享
```
**定期活动**:
```bash
# 社区活动
每月在线答疑: 开发者在线回答问题
季度功能发布: 新功能演示和讨论
年度用户大会: 社区成果展示和交流
黑客松活动: 插件和扩展开发竞赛
# 参与方式
关注官方社交媒体
订阅邮件通知
加入社区讨论群
参与GitHub讨论
```
---
**项目信息**:
- **GitHub仓库**: https://github.com/linshenkx/prompt-optimizer
- **官方文档**: https://docs.prompt-optimizer.com
- **在线演示**: https://prompt.always200.com
- **Chrome插件**: [Chrome Web Store链接]
感谢您使用 Prompt Optimizer!我们致力于为用户提供最好的AI提示词优化体验。如果您有任何问题或建议,请随时通过上述渠道与我们联系。
+485
View File
@@ -0,0 +1,485 @@
# 故障排除
本指南提供 Prompt Optimizer 技术故障的系统性排查方法和解决方案。
## 💾 数据安全和隐私
### Q: 数据安全吗?我的API密钥和优化内容会被泄露吗?
#### 数据安全保障体系
**架构层面的安全设计**:
```bash
# 纯前端应用架构
✅ 无后端服务器 - 没有中心化数据存储
✅ 本地存储 - 所有数据存储在用户设备
✅ 直连API - 请求直接发送到AI服务商
✅ 开源透明 - 代码完全公开可审查
# 数据流向
用户设备 → AI服务商
↑ ↑
本地存储 加密传输(HTTPS)
```
**具体安全措施**:
**1. API密钥安全**:
```javascript
// 存储方式
存储位置: 浏览器本地存储(localStorage)
加密方式: 浏览器原生加密机制
访问权限: 仅当前域名可访问
传输方式: HTTPS加密传输
// 安全特点
✅ 不会上传到任何服务器
✅ 不会在网络中明文传输
✅ 其他网站无法访问
✅ 清除浏览器数据可完全删除
```
**2. 优化内容安全**:
```bash
# 数据处理流程
用户输入 → 本地暂存 → 发送给AI服务商 → 接收回复 → 本地存储
# 安全要点
✅ 我们不接触用户输入的任何内容
✅ 不经过我们的服务器中转
✅ 直接与AI服务商通信
✅ 遵循各AI服务商的数据政策
```
**3. 隐私保护机制**:
```bash
# 数据收集最小化
❌ 不收集用户个人信息
❌ 不收集设备指纹信息
❌ 不使用第三方Analytics
❌ 不投放广告或跟踪
# 数据控制权
✅ 用户完全控制自己的数据
✅ 可随时导出所有数据
✅ 可随时删除所有数据
✅ 支持完全离线使用(桌面版)
```
#### 与主流AI服务商的数据政策对比
**OpenAI数据政策**:
```bash
API调用数据: 不用于训练模型(2023年3月后)
数据保留期: 30天后自动删除
数据访问: 仅用于提供服务和安全监控
隐私控制: 用户可申请删除数据
```
**Google Gemini数据政策**:
```bash
API调用数据: 不用于改进Gemini模型
数据保留期: 根据产品政策执行
数据访问: 仅用于提供API服务
隐私控制: 遵循Google隐私政策
```
**国产模型服务**:
```bash
数据合规: 遵循中国数据安全法律
数据存储: 在中国境内存储处理
数据使用: 各家政策有所不同
建议: 仔细阅读各服务商的隐私政策
```
### Q: 如何备份和同步数据?
#### 数据备份策略
**数据类型说明**:
```javascript
// 可备份的数据类型
配置数据: {
模型设置: "API密钥、模型参数等",
用户偏好: "主题、语言、界面设置",
自定义模板: "用户创建的优化模板",
变量定义: "自定义变量和预设值"
}
历史数据: {
优化记录: "所有的优化历史",
对话记录: "多轮对话的完整记录",
收藏内容: "标记为重要的优化结果"
}
// 不会备份的敏感数据
API密钥: "出于安全考虑,需要重新配置",
临时缓存: "临时数据,无备份必要",
会话状态: "当前操作状态,重启后重置"
```
**备份操作详解**:
**方法1:应用内导出(推荐)**
```bash
# 导出步骤
1. 打开设置页面
2. 找到"数据管理"部分
3. 点击"导出数据"按钮
4. 选择要导出的数据类型:
✅ 优化历史记录
✅ 自定义模板
✅ 模型配置(不含API密钥)
✅ 用户偏好设置
5. 点击"导出"按钮
6. 下载生成的JSON备份文件
# 备份文件格式
文件名: prompt-optimizer-backup-20240315.json
文件大小: 通常几KB到几MB
包含内容: 所有非敏感的用户数据
```
**方法2:手动数据复制**
```bash
# 桌面版数据位置
Windows: %APPDATA%\prompt-optimizer\
macOS: ~/Library/Application Support/prompt-optimizer/
Linux: ~/.config/prompt-optimizer/
# 可复制的文件
config.json: 基础配置信息
models.json: 模型配置信息
history.db: 历史记录数据库
templates/: 模板文件夹
```
**方法3:浏览器开发者工具**
```bash
# 高级用户可用的方法
1. 打开浏览器开发者工具(F12)
2. 进入Application或Storage标签
3. 找到localStorage部分
4. 找到对应域名的数据
5. 复制相关的键值对保存
# 注意事项
⚠️ 此方法需要技术基础
⚠️ 数据格式复杂,不推荐普通用户使用
⚠️ 恢复时需要重新格式化数据
```
#### 数据导入和恢复
**导入操作步骤**:
```bash
# 标准导入流程
1. 在设置页面找到"数据管理"
2. 点击"导入数据"按钮
3. 选择之前导出的JSON备份文件
4. 系统会显示备份文件的详细信息:
- 备份时间
- 数据类型
- 记录数量
5. 选择导入选项:
- 替换现有数据(完全覆盖)
- 合并数据(保留现有,添加新的)
- 仅导入特定类型数据
6. 确认导入操作
7. 重启应用使配置完全生效
# 导入后检查
✅ 检查模型配置是否正确
✅ 验证历史记录是否完整
✅ 确认自定义模板可用
✅ 重新配置API密钥(安全需要)
```
#### 跨设备同步方案
**方案1:手动同步(推荐)**
```bash
# 同步流程
设备A: 导出数据 → 保存到云盘/U盘
设备B: 从云盘/U盘获取 → 导入数据
# 适用场景
✅ 偶尔需要跨设备使用
✅ 对数据安全要求高
✅ 不依赖第三方服务
✅ 可选择性同步数据
```
**方案2:云存储同步**
```bash
# 利用云盘服务
1. 将备份文件保存到云盘(OneDrive、iCloud、百度云等)
2. 在其他设备上下载备份文件
3. 导入到对应设备的应用中
# 自动化脚本(高级用户)
定期自动导出数据到指定云盘文件夹
使用脚本监控备份文件变化并自动导入
```
**方案3:Chrome插件同步**
```bash
# 仅适用于Chrome插件版本
优势:
✅ 利用Chrome账户自动同步
✅ 设置和偏好可跨设备保持一致
✅ 无需手动操作
限制:
⚠️ 不同步API密钥等敏感信息
⚠️ 历史记录同步有限制
⚠️ 仅在Chrome浏览器间有效
```
## 🔧 技术问题排查
### Q: 页面加载缓慢或无响应怎么办?
#### 性能问题诊断
**Step 1: 基础环境检查**
```bash
# 浏览器检查
推荐浏览器版本:
✅ Chrome 88+
✅ Firefox 85+
✅ Safari 14+
✅ Edge 88+ (Chromium内核)
# 系统资源检查
内存占用: 建议可用内存 > 2GB
CPU负载: 如果过高会影响页面响应
网络状况: 检查网络连接稳定性
```
**Step 2: 浏览器状态诊断**
```bash
# 标签页管理
当前打开标签数: 建议 < 20个
内存密集型网站: 暂时关闭视频、游戏等
后台进程: 检查是否有大量后台任务
# 浏览器扩展检查
禁用非必要扩展程序
特别检查广告拦截器设置
暂时禁用可能冲突的扩展
# 缓存和数据清理
清除浏览器缓存: Ctrl+Shift+Delete
清除localStorage: 开发者工具->Application->Storage
重置浏览器设置: 作为最后手段
```
**Step 3: 应用特定检查**
```bash
# 数据量检查
历史记录数量: 过多记录会影响性能
建议定期清理: 保留重要记录,删除过时内容
数据库大小: 如果超过100MB建议清理
# 功能使用检查
同时运行的功能: 避免同时进行多个优化任务
复杂操作: 大量数据的导入导出操作
后台任务: 检查是否有未完成的任务
```
#### 性能优化方案
**即时优化措施**:
```bash
# 立即可执行的优化
1. 刷新页面: Ctrl+F5或Cmd+Shift+R
2. 关闭其他标签页: 释放内存资源
3. 重启浏览器: 清理内存碎片
4. 检查网络: 确保连接稳定
# 临时解决方案
使用无痕模式: 避免扩展和缓存干扰
尝试其他浏览器: 排除浏览器特定问题
使用桌面版: 获得更好的性能表现
```
**长期优化策略**:
```bash
# 数据管理优化
定期清理历史: 每月清理一次无用记录
控制数据量: 避免存储过多临时数据
备份重要数据: 定期导出备份后清理本地
# 使用习惯优化
避免多任务: 一次只进行一个优化任务
合理关闭功能: 不使用高级功能时可以关闭
定期重启: 长时间使用后重启应用
```
### Q: 界面显示异常怎么处理?
#### 常见显示问题类型
**1. 字体和文本问题**
```bash
# 问题表现
乱码显示: 字符无法正常显示
字体缺失: 使用了系统不支持的字体
文本重叠: 布局计算错误
# 解决方案
检查系统字体: 确保安装了常用中英文字体
浏览器语言: 设置为中文或英文
编码设置: 确保页面编码为UTF-8
缩放比例: 调整浏览器缩放到100%
```
**2. 布局和样式问题**
```bash
# 问题表现
按钮错位: 界面元素位置异常
内容溢出: 文本或图片超出边界
色彩异常: 主题色彩显示不正确
# 解决方案
清除样式缓存: 强制刷新页面
检查浏览器缩放: 确保缩放比例正常
尝试切换主题: 在日间和夜间模式间切换
重置界面设置: 恢复默认界面配置
```
**3. 交互功能问题**
```bash
# 问题表现
按钮无响应: 点击没有反应
输入框异常: 无法输入或输入异常
下拉菜单错误: 选项无法正常展示
# 解决方案
检查JavaScript: 确保JavaScript已启用
禁用扩展: 检查是否有冲突的扩展程序
网络连接: 确保网络连接正常
页面重载: 完全刷新页面重试
```
#### 兼容性问题解决
**浏览器兼容性**:
```bash
# 完全支持的浏览器
Chrome 88+: 推荐使用,功能最完整
Edge 88+ (Chromium): 与Chrome体验一致
Firefox 85+: 基本功能正常,个别细节可能不同
Safari 14+: macOS用户推荐,iOS体验有限
# 不支持或有问题的浏览器
Internet Explorer: 完全不支持,建议升级
旧版Chrome/Firefox: 部分功能可能异常
国产浏览器: 基于Chromium内核的通常可用
```
**系统兼容性**:
```bash
# 桌面系统支持
Windows 10/11: 完全支持
macOS 10.15+: 完全支持
Ubuntu 18.04+: 完全支持
其他Linux: 大多数现代发行版支持
# 移动设备支持
iOS Safari: 基础功能可用,体验受限
Android Chrome: 基础功能可用,推荐使用桌面版
其他移动浏览器: 功能和体验可能受限
```
**特殊环境处理**:
```bash
# 企业网络环境
代理服务器: 可能需要配置代理设置
防火墙限制: 某些API可能被阻拦
安全策略: CSP等安全策略可能影响功能
# 解决方案
联系IT管理员: 了解网络限制政策
使用桌面版: 绕过部分网络限制
配置代理: 在应用中设置代理服务器
```
### Q: 移动设备如何使用?
#### 移动端适配情况
**响应式设计支持**:
```bash
# 屏幕适配
手机屏幕 (< 768px): 基础功能可用
平板屏幕 (768px-1024px): 大部分功能正常
大平板 (> 1024px): 接近桌面体验
# 界面调整
导航菜单: 自动折叠为汉堡菜单
按钮尺寸: 适配触摸操作
文字大小: 根据屏幕尺寸调整
输入框: 优化触摸输入体验
```
**功能可用性**:
```javascript
// 移动端功能支持情况
基础优化功能: "✅ 完全支持",
历史记录管理: "✅ 完全支持",
模板使用: "✅ 完全支持",
模型配置: "✅ 完全支持",
数据导入导出: "⚠️ 部分受限",
高级变量管理: "⚠️ 体验不佳",
多轮对话测试: "⚠️ 屏幕限制",
工具调用功能: "⚠️ 复杂操作困难"
```
#### 移动端使用建议
**最佳实践**:
```bash
# 使用建议
横屏模式: 获得更多操作空间
简化操作: 避免复杂的多步操作
分批处理: 长文本分段处理
及时保存: 避免数据丢失
# 推荐场景
临时优化需求: 在移动设备上快速优化文本
查看历史记录: 回顾之前的优化结果
简单配置: 基础的模型和参数配置
紧急使用: 桌面设备不可用时的备选方案
```
**移动端限制**:
```bash
# 技术限制
文件操作: iOS Safari限制文件上传下载
存储空间: 移动浏览器存储容量有限
性能限制: 处理大量数据时可能卡顿
网络限制: 移动网络可能不稳定
# 体验限制
屏幕空间: 复杂界面在小屏幕上难以操作
输入效率: 触摸输入不如键盘高效
多任务: 移动设备难以进行多任务操作
长期使用: 长时间使用体验不佳
```
**替代方案**:
```bash
# 为获得更好体验
使用平板设备: 更大屏幕,更好体验
安装桌面版: 条件允许时推荐使用桌面版
云端协作: 通过数据导入导出在设备间协作
混合使用: 移动端查看,桌面端操作
```
---
**相关链接**:
- [技术支持](support.md) - 获取更多帮助和高级用法
- [常见问题](common-questions.md) - API配置和基础问题
+88
View File
@@ -0,0 +1,88 @@
# 欢迎使用 Prompt Optimizer
<div align="center">
[![GitHub stars](https://img.shields.io/github/stars/linshenkx/prompt-optimizer)](https://github.com/linshenkx/prompt-optimizer/stargazers)
![Chrome Web Store Users](https://img.shields.io/chrome-web-store/users/cakkkhboolfnadechdlgdcnjammejlna)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/linshenkx/prompt-optimizer/blob/main/LICENSE)
**一个强大的 AI 提示词优化工具,帮助你编写更好的 AI 提示词,提升 AI 输出质量**
[🚀 快速开始](user/quick-start.md) | [📖 在线体验](https://prompt.always200.com)
</div>
## ✨ 核心特性
- **🎯 智能优化** - 一键优化提示词,支持多轮迭代改进,提升AI回复准确度
- **📝 双模式优化** - 支持系统提示词优化和用户提示词优化,满足不同使用场景
- **🔄 对比测试** - 支持原始提示词和优化后提示词的实时对比,直观展示优化效果
- **⚡ 高级功能** - 变量管理系统、工具调用支持、多轮会话测试
- **🤖 多模型集成** - 支持OpenAI、Gemini、DeepSeek、智谱AI、SiliconFlow等主流AI模型
- **🔒 安全架构** - 纯客户端处理,数据直接与AI服务商交互,不经过中间服务器
- **📱 多端支持** - 同时提供Web应用、桌面应用、Chrome插件和Docker部署四种使用方式
## 🎬 功能演示
### 1. 角色扮演对话:激发小模型潜力
在追求成本效益的生产或注重隐私的本地化场景中,结构化的提示词能让小模型稳定地进入角色,提供沉浸式、高一致性的角色扮演体验。
![角色扮演演示](../assets/images/demo/cat-maid-roleplay.png)
### 2. 知识图谱提取:保障生产环境的稳定性
在需要程序化处理的生产环境中,高质量的提示词能显著降低对模型智能程度的要求,使得更经济的小模型也能稳定输出可靠的指定格式。
![知识图谱提取演示](../assets/images/demo/knowledge-graph-extractor.png)
### 3. 诗歌写作:辅助创意探索与需求定制
帮助用户将模糊的灵感细化为具体需求,辅助探索、发掘并精确表达创意,与AI共创独一无二的作品。
![诗歌创作演示](../assets/images/demo/poetry-writing.png)
## 🚀 快速开始
### 在线版本(推荐)
直接访问:[https://prompt.always200.com](https://prompt.always200.com)
项目是纯前端应用,所有数据只存储在浏览器本地,不会上传至任何服务器,因此直接使用在线版本也是安全可靠的。
### 其他使用方式
- **🌐 [Web版部署](deployment/web.md)** - Vercel一键部署或Docker部署
- **🖥️ [桌面应用](deployment/desktop.md)** - 下载安装包,无跨域限制
- **🐳 [Docker部署](deployment/docker-basic.md)** - 容器化部署,支持MCP服务
- **🔌 [Chrome插件](deployment/extension.md)** - 浏览器插件,随时可用
## 📚 文档导航
### 👤 用户指南
- **[🚀 快速开始](user/quick-start.md)** - 5分钟快速上手指南
- **[❓ 帮助支持](help/common-questions.md)** - 问题解决和故障排除
### 🚀 部署指南
- **[🌐 Web版部署](deployment/web.md)** - 在线版使用和Vercel部署
- **[🖥️ 桌面应用](deployment/desktop.md)** - 桌面应用安装和使用
- **[🐳 Docker部署](deployment/docker-basic.md)** - Docker运行和环境配置
- **[🔗 MCP服务器](user/mcp-server.md)** - Model Context Protocol集成
### ⚙️ 高级配置
### 💡 使用案例
- **[🎭 演示案例](guide/media.md)** - 功能演示和媒体资源
## 🤝 参与贡献
我们欢迎各种形式的贡献:
- 🐛 报告问题
- 💡 提出功能建议
- 📝 改进文档
- 🔧 提交代码
更多信息请查看 [GitHub 仓库](https://github.com/linshenkx/prompt-optimizer)。
## 📄 开源协议
本项目采用 [MIT](https://github.com/linshenkx/prompt-optimizer/blob/main/LICENSE) 协议开源。
---
如果这个项目对你有帮助,请考虑给它一个 Star ⭐️
+144
View File
@@ -0,0 +1,144 @@
# MCP 服务器用户指南
{% raw %}
<!-- 内容来源:仓库 docs/user/mcp-server.md -->
{% endraw %}
Prompt Optimizer 支持 Model Context Protocol (MCP) 协议,可以与 Claude Desktop 等支持 MCP 的 AI 应用集成。
## 🎯 功能特性
- **optimize-user-prompt**: 优化用户提示词以提升 LLM 性能
- **optimize-system-prompt**: 优化系统提示词以提升 LLM 性能
- **iterate-prompt**: 基于特定需求迭代改进成熟的提示词
## 🚀 快速开始
### Docker 部署(推荐)
Docker 是最简单的部署方式,Web 界面和 MCP 服务器会同时启动:
```bash
# 基本部署
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
```
### 开发者本地部署
> **注意**:此方式仅适用于开发者进行开发和调试,普通用户建议使用 Docker 部署。
```bash
# 1. 克隆项目
git clone https://github.com/your-repo/prompt-optimizer.git
cd prompt-optimizer
# 2. 安装依赖
pnpm install
# 3. 配置环境变量(复制并编辑 .env.local)
cp env.local.example .env.local
# 4. 启动 MCP 服务器
pnpm mcp:dev
```
服务器将在 `http://localhost:3000/mcp` 启动。开发者可以查看 packages/mcp-server/README.md 获取更多开发相关信息。
## ⚙️ 环境变量配置
### API 密钥配置
至少需要配置一个 API 密钥:
```bash
# 选择一个或多个 API 密钥
VITE_OPENAI_API_KEY=your-openai-key
VITE_GEMINI_API_KEY=your-gemini-key
VITE_DEEPSEEK_API_KEY=your-deepseek-key
VITE_SILICONFLOW_API_KEY=your-siliconflow-key
VITE_ZHIPU_API_KEY=your-zhipu-key
# 自定义 API(如 Ollama)
VITE_CUSTOM_API_KEY=your-custom-key
VITE_CUSTOM_API_BASE_URL=http://localhost:11434/v1
VITE_CUSTOM_API_MODEL=qwen2.5:0.5b
```
### MCP 服务器配置
```bash
# 首选模型提供商(当配置了多个 API 密钥时)
# 可选值:openai, gemini, deepseek, siliconflow, zhipu, custom
MCP_DEFAULT_MODEL_PROVIDER=openai
# 日志级别(可选,默认 debug)
# 可选值:debug, info, warn, error
MCP_LOG_LEVEL=info
# HTTP 端口(可选,默认 3000,Docker 部署时无需设置)
MCP_HTTP_PORT=3000
# 默认语言(可选,默认 zh)
# 可选值:zh, en
MCP_DEFAULT_LANGUAGE=zh
```
## 🔗 客户端连接
### Claude Desktop 集成
1. 找到配置目录
- Windows: `%APPDATA%\\Claude\\services`
- macOS: `~/Library/Application Support/Claude/services`
- Linux: `~/.config/Claude/services`
2. 编辑配置文件 `services.json`:
```json
{
"services": [
{
"name": "Prompt Optimizer",
"url": "http://localhost:8081/mcp"
}
]
}
```
> 如果是本地开发(端口 3000),请改为 `http://localhost:3000/mcp`。
## 🧪 测试与验证
使用 MCP Inspector:
```bash
# 1. 启动 MCP 服务器
pnpm mcp:dev
# 2. 启动 Inspector
npx @modelcontextprotocol/inspector
```
在 Inspector Web UI 中:
1. 选择 `Streamable HTTP`
2. 服务器 URL:`http://localhost:3000/mcp`
3. 点击 "Connect" 连接服务器
4. 测试可用的工具
## 🔧 故障排除
### 常见问题
- 端口占用:更换端口或停止占用进程
- API 密钥无效:检查是否配置了至少一个有效密钥
- 模型提供商不匹配:校验 `MCP_DEFAULT_MODEL_PROVIDER`
- Claude Desktop 连接失败:检查服务运行状态、URL、防火墙与日志
+174
View File
@@ -0,0 +1,174 @@
# 快速上手指南
{% raw %}
<!-- 内容来源:仓库 docs/user/quick-start.md -->
{% endraw %}
## 🚀 欢迎使用提示词优化器
提示词优化器是一个智能工具,帮助您将普通的提示词优化为更专业、更有效的版本。
## ⚡ 5分钟快速开始(按推荐流程)
### 1. 基础设置(可选)
- 在右上角切换主题与语言;刷新后应保持(设置持久化)
### 2. 配置 AI 模型(必做)
1. 点击右上角 **⚙️ 模型管理**
2. 选择提供商并输入 API Key(OpenAI/Claude/Gemini/…)
3. 点击 **测试连接**(应显示明确成功/失败反馈)
4. 点击 **保存**;再次打开时应保持原配置
5. 主界面模型选择器应能选择刚配置的模型
### 3. 模板准备(建议)
1. 点击 **📝 功能提示词/模板管理**
2. 浏览/选择模板(支持分类筛选)
3. 如需自定义:新建→填写名称/描述/内容→保存
4. 若使用内置模板,可切换模板语言(内置名称/内容随语言切换)
### 4. 选择优化模式并输入内容(必做)
1. 在优化区选择模式:
- 基础模式 → 系统提示词优化(定义“角色/边界/结构”)
- 基础模式 → 用户提示词优化(优化“任务指令/输出格式”)
2. 在左侧输入原始提示词
3. 选择模板与模型
### 5. 执行优化与查看结果(必做)
1. 点击 **开始优化/Optimize →**
2. 右侧显示优化结果与推理过程;生成 V1 版本
3. 结果展示功能:
- 视图切换:Source(Markdown 源码)/Render(渲染视图)
- 复制:Copy 到剪贴板
- 全屏:Fullscreen 独立查看结果
- 对比:Compare 原始 vs 优化(分段差异)
- 展开编辑:Expand 进入全屏编辑器
4. 继续优化:输入“改进方向”,生成 V2/V3…,可在版本间切换
## 🎯 主要功能
### 📝 提示词优化
- **智能优化** - AI自动改进您的提示词
- **多种模板** - 提供不同场景的优化模板
- **迭代改进** - 可以多次优化直到满意
- **版本管理** - 保存和切换不同版本
### 🤖 模型管理
- **多模型支持** - 支持OpenAI、Claude、Gemini等
- **连接测试** - 确保API配置正确
- **智能切换** - 根据需要选择最适合的模型
### 📚 模板管理
- **丰富模板** - 内置多种优化模板
- **自定义模板** - 创建您自己的优化模板
- **分类管理** - 按类型组织模板
### 📜 历史记录
- **自动保存** - 所有优化记录自动保存
- **快速重用** - 一键重用历史优化结果
- **搜索功能** - 快速找到需要的历史记录
### 💾 数据管理
- **导出备份** - 导出所有数据到本地
- **导入恢复** - 从备份文件恢复数据
- **数据清理** - 清除不需要的数据
## 💡 使用技巧
### 写好原始提示词
- **明确目标** - 清楚说明您想要AI做什么
- **提供背景** - 给出必要的上下文信息
- **具体描述** - 避免模糊和抽象的表达
### 选择合适的模板
- **通用优化** - 适合大多数场景的基础优化
- **专业领域** - 针对特定领域的专业优化
- **创意写作** - 适合创意和文学创作的优化
### 有效使用迭代优化
- **明确改进方向** - 具体说明需要改进的方面
- **逐步完善** - 每次迭代专注一个改进点
- **保存版本** - 保留满意的中间版本
## 📜 历史与数据(建议)
### 历史记录
- 打开“📜 历史记录”,支持浏览、重用、删除与清空(清空含确认)
- 默认按时间倒序,支持搜索(若开启)
### 数据管理
- 导出:将数据导出为 JSON 文件或复制到剪贴板
- 导入:从文件/剪贴板导入(replace 模式)
- 导入统计:imported/skipped/predefinedVariablesRemoved(预定义变量覆盖会被剔除)
## ⚙️ 个性化设置
### 界面设置
- **主题切换** - 点击右上角切换日间/夜间模式
- **语言切换** - 支持中文/英文界面
- **布局调整** - 界面自适应不同屏幕尺寸
### 使用偏好
- **默认模型** - 设置常用的AI模型
- **常用模板** - 收藏经常使用的模板
- **历史管理** - 定期清理不需要的历史记录
## ❓ 常见问题
### Q: API密钥在哪里获取?
**A:**
- **OpenAI**: 访问 platform.openai.com 注册并获取API密钥
- **Claude**: 访问 console.anthropic.com 获取API密钥
- **Gemini**: 访问 ai.google.dev 获取API密钥
### Q: 优化失败怎么办?
**A:**
1. 检查网络连接是否正常
2. 确认API密钥是否有效且有足够额度
3. 尝试使用不同的模型
4. 简化原始提示词内容
### Q: 如何提高优化质量?
**A:**
1. 提供更详细的原始提示词
2. 选择更适合的优化模板
3. 使用迭代优化功能进行改进
4. 尝试不同的AI模型
### Q: 数据安全吗?
**A:**
- 所有数据存储在您的本地浏览器中
- 不会上传到我们的服务器
- 您可以随时导出或删除数据
- API调用直接连接到AI服务商
## 🔧 故障排除
### 界面问题
- **页面无法加载** - 刷新浏览器或清除缓存
- **按钮无响应** - 检查浏览器是否支持现代Web标准
- **显示异常** - 尝试调整浏览器缩放比例
### 功能问题
- **优化超时** - 检查网络连接,尝试重新优化
- **结果不显示** - 等待更长时间或刷新页面
- **历史记录丢失** - 检查浏览器是否允许本地存储
### 性能问题
- **运行缓慢** - 关闭其他浏览器标签页释放内存
- **内存占用高** - 定期清理历史记录和缓存
- **响应延迟** - 检查网络速度和API服务状态
## 📞 获取帮助
如果您遇到问题或有改进建议:
1. **查看文档** - 详细功能说明请参考用户手册
2. **检查设置** - 确认配置是否正确
3. **重试操作** - 很多问题可以通过重试解决
4. **反馈问题** - 记录具体的错误信息和操作步骤
## 🎉 开始使用
现在您已经了解了基本使用方法,开始体验智能提示词优化的强大功能吧!
记住:好的提示词是与 AI 有效沟通的关键。遇到问题,可通过“历史记录”“数据管理”与“继续优化”快速复用与改进。
+151
View File
@@ -0,0 +1,151 @@
# 快速开发配置 - 精简但保留基本 i18n 支持
site_name: Prompt Optimizer Docs (Dev)
site_url: https://docs.always200.com
site_description: Prompt Optimizer 文档(开发模式)
site_author: linshenkx
# 源与产物目录
docs_dir: docs
site_dir: site
# 主题:Material(精简配置)
theme:
name: material
logo: assets/images/logo.png
favicon: assets/images/favicon.png
features:
- content.code.copy
- navigation.top
- navigation.footer
palette:
- media: "(prefers-color-scheme: light)"
scheme: default
primary: indigo
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: indigo
# 精简插件配置 - 包含基本i18n支持
plugins:
- search:
lang:
- zh
- en
- i18n:
docs_structure: folder
languages:
- locale: zh
name: 简体中文
build: true
default: true
nav:
- 首页: index.md
- 用户指南:
- 快速开始: user/quick-start.md
- 功能指南:
- 基础管理:
- 模型管理: basic/models.md
- 模板管理: basic/templates.md
- 历史记录: basic/history.md
- 数据管理: basic/data.md
- 基础模式:
- 系统提示词优化: basic/system-optimization.md
- 用户提示词优化: basic/user-optimization.md
- 高级模式:
- 变量管理: advanced/variables.md
- 上下文管理: advanced/context.md
- 工具调用: advanced/tools.md
- 部署指南:
- Web版部署: deployment/web.md
- 桌面应用: deployment/desktop.md
- Chrome插件: deployment/extension.md
- Docker部署:
- 基础部署: deployment/docker-basic.md
- 高级配置: deployment/docker-advanced.md
- 故障排除: deployment/docker-troubleshooting.md
- MCP服务器: user/mcp-server.md
- 帮助支持:
- 常见问题: help/common-questions.md
- 连接问题: help/connection-issues.md
- 故障排除: help/troubleshooting.md
- 技术支持: help/support.md
- 使用案例:
- 系统提示词优化:
- 示例与最佳实践: examples/system-prompt-examples.md
- 用户提示词优化:
- 示例与最佳实践: examples/user-prompt-examples.md
- 创意写作: examples/creative-writing.md
- 商务沟通: examples/business-communication.md
- 教学培训: examples/educational-training.md
- locale: en
name: English
build: true
nav:
- Home: index.md
- User Guide:
- Quick Start: user/quick-start.md
- Basic Features:
- Prompt Optimization: basic/optimization.md
- Model Management: basic/models.md
- History Management: basic/history.md
- Template Management: basic/templates.md
- Data Management: basic/data.md
- Advanced Features:
- Variable Management: advanced/variables.md
- Tool Calling: advanced/tools.md
- Context Management: advanced/context.md
- Deployment:
- Web Deployment: deployment/web.md
- Desktop App: deployment/desktop.md
- Chrome Extension: deployment/extension.md
- Docker Deployment:
- Basic Deployment: deployment/docker-basic.md
- Advanced Configuration: deployment/docker-advanced.md
- Troubleshooting: deployment/docker-troubleshooting.md
- MCP Server: user/mcp-server.md
- Help & Support:
- Common Questions: help/common-questions.md
- Connection Issues: help/connection-issues.md
- Troubleshooting: help/troubleshooting.md
- Technical Support: help/support.md
- Use Cases:
- Creative Writing: examples/creative-writing.md
- Business Communication: examples/business-communication.md
- Educational Training: examples/educational-training.md
- Developer Guide:
- Media Examples: guide/media.md
# Markdown 扩展
markdown_extensions:
- admonition
- toc:
permalink: true
- pymdownx.superfences
- pymdownx.highlight:
use_pygments: false # 使用客户端高亮,加快构建速度
- attr_list
# 导航配置已移至 i18n 插件内,为每种语言提供本地化导航
# 额外配置:语言切换
extra:
alternate:
- name: 简体中文
link: /
lang: zh
- name: English
link: /en/
lang: en
social:
- icon: fontawesome/brands/github
link: https://github.com/linshenkx/prompt-optimizer
name: GitHub
# 开发优化设置
dev_addr: '127.0.0.1:8000'
use_directory_urls: false # 简化 URL 结构
# 仓库与编辑链接(与主配置保持一致)
repo_url: https://github.com/linshenkx/prompt-optimizer
repo_name: linshenkx/prompt-optimizer
edit_uri: edit/main/mkdocs/docs/
+108
View File
@@ -0,0 +1,108 @@
# 中文专版配置(不启用 i18n,直接指向 zh 目录)
site_name: Prompt Optimizer 文档(中文)
site_url: https://docs.always200.com
site_description: Prompt Optimizer 中文文档与部署指南
site_author: linshenkx
docs_dir: docs/zh
site_dir: site
theme:
name: material
logo: assets/images/logo.png
favicon: assets/images/favicon.png
features:
- content.code.copy
- navigation.instant
- navigation.tracking
- navigation.top
- navigation.footer
palette:
- media: "(prefers-color-scheme: light)"
scheme: default
primary: indigo
accent: indigo
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: indigo
accent: indigo
plugins:
- search:
lang:
- zh
- mermaid2:
version: 10.4.0
arguments:
theme: auto
themeVariables:
fontSize: 16px
cache: true
- glightbox
markdown_extensions:
- admonition
- toc:
permalink: true
- pymdownx.superfences
- pymdownx.highlight
- pymdownx.details
- attr_list
# 中文站点导航(直连 zh 目录)
nav:
- 首页: index.md
- 用户指南:
- 快速开始: user/quick-start.md
- 功能指南:
- 基础管理:
- 模型管理: basic/models.md
- 模板管理: basic/templates.md
- 历史记录: basic/history.md
- 数据管理: basic/data.md
- 基础模式:
- 系统提示词优化: basic/system-optimization.md
- 用户提示词优化: basic/user-optimization.md
- 高级模式:
- 变量管理: advanced/variables.md
- 上下文管理: advanced/context.md
- 工具调用: advanced/tools.md
- 部署指南:
- Web版部署: deployment/web.md
- 桌面应用: deployment/desktop.md
- Chrome插件: deployment/extension.md
- Docker部署:
- 基础部署: deployment/docker-basic.md
- 高级配置: deployment/docker-advanced.md
- 故障排除: deployment/docker-troubleshooting.md
- MCP服务器: user/mcp-server.md
- 帮助支持:
- 常见问题: help/common-questions.md
- 连接问题: help/connection-issues.md
- 故障排除: help/troubleshooting.md
- 技术支持: help/support.md
- 使用案例:
- 系统提示词优化:
- 示例与最佳实践: examples/system-prompt-examples.md
- 用户提示词优化:
- 示例与最佳实践: examples/user-prompt-examples.md
- 创意写作: examples/creative-writing.md
- 商务沟通: examples/business-communication.md
- 教学培训: examples/educational-training.md
- 开发指南:
- 媒体示例: guide/media.md
# 仓库与编辑链接
repo_url: https://github.com/linshenkx/prompt-optimizer
repo_name: linshenkx/prompt-optimizer
edit_uri: edit/main/mkdocs/docs/zh/
# 页脚与构建
strict: true
copyright: "© 2025 Prompt Optimizer"
extra:
social:
- icon: fontawesome/brands/github
link: https://github.com/linshenkx/prompt-optimizer
name: GitHub
+173
View File
@@ -0,0 +1,173 @@
# 站点信息
site_name: Prompt Optimizer 文档
site_url: https://docs.always200.com
site_description: Prompt Optimizer 使用文档与部署指南
site_author: linshenkx
# 源与产物目录(与外层项目解耦)
docs_dir: docs
site_dir: site
# 主题:Material(基础配置,i18n/版本选择后续任务补充)
theme:
name: material
logo: assets/images/logo.png
favicon: assets/images/favicon.png
features:
- content.code.copy
- navigation.instant
- navigation.tracking
- navigation.top
- navigation.footer
palette:
- media: "(prefers-color-scheme: light)"
scheme: default
primary: indigo
accent: indigo
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: indigo
accent: indigo
# 插件:基础包含 search 与 i18n(多版本由 mike 驱动,无需插件)
plugins:
- search:
lang:
- zh
- en
- mermaid2:
version: 10.4.0
arguments:
theme: auto
themeVariables:
fontSize: 16px
cache: true
- glightbox
- i18n:
docs_structure: folder
languages:
- locale: zh
name: 简体中文
build: true
default: true
nav:
- 首页: index.md
- 用户指南:
- 快速开始: user/quick-start.md
- 功能指南:
- 基础管理:
- 模型管理: basic/models.md
- 模板管理: basic/templates.md
- 历史记录: basic/history.md
- 数据管理: basic/data.md
- 基础模式:
- 系统提示词优化: basic/system-optimization.md
- 用户提示词优化: basic/user-optimization.md
- 高级模式:
- 变量管理: advanced/variables.md
- 上下文管理: advanced/context.md
- 工具调用: advanced/tools.md
- 部署指南:
- Web版部署: deployment/web.md
- 桌面应用: deployment/desktop.md
- Chrome插件: deployment/extension.md
- Docker部署:
- 基础部署: deployment/docker-basic.md
- 高级配置: deployment/docker-advanced.md
- 故障排除: deployment/docker-troubleshooting.md
- MCP服务器: user/mcp-server.md
- 帮助支持:
- 常见问题: help/common-questions.md
- 连接问题: help/connection-issues.md
- 故障排除: help/troubleshooting.md
- 技术支持: help/support.md
- 使用案例:
- 系统提示词优化:
- 示例与最佳实践: examples/system-prompt-examples.md
- 用户提示词优化:
- 示例与最佳实践: examples/user-prompt-examples.md
- 创意写作: examples/creative-writing.md
- 商务沟通: examples/business-communication.md
- 教学培训: examples/educational-training.md
- locale: en
name: English
build: true
nav:
- Home: index.md
- User Guide:
- Quick Start: user/quick-start.md
- Basic Features:
- Prompt Optimization: basic/optimization.md
- Model Management: basic/models.md
- History Management: basic/history.md
- Template Management: basic/templates.md
- Data Management: basic/data.md
- Advanced Features:
- Variable Management: advanced/variables.md
- Tool Calling: advanced/tools.md
- Context Management: advanced/context.md
- Deployment:
- Web Deployment: deployment/web.md
- Desktop App: deployment/desktop.md
- Chrome Extension: deployment/extension.md
- Docker Deployment:
- Basic Deployment: deployment/docker-basic.md
- Advanced Configuration: deployment/docker-advanced.md
- Troubleshooting: deployment/docker-troubleshooting.md
- MCP Server: user/mcp-server.md
- Help & Support:
- Common Questions: help/common-questions.md
- Connection Issues: help/connection-issues.md
- Troubleshooting: help/troubleshooting.md
- Technical Support: help/support.md
- Use Cases:
- Creative Writing: examples/creative-writing.md
- Business Communication: examples/business-communication.md
- Educational Training: examples/educational-training.md
- Developer Guide:
- Media Examples: guide/media.md
# 多版本:由 mike 管理(无需在此启用插件)
# 额外脚本:Mermaid(无需插件,直接加载 JS 即可)
# 若中文分词需要增强,可按需引入 lunr-languages(本地文件或 CDN)
# extra_javascript:
# - assets/javascripts/lunr.zh.js
# Material 与 mike 集成:启用版本选择器
extra:
version:
provider: mike
alternate:
- name: 简体中文
link: /
lang: zh
- name: English
link: /en/
lang: en
social:
- icon: fontawesome/brands/github
link: https://github.com/linshenkx/prompt-optimizer
name: GitHub
# Markdown 扩展
markdown_extensions:
- admonition
- toc:
permalink: true
- pymdownx.superfences
- pymdownx.highlight
- pymdownx.details
- attr_list
# 导航配置已移至 i18n 插件内,为每种语言提供本地化导航
# 仓库与编辑链接
repo_url: https://github.com/linshenkx/prompt-optimizer
repo_name: linshenkx/prompt-optimizer
edit_uri: edit/main/mkdocs/docs/
# 严格构建:将链接/引用问题视为错误
strict: true
# 版权信息(页脚显示)
copyright: "© 2025 Prompt Optimizer"
+11
View File
@@ -0,0 +1,11 @@
## 必需依赖(开发阶段:跟随最新)
# 注意:当前不固定版本,安装时将获取镜像/官方源上的最新可用版本。
# 若需稳定构建,请在确认可用后 pin 到具体版本。
mkdocs
mkdocs-material
mkdocs-static-i18n
pymdown-extensions
mike
mkdocs-glightbox
mkdocs-mermaid2-plugin
+8
View File
@@ -0,0 +1,8 @@
{
"buildCommand": "git fetch --tags --force || true && pip install -r requirements.txt && mkdocs build --clean -f mkdocs.yml",
"outputDirectory": "site",
"rewrites": [
{ "source": "/", "destination": "/latest/zh/" },
{ "source": "/latest", "destination": "/latest/zh/" }
]
}