PromptX:开源多端适配型AI提示词管理工具

原创 发布日期:
74

一、PromptX 是什么

PromptX(Prompt Manager)是一款面向AI时代的轻量级开源提示词管理工具,核心聚焦AI工作流中的提示词资产管控,解决用户提示词存储混乱、版本无法追溯、跨设备同步困难、检索效率低等核心痛点。项目采用前后端分离的工程化架构,后端基于Python+FastAPI实现高效接口服务,前端通过React+TypeScript搭配Tailwind CSS打造现代化交互界面,底层依托MongoDB实现灵活的数据存储,同时支持Docker一键部署与本地开发双模式。该工具并非简单的提示词记事本,而是具备智能分类、版本追踪、快速检索、跨平台适配等专业能力的管理系统,适配个人开发者、AI创作爱好者、小型研发团队等不同用户群体的使用需求,能够有效提升AI提示词的管理效率与复用性,降低AI工作流中的试错成本。

与市面上的简易提示词记录工具不同,PromptX具备完整的工程化架构和专业的管理功能,既兼顾了极致的现代UI/UX设计,让用户获得流畅的操作体验,又实现了智能的版本管理与数据存储,保障提示词资产的安全性与可追溯性;同时支持本地开发调试和Docker一键部署,适配不同用户的使用场景,无论是个人开发者快速上手,还是小型团队内部部署使用,都能满足需求。简单来说,PromptX就是为AI用户打造的“提示词专属管家”,通过标准化的管理流程,让提示词从“零散存储”变为“系统化管理”,最终实现AI工作流效率的提升。

PromptX的核心设计理念可总结为三点:

  1. 轻量高效:无复杂的配置门槛,本地开发和部署流程简洁,运行资源占用低,兼顾操作效率与运行效率;

  2. 专业实用:聚焦提示词管理的核心需求,剔除冗余功能,让分类、检索、版本管理等核心能力做到极致;

  3. 开源可扩展:项目完全开源,代码结构清晰,工程化规范完善,支持用户根据自身需求进行二次开发与功能扩展。

PromptX:开源多端适配型AI提示词管理工具

二、功能特色

PromptX围绕提示词管理的核心痛点,打造了一系列贴合用户实际需求的功能,同时在产品体验和部署使用上做了针对性优化,其核心功能特色可总结为六大核心能力,并搭配两大使用优势,具体如下表所示:

类别 功能特色 具体说明
核心能力 智能分类管理 支持为提示词创建自定义分类、标签,可按场景、AI模型、使用用途等维度对提示词进行多层级分类,解决存储混乱问题
核心能力 版本追踪与管理 对提示词的每一次修改都进行版本记录,支持查看版本更新日志、回滚至历史版本,避免优质提示词版本丢失
核心能力 快速检索筛选 支持关键词检索提示词,可搭配分类、标签等条件进行精准筛选,毫秒级定位目标提示词,大幅提升检索效率
核心能力 现代化交互体验 前端采用Tailwind CSS打造响应式界面,适配电脑、平板等不同设备,操作流程简洁,支持提示词的增删改查一键操作
核心能力 安全的数据存储 底层基于MongoDB存储数据,支持本地数据库部署,提示词数据私有化存储,避免第三方平台的数据安全风险
核心能力 灵活的编辑功能 提供富文本编辑框,支持提示词的格式化编辑、分段保存,可为提示词添加备注、使用说明,提升复用性
使用优势 多部署模式支持 同时支持本地开发调试模式和Docker一键部署模式,无复杂的环境配置,新手也能快速上手
使用优势 开源免费可扩展 项目完全开源,代码遵循工程化规范,目录结构清晰,支持用户根据自身需求二次开发,添加个性化功能

除上述核心功能与优势外,PromptX还具备一些贴合实际使用的细节优化

  1. 环境变量配置:提供完善的环境变量示例文件,用户只需根据自身需求修改配置项,即可完成数据库、邮件服务等核心功能的配置,无需修改源码;

  2. API文档自动生成:后端基于FastAPI开发,启动后自动生成交互式API文档(Swagger UI),方便用户调试接口、进行二次开发;

  3. 工程化代码规范:前端配置ESLint、Prettier等代码检查工具,后端遵循Python PEP8编码规范,代码可读性高,便于社区贡献与维护;

  4. 测试数据脚本支持:提供专门的测试数据脚本,可快速创建、删除、填充测试数据,方便用户在不影响真实数据的情况下调试功能。

整体而言,PromptX的功能设计始终围绕“实用、高效、易用”三大原则,不追求华而不实的冗余功能,而是将提示词管理的核心需求做到极致,让不同技术水平的用户都能轻松上手。

PromptX:开源多端适配型AI提示词管理工具

三、技术细节

PromptX采用前后端分离的经典软件架构,将前端界面与后端服务完全解耦,既提升了项目的开发效率和可维护性,又方便了前后端的独立部署与扩展。项目的开发语言以TypeScript(前端)和Python(后端)为主,搭配主流的开源技术栈和工具,工程化规范完善,目录结构清晰,以下从整体架构、核心技术栈、目录结构、核心技术实现四个方面,对PromptX的技术细节进行详细解读。

3.1 整体架构

PromptX的整体架构分为前端层、后端层、数据存储层三层,各层级之间通过API接口进行数据交互,层级职责清晰,解耦性强,具体架构逻辑如下:

  1. 前端层:作为用户的交互入口,负责页面的渲染、用户操作的响应、数据的展示与提交,通过封装的API客户端与后端层进行HTTP请求交互,支持开发模式和生产模式两种运行状态;

  2. 后端层:作为项目的核心服务层,负责处理前端的所有请求,实现业务逻辑(如提示词的增删改查、版本管理、分类管理)、数据校验、身份认证、数据库交互等功能,对外提供标准化的RESTful API接口;

  3. 数据存储层:负责项目所有数据的持久化存储,包括提示词数据、用户数据、分类标签数据、版本记录数据等,底层采用MongoDB非关系型数据库,搭配Motor异步驱动实现高效的数据读写。

此外,项目还提供部署层支持,通过Docker Compose实现前后端、数据库、Nginx的容器化编排,一键完成整个项目的部署,无需手动配置各个组件的运行环境,降低部署门槛。

3.2 核心技术栈

PromptX的技术栈选择均为当前开源领域的主流成熟技术,兼顾了开发效率、运行性能和社区支持,不同层级的核心技术栈如下表所示,涵盖开发语言、框架、数据库、工具等多个维度:

技术层级 核心技术栈 技术选型优势
前端(Frontend) React 18、TypeScript、Vite React实现组件化开发,提升代码复用性;TypeScript提供静态类型检查,降低开发错误;Vite实现极速的热重载,提升开发效率
前端UI/状态管理 Tailwind CSS、Zustand Tailwind CSS实现快速的样式开发,支持响应式设计;Zustand轻量的状态管理工具,替代Redux,简化状态逻辑
后端(Backend) Python 3.10+、FastAPI Python语法简洁,开发效率高;FastAPI基于Starlette,性能优异,支持异步编程,自动生成API文档
数据存储 MongoDB、Motor MongoDB非关系型数据库,数据结构灵活,适配提示词的非结构化存储;Motor为MongoDB的Python异步驱动,与FastAPI的异步特性匹配
后端核心能力 JWT、Pydantic、SMTP JWT实现无状态的身份认证;Pydantic实现数据校验,保障接口数据安全性;SMTP实现邮件相关服务(如验证码、通知)
工程化工具 Docker、Docker Compose、Nginx、ESLint、Prettier Docker实现容器化部署,环境隔离;Nginx实现前端静态资源托管和反向代理;ESLint+Prettier规范代码格式,提升可维护性
依赖管理 Pip(后端)、Npm(前端) 均为对应语言的主流依赖管理工具,社区资源丰富,依赖安装与管理便捷

3.3 核心目录结构

PromptX的仓库目录结构清晰,按前后端分离的原则划分核心目录,辅助文件单独存放,便于开发者快速定位核心代码和配置文件,同时遵循“高内聚、低耦合”的工程化原则,核心目录结构及说明如下(剔除部分冗余的配置文件和资源文件):

PromptX/
├── backend/     # 后端服务核心目录(Python+FastAPI)
│  ├── app/     # 后端业务核心代码
│  │  ├── api/   # API路由定义,分模块管理接口
│  │  ├── core/   # 核心配置,如数据库连接、JWT配置、全局设置
│  │  ├── models/  # Pydantic数据模型,实现数据校验和类型定义
│  │  ├── db/    # 数据库操作,MongoDB连接与数据交互
│  │  ├── services/ # 业务逻辑层,实现提示词管理、版本管理等核心功能
│  │  ├── main.py  # 后端应用入口文件,启动FastAPI服务
│  ├── requirements.txt # 后端依赖清单
│  ├── .env.example # 后端环境变量示例文件
├── frontend/     # 前端应用核心目录(React+TypeScript+Vite)
│  ├── src/     # 前端源码目录
│  │  ├── components/ # 通用组件和页面组件
│  │  ├── store/  # Zustand状态管理目录
│  │  ├── api/   # API客户端,封装后端接口请求
│  │  ├── types/  # TypeScript类型定义文件
│  │  ├── App.tsx  # 前端根组件
│  │  ├── main.tsx # 前端应用入口文件
│  ├── package.json # 前端依赖与脚本配置
│  ├── vite.config.ts # Vite构建配置
├── promptx_imgs/   # 项目截图、资源图片目录
├── docker-compose.yml # Docker Compose编排配置文件
├── docker-compose.hub.yml # 基于Docker Hub镜像的编排配置
├── .gitignore    # Git忽略文件配置
├── README.md     # 项目官方说明文档

从目录结构可以看出,PromptX的代码组织非常规范,前后端核心代码各自独立,且内部按功能模块进一步拆分,例如后端的api/(路由)、services/(业务逻辑)、models/(数据模型)分离,前端的components/(组件)、store/(状态)、api/(接口)分离,这种结构不仅便于项目的日常维护,也为开发者的二次开发和功能扩展提供了便利。

3.4 核心技术实现

(1)后端接口与数据校验

后端基于FastAPI开发,采用路由分层的方式管理接口,将提示词管理、用户管理、分类管理等接口分模块定义,例如api/prompt.py专门处理提示词的增删改查、版本管理等请求。同时通过Pydantic数据模型对接口的请求参数和响应数据进行严格校验,例如定义PromptCreate模型,指定提示词名称、内容、分类、标签等字段的类型、是否必填、最大长度等规则,确保接口接收的数据符合预期,避免脏数据进入数据库。

FastAPI的异步特性与Motor(MongoDB异步驱动)完美匹配,后端所有的数据库操作均采用异步方式实现,提升了接口的并发处理能力,减少了请求等待时间。此外,FastAPI会根据路由和数据模型自动生成交互式API文档,启动后端服务后,访问http://localhost:8000/docs即可打开Swagger UI文档,支持在线调试接口、查看接口参数和响应格式,极大提升了开发和调试效率。

(2)前端状态管理与交互

前端采用React 18的函数式组件+Hooks开发模式,搭配Zustand实现轻量的状态管理。与传统的Redux相比,Zustand无需编写繁琐的reducer和action,只需定义一个存储对象即可实现状态的全局共享和修改,简化了前端的状态管理逻辑,适合PromptX这类轻量级项目。

前端通过Axios封装API客户端,将后端的所有接口封装为可调用的函数,统一处理请求头、请求拦截、响应拦截和错误处理,例如在请求拦截中添加身份认证token,在响应拦截中统一处理接口返回的错误信息,提升了代码的复用性和可维护性。同时,前端使用Tailwind CSS实现样式开发,无需编写自定义CSS样式,通过原子化的CSS类名快速实现页面布局和样式调整,且支持响应式设计,让页面在不同尺寸的设备上都能正常显示。

(3)版本管理功能实现

版本追踪是PromptX的核心功能之一,其实现逻辑为:当用户修改并保存提示词时,后端会先将当前的提示词数据(包括内容、分类、标签、修改时间等)作为历史版本存储到数据库的版本集合中,同时记录版本号、修改人、修改日志等信息,再更新主提示词集合中的数据。当用户需要查看历史版本时,后端根据提示词的唯一ID从版本集合中查询所有历史记录并返回给前端;当用户需要回滚版本时,后端将指定版本的提示词数据覆盖主提示词集合中的当前数据,并生成新的版本记录,确保每一次操作都有迹可循。

(4)Docker容器化部署

PromptX提供了完善的Docker Compose配置文件,将前端、后端、MongoDB、Nginx四个服务封装为独立的容器,通过Docker Compose实现容器的编排和启动。其中,Nginx容器负责前端静态资源的托管后端接口的反向代理,将前端的请求转发到后端服务,实现前后端的统一访问;MongoDB容器作为数据存储服务,挂载本地目录实现数据的持久化;前端和后端容器均基于官方基础镜像构建,确保运行环境的一致性。用户只需安装Docker和Docker Compose,修改对应的环境变量配置,执行一条命令即可启动整个项目,无需手动配置Python、Node.js、MongoDB等运行环境,大幅降低了部署门槛。

PromptX:开源多端适配型AI提示词管理工具

四、应用场景

PromptX作为一款通用的开源提示词管理工具,核心适配所有使用AI大模型的用户群体,其功能设计贴合不同场景下的提示词管理需求,无论是个人日常使用,还是小型团队内部协作,都能发挥重要作用。结合用户的使用需求和AI的主流应用场景,PromptX的核心应用场景可总结为以下五类,覆盖个人创作、研发、工作、学习等多个维度:

4.1 个人AI创作爱好者的提示词管理

对于AI绘画、文案创作、小说写作等个人AI创作爱好者而言,通常会针对不同的创作场景设计大量定制化提示词,例如AI绘画的风格提示词、角色提示词、场景提示词,文案创作的产品推广提示词、朋友圈文案提示词等。这类用户的痛点是提示词数量多、场景杂,零散存储后难以查找和复用。

PromptX可帮助这类用户按创作场景对提示词进行分类管理,例如创建“AI绘画-二次元”“AI文案-产品推广”“AI写作-小说开头”等分类,为每个提示词添加标签(如“Midjourney”“ChatGPT”“文心一言”),同时通过版本管理功能记录提示词的修改过程,避免因多次调整丢失优质的创作提示词。此外,快速检索功能可让用户通过关键词快速定位目标提示词,大幅提升创作效率。

4.2 个人开发者的AI开发提示词管理

对于从事AI开发的个人开发者而言,在调试大模型接口、开发AI应用时,需要编写大量的测试提示词、功能提示词,例如针对大模型的函数调用提示词、数据格式化提示词、错误处理提示词等。这类用户不仅需要管理提示词,还需要追溯提示词的修改历史,因为不同的提示词表述会直接影响大模型的输出结果,优质的提示词是开发的重要资产。

PromptX的版本追踪、富文本编辑、API调试适配等功能可完美适配这类用户的需求:开发者可将提示词按开发功能分类,为提示词添加备注说明(如“适用于GPT-4o函数调用”“需搭配参数temperature=0.7”),通过版本管理记录提示词的调试过程,同时结合后端的API文档,快速将调试后的提示词集成到AI应用中,提升开发效率。

4.3 新媒体运营者的AI内容生产提示词管理

新媒体运营者的日常工作中,会大量使用AI生成推文、短视频脚本、标题、评论等内容,需要针对不同的平台(如抖音、小红书、微信公众号)和不同的内容类型(如美食、美妆、职场)设计不同的提示词。这类用户的痛点是跨平台使用提示词时,需要在不同设备间切换,手动复制粘贴提示词,效率低下。

PromptX支持本地部署和跨设备访问(通过局域网或公网部署),新媒体运营者可在电脑上编辑和管理提示词,在手机、平板等设备上通过浏览器访问PromptX,直接复制使用提示词,无需手动同步;同时可按平台、内容类型对提示词进行分类,通过关键词检索快速找到目标提示词,提升AI内容生产的效率。

4.4 教育工作者的AI教学辅助提示词管理

教育工作者可利用AI生成教案、课件、练习题、作业评语等教学内容,需要针对不同的学科、年级、教学场景设计定制化提示词。这类用户对提示词的准确性和复用性要求较高,例如针对小学三年级数学的练习题生成提示词,需要长期复用并根据教学进度进行微调。

PromptX的版本管理和备注功能可满足这类用户的需求:教育工作者可将提示词按学科、年级分类,为提示词添加备注(如“适用于三年级数学两位数乘法练习题”“生成10道基础题+5道拓展题”),通过版本管理记录提示词的微调过程,确保提示词的准确性;同时,快速检索功能可让教育工作者在课堂上快速找到所需的提示词,利用AI快速生成教学内容,提升教学辅助效率。

4.5 小型研发团队的内部提示词资产管理

对于小型AI研发团队、创业团队而言,团队成员在协作开发AI项目时,会积累大量的团队专属提示词,这些提示词是团队的重要资产,需要进行统一管理和共享,避免因团队成员离职导致提示词资产丢失。

PromptX支持本地/内网Docker部署,团队可将PromptX部署在公司的内网服务器上,实现团队内部的提示词共享和统一管理;团队成员可按项目、功能模块对提示词进行分类,为提示词添加标签和备注,通过版本管理记录团队成员的修改过程,确保提示词资产的安全性和可复用性;同时,项目的开源特性支持团队根据自身需求进行二次开发,添加团队专属的功能(如成员权限管理、提示词审核流程),适配团队的协作需求。

五、使用方法

PromptX支持本地开发模式Docker一键部署模式两种使用方式,其中本地开发模式适合开发者进行二次开发、调试功能,Docker部署模式适合普通用户快速上手使用,无需配置复杂的开发环境。以下将分别详细介绍两种方式的使用步骤,步骤均经过简化,通俗易懂,适合不同技术水平的用户,同时介绍PromptX的基础操作方法(增删改查、分类、版本管理)。

5.1 前置准备

无论采用哪种使用方式,都需要先完成以下前置准备:

  1. 拥有一台安装了Windows/macOS/Linux系统的电脑,确保电脑联网;

  2. 从GitHub克隆PromptX项目仓库到本地,克隆命令:git clone https://github.com/lwh8915/PromptX.git

  3. 进入项目根目录:cd PromptX

5.2 方式一:Docker一键部署(推荐普通用户使用)

Docker部署模式是PromptX的推荐使用方式,无需安装Python、Node.js、MongoDB等运行环境,只需安装Docker和Docker Compose,修改简单的配置项,即可一键启动整个项目,步骤如下:

步骤1:安装Docker和Docker Compose

根据自己的电脑系统,参考Docker官方文档安装Docker Desktop(Windows/macOS)或Docker Engine(Linux),Docker Desktop已内置Docker Compose,无需单独安装;Linux系统需额外参考Docker Compose官方文档安装。

安装完成后,启动Docker,打开终端执行docker --versiondocker compose --version,若能显示版本号,说明安装成功。

步骤2:配置环境变量

  1. 进入后端目录,复制环境变量示例文件为正式环境变量文件:

  cd backend
  cp .env.example .env
  1. 打开.env文件,只需修改MongoDB连接配置(其他配置可保持默认,后续使用时再调整):

  # MongoDB连接串,保持默认即可,因为Docker Compose会启动MongoDB容器
  MONGODB_URI=mongodb://mongo:27017/promptx
  # 数据库名称
  MONGODB_DB_NAME=promptx

其他配置项如JWT密钥、SMTP邮件配置,若只是本地使用,可保持默认值。

步骤3:启动Docker容器

  1. 回到项目根目录:cd ..

  2. 执行Docker Compose启动命令,后台运行所有服务:

  docker compose up -d
  1. 执行完成后,执行docker compose ps查看容器运行状态,若所有服务的状态均为up,说明启动成功。

步骤4:访问PromptX

启动成功后,打开浏览器,访问http://localhost即可进入PromptX的前端界面,开始使用提示词管理功能。

步骤5:停止Docker容器

若需要停止使用,回到项目根目录,执行以下命令即可停止所有容器:

docker compose down

若需要删除容器和数据卷(谨慎操作,会丢失所有提示词数据),执行:

docker compose down -v

5.3 方式二:本地开发模式(适合开发者/二次开发)

本地开发模式需要分别配置前端和后端的开发环境,适合需要对PromptX进行二次开发、调试功能的开发者,步骤如下:

5.3.1 后端环境配置与启动

步骤1:安装Python 3.10+

PromptX的后端要求Python版本为3.10及以上,参考Python官方文档安装对应版本的Python,安装完成后执行python --version验证。

步骤2:创建并激活虚拟环境

推荐使用Conda或venv创建虚拟环境,避免依赖冲突,以Conda为例:

# 进入后端目录
cd backend
# 创建名为promptx的虚拟环境,Python版本为3.10
conda create -n promptx python=3.10 -y
# 激活虚拟环境
conda activate promptx

若使用venv,命令如下:

python -m venv venv
# Windows激活
venv\Scripts\activate
# macOS/Linux激活
source venv/bin/activate
步骤3:安装后端依赖
pip install -r requirements.txt
步骤4:配置环境变量

同Docker部署模式,复制环境变量示例文件并修改MongoDB连接配置:

cp .env.example .env

注意:本地开发模式需要手动安装并启动MongoDB,因此需要将MONGODB_URI修改为本地MongoDB的连接串,例如:

MONGODB_URI=mongodb://localhost:27017/promptx
步骤5:启动后端服务

执行以下命令启动FastAPI服务,开启热重载(修改代码后自动重启服务):

uvicorn app.main:app --reload

启动成功后,后端服务运行在http://localhost:8000,访问http://localhost:8000/docs可打开API文档。

5.3.2 前端环境配置与启动

步骤1:安装Node.js与Npm

前端需要安装Node.js(推荐16.x及以上版本),参考Node.js官方文档安装,Npm会随Node.js一起安装,安装完成后执行node --versionnpm --version验证。

步骤2:进入前端目录并安装依赖
# 回到项目根目录,进入前端目录
cd ../frontend
# 安装前端依赖
npm install
步骤3:启动前端开发服务
npm run dev

启动成功后,前端服务运行在http://localhost:5173,打开浏览器访问该地址即可进入前端界面,前端会自动代理后端接口请求,无需额外配置跨域。

5.3.3 本地开发模式的停止

  1. 前端:在终端中按下Ctrl+C即可停止前端开发服务;

  2. 后端:在终端中按下Ctrl+C即可停止后端服务,同时执行conda deactivate(Conda)退出虚拟环境。

5.4 PromptX 基础操作方法

无论采用哪种方式启动PromptX,进入前端界面后,其基础操作流程简洁易懂,核心操作包括创建分类、添加提示词、编辑提示词、查看版本、检索提示词,以下介绍核心操作步骤:

  1. 创建分类:点击左侧菜单栏的“分类管理”,点击“新建分类”,输入分类名称(如“AI绘画-Midjourney”)和分类描述,点击“保存”即可创建自定义分类;

  2. 添加提示词:点击左侧菜单栏的“提示词管理”,点击“新建提示词”,依次输入提示词名称、选择所属分类、添加标签、编辑提示词内容,可在备注栏添加使用说明,点击“保存”即可完成提示词添加;

  3. 编辑提示词:在提示词列表中找到目标提示词,点击“编辑”按钮,修改对应的内容后点击“保存”,系统会自动生成新的版本记录;

  4. 查看/回滚版本:在提示词详情页,点击“版本历史”标签,即可查看该提示词的所有历史版本,包括版本号、修改时间、修改内容,点击“回滚”按钮即可将提示词恢复到指定版本;

  5. 检索提示词:在顶部的搜索框中输入关键词,系统会实时筛选出包含该关键词的提示词,也可结合左侧的分类、标签进行精准筛选;

  6. 删除提示词/分类:在提示词列表或分类列表中,找到目标对象,点击“删除”按钮,确认后即可删除(删除提示词会同时删除其所有历史版本,谨慎操作)。

PromptX:开源多端适配型AI提示词管理工具

六、常见问题解答

Q1:Docker Compose启动后,访问http://localhost无法打开前端界面?

解决方案

  1. 首先执行docker compose ps查看所有容器的运行状态,若存在状态为exited的容器,说明容器启动失败,执行docker compose logs 容器名查看容器日志,定位失败原因;

  2. 若Nginx容器启动失败,检查项目根目录下的Nginx配置文件是否存在损坏,可重新从仓库克隆项目;

  3. 若前端容器启动失败,检查前端的依赖是否安装正常,可执行docker compose build frontend重新构建前端镜像;

  4. 若所有容器均正常运行,检查浏览器是否缓存了旧页面,可清除浏览器缓存或使用无痕模式访问;

  5. 确认电脑的80端口未被其他程序占用,若80端口被占用,可修改docker-compose.yml中的Nginx端口映射,例如将80:80改为8080:80,然后重新启动容器,访问http://localhost:8080

Q2:本地开发模式下,前端访问时提示“跨域请求被阻止”?

解决方案
PromptX的前端Vite配置中已默认配置了跨域代理,无需手动配置,出现该问题的原因通常是前端启动地址与代理配置不一致,解决方案:

  1. 确认后端服务正常运行在http://localhost:8000

  2. 检查前端目录下的vite.config.ts文件,代理配置是否为:

  proxy: {
   '/api': {
    target: 'http://localhost:8000',
    changeOrigin: true,
    rewrite: (path) => path.replace(/^\/api/, ''),
   },
  }
  1. 若配置正确,重启前端开发服务即可解决。

Q3:使用过程中,提示词的修改无法保存,报“数据库连接失败”错误?

解决方案
该问题的核心原因是后端无法连接到MongoDB数据库,分两种场景解决:

  1. Docker部署模式:检查docker-compose.yml中的MongoDB服务配置是否正常,执行docker compose restart mongo重启MongoDB容器,同时检查后端的.env文件中MONGODB_URI是否为mongodb://mongo:27017/promptx(mongo为Docker容器名,不能修改为localhost);

  2. 本地开发模式:检查本地MongoDB是否正常启动,执行mongo --version验证MongoDB是否安装,执行netstat -an | grep 27017(macOS/Linux)或netstat -ano | findstr "27017"(Windows)检查27017端口是否被占用,同时检查后端的.env文件中MONGODB_URI是否为本地MongoDB的正确连接串。

Q4:Docker部署后,重启电脑后提示词数据丢失?

解决方案
出现该问题的原因是未为MongoDB容器配置数据卷持久化,PromptX的官方docker-compose.yml已默认配置数据卷,若数据丢失,可能是执行了docker compose down -v命令(删除了数据卷),解决方案:

  1. 避免执行docker compose down -v命令,停止容器时只需执行docker compose down

  2. 若需要重新构建容器,先执行docker compose cp mongo:/data/db ./mongo-data将MongoDB的数据复制到本地,构建完成后再将数据复制回容器;

  3. 检查docker-compose.yml中的MongoDB服务是否配置了volumes:

  mongo:
   image: mongo:latest
   volumes:
    - mongo-data:/data/db
   ports:
    - "27017:27017"
  volumes:
   - mongo-data:

若未配置,添加后重新启动容器。

Q5:本地开发模式下,安装后端依赖时出现“pip安装失败”?

解决方案

  1. 检查Python版本是否为3.10及以上,PromptX的后端依赖不支持低版本Python;

  2. 检查网络是否正常,可切换国内PyPI镜像源安装依赖:

  pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 若为Linux系统,可能缺少系统依赖,执行sudo apt-get install gcc python3-dev(Ubuntu/Debian)或yum install gcc python3-devel(CentOS)安装后再尝试。

Q6:能否将PromptX部署在公网服务器上供多人使用?

解决方案
可以,但需要进行以下配置,确保安全性和可访问性:

  1. 购买一台公网服务器(如阿里云、腾讯云),安装Docker和Docker Compose;

  2. 将项目克隆到服务器上,按Docker部署模式配置,修改后端的.env文件,设置复杂的JWT密钥,开启身份认证;

  3. 修改docker-compose.yml中的Nginx端口映射,保持80端口即可;

  4. 在服务器的安全组中开放80端口(HTTP)和27017端口(仅调试用,生产环境建议关闭);

  5. 若需要使用HTTPS,可在Nginx中配置SSL证书,将80端口重定向到443端口;

  6. 生产环境中,建议修改MongoDB的默认端口和密码,提升数据库安全性。

Q7:PromptX是否支持多用户和权限管理?

解决方案
目前PromptX的官方版本暂未实现多用户和权限管理功能,仅支持单用户使用。但由于项目是开源的,开发者可根据自身需求进行二次开发,在后端添加用户注册、登录、权限管理模块,在前端添加对应的用户管理界面,实现多用户和精细化的权限控制(如管理员、普通用户、只读用户)。

Q8:二次开发时,如何添加新的功能模块?

解决方案
PromptX的代码结构清晰,工程化规范完善,二次开发的核心步骤为:

  1. 后端:在backend/app/api/中添加新的路由文件,在backend/app/services/中添加对应的业务逻辑,在backend/app/models/中添加数据模型,最后在backend/app/main.py中注册新的路由;

  2. 前端:在frontend/src/components/中添加新的组件,在frontend/src/api/中封装新的接口函数,在frontend/src/store/中添加对应的状态管理,在frontend/src/App.tsx中添加新的路由;

  3. 开发完成后,本地调试通过,可执行docker compose build重新构建Docker镜像,实现新功能的部署。

PromptX:开源多端适配型AI提示词管理工具

七、相关链接

八、总结

PromptX是一款面向AI时代的轻量级开源提示词管理工具,聚焦于解决AI工作流中提示词存储混乱、版本无法追溯、检索效率低、跨设备同步不便等核心痛点,通过智能分类、版本追踪、快速检索、现代化交互等专业功能,实现了提示词资产的系统化管理,让提示词从“零散存储”变为“可管、可查、可追溯、可复用”。该项目采用前后端分离的工程化架构,后端基于Python+FastAPI实现高效的接口服务和业务逻辑,前端通过React+TypeScript+Tailwind CSS打造流畅的现代化交互界面,底层依托MongoDB实现灵活的数据存储,同时支持Docker一键部署和本地开发双模式,既降低了普通用户的使用门槛,又为开发者的二次开发和功能扩展提供了便利。PromptX的功能设计贴合个人AI创作爱好者、个人开发者、新媒体运营者、教育工作者、小型研发团队等不同用户群体的使用需求,能够有效提升AI提示词的管理效率与复用性,降低AI工作流中的试错成本,是AI用户提升工作效率的优质开源工具。同时,PromptX作为一款完全开源的项目,代码结构清晰、工程化规范完善,具备良好的可扩展性,欢迎广大开发者参与项目的开源维护和二次开发,共同丰富工具的功能,让其更好地服务于AI生态。

打赏
THE END
作者头像
dotaai
正在和我的聊天机器人谈恋爱,它很会捧场。