2023-07-05 10:22:40 +08:00
|
|
|
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 AccEvaluator
|
|
|
|
from opencompass.datasets import MultiRCDataset_V2
|
2023-08-11 17:33:00 +08:00
|
|
|
from opencompass.utils.text_postprocessors import first_option_postprocess
|
2023-07-05 10:22:40 +08:00
|
|
|
|
|
|
|
MultiRC_reader_cfg = dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
input_columns=['question', 'text', 'answer'],
|
|
|
|
output_column='label',
|
2023-07-05 10:22:40 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
MultiRC_infer_cfg = dict(
|
|
|
|
prompt_template=dict(
|
|
|
|
type=PromptTemplate,
|
|
|
|
template=dict(round=[
|
|
|
|
dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
role='HUMAN',
|
2023-07-05 10:22:40 +08:00
|
|
|
prompt=
|
2024-05-14 15:35:58 +08:00
|
|
|
'{text}\nQuestion: {question}\nAnswer: {answer}\nIs it true?\nA. Yes\nB. No\nAnswer:'
|
2023-07-05 10:22:40 +08:00
|
|
|
),
|
|
|
|
]),
|
|
|
|
),
|
|
|
|
retriever=dict(type=ZeroRetriever),
|
|
|
|
inferencer=dict(type=GenInferencer),
|
|
|
|
)
|
|
|
|
|
|
|
|
MultiRC_eval_cfg = dict(
|
|
|
|
evaluator=dict(type=AccEvaluator),
|
2024-05-14 15:35:58 +08:00
|
|
|
pred_role='BOT',
|
2023-08-11 17:33:00 +08:00
|
|
|
pred_postprocessor=dict(type=first_option_postprocess, options='AB'),
|
2023-07-05 10:22:40 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
MultiRC_datasets = [
|
|
|
|
dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
abbr='MultiRC',
|
2023-07-05 10:22:40 +08:00
|
|
|
type=MultiRCDataset_V2,
|
2024-05-14 15:35:58 +08:00
|
|
|
path='./data/SuperGLUE/MultiRC/val.jsonl',
|
2023-07-05 10:22:40 +08:00
|
|
|
reader_cfg=MultiRC_reader_cfg,
|
|
|
|
infer_cfg=MultiRC_infer_cfg,
|
|
|
|
eval_cfg=MultiRC_eval_cfg,
|
|
|
|
)
|
|
|
|
]
|