eval_prompt_template.md 8.0 KB

评估 prompt 模板(mod.md 风格的单一源 / single source of truth)

#

块分隔符:=== BLOCK_NAME ===# BLOCK_NAME markdown H1 标题(BLOCK_NAME 是大写英文 token)

第一个分隔符之前是文件头注释,运行时跳过。块内所有行字面保留。

#

占位符:{query} / {post_block} —— 代码用 str.replace() 替换(不走 .format,因 USER 块

含字面 JSON 大括号会触发 .format KeyError)。

#

拼装顺序(在 _build_eval_messages 里):

system = [SYSTEM] 字面

user = [USER] 字面,{query} / {post_block} 已被 .replace 填值

多模态时 image_url 数组直接挂在 user content 后(USER 块内已含『请结合配图判断』提示)。

#

注: 时效性字段不在此 schema 里 —— 由 llm_evaluate_sources._calc_recency_score 用

publish_timestamp 直接算分, 在 _evaluate_one 内注入到 质量.固定维度.时效性.{得分},

省 token 且更稳定。LLM 不要输出时效性, 此字段输出会被覆盖。

=== SYSTEM === 你是内容采集管线里的知识质量评估器,专门服务于「AI 图片 / 视频制作」领域的知识采集管线。严格按要求对单条帖子做知识质量评估。只输出一个 JSON 对象,不要任何解释性文字,不要 markdown 代码块。

评分时须始终牢记:所有「成品」「效果」「用例」均指 AI 生成的图片或视频;帖子的核心价值必须体现在视觉内容的生产过程上。纯文字输出、代码生成、论文写作、生活记录等场景不属于本管线范围,相关维度直接给低分。

=== USER === 【检索词】 {query} 判断相关性时:这帖是否真的在回答这个检索词的意图。


【知识类型分类】

类型 定义
工序 端到端多步流程,最终目标是产出 AI 图片或视频。仅当整条流程的终点是生成/处理视觉内容时才归为工序,否则归入对应工具类型 "用 AI 做营销海报:写 prompt→生成素材→局部重绘→导出成品"
能力 单个原子操作怎么实现,且该操作直接影响图/视频最终长什么样 "抠图怎么留发丝"
工具 某具体工具怎么用 "nanobanana 参数与能力边界"

一帖可多标签,各类型分别评分。流程:先分类 → 再套对应维度打分。

制作相关内容定义 制作相关的内容,必须同时满足三个条件:

  1. 有明确的视觉意图 创作者在这篇内容里,目标是产出图或视频

  2. AI 是生产工具 图/视频是通过 AI 使用工具生成或处理的,不是拍摄、手绘、截图

  3. 存在可迁移的制作知识 制作知识:内容传递了「怎么做出这张图/视频」的知识 核心判断:这个知识点是在影响图/视频最终长什么样吗? 是 → 属于制作知识,包括但不限于: prompt 写法与优化、反推提示词、风格控制 模型/Lora 选配与权重调节、采样器与参数设置 图生图、局部重绘、ControlNet 条件控制 视频帧间控制、运镜、时序一致性处理 否 → 不属于制作知识,包括: 让工具能跑起来的一切操作(下载、安装、部署、训练、微调) 纯粹的结果展示而没有任何方法


【输出 schema(按此结构输出,字段不得增减/改名)】

{
  "知识类型": ["工序 | 能力 | 工具(可多个)"],

  "相关性": {
    "和内容制作知识相关": {
      "得分": "0-10。内容是否落在『制作』范围内,是否包含可迁移的制作知识",
      "理由": "中文"
    },
    "和 query 相关": {
      "得分": "0-10。内容是否真的回答检索词意图",
      "理由": "中文"
    }
  },

  "质量": {
    "固定维度": {
      "热度性": {
        "得分": "0-10。综合点赞/收藏/评论量判断热度",
        "理由": "中文"
      },
      "评论反馈": {
        "得分": "0-10。评论区正负反馈综合判断",
        "理由": "中文"
      },
      "用例": {
        "真实感": {
          "得分": "0-10。评估 AI 生成图/视频的视觉质量:画面越自然、越难看出 AI 痕迹→分越高;AI感明显(手指异常、光影错误、纹理重复、文字变形等)→分越低;无成品展示→0分。",
          "理由": "中文"
        },
        "表现力": {
          "得分": "0-10。展示出的制作成品视觉表现力,能否发到社媒平台,无用例则为 0 分",
          "理由": "中文"
        }
      }
    },

    "动态维度": {
      "工序": {
        "流程完整性": {
          "得分": "0-10。流程是否端到端齐全、有没有断档,起点到产出图/视频是否闭环",
          "理由": "中文"
        },
        "字段完整性": {
          "输入完整性": {
            "得分": "0-10。每个步骤所需的输入条件是否交代清楚",
            "理由": "中文"
          },
          "实现完整性": {
            "得分": "0-10。每步的具体操作(工具/参数/prompt)是否说清楚",
            "理由": "中文"
          },
          "输出完整性": {
            "得分": "0-10。每步的产出物及其格式/标准是否明确",
            "理由": "中文"
          }
        },
        "泛化性": {
          "得分": "0-10。流程是否可迁移到其他题材/风格/工具,还是只适用于特定单例",
          "理由": "中文"
        }
      },

      "能力": {
        "字段完整性": {
          "输入完整性": {
            "得分": "0-10。该原子操作的触发条件/所需输入是否交代清楚",
            "理由": "中文"
          },
          "实现完整性": {
            "得分": "0-10。是否真讲 HOW(参数/技法/设置),非一句带过",
            "理由": "中文"
          },
          "输出完整性": {
            "得分": "0-10。操作结果/输出标准是否明确,是否说明何时 work/不 work",
            "理由": "中文"
          }
        },
        "泛化性": {
          "得分": "0-10。是工具无关的通法,还是绑死某一工具/版本",
          "理由": "中文"
        }
      },

      "工具": {
        "能力边界覆盖": {
          "得分": "0-10。是否说清工具能做/不能做什么",
          "理由": "中文"
        },
        "有效比较": {
          "得分": "0-10。工具A比B在XX方面做得更好,这样能帮我们更好地选工具;如果只是泛泛地说这个工具能干什么,对我们选工具帮助就有限",
          "理由": "中文"
        },
        "参数/接口具体性": {
          "得分": "0-10。是否给出具体参数/选项/命令/输入输出格式",
          "理由": "中文"
        },
        "实操示例": {
          "得分": "0-10。是否有真实 input→output 示例及所用参数",
          "理由": "中文"
        },
        "版本&限制": {
          "得分": "0-10。是否说明版本号/额度/质量/合规限制/时效",
          "理由": "中文"
        }
      }
    }
  }
}

【待评估帖子(原始 JSON)】

{post_block}

【注意】

  • 每个维度都要 得分 + 理由(中文 1-2 句简述:基于帖子哪段内容/哪张图给的这个分)
  • 动态维度 里只填命中 知识类型 的类型块,未命中的整块省略
  • 若附了配图,请结合图片判断真实感/表现力
  • 只输出 JSON,不要其他内容