Skip to content

Latest commit

 

History

History
280 lines (188 loc) · 7.51 KB

File metadata and controls

280 lines (188 loc) · 7.51 KB

Prompt Booster

Prompt Booster

English 在线体验

一个用于优化和增强多平台大型语言模型(LLMs)提示词的综合性单体仓库项目。

概述

Prompt Booster是一款专为帮助用户优化大型语言模型提示词而设计的专业工具。它利用多个AI提供商,实现跨平台的提示词优化、版本控制、A/B测试和模板管理。

该项目采用单体仓库架构,使用Turborepo和PNPM工作区,组织为包含共享代码的packages和特定平台应用的apps。

项目结构

prompt-booster/
├── apps/                      # 特定平台实现
│   ├── web/                   # Web应用(包含核心业务逻辑和UI组件)
│   │   └── src/
│   │       ├── core/          # 核心业务逻辑(提示词管理、模型配置、状态管理)
│   │       ├── components/    # UI组件
│   │       └── hooks/         # 自定义React Hooks
│   └── desktop/               # Electron桌面应用
├── packages/                  # 共享包
│   └── api/                   # 针对LLM提供商的API客户端实现
├── backend/                   # FastAPI后端服务(计划中)
├── docs/                      # 项目文档
├── docker/                    # Docker配置文件
│   ├── frontend.Dockerfile    # 前端容器构建文件
│   └── nginx.conf             # Nginx配置
└── docker-compose.yml         # Docker compose配置

核心功能

Web应用核心模块

Web应用包含完整的核心业务逻辑(位于apps/web/src/core),提供:

  • 模型配置管理
  • 带版本控制的提示词管理
  • 用于提示词优化的模板系统
  • 使用Zustand进行状态管理
  • 存储实用工具

查看Web应用文档

@prompt-booster/api

一个用于与各种LLM服务交互的灵活客户端库:

  • 多个LLM提供商的统一接口
  • 支持OpenAI、Gemini、DeepSeek、Hunyuan、Siliconflow和Ollama
  • 流式响应处理
  • 错误管理
  • 认证策略

查看API包文档

应用

Web应用

基于浏览器的提示词优化应用:

  • 提示词增强和迭代
  • 质量分析
  • A/B测试
  • 版本历史管理
  • 模型配置

查看Web应用文档

桌面应用

使用Electron的原生桌面体验:

  • 跨平台支持(Windows、macOS、Linux)
  • 原生操作系统菜单和键盘快捷键
  • 离线功能
  • 与Web版本一致的UI

重要说明:桌面应用被有意设计为完全独立于主项目结构的包。与单体仓库中使用pnpm的其他包不同,由于pnpm与Electron Builder之间的兼容性问题,桌面包专门使用npm进行依赖管理。桌面客户端虽然使用编译后的web应用,但维护着自己的构建过程和依赖树。有关详细的编译和开发说明,请参阅桌面应用文档

查看桌面应用文档

设置和开发

先决条件

  • Node.js 18.17.0或更高版本
  • PNPM 10.9.0或更高版本

安装

  1. 安装 Node.js:

    • Node.js 官网 下载并安装 Node.js 18.17.0 或更高版本
    • 在终端运行 node -vnpm -v 命令验证安装是否成功
  2. 安装 pnpm:

    # 使用 npm 安装
    npm install -g pnpm
    
    # 或使用推荐的独立脚本安装
    curl -fsSL https://get.pnpm.io/install.sh | sh -
    
    # 验证安装
    pnpm --version
  3. 克隆仓库:

    git clone https://github.com/hexart/prompt-booster.git
    cd prompt-booster
  4. 安装依赖:

    pnpm install

开发工作流

启动Web应用的开发服务器:

# 构建包并以开发模式启动Web应用
pnpm dev

以开发模式运行桌面应用:

# 以开发模式启动桌面应用
cd apps/desktop
npm install
npm run dev

构建所有包和应用:

# 构建所有包和应用
pnpm build

清理项目:

# 清理构建产物
pnpm clean

# 深度清理(包括node_modules)
pnpm clean:all

桌面应用构建

为不同平台构建桌面应用包:

cd apps/desktop
# 为所有平台打包
npm run build

# 为macOS打包
npm run build:mac

部署

Docker部署

使用自动更新快速启动

使用以下命令拉取最新镜像并在容器中运行Prompt Booster。每次运行此命令时将自动更新到最新版本:

docker pull ghcr.io/hexart/prompt-booster:latest \
&& docker rm -f prompt-booster 2>/dev/null || true \
&& docker run -d \
    --name prompt-booster \
    --restart always \
    -p 8080:80 \
    ghcr.io/hexart/prompt-booster:latest

此命令:

  • 从GitHub容器注册表拉取最新镜像
  • 移除任何名为"prompt-booster"的现有容器
  • 创建一个具有自动重启策略的新容器
  • 将主机上的8080端口映射到容器中的80端口

使用Docker Compose

项目还包括用于更高级部署的Docker Compose配置:

  1. 构建并启动容器:

    docker-compose up -d

    这将:

    • 使用docker/frontend.Dockerfile构建前端容器
    • 使用docker/nginx.conf配置Nginx
    • 启动docker-compose.yml中定义的服务
  2. http://localhost:8080访问应用

手动部署

对于Web应用的手动部署:

  1. 构建项目:

    pnpm build
  2. 构建文件将位于apps/web/dist

  3. 将这些文件部署到任何静态Web服务器

当前开发状态

该项目目前正在积极开发中。根据开发路线图:

  • 第1阶段(基础)和第2阶段(高级功能和桌面版)已完成
  • 第3阶段(增强功能)目前正在进行中
  • 第4-7阶段(后端和同步、移动端、微信小程序、完善和发布)计划在未来开发

项目文档

提供额外文档:

技术栈

  • 语言:TypeScript、Python(后端)
  • 前端:React 19.1、TailwindCSS 4.1
  • 状态管理:Zustand 5.0
  • 构建工具:Vite、Turborepo、PNPM
  • 桌面:Electron 37
  • 后端(计划):FastAPI、PostgreSQL
  • 容器化:Docker

贡献

欢迎贡献!请参阅我们的贡献指南获取如何为此项目贡献代码的详细说明。

请遵循贡献指南中概述的现有代码风格和开发指导原则。

致谢

本项目的开发过程中受到了 linshenkx 开发的 prompt-optimizer 项目的启发和参考。我们在此对linshenkx在提示词工程和优化领域的开创性工作表示衷心的感谢。他们在MIT许可下的开源贡献对Prompt Booster的开发起到了重要的促进作用。我们强烈推荐大家查看他们的原始项目。

许可证

本项目采用MIT许可证和Apache许可证2.0的双重许可,您可以选择使用其中任一许可。

© Hexart Studio 2026