o
    S"g                     @  s>   d Z ddlmZ ddlZddlZddlmZ G dd dZdS )a@  
This file contains deprecated code that can only be used with the old `model.fit`-style Sentence Transformers v2.X training.
It exists for backwards compatibility with the `model.old_fit` method, but will be removed in a future version.

Nowadays, with Sentence Transformers v3+, it is recommended to use the `SentenceTransformerTrainer` class to train models.
See https://www.sbert.net/docs/sentence_transformer/training_overview.html for more information.

Instead, you should create a `datasets` `Dataset` for training: https://huggingface.co/docs/datasets/create_dataset
    )annotationsN   )InputExamplec                   @  s2   e Zd ZdZdddddejfddZd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                 C  s.   || _ || _|| _|| _|| _|| _|| _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    r   m/mnt/skqttb/ctump_chatbot/chatbot/lib/python3.10/site-packages/sentence_transformers/readers/TripletReader.py__init__   s   

zTripletReader.__init__c           
      C  s   t jttj| j|dd| j| jd}g }| j	rt
| t|D ]+\}}|| j }|| j }|| j }	|t|||	gd |dkrLt||krL |S q!|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s3r   r   r   get_examples*   s$   


 zTripletReader.get_examplesN)r   )__name__
__module____qualname____doc__r   
QUOTE_NONEr   r(   r   r   r   r   r      s    
r   )r,   
__future__r   r   r    r   r   r   r   r   r   <module>   s    
