o
    6ti                  
   @   s   d dl ZzedadgZdggZtjeedgdZW n ey) Z	 ze	dZ	[	ww dde
e de
e
e  d	e
e fd
dZde
e
e  de
e de
e
e  fddZde
e
e  de
e de
e
e  fddZdS )    N	code_evalzassert add(2, 3)==5zdef add(a,b): return a*b   
referencespredictionskr   r   r   c                 C   s4   |d usJ t |tr|g}tj| ||d}|d S )Nr   r   )
isinstanceintcompute_compute)r   r   r   res r   Q/home/ubuntu/.local/lib/python3.10/site-packages/lm_eval/tasks/humaneval/utils.py	pass_at_k   s   
r   respsdocsreturnc                 C      dd t | |D S )Nc                    "   g | ]\}  fd d|D qS )c                    s   g | ]} d  | qS )promptr   .0rdocr   r   
<listcomp>   s    z0build_predictions.<locals>.<listcomp>.<listcomp>r   r   respr   r   r   r      s   " z%build_predictions.<locals>.<listcomp>zipr   r   r   r   r   build_predictions   s   r!   c                 C   r   )Nc                    r   )c                    s8   g | ]} d  | ddkr|n|d| d  qS )r   z```N)findr   r   r   r   r   "   s    *z9build_predictions_instruct.<locals>.<listcomp>.<listcomp>r   r   r   r   r   r   !   s    
z.build_predictions_instruct.<locals>.<listcomp>r   r    r   r   r   build_predictions_instruct   s   r$   )N)evaluatehf_evaluateloadr
   
test_cases
candidatesr   results	Exceptioneliststrr	   r   dictr!   r$   r   r   r   r   <module>   s&    
(*

