Team Ai
Apppublic

Kashtan/Detect_Edits_in_AI-Generated_Text

sourceHugging Facemitupdated 2y agoView on Hugging Face
0likes
PerplexityEvaluator.cpython-310.pyc21 linesDownload Raw Back to __pycache__
1o

2�щeC�@sddlZGdd�de�ZdS)�Nc@s*eZdZd	dd�Zd3dd�Zd4dd�ZdS)�PerplexityEvaluator�����cCs||_||_||_dS�N)�model�	tokenizer�ignore_index)�selfrrr�r	�Cd:\.Idan\תואר שני\תזה\detectLM\src\PerplexityEvaluator.py�__init__s5zPerplexityEvaluator.__init__NcCs|�||�Sr)�log_perplexity)r�text�contextr	r	r6�__call__	szPerplexityEvaluator.__call__c	Cs�|jj}|j|dd�}|r9|j|dd�}tj|d|dgdd�}tjt�|d�|j|dgdd�}td�n|d}|}|j|�|�|�|�d�j	}|�7�����S)z�8        Evaluate log perplexity of text with respect to the language model9        based on the context10 11        :param text:12        :param context:13        :return:14        �pt)�return_tensors�	input_ids�)�axisz:Warning, need to remove context length when reporting lppx)r�labels)
r�devicer�torch�concatenate�	ones_liker�print�to�loss�cpu�detach�numpy)	rr
rrZtext_idsZcontext_idsrrrr	r	r15rs	��16z"PerplexityEvaluator.log_perplexity)rr)�__name__�17__module__�__qualname__rrrr	r	r	r18rs1920r)r�objectrr	r	r	r21�<module>s