o FÅÈdAã@s2ddlmZddlmZgd¢ZGdd„dƒZdS)é)Ú defaultdict)ÚTools)z classz defz #z ifz printc@s$eZdZedd„ƒZedd„ƒZdS)Ú PostProcessorc Cs tƒ}t |¡}| ¡D] }|||||d<q g}t |¡}|D]'}||d}|dD]} t | ¡} | |d|d|d|d| dœ¡q.q"|t|ƒfS)NÚpromptÚsamplesÚtask_idÚtestÚ entry_point)rrrr Ú completion) ÚdictrÚ load_tasksÚkeysÚ load_jsonlrÚsolution_extractÚappendÚlen) Ú predict_pathÚ source_pathÚdatabaseÚ raw_problemsrÚresultÚ predictionsÚpreÚtaskÚsampleÚprocessed_code©rú@/home/bjwang/projects/factool/factool/code/helper/postprocess.pyÚmap_task_id_for_solution s&       ûþ z&PostProcessor.map_task_id_for_solutioncCs$tD] }||vr| |¡d}q|S)Nr)Ú STOP_TOKENÚsplit)ÚcontentÚ identifierrrrr#s €zPostProcessor.solution_extractN)Ú__name__Ú __module__Ú __qualname__Ú staticmethodrrrrrrr s  rN)Ú collectionsrÚfactool.code.helper.io_utilsrrrrrrrÚs