2024-03-13 16:09:23 +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 . datasets import APPSDataset , APPSEvaluator
2024-05-14 15:35:58 +08:00
APPS_reader_cfg = dict ( input_columns = [ ' question ' , ' starter ' ] , output_column = ' problem_id ' , train_split = ' test ' )
2024-03-13 16:09:23 +08:00
APPS_infer_cfg = dict (
prompt_template = dict (
type = PromptTemplate ,
2024-05-14 15:35:58 +08:00
template = ' Please write a python program to address the following QUESTION. Your ANSWER should be in a code block format like this: ```python # Write your code here ```. \n QUESTION: \n {question} {starter} \n ANSWER: \n ' ) ,
2024-03-13 16:09:23 +08:00
retriever = dict ( type = ZeroRetriever ) ,
inferencer = dict ( type = GenInferencer , max_out_len = 512 ) ,
)
2024-05-14 15:35:58 +08:00
APPS_eval_cfg = dict ( evaluator = dict ( type = APPSEvaluator ) , pred_role = ' BOT ' )
2024-03-13 16:09:23 +08:00
APPS_datasets = [
dict (
type = APPSDataset ,
2024-05-14 15:35:58 +08:00
abbr = ' apps ' ,
path = ' codeparrot/apps ' ,
2024-03-13 16:09:23 +08:00
num_repeats = 1 ,
reader_cfg = APPS_reader_cfg ,
infer_cfg = APPS_infer_cfg ,
eval_cfg = APPS_eval_cfg ,
)
]