o
    Zh                     @   sT   d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm	Z	 G dd deZ
dS )    N)List)Document)
BaseLoader)NucliaUnderstandingAPIc                   @   s4   e Zd ZdZdedefddZdee fddZ	d	S )
NucliaLoaderz9Load from any file type using `Nuclia Understanding API`.pathnuclia_toolc                 C   s0   || _ tt | _| j d| j|d d d S )Npushactionidr   text)nuastruuiduuid4r   run)selfr   r    r   b/var/www/html/lang_env/lib/python3.10/site-packages/langchain_community/document_loaders/nuclia.py__init__   s   zNucliaLoader.__init__returnc                 C   sn   | j d| jddd}|sg S t|}|d d d d }t| |d d |d	 d d
}t||dgS )zLoad documents.pullNr
   Zextracted_textr   bodyr   Zfile_extracted_dataZfield_metadata)filemetadata)Zpage_contentr   )r   r   r   jsonloadsprintr   )r   dataobjr   r   r   r   r   load   s    


zNucliaLoader.loadN)
__name__
__module____qualname____doc__r   r   r   r   r   r!   r   r   r   r   r      s    r   )r   r   typingr   Zlangchain_core.documentsr   Z)langchain_community.document_loaders.baser   Z%langchain_community.tools.nuclia.toolr   r   r   r   r   r   <module>   s    