OpenCompass/configs/datasets/lawbench/lawbench_zero_shot_gen_002588.py
Leymore 861942ab1b
[Feature] Add lawbench (#460)
* add lawbench

* update requirements

* update
2023-10-13 06:51:36 -05:00

63 lines
2.0 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.datasets import LawBenchDataset
names = [
["1-1", "article_recitation"],
["1-2", "knowledge_question_answering"],
["2-1", "document_proofreading"],
["2-2", "dispute_focus_identification"],
["2-3", "marital_disputes_identification"],
["2-4", "issue_topic_identification"],
["2-5", "reading_comprehension"],
["2-6", "named_entity_recognition"],
["2-7", "opinion_summarization"],
["2-8", "argument_mining"],
["2-9", "event_detection"],
["2-10", "trigger_word_extraction"],
["3-1", "fact_based_article_prediction"],
["3-2", "scene_based_article_prediction"],
["3-3", "charge_prediction"],
["3-4", "prison_term_prediction_wo_article"],
["3-5", "prison_term_prediction_w_article"],
["3-6", "case_analysis"],
["3-7", "criminal_damages_calculation"],
["3-8", "consultation"],
]
lawbench_datasets = []
for index, name in names:
lawbench_reader_cfg = dict(
input_columns=['instruction', 'question'],
output_column='answer')
lawbench_infer_cfg = dict(
prompt_template=dict(
type=PromptTemplate,
template=dict(
round=[
dict(role="HUMAN", prompt="{instruction}\n{question}"),
]
),
),
retriever=dict(type=ZeroRetriever),
inferencer=dict(type=GenInferencer, max_out_len=1024)
)
lawbench_eval_cfg = dict(
evaluator=dict(type='LawBenchEvaluator_' + index.replace('-', '_'))
)
lawbench_datasets.append(
dict(
abbr='lawbench-' + index + '-' + name + '-0-shot',
type=LawBenchDataset,
path='./data/lawbench/zero_shot',
index=index,
reader_cfg=lawbench_reader_cfg,
infer_cfg=lawbench_infer_cfg,
eval_cfg=lawbench_eval_cfg
)
)