【学习工作赛道】Prompt Trainer — AI 提示词迭代训练系统
标签
学习工作
一、Demo 简介
Prompt Trainer 是一个 AI 提示词迭代训练系统。
它把机器学习里的「训练集 / 验证集 / 指标评估 / 迭代优化 / 防退化验证」引入提示词工程,帮助用户不再靠感觉手调 Prompt,而是通过真实案例和量化指标,自动迭代出更稳定、更可复用的提示词版本。
1.1 这个 Demo 解决什么问题?
在真实业务中,很多团队都会遇到类似问题:
- 写了一条提示词,但不知道它到底准不准;
- 某些案例会误判,却不知道应该从哪里改;
- 改一版提示词后,可能修好了这一类问题,又把另一类案例改坏;
- 提示词优化过程依赖个人经验,难以复盘、难以沉淀、难以协作。
Prompt Trainer 试图把这个过程产品化:用户只需要维护案例,系统负责自动评估、分析误判、生成候选提示词、验证效果并保存最优版本。
1.2 面向用户
- 内容审核、直播话术合规、商品文案审核等需要高频判断规则的业务人员;
- 需要为内部 AI 应用持续优化 Prompt 的产品 / 运营 / 开发团队;
- 想把提示词工程从「玄学调参」变成「数据驱动优化」的 AI 应用开发者。
1.3 核心功能
-
案例驱动训练闭环
- 添加正负案例;
- 自动划分训练集 / 验证集;
- 批量执行提示词;
- 统计准确率、达标率、Precision、Recall、F1、误判样本;
- 分析误判原因;
- 生成候选提示词;
- 通过防退化验证后采纳新版本。
-
多场景模板支持
- 二分类判定;
- 图片审核;
- 文本改写;
- 多分类任务;
- 场景模板可在系统设置中维护。
-
三层配置体系
- 系统设置:全局默认模型、元提示词模板、场景模板;
- 项目设置:当前项目范围内覆盖系统默认配置;
- 训练任务配置:单次训练可继续覆盖项目配置。
-
内部提示词可配置化
系统内部用于驱动 LLM 的提示词模板不再写死在代码里,而是统一进入「系统设置」中管理,包括初轮生成模板、候选优化模板、LLM system prompt、各场景兜底模板等。 -
可部署、可复用的提示词版本管理
每次训练后会保存提示词版本、指标和训练过程。用户可以查看历史版本,也可以部署某个版本作为当前项目的可用提示词。
1.4 Demo 页面截图
二、Demo 创作思路
2.1 灵感来源
我做这个 Demo 的直接灵感来自日常使用 AI 时反复遇到的一个问题:Prompt 很重要,但 Prompt 的优化过程太像手工作坊。
尤其在内容审核、合规判定、客服质检、直播话术审核这类场景里,提示词不是写出来就能直接上线的。它需要不断测试:哪些违规内容漏判了?哪些正常内容被误伤了?是否因为规则描述不清?是否需要补充边界条件?
传统做法通常是:人手动挑几条案例、改一版提示词、再手动试几次。这种方式很难量化,也很难规模化。
2.2 想解决的问题
Prompt Trainer 想解决的是:让提示词优化从「拍脑袋改文案」变成「数据驱动的训练流程」。
具体包括:
-
让问题可见
系统会明确告诉用户当前提示词在训练集 / 验证集上的表现,包括准确率、召回率、F1、误判列表等。 -
让优化有方向
系统会把误判拆成 FP / FN 等类型,并结合案例备注和业务规则生成优化方向,而不是让用户自己凭感觉猜。 -
让改动可验证
每次候选提示词都需要在训练集和验证集上重新评估,避免只修复个别案例却导致整体退化。 -
让经验可沉淀
最终产出的不是一次性的聊天结果,而是带版本、带指标、带训练记录的提示词资产。
2.3 为什么适合用 TRAE 来做?
这个项目同时涉及产品设计、后端 API、训练算法、前端交互、系统配置、部署运维等多个模块。用传统方式推进会比较碎,但 TRAE Work 很适合把它拆成连续任务推进:
- 先梳理产品架构;
- 再实现核心训练闭环;
- 接着补齐 UI 和配置体系;
- 最后部署上线并生成运维文档。
整个过程中,我只需要持续描述业务目标、指出不合理的设计,TRAE Work 会负责生成代码、修改文件、执行验证、整理文档。这种协作方式非常适合「从想法到 Demo」的参赛场景。
三、Demo 体验地址
在线体验地址:http://101.43.1.40:8009/
API 文档地址:http://101.43.1.40:8009/docs
体验说明
- 系统已部署在独立服务器
/opt/prompt-trainer,使用独立 Python venv,不影响服务器原有项目; - 服务由 systemd 托管,端口为
8009; - 默认可使用 Mock 模式体验完整训练流程,不需要填写 API Key;
- 如果要体验真实 LLM 训练,可在系统设置 / 训练配置中填写 OpenAI 兼容 API 信息。
四、TRAE 实践过程
本项目使用 TRAE Work CN 完成。TRAE Work 没有传统 TRAE IDE 的 Session ID 展示方式,因此这里使用 TRAE Work 对话 ID + 对话截图 作为过程证明。下方对话 ID 与截图顺序一致。
4.1 开发过程总览
| 阶段 | 建设内容 | TRAE Work 的作用 |
|---|---|---|
| ① 创意与产品定位 | 明确「提示词训练系统」方向、用户痛点、功能边界 | 帮助把想法整理成可落地的产品方案 |
| ② 技术架构与规范 | FastAPI、SQLAlchemy、SQLite、原生 JS、瑞士风格 UI | 生成项目结构与开发规范,保证后续一致性 |
| ③ 数据模型与 API | 项目、案例、训练任务、训练轮次、提示词版本、系统设置 | 生成 ORM、Pydantic schema、REST API |
| ④ 训练闭环 | 评估器、误判分析、候选生成、验证集防退化、早停 | 实现 Demo 最核心的训练逻辑 |
| ⑤ 前端交互 | 项目管理、案例管理、训练监控、版本查看、系统设置 | 生成原生 JS 页面与组件样式 |
| ⑥ 配置体系 | 系统设置 → 项目设置 → 训练任务配置 | 重构硬编码提示词,改成全局可配置模板 |
| ⑦ 部署上线 | 服务器探查、独立目录部署、systemd 服务、部署脚本 | 完成服务器上线与后续快速更新脚本 |
4.2 关键对话与截图证明
步骤 1:创意提案与项目方向确定
在最初阶段,我通过 TRAE Work 将「提示词优化」这个模糊想法整理成一个可参赛的产品 Demo:它不是单纯的 Prompt 管理器,而是一个支持案例训练、误判分析和多轮迭代的提示词训练系统。
TRAE Work 对话 ID:
2021382229597227:54c4f3799902e4f9e9b2eef195be6937_6a3f9074e3479f9ec8cb1e75.6a3f9075d2c75ebbf2bd70c0.6a3f9074e3479f9ec8cb1e76:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/27 16:58:50)
步骤 2:产品架构与开发规范建立
第二步重点是把 Demo 从一个想法拆成可开发模块,包括项目管理、案例管理、训练任务、提示词版本、LLM 适配层、系统设置等。TRAE Work 帮助梳理出清晰的工程结构,并生成开发规范,避免后续功能越做越乱。
TRAE Work 对话 ID:
2021382229597227:68f272f822ef27a301422e837a2a9f9c_6a3f9074e3479f9ec8cb1e75.6a3f91b8d2c75ebbf2bd7106.6a3f91b8de2c02fc01f03614:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/27 17:30:29)
步骤 3:核心训练闭环实现
这是整个 Demo 最关键的阶段。TRAE Work 协助实现了完整训练链路:批量预测、指标评估、误判样本分析、候选提示词生成、候选验证、防退化判断、最优版本保存。这个阶段决定了 Demo 不只是界面展示,而是真的有可运行的核心逻辑。
TRAE Work 对话 ID:
2021382229597227:9ace8ccc7e61016c969dbacceea6951f_6a3f9074e3479f9ec8cb1e75.6a3f9e50d2c75ebbf2bd7272.6a3f9e508b044bb25be08c01:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/27 18:25:28)
步骤 4:前端界面与训练监控体验完善
训练系统如果只有后端逻辑,评委很难直观看到价值。因此我继续让 TRAE Work 完善前端体验:项目列表、案例表格、训练配置、实时训练事件流、提示词版本查看等,让用户能够完整体验「添加案例 → 启动训练 → 查看结果」的闭环。
TRAE Work 对话 ID:
2021382229597227:d6852697115d784c53087e50494d9137_6a3f9074e3479f9ec8cb1e75.6a4122d8dd5e1de49c9b5cba.6a4122d875da7aae22d7717a:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/28 21:44:40)
步骤 5:系统设置与配置体系重构
在开发过程中,我发现配置边界很容易混乱:哪些属于系统全局配置,哪些只影响当前项目,哪些是单次训练配置?于是我和 TRAE Work 一起重构出三层配置继承体系,并把系统内部提示词模板全部配置化,避免硬编码。
TRAE Work 对话 ID:
2021382229597227:0a63b26f0658724dd8d5eb9cbcd1338f_6a3f9074e3479f9ec8cb1e75.6a412cffdd5e1de49c9b5dd1.6a412cffff97669ce49c2a6e:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/28 23:26:06)
步骤 6:提示词去定制化优化
早期版本中,训练提示词会直接把案例内容拼进上下文,容易变成「碰到某个具体案例应该怎么做」,泛化能力不足。我明确提出这个问题后,TRAE Work 将训练提示词逻辑调整为提取案例分布、业务要点和误判模式摘要,让优化目标从「记住案例」变成「归纳原则」。
TRAE Work 对话 ID:
2021382229597227:f5a695c601b968d18c2d8f432b8a24e4_6a41ff862326e3e9a771e69a.6a4209432326e3e9a771e7ab.6a4209432326e3e9a771e7a9:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/29 13:57:23)
步骤 7:服务器部署与运维文档
最后阶段,TRAE Work 帮我完成服务器部署:探查服务器环境、选择独立部署目录、避开原有服务端口、生成 systemd 配置、编写一键部署更新脚本,并整理服务器运维手册。这样 Demo 不只是本地可运行,而是可以通过公网地址体验。
TRAE Work 对话 ID:
2021382229597227:fc42375a6ff15b46d9a104ea50495014_6a41ff862326e3e9a771e69a.6a421d342326e3e9a771eb08.6a421d342326e3e9a771eb06:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/29 15:22:28)
4.3 使用 TRAE Work 的心得
-
先立规范,再让 AI 写代码
我发现大型 Demo 不能一上来就让 AI 写功能,否则很容易出现目录混乱、风格不统一的问题。因此一开始先让 TRAE Work 生成开发规范和架构约束,后续开发效率明显更高。 -
AI 不只是写代码,更适合做全流程协作
这个项目从产品方案、后端、前端、配置重构到服务器部署,几乎每个环节都由 TRAE Work 协助完成。它更像一个能连续推进任务的工程助手,而不是单纯的代码补全工具。 -
人需要持续把控产品边界
过程中也出现过不合理设计,例如把「案例备注改写」误理解成系统配置能力、训练提示词过于定制化等。这些问题需要人来指出边界,AI 再快速重构修正。这个过程反而体现了人机协作的真实价值。 -
对话过程本身就是作品的一部分
这个 Demo 的价值不仅在最终页面,也在于它展示了一套用 TRAE Work 从想法到上线的完整路径:先定义问题,再拆解架构,再实现功能,最后部署和文档化。












