Skip to content

Prompt 管理

Prompt 管理页面用于管理系统的 AI 提示词模板。通过该页面可以查看、新增、编辑和恢复 Prompt,优化面试训练效果。Prompt 是 CueMate 与大语言模型交互的核心,定义了 AI 的行为和响应方式。

1. 进入 Prompt 管理

1.1 打开 Prompt 管理页面

顶部下拉列表菜单

点击顶部下拉列表菜单中的"Prompt 管理",进入 Prompt 管理页面。

进入 Prompt 管理页面

2. 查看 Prompt 列表

2.1 列表字段说明

Prompt 列表以表格形式展示,包含以下字段:

Prompt 列表

序号:

  • 当前页中的序号
  • 自动计算,从 1 开始递增

ID:

  • Prompt 的唯一标识符
  • 以蓝色等宽字体显示
  • 通常使用驼峰命名法
  • 示例:InitPrompt、AnswerPrompt、ResumeOptimizationPrompt

描述:

  • Prompt 的简要说明
  • 描述该 Prompt 的用途和功能
  • 帮助快速了解 Prompt 的作用

来源:

  • 标识 Prompt 的使用场景
  • 用不同颜色的标签显示:
    • Desktop:紫色标签,表示桌面客户端使用的 Prompt
    • Web:绿色标签,表示 Web 端使用的 Prompt

变量:

  • 显示 Prompt 中使用的模板变量
  • 以灰色背景的等宽字体显示
  • 示例:jobPosition.title、resume.content
  • 这些变量在运行时会被实际值替换

操作:

  • 编辑:打开编辑侧拉弹框修改 Prompt 内容
  • 恢复:查看和恢复 Prompt 的历史版本
  • 删除:删除该 Prompt(当前禁用,系统 Prompt 不可删除)

2.2 分页功能

列表底部提供分页控件:

功能说明:

  • 显示当前页码和总页数
  • 显示总记录数
  • 每页显示数量可选:10、20、50、100 条
  • 切换页码查看更多 Prompt

3. 筛选 Prompt

3.1 来源筛选

使用"来源"下拉框筛选不同来源的 Prompt。

筛选来源

筛选选项:

  • 全部:显示所有 Prompt
  • Desktop:仅显示桌面客户端使用的 Prompt
  • Web:仅显示 Web 端使用的 Prompt

使用场景:

  • 查看特定平台的 Prompt
  • 优化特定场景的提示词
  • 分析不同平台的 Prompt 配置

4. 新增 Prompt

4.1 打开新增侧拉弹框

点击页面右上角的"新增"按钮,打开新增 Prompt 侧拉弹框。

新增 Prompt

弹框特性:

  • 右侧侧拉弹框
  • 提供完整的 Prompt 配置表单
  • 支持模板变量定义

4.2 填写 Prompt 信息

Prompt ID(必填):

  • 输入 Prompt 的唯一标识符
  • 必须唯一,不能与现有 Prompt 重复
  • 建议使用驼峰命名法
  • 示例:InitPrompt、AnswerPrompt、CustomPrompt
  • 以等宽字体显示

描述(选填):

  • 简要描述这个 Prompt 的用途
  • 帮助其他用户理解 Prompt 的功能
  • 示例:"用于初始化面试对话"、"生成答案要点"

来源(必填):

  • 选择 Prompt 的使用场景
  • Desktop:桌面客户端使用
  • Web:Web 端使用

Prompt 内容(必填):

  • 输入 Prompt 的实际内容
  • 支持最多 10,000 字符
  • 显示字符计数
  • 以等宽字体显示,便于编辑
  • 支持多行文本
  • 可以包含模板变量

4.3 模板变量使用

变量格式:

  • 使用 ${variableName} 格式定义变量
  • 示例:${jobPosition.title}${resume.content}
  • 变量在运行时会被实际值替换

变量使用说明:

  • 使用 ${variableName} 格式定义变量
  • 例如:${jobPosition.title}${resume.content}
  • 保存后变量会自动被识别和保护

常用变量示例:

  • ${jobPosition.title} - 岗位标题
  • ${jobPosition.description} - 岗位描述
  • ${resume.content} - 简历内容
  • ${question.text} - 问题文本
  • ${context} - 上下文信息

4.4 保存 Prompt

点击"保存"按钮创建 Prompt:

保存流程:

  1. 填写必填字段(ID、来源、内容)
  2. 点击"保存"按钮
  3. 显示全屏加载提示:"正在保存,请稍候..."
  4. 保存成功后显示"Prompt 创建成功"提示
  5. 关闭侧拉弹框
  6. 列表自动刷新,显示新创建的 Prompt

注意事项:

  • ID 和内容为必填项,不填写时保存按钮禁用
  • ID 必须唯一,重复会导致保存失败
  • 保存后列表会跳转到第 1 页

5. 编辑 Prompt

5.1 打开编辑侧拉弹框

点击 Prompt 列表中的"编辑"按钮,打开编辑 Prompt 侧拉弹框。

编辑 Prompt

弹框特性:

  • 右侧侧拉弹框
  • 显示 Prompt 的完整信息
  • 支持内容编辑和 Extra 配置

5.2 查看基本信息

弹框顶部显示 Prompt 的基本信息:

只读信息:

  • ID:Prompt 的唯一标识符(蓝色等宽字体)
  • 描述:Prompt 的功能说明
  • 来源:Desktop 或 Web(带颜色标签)

5.3 模板变量保护

如果 Prompt 包含模板变量,会显示变量保护提示:

变量列表:

  • 显示所有模板变量及其编号
  • 每个变量以橙色标签形式展示
  • 格式:[变量 N] $
  • 示例:[变量 1] $

编辑保护机制:

  • 编辑时变量会显示为 [变量 N:不可修改]
  • 保存时自动将占位符替换回原始变量
  • 防止误修改或删除重要变量
  • 确保 Prompt 的功能完整性

5.4 编辑 Prompt 内容

内容编辑区:

  • 大文本输入框,支持 20 行显示
  • 以等宽字体显示,便于编辑
  • 支持最多 10,000 字符
  • 显示字符计数
  • 变量显示为占位符,保存时自动恢复

编辑提示:

  • 变量会显示为 [变量 N:不可修改]
  • 可以修改变量之外的所有内容
  • 保存时系统会自动恢复变量

5.5 Extra 配置

Extra 配置说明:

  • 选填字段,用于存储额外的配置参数
  • 必须是 JSON 格式
  • 支持最多 1,000 字符
  • 以等宽字体显示
  • 参数在 Prompt 内容中以 ${参数名} 形式引用

常用配置示例:

Prompt IDExtra 配置说明
InitPrompt{"totalQuestions": 10}面试问题总数
AnswerPrompt{"minWords": 1000, "maxWords": 2000}答案字数范围
QuestionPrompt{"projectStageStart": 2, "projectStageEnd": 3, "techStageStart": 4, "techStageEnd": 6, "scenarioStageStart": 7, "scenarioStageEnd": 8, "endStageStart": 9}面试阶段轮次配置
AnalysisPrompt{"scoreMin": 1, "scoreMax": 10, "passScore": 7, "relevanceWeight": 30, "professionalWeight": 30, "completenessWeight": 20, "expressionWeight": 20}评分范围和权重配置
ScorePrompt{"scoreMin": 0, "scoreMax": 100, "summaryMaxWords": 200, "prosMin": 3, "prosMax": 5, "consMin": 3, "consMax": 5, "suggestionsMin": 3, "suggestionsMax": 5}评分报告配置
InsightPrompt{"scoreMin": 0, "scoreMax": 100, "summaryMaxWords": 100}洞察分析配置
OptimizeResumePrompt{"suggestionMin": 5, "suggestionMax": 10, "minContentRatio": 80}简历优化配置

使用优势:

  • 无需修改 Prompt 内容即可调整参数
  • 支持 A/B 测试不同参数效果
  • 参数变更不影响 Prompt 结构
  • 便于批量调整配置

5.6 新旧版本对比

如果 Prompt 曾被编辑过,编辑弹框底部会显示新旧版本对比区域:

新旧版本对比

对比功能特性:

  • 左右并排对比模式
  • 左侧显示上一版本内容
  • 右侧显示当前编辑的内容
  • 实时对比,编辑时自动更新右侧内容

差异标识说明:

  • 红色背景:删除的内容
  • 绿色背景:新增的内容
  • 黄色背景:修改的内容

对比区域信息:

  • 顶部显示各版本的字数统计
  • 支持滚动查看完整内容
  • 最大高度 320px,超出可滚动

使用场景:

  • 直观对比修改前后的差异
  • 确认修改内容是否正确
  • 评估修改对 Prompt 效果的影响
  • 避免误删重要内容

5.7 重置和保存

重置按钮:

  • 恢复为打开弹框时的初始内容
  • 包括 Prompt 内容和 Extra 配置
  • 点击后显示"已重置为初始内容"提示

保存按钮:

  • 保存修改后的 Prompt
  • 显示全屏加载提示:"正在保存,请稍候..."
  • 保存成功后显示"Prompt 更新成功"提示
  • 关闭侧拉弹框
  • 列表自动刷新

6. 恢复 Prompt

6.1 打开恢复侧拉弹框

点击 Prompt 列表中的"恢复"按钮,打开恢复 Prompt 侧拉弹框。

恢复 Prompt

恢复功能说明:

  • 查看 Prompt 的历史版本
  • 对比当前版本和历史版本
  • 恢复到之前的版本
  • 撤销不当的修改

使用场景:

  • 修改后发现效果变差,需要恢复
  • 对比不同版本的差异
  • 学习优化思路

7. 刷新列表

7.1 手动刷新

点击页面右上角的"刷新"按钮,手动刷新 Prompt 列表。

刷新列表

刷新功能:

  • 重新获取最新的 Prompt 列表
  • 刷新时按钮图标会旋转
  • 刷新完成后列表自动更新
  • 保持当前的筛选条件

使用场景:

  • 查看其他用户的修改
  • 确认新增的 Prompt
  • 验证编辑是否成功

8. Prompt 模板变量详解

8.1 变量格式

标准格式:

  • ${variableName} - 简单变量
  • ${object.property} - 对象属性
  • ${array[0]} - 数组元素(如果支持)

命名规范:

  • 使用驼峰命名法
  • 避免特殊字符
  • 保持语义清晰

8.2 常用变量列表

岗位相关:

  • ${jobPosition.title} - 岗位标题
  • ${jobPosition.description} - 岗位描述
  • ${jobPosition.requirements} - 岗位要求
  • ${jobPosition.company} - 公司名称

简历相关:

  • ${resume.content} - 简历完整内容
  • ${resume.resumeTitle} - 简历标题
  • ${resume.resumeContent} - 简历内容
  • ${resumeContent} - 简历内容(简写形式)

面试相关:

  • ${question} - 面试问题
  • ${askedQuestion} - 已提问的问题
  • ${candidateAnswer} - 候选人回答
  • ${referenceAnswer} - 参考答案
  • ${reviewsData} - 问答记录汇总
  • ${currentQuestionIndex} - 当前问题序号(从 0 开始)
  • ${questionBank} - 押题库问题列表

配置参数变量(来自 Extra 配置):

  • ${totalQuestions} - 面试问题总数
  • ${minWords} / ${maxWords} - 答案字数范围
  • ${scoreMin} / ${scoreMax} - 评分范围
  • ${passScore} - 及格分数线
  • ${summaryMaxWords} - 总结最大字数
  • ${prosMin} / ${prosMax} - 优点条数范围
  • ${consMin} / ${consMax} - 缺点条数范围
  • ${suggestionsMin} / ${suggestionsMax} - 建议条数范围
  • ${relevanceWeight} / ${professionalWeight} 等 - 评分权重

面试阶段参数:

  • ${projectStageStart} / ${projectStageEnd} - 项目经历阶段轮次
  • ${techStageStart} / ${techStageEnd} - 技术深入阶段轮次
  • ${scenarioStageStart} / ${scenarioStageEnd} - 场景设计阶段轮次
  • ${endStageStart} - 收尾阶段开始轮次

8.3 变量使用示例

示例 1:初始化 Prompt(使用配置参数)

你是一名专业的面试官,即将开始一场 ${jobPosition.title} 的面试。

【候选人简历】
${resume.resumeContent}

【面试规则】
1. 第一个问题必须是"自我介绍"
2. 总共进行 ${totalQuestions} 个问题的面试
3. 问题顺序:自我介绍 → 项目经历 → 技术深入 → 场景设计 → 开放性问题

示例 2:答案生成 Prompt(使用字数限制参数)

【面试问题】
${question}

【任务要求】
1. 为以上面试问题生成一个优秀的参考答案
2. 答案要求:
   - 专业、具体、有条理
   - 控制在 ${minWords}-${maxWords} 字
   - 去除 AI 味道,使用口语化表达

示例 3:回答分析 Prompt(使用评分参数)

【候选人回答】
${candidateAnswer}

【参考答案】
${referenceAnswer}

【综合评分要求】
- ${scoreMin}-${scoreMax} 分评分(${passScore} 分为及格线)
- 评分标准:切题度 ${relevanceWeight}% + 专业度 ${professionalWeight}% + 完整度 ${completenessWeight}% + 表达 ${expressionWeight}%

示例 4:面试阶段控制 Prompt(使用阶段参数)

你正在进行第 ${currentQuestionIndex + 1} 轮面试提问。

【当前轮次要求】
${currentQuestionIndex <= projectStageEnd ? `
▸ 这是项目经历阶段(第 ${projectStageStart}-${projectStageEnd} 轮)
▸ 从候选人的简历中挑选一个具体项目深入提问
` : currentQuestionIndex <= techStageEnd ? `
▸ 这是技术深入阶段(第 ${techStageStart}-${techStageEnd} 轮)
▸ 结合岗位要求提出技术性问题
` : `
▸ 这是收尾阶段(第 ${endStageStart} 轮及之后)
▸ 可以问开放性问题
`}

9. Prompt 优化技巧

9.1 清晰的角色定位

推荐做法:

  • 明确定义 AI 的角色
  • 说明期望的行为方式
  • 设定输出格式和风格

示例:

你是一位经验丰富的技术面试官,擅长评估候选人的技术能力和项目经验。
请以专业、客观的态度分析候选人的回答。

9.2 具体的任务描述

推荐做法:

  • 明确说明要完成的任务
  • 列出具体的要求和限制
  • 提供必要的上下文信息

示例:

任务:根据候选人的简历生成 5 个面试问题
要求:
1. 问题要与候选人的项目经验相关
2. 难度适中,既考察基础也考察深度
3. 覆盖不同的技术领域

9.3 结构化输出

推荐做法:

  • 使用编号列表
  • 使用 Markdown 格式
  • 分段组织内容

示例:

请按以下格式输出:

## 答案要点
1. 核心观点
2. 支持论据
3. 实例说明

## 注意事项
- 避免的陷阱
- 加分项

9.4 Token 优化

优化建议:

  • 精简冗余描述
  • 避免重复信息
  • 控制输出长度
  • 使用简洁的表达

对比示例:

不推荐(冗长):
请你作为一个非常专业的、经验非常丰富的、对技术有深刻理解的面试官...

推荐(简洁):
你是一位资深技术面试官,请评估候选人的技术能力。

10. Prompt 应用场景

10.1 桌面客户端场景(Desktop)

InitPrompt - 面试初始化:

  • 初始化面试对话,设定 AI 面试官角色
  • 加载岗位信息、候选人简历、押题库
  • 配置参数:totalQuestions(面试问题总数)

QuestionPrompt - 生成面试问题:

  • 根据当前轮次生成合适的问题
  • 支持多阶段面试流程控制
  • 配置参数:projectStageStart/EndtechStageStart/EndscenarioStageStart/EndendStageStart

AnswerPrompt - 生成参考答案:

  • 为面试问题生成高质量参考答案
  • 结合简历和岗位要求个性化生成
  • 配置参数:minWordsmaxWords(答案字数范围)

AnalysisPrompt - 回答分析:

  • 分析候选人回答的优缺点
  • 提供改进建议和考察要点
  • 配置参数:scoreMin/MaxpassScorerelevanceWeightprofessionalWeightcompletenessWeightexpressionWeight

ScorePrompt - 面试评分:

  • 生成综合评分报告
  • 包含雷达图维度评分和文字评价
  • 配置参数:scoreMin/MaxsummaryMaxWordsprosMin/MaxconsMin/MaxsuggestionsMin/Max

InsightPrompt - 面试洞察:

  • 分析面试官和候选人画像
  • 提供应对策略建议
  • 配置参数:scoreMin/MaxsummaryMaxWords

10.2 Web 端场景

OptimizeResumePrompt - 简历优化:

  • 根据目标岗位优化简历内容
  • 提供具体优化建议
  • 配置参数:suggestionMin/Max(建议条数)、minContentRatio(最小字数比例)

11. 最佳实践

11.1 使用 Extra 配置参数化

推荐做法:

  • 将可调整的数值参数提取到 Extra 配置中
  • 在 Prompt 内容中使用 ${参数名} 引用
  • 修改参数时只需更新 Extra,无需改动 Prompt 内容

参数化优势:

  • 快速调整参数进行 A/B 测试
  • 减少因修改 Prompt 内容导致的错误
  • 便于批量管理和统一调整
  • 参数修改不会触发版本变更

示例:

# 不推荐:硬编码数值
控制在 1000-2000 字以内

# 推荐:使用参数
控制在 ${minWords}-${maxWords} 字以内

# Extra 配置
{"minWords": 1000, "maxWords": 2000}

11.2 版本管理

建议做法:

  • 重大修改前先测试效果
  • 记录修改原因和预期效果
  • 定期检查 Prompt 性能
  • 保留关键版本的备份
  • 使用新旧版本对比功能确认修改内容

11.3 协作规范

建议规范:

  • 使用清晰的描述说明 Prompt 用途
  • 修改前查看历史版本了解背景
  • 测试修改后的效果再保存
  • 重大修改前与团队沟通

11.4 性能优化

优化建议:

  • 定期审查 Prompt 的有效性
  • 删除未使用的 Prompt
  • 优化 Token 使用
  • A/B 测试不同版本的效果

11.5 安全注意

安全建议:

  • 不要在 Prompt 中硬编码敏感信息
  • 使用变量替代具体值
  • 定期检查 Prompt 是否泄露信息
  • 控制 Prompt 的访问权限

12. 常见问题

12.1 保存失败

问题:点击"保存"按钮,提示保存失败。

解决方案:

  1. 检查 ID 是否唯一(新增时)
  2. 检查必填字段是否填写完整
  3. 检查 Extra 配置是否为有效的 JSON 格式
  4. 检查内容长度是否超过限制
  5. 查看浏览器控制台错误信息

12.2 变量丢失

问题:编辑 Prompt 后,模板变量丢失。

解决方案:

  1. 不要删除 [变量 N:不可修改] 占位符
  2. 如果误删,点击"重置"按钮恢复
  3. 保存前检查所有变量是否完整
  4. 如果已保存,使用"恢复"功能恢复之前版本

12.3 筛选无结果

问题:选择来源筛选后,列表为空。

解决方案:

  1. 确认该来源确实有 Prompt
  2. 尝试选择"全部"查看所有 Prompt
  3. 点击"刷新"按钮更新列表
  4. 检查网络连接是否正常

12.4 恢复功能无效

问题:点击"恢复"按钮,没有历史版本可恢复。

解决方案:

  1. 该 Prompt 可能从未被修改过,只有编辑保存过的 Prompt 才有历史版本
  2. 新创建的 Prompt 需要至少编辑保存一次后才会产生历史版本
  3. 历史版本可能已被清理

相关页面

Released under the GPL-3.0 License.