mirror of
https://github.com/open-compass/opencompass.git
synced 2025-05-30 16:03:24 +08:00
77 lines
2.9 KiB
Python
77 lines
2.9 KiB
Python
from opencompass.openicl.icl_prompt_template import PromptTemplate
|
||
from opencompass.openicl.icl_retriever import ZeroRetriever
|
||
from opencompass.openicl.icl_inferencer import GenInferencer
|
||
from opencompass.openicl.icl_evaluator import AccwithDetailsEvaluator
|
||
from opencompass.datasets import RBenchDataset
|
||
from opencompass.utils.text_postprocessors import first_option_postprocess
|
||
|
||
RBench_reader_cfg = dict(input_columns=[
|
||
'RBench_Question_Input', 'RBench_Option_A', 'RBench_Option_B',
|
||
'RBench_Option_C', 'RBench_Option_D', 'RBench_Option_E', 'RBench_Option_F'
|
||
],
|
||
output_column='target')
|
||
|
||
RBench_datasets = []
|
||
|
||
systemp_prompt_en = "Answer the following single choice question. The last line of your response should be of the following format: 'ANSWER: $LETTER' (without quotes) where LETTER is one of Options(e.g. one of ABCDEF). Think step by step before answering."
|
||
|
||
systemp_prompt_zh = "回答以下单选题。答案的最后一行应采用以下格式:“答案是$LETTER”(不带引号),其中 LETTER 是选项之一(例如 ABCDEF 之一)。回答前请逐步思考。"
|
||
|
||
RBench_infer_en_cfg = dict(
|
||
prompt_template=dict(
|
||
type=PromptTemplate,
|
||
template=dict(round=[
|
||
dict(
|
||
role='HUMAN',
|
||
prompt=
|
||
f'{systemp_prompt_en}\nQuestion: {{RBench_Question_Input}}\nA. {{RBench_Option_A}}\nB. {{RBench_Option_B}}\nC. {{RBench_Option_C}}\nD. {{RBench_Option_D}}\nE. {{RBench_Option_E}}\nF. {{RBench_Option_F}}\nAnswer: '
|
||
),
|
||
], ),
|
||
),
|
||
retriever=dict(type=ZeroRetriever),
|
||
inferencer=dict(type=GenInferencer),
|
||
)
|
||
|
||
RBench_infer_zh_cfg = dict(
|
||
prompt_template=dict(
|
||
type=PromptTemplate,
|
||
template=dict(round=[
|
||
dict(
|
||
role='HUMAN',
|
||
prompt=
|
||
f'{systemp_prompt_zh}\n问题: {{RBench_Question_Input}}\nA. {{RBench_Option_A}}\nB. {{RBench_Option_B}}\nC. {{RBench_Option_C}}\nD. {{RBench_Option_D}}\nE. {{RBench_Option_E}}\nF. {{RBench_Option_F}}\n答案: '
|
||
),
|
||
], ),
|
||
),
|
||
retriever=dict(type=ZeroRetriever),
|
||
inferencer=dict(type=GenInferencer),
|
||
)
|
||
|
||
RBench_eval_cfg = dict(evaluator=dict(type=AccwithDetailsEvaluator),
|
||
pred_postprocessor=dict(type=first_option_postprocess,
|
||
options='ABCDEF'))
|
||
|
||
RBench_datasets.append(
|
||
dict(
|
||
abbr=f'R-Bench_en',
|
||
type=RBenchDataset,
|
||
path='opencompass/R-Bench',
|
||
name='R-Bench',
|
||
subset='en',
|
||
reader_cfg=RBench_reader_cfg,
|
||
infer_cfg=RBench_infer_en_cfg,
|
||
eval_cfg=RBench_eval_cfg,
|
||
))
|
||
|
||
RBench_datasets.append(
|
||
dict(
|
||
abbr=f'R-Bench_zh',
|
||
type=RBenchDataset,
|
||
path='opencompass/R-Bench',
|
||
name='R-Bench',
|
||
subset='zh',
|
||
reader_cfg=RBench_reader_cfg,
|
||
infer_cfg=RBench_infer_zh_cfg,
|
||
eval_cfg=RBench_eval_cfg,
|
||
))
|