PJExam_gen_8cd97c.py 1.85 KB
Newer Older
Leymore's avatar
Leymore committed
1
2
3
4
5
6
7
8
9
10
from opencompass.openicl.icl_prompt_template import PromptTemplate
from opencompass.openicl.icl_retriever import ZeroRetriever
from opencompass.openicl.icl_inferencer import GenInferencer
from opencompass.datasets import PJExamDataset, PJExamEvaluator

PJExam_datasets = []
for _name in [
        'gk-2022-v1', 'gk-2022-v1-math', 'gk-2023-v1', 'gk-2023-v1-math',
        'gk-2023-v2', 'gk-2023-v2-math', 'zk-2022-v1'
]:
11
    _hint = '请你做一道</major>选择题\n请你一步一步思考并将思考过程写在【解析】和<eoe>之间。你将从A,B,C,D中选出正确的答案,并写在【答案】和<eoa>之间。\n例如:【答案】A<eoa>\n完整的题目回答的格式如下:\n【解析】...<eoe>\n【答案】...<eoa>\n请你严格按照上述格式作答。\n题目如下:\n'
Leymore's avatar
Leymore committed
12
    _reader_cfg = {
13
14
        'input_columns': ['question'],
        'output_column': 'std_ans',
Leymore's avatar
Leymore committed
15
16
    },
    _infer_cfg = {
17
18
19
20
21
22
        'ice_template': {
            'type': PromptTemplate,
            'template': {
                'round': [{
                    'role': 'HUMAN',
                    'prompt': _hint + '{question}',
Leymore's avatar
Leymore committed
23
24
                }]
            },
25
            'ice_token': '</E>'
Leymore's avatar
Leymore committed
26
        },
27
28
        'retriever': {
            'type': ZeroRetriever
Leymore's avatar
Leymore committed
29
        },
30
31
32
        'inferencer': {
            'type': GenInferencer,
            'max_out_len': 1024,
Leymore's avatar
Leymore committed
33
34
35
        }
    }
    _eval_cfg = {
36
37
        'evaluator': {
            'type': PJExamEvaluator
Leymore's avatar
Leymore committed
38
        },
39
40
        'pred_role': 'BOT',
        'ds_column': 'eval_infos'
Leymore's avatar
Leymore committed
41
42
    }
    _dataset = {
43
44
45
46
47
48
49
        'type': PJExamDataset,
        'abbr': 'PJExamDataset-' + _name,
        'path': './data/PJExam',
        'name': _name,
        'reader_cfg': _reader_cfg,
        'infer_cfg': _infer_cfg,
        'eval_cfg': _eval_cfg,
Leymore's avatar
Leymore committed
50
51
52
53
54
    }

    PJExam_datasets.append(_dataset)

del _name, _hint, _reader_cfg, _infer_cfg, _eval_cfg, _dataset