2023-07-06 12:27:41 +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 WSCDataset_V3
|
|
|
|
from opencompass.utils.text_postprocessors import first_capital_postprocess
|
|
|
|
|
|
|
|
WSC_reader_cfg = dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
input_columns=['span1', 'span2', 'text'],
|
|
|
|
output_column='label',
|
2023-07-06 12:27:41 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
WSC_infer_cfg = dict(
|
|
|
|
prompt_template=dict(
|
|
|
|
type=PromptTemplate,
|
|
|
|
template=dict(round=[
|
|
|
|
dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
role='HUMAN',
|
2023-07-06 12:27:41 +08:00
|
|
|
prompt=
|
2024-05-14 15:35:58 +08:00
|
|
|
'Passage: {text}\nDoes the pronoun # {span2} # refer to * {span1} *?\nA. Yes\nB. No\nAnswer:'
|
2023-07-06 12:27:41 +08:00
|
|
|
),
|
|
|
|
]),
|
|
|
|
),
|
|
|
|
retriever=dict(type=ZeroRetriever),
|
|
|
|
inferencer=dict(type=GenInferencer),
|
|
|
|
)
|
|
|
|
|
|
|
|
WSC_eval_cfg = dict(
|
|
|
|
evaluator=dict(type=AccEvaluator),
|
2024-05-14 15:35:58 +08:00
|
|
|
pred_role='BOT',
|
2023-07-06 12:27:41 +08:00
|
|
|
pred_postprocessor=dict(type=first_capital_postprocess),
|
|
|
|
)
|
|
|
|
|
|
|
|
WSC_datasets = [
|
|
|
|
dict(
|
2024-05-14 15:35:58 +08:00
|
|
|
abbr='WSC',
|
2023-07-06 12:27:41 +08:00
|
|
|
type=WSCDataset_V3,
|
2024-05-14 15:35:58 +08:00
|
|
|
path='./data/SuperGLUE/WSC/val.jsonl',
|
2023-07-06 12:27:41 +08:00
|
|
|
reader_cfg=WSC_reader_cfg,
|
|
|
|
infer_cfg=WSC_infer_cfg,
|
|
|
|
eval_cfg=WSC_eval_cfg,
|
|
|
|
)
|
|
|
|
]
|