
    Ng                    H    d dl mZ d dlZd dlZddlmZ  G d d          ZdS )    )annotationsN   )InputExamplec                  8    e Zd ZdZdddddej        fdZd
dZd	S )TripletReaderzReads in the a Triplet Dataset: Each line contains (at least) 3 columns, one anchor column (s1),
    one positive example (s2) and one negative example (s3)
    r   r      F	c                h    || _         || _        || _        || _        || _        || _        || _        d S )N)dataset_folder
s1_col_idx
s2_col_idx
s3_col_idx
has_header	delimiterquoting)selfr   r   r   r   r   r   r   s           g/var/www/html/ai-engine/env/lib/python3.11/site-packages/sentence_transformers/readers/TripletReader.py__init__zTripletReader.__init__   s:     -$$$$"    c                   t          j        t          t          j                            | j        |          d          | j        | j                  }g }| j	        rt          |           t          |          D ]m\  }}|| j                 }|| j                 }|| j                 }	|                    t!          |||	g                     |dk    rt#          |          |k    r nn|S )Nzutf-8)encoding)r   r   )textsr   )csvreaderopenospathjoinr   r   r   r   next	enumerater   r   r   appendr   len)
r   filenamemax_examplesdataexamplesidrows1s2s3s
             r   get_exampleszTripletReader.get_examples    s    zd18<<wOOOnL
 
 

 ? 	JJJ  	 	GBT_%BT_%BT_%BOOLB|<<<===aCMM\$A$Ar   N)r   )__name__
__module____qualname____doc__r   
QUOTE_NONEr   r,    r   r   r   r   	   s\             $     r   r   )
__future__r   r   r    r   r   r2   r   r   <module>r5      sm    " " " " " " 



 				      * * * * * * * * * *r   