Receber por email
← Voltar para o catálogo

eval-consistency

Avalia a consistência de role-playing do 'use-persona'. Com uma persona e 10 cenários de diálogo, gera respostas, as pontua em 5 dimensões e emite um relatório de consistência.

89estrelas
Atualizado há 6 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add YIKUAIBANZI/forge-skill

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/eval-consistency/svg)](https://www.skillteca.com.br/skills/eval-consistency)

Skills relacionadas

Ver todas de Desenvolvimento →

Alerta por categoria

Receba novas skills de Desenvolvimento toda segunda

1 email curto, só com as skills novas de Desenvolvimento. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

/eval-consistency — 角色扮演一致性评测

你的任务是对 use-persona 的角色扮演质量做一次系统性评测,全程在当前对话中完成,不需要调用任何外部 API。

Step 0:加载测试资源

  1. 读取测试用例文件:evals/test_cases/persona_consistency_cases.yaml
  2. 根据 persona_name 字段,读取对应 persona:

personas/others/{persona_name}/persona.json

  1. 从 persona.json 中提取 chat-card 关键内容:
  2. L0 硬性特征
  3. L2 表达风格(语言特征 + 沟通模式,重点是 signature_phrases 和消息长度偏好)
  4. L4 互动模式(关键场景下的表现)
正在加载 {persona_name} 的 persona 和测试用例...
共 {N} 个场景待测试。

Step 1:逐场景测试

对每个测试用例,执行两步:

1a. 生成角色扮演回复

以 persona 的身份回复用户消息。只输出回复本身,不加任何解释。

内部模板(不展示给用户):

你是 {persona_name}。
[chat-card 关键内容]

用户发来消息:"{user_message}"

以你的身份回复,只输出回复本身。

1b. 评分(内部执行,立即给出)

生成回复后,立刻按以下 5 个维度给自己打分(每项 0-20 分):

| 维度 | 评分标准 | |------|----------| | 消息长度 | 回复长度是否符合 L2 的消息长度偏好?短消息风格但回了长段落扣分 | | 口头禅命中 | 是否自然用到了 L2 的 signature_phrases?完全没有扣分 | | 标点风格 | 标点和语气是否符合 persona 的风格描述? | | 互动模式 | 在这个具体场景下,互动方式是否符合 L4 的 scene_responses? | | 边界遵守 | 有没有违反 L0 的硬性特征?违反则此项得 0 分 |

给出每项分数 + 一句话说明。

Step 2:输出完整报告

所有场景跑完后,输出评测报告:

===================================
角色扮演一致性评测报告 — {persona_name}
===================================

## 逐场景结果

[c01] {场景简述}
  回复:"{生成的回复}"
  得分:{total}/100
  ✅/⚠️ 消息长度:{score}/20 — {说明}
  ✅/⚠️ 口头禅命中:{score}/20 — {说明}
  ✅/⚠️ 标点风格:{score}/20 — {说明}
  ✅/⚠️ 互动模式:{score}/20 — {说明}
  ✅/⚠️ 边界遵守:{score}/20 — {说明}

[c02] ...

---

## 汇总

平均分:{avg}/100  {✅ 通过 / ❌ 未达标(目标 70+)}

各维度平均:
  消息长度    {avg}/20
  口头禅命中  {avg}/20
  标点风格    {avg}/20
  互动模式    {avg}/20
  边界遵守    {avg}/20

## 主要问题
{如果平均分 < 70,列出最常见的失分点}

## 建议
{如果某维度平均分 < 12,给出 1-2 条具体改进建议,指向 persona 的哪一层需要补充}

Step 3:保存结果(可选)

询问用户是否保存:

要把这次结果存入 evals/results/ 吗?
以后优化后可以对比。(y/n)

如果确认,写入 evals/results/consistency_{YYYYMMDD}.md。

注意

  • 全程不需要 API Key:评分是你自己执行的,不是另起一个 LLM
  • 评分要诚实:对自己生成的回复该扣分就扣分,不要因为是自己生成的就打高分
  • 用例是基于小美的,如果用户指定了其他 persona,根据那个 persona 的 L2/L4 调整评分标准
Compartilhar X LinkedIn