
    h                     B    d dl mZmZ d dlmZ d dlmZ  G d de      Zy)    )AnyIterator)Document)BaseDataFrameLoaderc                   D     e Zd ZdZdddedef fdZdee   fdZ	 xZ
S )	PolarsDataFrameLoaderzLoad `Polars` DataFrame.textpage_content_column
data_framer   c                    ddl }t        ||j                        st        dt	        |             t
        |   ||       y)zInitialize with dataframe object.

        Args:
            data_frame: Polars DataFrame object.
            page_content_column: Name of the column containing the page content.
              Defaults to "text".
        r   Nz.Expected data_frame to be a pl.DataFrame, got r
   )polars
isinstance	DataFrame
ValueErrortypesuper__init__)selfr   r   pl	__class__s       s/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/langchain_community/document_loaders/polars_dataframe.pyr   zPolarsDataFrameLoader.__init__   sH     	*bll3@jAQ@RS  	9LM    returnc              #      K   | j                   j                  d      D ];  }|| j                     }|j                  | j                         t	        ||       = yw)z!Lazy load records from dataframe.T)named)page_contentmetadataN)r   	iter_rowsr   popr   )r   rowr	   s      r   	lazy_loadzPolarsDataFrameLoader.lazy_load   sX      ??,,4,8 	<Ct//0DGGD,,-s;;	<s   AA)__name__
__module____qualname____doc__r   strr   r   r   r"   __classcell__)r   s   @r   r   r      s0    "FL N3 N N <8H- <r   r   N)typingr   r   langchain_core.documentsr   .langchain_community.document_loaders.dataframer   r    r   r   <module>r-      s      - N</ <r   