评测集格式要求

最近更新时间:2025-11-10 14:29:12

我的收藏
模型评测支持自动评测和人工评测。目前自动评测支持“推理及评测”和“仅评测”两种模式。
“推理及评测”模式:上传评测集(只包含问题和参考答案),在自动评测功能模块进行推理、裁判模型打分。
“仅评测”模式:上传带模型推理结果的评测集(问题、参考答案、推理结果),在自动评测功能模块使用裁判模型进行打分。
以下内容分别介绍“推理及评测”、“仅评测”的评测集格式要求。

推理及评测

输入参数说明

参数名称
是否必填
参数解释
messages
必填
评测对话主体内容,包含 system(系统设定)、role(assistant 或 user),content(内容)
ref_answer
选填
模型参考答案
其他字段
选填
用户自定义字段

文件格式

仅支持 JSONL 格式,每条数据为一个合格的 JSON 格式,示例如下:
1. 多轮对话(不包含 gt):

{
"messages": [
{
"role": "system",
"content": "智能助理是一款由xxx自研的大语言模型。xxx是一家中国科技公司,一直致力于进行大模型相关的研究。"
},
{
"role": "user",
"content": "你好"
},
{
"role": "assistant",
"content": "你好,有什么可以帮助你"
},
{
"role": "user",
"content": "1+1等于几"
}
],
"ref_answer": "答案等于2",
"max_tokens": 4096,
"extra_content": "用户自定义,可在裁判模型中引用"
}
2. 多轮对话(messages 中最后一句 role 为 assistant,此 content 会被自动解析为 gt):
{
"messages": [
{
"role": "system",
"content": "ht是一款由xxx自研的大语言模型。xxx是一家中国科技公司,一直致力于进行大模型相关的研究。"
},
{
"role": "user",
"content": "你好"
},
{
"role": "assistant",
"content": "你好,有什么可以帮助你"
},
{
"role": "user",
"content": "1+1等于几"
},
{
"role": "assistant",
"content": "2"
}
],
"ref_answer": "答案等于2",
"extra_content": "用户自定义,可在裁判模型中引用"
}
3. 单轮对话

{
"messages": [
{
"role": "user",
"content": "1+1等于几"
}
],
"ref_answer": "答案等于2",
"extra_content": "用户自定义,可在裁判模型中引用"
}
您可下载评测集示例请参见 自动评测 jsonl 格式评测集示例

另外,平台兼容人工评测原有格式,支持格式:JSONL、CSV,评测集格式如下:
对于 JSONL 格式评测集:每条(行)数据格式如下:
{"system": "You are helpful.", "conversation": [{"prompt": "712+165+223+711=","response": "1811"}]}
其中 “system” 、 “prompt” 和 “response” 字段分别对应 system 输入、提示词和预期响应。
如某条(行)数据无 system 输入,可使用如下格式:
{"conversation": [{"prompt": "712+165+223+711=","response": "1811"}]}
对于 CSV 格式评测集:评测集共3列,列名分别为 “system” 、 “prompt” 和 “response” 。 system 字段非必填,如某条(行)数据无 system 输入,对应位置留空即可。

仅评测

输入参数说明

参数名称
是否必填
参数解释
messages
必填
评测对话主体内容,包含 system(系统设定)、role(assistant 或 user),content(内容)
model_outputs
必填
模型的推理结果
ref_answer
选填
模型参考答案
其他字段
选填
用户自定义字段

文件格式

仅支持 JSONL 格式,每条数据为一个合格的 JSON 格式,示例如下:

{
"messages":
[
{
"role": "user",
"content": "你好"
},
{
"role": "assistant",
"content": "你好,有什么可以帮助你"
},
{
"role": "user",
"content": "16+16等于几"
}
],
"ref_answer": "答案等于32",
"id": "141234314",
"max_tokens": 1024,
"temperature": 0.7,
"top_p": 0.9,
"top_k": 50,
"model_outputs": // 上方是原有数据集的字段
// 本字段用于记录各模型的输出,类型为列表,列表每个对象都包含
// model_name: 模型名
// responses: 该模型的输出
[
{
"model_name": "llama3",
"responses":
[
{
"content": "The answer is 32."
},
{
"content": "32 is the answer."
},
]
},
{
"model_name": "qwen3",
"responses":
[
{
"content": "The answer is 32.",
"reasoning_content": "Wait..."
},
{
"content": "The answer is 32.",
"reasoning_content": "Thinking..."
}
]
}
]
}



model_outputs 字段详解

该字段为一个列表,用于存放不同模型的推理结果,列表中的每一个元素都是一个对象,代表一个模型的所有输出,该对象包含:
model_name(字符串): 为待测模型指定的名称
responses(列表):包含该模型一次或多次推理结果的列表
列表中的每个元素代表一次完整的推理输出,包含:
content(字符串):模型的最终回答
reasoning_content(字符串,可选):模型生成回答前的思考过程

模型推理结果对象model_outputs的内部结构:
键名(Key)
类型(Type)
是否必须
描述
model_name
String
待测模型的唯一标识符,例如 "llama3-8b"。注意: 在整个数据集中,请对同一模型使用完全相同的名称,以便报告能正确汇总该模型的所有表现。
responses
Array
一个数组,包含该模型的一次或多次推理结果。支持 n > 1 的场景,即对同一个输入提示运行多次推理。

推理结果对象 (responses) 的内部结构:
键名(Key)
类型(Type)
是否必须
描述
content
String
待测模型生成的最终结果,并在裁判模型进行打分引用。
reasoning_content
String
用于存放待测模型在生成最终 content 之前的“思考过程”、“思维链”(Chain of Thought)或任何中间草稿。提供此内容有助于进行更深入的分析。如果模型没有该部分输出,则可以省略此键。

完整示例


// 第一行: 包含两个模型的推理结果,其中 qwen2 有 reasoning_content
{"messages": [{"role": "user", "content": "16+16等于几"}], "ref_answer": "答案等于32", "id": "141234314", "model_outputs": [{"model_name": "llama3", "responses": [{"content": "The answer is 32."}]}, {"model_name": "qwen2", "responses": [{"content": "The answer is 32.", "reasoning_content": "The user is asking a simple math question. 16 + 16 equals 32."}]}]}
// 第二行: 包含一个模型的两次不同推理结果 (n=2)
{"messages": [{"role": "user", "content": "写一句赞美程序员的诗"}], "ref_answer": "代码如诗,逻辑之美,指尖之下,创造世界。", "id": "141234315", "model_outputs": [{"model_name": "llama3", "responses": [{"content": "十行代码,改变世界。"}, {"content": "指尖飞舞,代码如歌。"}]}]}