o
    7ti>                     @   sF   d dl Z d dlZdedefddZdd Zdd	 Zd
d Zdd ZdS )    Ntextreturnc                 C   sD   |  tddtj} | dd } d|   } | 	 } | S )N 
 )
	translatestr	maketransstringpunctuationreplacestripjoinsplitlower)r    r   O/home/ubuntu/.local/lib/python3.10/site-packages/lm_eval/tasks/noticia/utils.py
clean_text   s
   r   c                 C      | S z&
    # passthrough for efficiency
    r   itemsr   r   r   rouge1      r   c                 C   r   r   r   r   r   r   r   average_len   r   r   c                 C   sT   t t|  d }dd |D }dd t t|  d D }td}|j||dd S )	
    Higher is better
    r   c                 S   s   g | ]}t |gqS r   r   ).0refr   r   r   
<listcomp>(   s    zrouge1_agg.<locals>.<listcomp>c                 S      g | ]}t |qS r   r   r   xr   r   r   r   *          rouge)predictions
referencesr   )listzipevaluateloadcompute)r   refspredsrouge_scorerr   r   r   
rouge1_agg"   s
   
r0   c                 C   s4   dd t t|  d D }tdd |D t| S )r   c                 S   r    r   r   r!   r   r   r   r   5   r#   z#average_len_agg.<locals>.<listcomp>r$   c                 s   s    | ]	}t | V  qd S )N)lenr   r!   r   r   r   	<genexpr>7   s    z"average_len_agg.<locals>.<genexpr>)r(   r)   sumr1   )r   r.   r   r   r   average_len_agg0   s   r4   )r
   r*   r   r   r   r   r0   r4   r   r   r   r   <module>   s    