# PromptForge 项目功能和配置总结 ## 项目概述 PromptForge 是一个专为大模型提示词系统优化的完整平台,涵盖了提示词创建、优化、测试、部署和管理的全生命周期。项目采用现代化的技术栈,提供了直观的用户界面和强大的功能支持。 ## 技术架构 ### 前端技术栈 - **Next.js 14** - React 框架,支持 SSR 和静态生成 - **React 18** - 用户界面库 - **TypeScript** - 类型安全的 JavaScript - **Tailwind CSS** - 实用优先的 CSS 框架 - **Lucide React** - 现代化图标库 - **Zustand** - 轻量级状态管理 - **Monaco Editor** - VS Code 同款代码编辑器 - **Framer Motion** - 动画库 ### 后端技术栈 - **Next.js API Routes** - 后端 API 服务 - **MySQL** - 关系型数据库(腾讯云) - **mysql2/promise** - MySQL 数据库驱动 - **bcryptjs** - 密码加密 - **Prisma** - 数据库 ORM ### 开发工具 - **ESLint** - 代码质量检查 - **PostCSS** - CSS 处理工具 - **tsx** - TypeScript 执行器 ## 核心功能模块 ### 1. 用户系统 ✅ **文件位置**:`src/app/auth/`, `src/contexts/AuthContext.tsx`, `src/app/profile/` #### 功能特性 - **用户注册**:邮箱、用户名、密码注册 - **用户登录**:安全的身份验证 - **个人资料**:用户信息管理和展示 - **密码加密**:bcryptjs 安全加密 - **会话管理**:React Context 状态管理 - **路由保护**:ProtectedRoute 组件 #### 技术实现 - 完整的注册/登录表单 - 用户认证上下文 - 数据库用户表管理 - 密码哈希和验证 - 响应式用户界面 ### 2. 模板管理系统 ✅ **文件位置**:`src/app/templates/`, `src/app/editor/`, `src/app/api/templates/` #### 功能特性 - **模板创建**:可视化模板编辑器 - **模板编辑**:实时编辑和预览 - **模板库**:分类浏览和搜索 - **模板分享**:公开/私密设置 - **模板复制**:一键复制他人模板 - **批量操作**:批量删除和分享 - **模板管理**:个人模板管理页面 #### 技术实现 - Monaco Editor 集成 - 实时预览功能 - 分类和标签系统 - 搜索和过滤功能 - 数据库 CRUD 操作 - 响应式卡片布局 ### 3. AI 测试台模块 ✅ **文件位置**:`src/app/playground/`, `src/app/api/test/`, `src/components/playground/` #### 功能特性 - **单模型测试**:单个 AI 模型测试 - **批量测试**:多模型并行测试 - **结果比较**:测试结果对比分析 - **测试场景**:预设测试场景 - **变量管理**:动态变量输入 - **结果导出**:JSON 格式导出 - **历史记录**:本地测试历史 #### 技术实现 - 多平台 API 集成(OpenAI, Anthropic, DeepSeek) - 并行请求处理 - 实时响应时间统计 - 错误处理和重试机制 - 结果可视化展示 - 本地存储管理 ### 4. 部署模块 ✅ **文件位置**:`src/app/deploy/`, `src/components/deploy/` #### 功能特性 - **部署模板**:预配置部署方案 - **多语言支持**:Python, JavaScript, TypeScript - **框架选择**:FastAPI, Express.js, Electron - **代码生成**:自动生成部署代码 - **配置管理**:部署参数配置 - **部署历史**:部署记录管理 - **快速部署**:一键部署到平台 #### 技术实现 - 模板化代码生成 - 多平台配置支持 - 代码高亮显示 - 复制和下载功能 - 部署状态跟踪 - 错误日志管理 ### 5. 设置模块 ✅ **文件位置**:`src/app/settings/` #### 功能特性 - **个人资料**:用户信息管理 - **API 配置**:多平台 API 密钥管理 - **外观设置**:主题和语言配置 - **通知设置**:邮件和推送通知 - **隐私设置**:数据隐私控制 - **偏好设置**:AI 参数预设 - **设置同步**:本地存储持久化 #### 技术实现 - 标签页导航界面 - 实时设置应用 - API 密钥测试 - 主题切换功能 - 本地存储管理 - 响应式表单设计 ## 数据库设计 ### 主要数据表 1. **users** - 用户信息 2. **templates** - 提示词模板 3. **favorites** - 用户收藏 4. **comments** - 模板评论 5. **tests** - 测试记录 6. **system_configs** - 系统配置 ### 表关系 ``` User (1) ←→ (N) Template User (1) ←→ (N) Favorite User (1) ←→ (N) Comment Template (1) ←→ (N) Test ``` ### 用户表结构 ```sql - id (主键) - username (用户名) - email (邮箱) - password (加密密码) - displayName (显示名称) - bio (个人简介) - avatar (头像) - createdAt (创建时间) - updatedAt (更新时间) ``` ### 模板表结构 ```sql - id (主键) - title (标题) - description (描述) - role (角色定义) - task (任务描述) - context (上下文) - constraints (约束条件) - variables (变量定义) - outputFormat (输出格式) - category (分类) - tags (标签) - authorId (作者ID) - isPublic (是否公开) - usageCount (使用次数) - rating (评分) - ratingCount (评分次数) - createdAt (创建时间) - updatedAt (更新时间) ``` ## API 接口设计 ### 用户相关 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 - `GET /api/users/profile` - 获取用户资料 - `PUT /api/users/profile` - 更新用户资料 ### 模板相关 - `GET /api/templates` - 获取模板列表 - `POST /api/templates` - 创建新模板 - `GET /api/templates/[id]` - 获取模板详情 - `PUT /api/templates/[id]` - 更新模板 - `DELETE /api/templates/[id]` - 删除模板 - `PATCH /api/templates/[id]/share` - 切换分享状态 - `POST /api/templates/[id]/copy` - 复制模板 ### AI 测试相关 - `POST /api/test` - 单模型测试 - `POST /api/test/batch` - 批量模型测试 ## 项目结构 ``` promptforge/ ├── src/ │ ├── app/ # Next.js App Router │ │ ├── auth/ # 用户认证页面 │ │ ├── templates/ # 模板管理页面 │ │ ├── editor/ # 模板编辑器 │ │ ├── playground/ # AI 测试台 │ │ ├── deploy/ # 部署中心 │ │ ├── settings/ # 设置页面 │ │ ├── profile/ # 个人资料页面 │ │ ├── docs/ # 文档页面 │ │ └── api/ # API 路由 │ ├── components/ # React 组件 │ │ ├── auth/ # 认证组件 │ │ ├── editor/ # 编辑器组件 │ │ ├── playground/ # 测试台组件 │ │ ├── deploy/ # 部署组件 │ │ └── layout/ # 布局组件 │ ├── contexts/ # React Context │ ├── lib/ # 工具函数和常量 │ ├── store/ # Zustand 状态管理 │ └── types/ # TypeScript 类型定义 ├── public/ # 静态资源 ├── prisma/ # 数据库模式 ├── scripts/ # 数据库脚本 └── docs/ # 文档 ``` ## 环境配置 ### 数据库配置 - **数据库类型**: MySQL - **云服务商**: 腾讯云 - **连接地址**: `gz-cynosdbmysql-grp-d26pzce5.sql.tencentcdb.com:24936` - **数据库名**: `pronode_db` - **用户名**: `root` ### 环境变量 ```env # 数据库配置 DATABASE_URL="mysql://root:!Rjb12191@gz-cynosdbmysql-grp-d26pzce5.sql.tencentcdb.com:24936/pronode_db?charset=utf8mb4" # Next.js 配置 NEXTAUTH_SECRET="your-secret-key-here" NEXTAUTH_URL="http://localhost:3000" # API 密钥配置 DEEPSEEK_API_KEY=your_deepseek_api_key_here OPENAI_API_KEY=your_openai_api_key_here ANTHROPIC_API_KEY=your_anthropic_api_key_here # 应用配置 NODE_ENV="development" ``` ## 部署信息 ### 访问地址 - **本地访问**:http://localhost:3000 - **公网访问**:http://101.43.95.130:3000 - **网络访问**:http://0.0.0.0:3000 ### 启动命令 ```bash # 开发模式 npm run dev # 生产模式 npm run build npm start # 使用 PM2 管理 pm2 start ecosystem.config.js ``` ### 数据库管理命令 ```bash # 生成 Prisma 客户端 npm run db:generate # 推送模式到数据库 npm run db:push # 创建迁移文件 npm run db:migrate # 打开 Prisma Studio npm run db:studio # 初始化示例数据 npm run db:seed ``` ## 古诗词模板特色功能 ### 模板1:古诗词创作与解读生成器 - **多种体裁**:支持五言绝句、七言绝句、五言律诗、七言律诗、词、古体诗 - **格律规范**:严格遵循传统诗词的格律要求 - **主题丰富**:支持各种主题,如春景、离别、思乡、咏史等 - **情感表达**:涵盖欢快、忧伤、豪放、婉约等多种情感基调 ### 模板2:古诗词查询与解析器 - **原文展示**:准确的诗词原文 - **详细注释**:字词解释、典故出处、历史背景 - **深度解读**:结构分析、意象解读、情感分析 - **专业赏析**:文学价值、风格特色、影响意义 ### 模板3:古诗词翻译与解析器 - **现代译文**:优美流畅的现代汉语翻译 - **保持意境**:在翻译中保持原诗的意境和美感 - **现代表达**:使用现代汉语表达习惯 - **通俗易懂**:让现代读者容易理解古典诗词的含义 ## 支持的 AI 模型 ### DeepSeek 模型 - `deepseek-coder`: 代码生成模型 - `deepseek-chat`: 通用对话模型 - `deepseek-vision`: 视觉模型 ### OpenAI 模型 - `gpt-4`: GPT-4 模型 - `gpt-4-turbo`: GPT-4 Turbo 模型 - `gpt-3.5-turbo`: GPT-3.5 Turbo 模型 ### Anthropic 模型 - `claude-3-opus`: Claude 3 Opus 模型 - `claude-3-sonnet`: Claude 3 Sonnet 模型 - `claude-3-haiku`: Claude 3 Haiku 模型 ## 项目亮点 ### 1. 完整的功能覆盖 - 从用户注册到模板部署的完整流程 - 涵盖提示词工程的所有核心需求 - 模块化设计,易于扩展和维护 ### 2. 现代化的技术栈 - 使用最新的前端技术 - 类型安全的 TypeScript - 响应式的 Tailwind CSS ### 3. 优秀的用户体验 - 直观的界面设计 - 流畅的交互体验 - 完善的错误处理 ### 4. 强大的 AI 集成 - 多平台 AI 模型支持 - 实时测试和比较 - 灵活的部署选项 ### 5. 企业级特性 - 完整的用户系统 - 安全的认证机制 - 可扩展的架构设计 ## 安全特性 ### 数据安全 - **密码加密**:bcryptjs 哈希加密 - **API 密钥保护**:密码模式显示 - **输入验证**:前后端双重验证 - **SQL 注入防护**:参数化查询 ### 访问控制 - **路由保护**:需要登录的页面保护 - **权限验证**:用户权限检查 - **会话管理**:安全的会话处理 - **CSRF 防护**:跨站请求伪造防护 ## 性能优化 ### 前端优化 - **代码分割**:按需加载组件 - **图片优化**:Next.js 图片优化 - **缓存策略**:浏览器缓存利用 - **懒加载**:组件和图片懒加载 ### 后端优化 - **数据库索引**:查询性能优化 - **连接池**:数据库连接管理 - **API 缓存**:响应缓存机制 - **错误处理**:优雅的错误处理 ## 文档资源 项目包含完整的文档体系: - **README.md** - 项目介绍和快速开始 - **INSTALLATION_GUIDE.md** - 详细安装指南 - **CORE_CONCEPTS.md** - 核心概念说明 - **DATABASE_SETUP.md** - 数据库设置指南 - **ENV_SETUP.md** - 环境配置说明 - **TEMPLATE_TUTORIAL.md** - 模板创建教程 - **USER_SYSTEM.md** - 用户系统说明 - **PLAYGROUND_FEATURES.md** - 测试台功能说明 - **DEPLOYMENT_FEATURES.md** - 部署功能说明 - **古诗词模板说明.md** - 古诗词模板详细说明 ## 总结 PromptForge 是一个功能完整、技术先进的 AI 提示词工程平台,适合提示词工程师、AI 应用开发者和内容创作者使用。项目代码结构清晰,功能模块化,具有良好的扩展性和维护性。 通过这个项目,用户可以: - 创建和管理高质量的提示词模板 - 测试和比较不同 AI 模型的性能 - 快速部署 AI 应用到各种平台 - 个性化配置和管理平台设置 PromptForge 为 AI 应用开发提供了一个强大而完整的工具平台,大大降低了高质量 AI 应用开发的门槛。 --- ## 新增模板功能 ### 求职指导模板 ⭐ 2025年1月27日新增 #### 模板信息 - **模板名称**:华为/荣耀客服求职指导专家 - **模板ID**:template_1758556833494_career_guidance - **分类**:客服 (customer-service) - **状态**:已导入数据库,公开可用 #### 核心功能 - **职位分析**:深入了解华为、荣耀等公司客服职位要求 - **简历优化**:针对性的简历改进建议 - **面试准备**:全面的面试准备策略和技巧 - **职业规划**:长期职业发展路径规划 - **行动建议**:具体可操作的实施步骤 #### 模板参数 - **company**:目标公司(华为、荣耀等) - **position**:目标职位(客服专员、高级客服等) - **background**:求职者背景 - **experience**:工作经验 - **education**:教育背景 - **skills**:现有技能(可选) - **weaknesses**:需要改进的方面(可选) - **timeline**:求职时间规划(可选) #### 使用场景 - 应届毕业生求职指导 - 转行人员职业规划 - 在职人员跳槽准备 - 职业咨询师工具 - 企业培训材料 #### 技术特性 - **兼容模型**:GPT-4、Claude-3-Opus、DeepSeek-Chat - **输出格式**:Markdown - **个性化**:根据求职者背景提供差异化建议 - **实用性**:提供具体可操作的建议和示例 --- **创建时间**:2025年1月27日 **项目路径**:/home/renjianbo/aiapply **版本**:v0.1.1 **状态**:功能完整,新增求职指导模板,可投入使用