【学习工作赛道】Prompt Trainer — AI 提示词迭代训练系统

【学习工作赛道】Prompt Trainer — AI 提示词迭代训练系统

标签

学习工作


一、Demo 简介

Prompt Trainer 是一个 AI 提示词迭代训练系统。

它把机器学习里的「训练集 / 验证集 / 指标评估 / 迭代优化 / 防退化验证」引入提示词工程,帮助用户不再靠感觉手调 Prompt,而是通过真实案例和量化指标,自动迭代出更稳定、更可复用的提示词版本。

1.1 这个 Demo 解决什么问题?

在真实业务中,很多团队都会遇到类似问题:

  • 写了一条提示词,但不知道它到底准不准;
  • 某些案例会误判,却不知道应该从哪里改;
  • 改一版提示词后,可能修好了这一类问题,又把另一类案例改坏;
  • 提示词优化过程依赖个人经验,难以复盘、难以沉淀、难以协作。

Prompt Trainer 试图把这个过程产品化:用户只需要维护案例,系统负责自动评估、分析误判、生成候选提示词、验证效果并保存最优版本。

1.2 面向用户

  • 内容审核、直播话术合规、商品文案审核等需要高频判断规则的业务人员;
  • 需要为内部 AI 应用持续优化 Prompt 的产品 / 运营 / 开发团队;
  • 想把提示词工程从「玄学调参」变成「数据驱动优化」的 AI 应用开发者。

1.3 核心功能

  1. 案例驱动训练闭环

    • 添加正负案例;
    • 自动划分训练集 / 验证集;
    • 批量执行提示词;
    • 统计准确率、达标率、Precision、Recall、F1、误判样本;
    • 分析误判原因;
    • 生成候选提示词;
    • 通过防退化验证后采纳新版本。
  2. 多场景模板支持

    • 二分类判定;
    • 图片审核;
    • 文本改写;
    • 多分类任务;
    • 场景模板可在系统设置中维护。
  3. 三层配置体系

    • 系统设置:全局默认模型、元提示词模板、场景模板;
    • 项目设置:当前项目范围内覆盖系统默认配置;
    • 训练任务配置:单次训练可继续覆盖项目配置。
  4. 内部提示词可配置化
    系统内部用于驱动 LLM 的提示词模板不再写死在代码里,而是统一进入「系统设置」中管理,包括初轮生成模板、候选优化模板、LLM system prompt、各场景兜底模板等。

  5. 可部署、可复用的提示词版本管理
    每次训练后会保存提示词版本、指标和训练过程。用户可以查看历史版本,也可以部署某个版本作为当前项目的可用提示词。

1.4 Demo 页面截图







二、Demo 创作思路

2.1 灵感来源

我做这个 Demo 的直接灵感来自日常使用 AI 时反复遇到的一个问题:Prompt 很重要,但 Prompt 的优化过程太像手工作坊。

尤其在内容审核、合规判定、客服质检、直播话术审核这类场景里,提示词不是写出来就能直接上线的。它需要不断测试:哪些违规内容漏判了?哪些正常内容被误伤了?是否因为规则描述不清?是否需要补充边界条件?

传统做法通常是:人手动挑几条案例、改一版提示词、再手动试几次。这种方式很难量化,也很难规模化。

2.2 想解决的问题

Prompt Trainer 想解决的是:让提示词优化从「拍脑袋改文案」变成「数据驱动的训练流程」。

具体包括:

  1. 让问题可见
    系统会明确告诉用户当前提示词在训练集 / 验证集上的表现,包括准确率、召回率、F1、误判列表等。

  2. 让优化有方向
    系统会把误判拆成 FP / FN 等类型,并结合案例备注和业务规则生成优化方向,而不是让用户自己凭感觉猜。

  3. 让改动可验证
    每次候选提示词都需要在训练集和验证集上重新评估,避免只修复个别案例却导致整体退化。

  4. 让经验可沉淀
    最终产出的不是一次性的聊天结果,而是带版本、带指标、带训练记录的提示词资产。

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 的心得

  1. 先立规范,再让 AI 写代码
    我发现大型 Demo 不能一上来就让 AI 写功能,否则很容易出现目录混乱、风格不统一的问题。因此一开始先让 TRAE Work 生成开发规范和架构约束,后续开发效率明显更高。

  2. AI 不只是写代码,更适合做全流程协作
    这个项目从产品方案、后端、前端、配置重构到服务器部署,几乎每个环节都由 TRAE Work 协助完成。它更像一个能连续推进任务的工程助手,而不是单纯的代码补全工具。

  3. 人需要持续把控产品边界
    过程中也出现过不合理设计,例如把「案例备注改写」误理解成系统配置能力、训练提示词过于定制化等。这些问题需要人来指出边界,AI 再快速重构修正。这个过程反而体现了人机协作的真实价值。

  4. 对话过程本身就是作品的一部分
    这个 Demo 的价值不仅在最终页面,也在于它展示了一套用 TRAE Work 从想法到上线的完整路径:先定义问题,再拆解架构,再实现功能,最后部署和文档化。


五、报名帖链接

报名帖: 学习工作赛道 + AI 提示词迭代训练系统

哈哈终于有治那种“改好A类错漏转头崩了B类判断”的神器了,之前手调prompt调得我都快秃了。

:laughing: 懂得都懂,手调提示词的痛苦

初赛互助群-阿乐一百六:

  1. 第一印象
    想法第一感觉还不错,我仔细看了帖子,但是仔细想了想,感觉像伪需求。
  2. 一个疑问
    用户为什么要用这款产品?假设三种业务场景:
  • 开发者,开发者使用Agent编程时,提供的提示词,但需要用户先来你这里提一遍需求,然后这里给出提示词,且当前智能体多有项目级别和账户级别的两种记忆,会记录用户的偏好,提示词习惯,也就说返回的提示词往往会因为缺乏项目的实际情况和用户偏好。
  • 程序或者自建Agent的元提示词训练,依然会因为缺乏项目实际情况和训练数据丢失精度,那么由用户提供训练集的情况(你程序已经有的情况),那么用户已有数据集的情况,为什么不自行调用Agent或大模型训练呢?
  • 最后的情况,非程序员或程序相关的使用情况,例如文案设计或小说编写,市面可能有类似的产品或更优秀的产品,当前的产品在细分赛道感觉没有什么竞争力。
  1. 一个建议
    可以先有一个细分赛道的实例或优化,再考虑做通用提示词的,因为会想优化提示词的,多半自己会调用,要从不会的人下手,例如优化小说,文案评分,或者其他的特定的情况。