Sanskriti#
概述#
Sanskriti 是一个多项选择题基准测试,用于评估对印度各邦文化、历史和地理知识的掌握情况。题目基于各邦特有的属性(如艺术、美食、节日等)构建,答案均参考维基百科。该适配器加载的是 SANSKRITI 论文(arXiv:2506.15355)中所用数据集在 ModelScope 上的镜像版本 evalscope/Sanskriti。
任务描述#
任务类型:多项选择题问答(Multiple-Choice Trivia Question Answering)
输入:一道关于特定印度邦文化/地理/历史的问题,附带 4 个选项
输出:正确答案对应的字母(A/B/C/D)
子集:
association(邦与属性关联类题目)、country(国家层面常识题)、gk(通用知识题)、states(邦识别类题目)
评估说明#
默认配置采用 0-shot 评估方式(尽管上游数据集中该部分被命名为
train,但实际为评估数据)问题和选项均为英文
论文指出部分题目涉及的文化元素存在模糊性;加载时会跳过少量(约 0.6%)答案字段与四个选项均不匹配的样本
属性#
属性 |
值 |
|---|---|
基准测试名称 |
|
数据集ID |
|
论文 |
N/A |
标签 |
|
指标 |
|
默认示例数 |
0-shot |
评估划分 |
|
数据统计#
指标 |
值 |
|---|---|
总样本数 |
21,726 |
提示词长度(平均) |
322.93 字符 |
提示词长度(最小/最大) |
256 / 636 字符 |
各子集统计数据:
子集 |
样本数 |
提示词平均长度 |
提示词最小长度 |
提示词最大长度 |
|---|---|---|---|---|
|
5,453 |
343.41 |
273 |
523 |
|
5,563 |
284.48 |
256 |
417 |
|
5,328 |
346.94 |
263 |
547 |
|
5,382 |
318.17 |
260 |
636 |
样例示例#
子集: association
{
"input": [
{
"id": "0629b222",
"content": "Answer the following multiple choice question. The entire content of your response should be of the following format: 'ANSWER: [LETTER]' (without quotes) where [LETTER] is one of A,B,C,D.\n\nWhich of the given regions is home to the Jarawa body painting?\n\nA) Surguja district\nB) South Andaman and Middle Andaman Islands\nC) Buddha Marg, Patna\nD) Telangana"
}
],
"choices": [
"Surguja district",
"South Andaman and Middle Andaman Islands",
"Buddha Marg, Patna",
"Telangana"
],
"target": "B",
"id": 0,
"group_id": 0,
"subset_key": "association",
"metadata": {
"state": "Andaman_and_Nicobar",
"attribute": "Art"
}
}
提示模板#
提示模板:
Answer the following multiple choice question. The entire content of your response should be of the following format: 'ANSWER: [LETTER]' (without quotes) where [LETTER] is one of {letters}.
{question}
{choices}
使用方法#
使用 CLI#
evalscope eval \
--model YOUR_MODEL \
--api-url OPENAI_API_COMPAT_URL \
--api-key EMPTY_TOKEN \
--datasets sanskriti \
--limit 10 # 正式评估时请删除此行
使用 Python#
from evalscope import run_task
from evalscope.config import TaskConfig
task_cfg = TaskConfig(
model='YOUR_MODEL',
api_url='OPENAI_API_COMPAT_URL',
api_key='EMPTY_TOKEN',
datasets=['sanskriti'],
dataset_args={
'sanskriti': {
# subset_list: ['association', 'country', 'gk'] # 可选,用于指定评估特定子集
}
},
limit=10, # 正式评估时请删除此行
)
run_task(task_cfg=task_cfg)