Ë
    µŒj
  ã                  ó–   — d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ erd dlmZ  edd	d
¬«       G d„ de«      «       Zy)é    )Úannotations)ÚTYPE_CHECKINGÚListÚOptional)Ú
deprecated)ÚDocument)Ú
BaseLoader)Úget_client_info)ÚCredentialsz0.0.32z1.0z)langchain_google_community.BigQueryLoader)ÚsinceÚremovalÚalternative_importc                  ó<   — e Zd ZdZ	 	 	 	 d	 	 	 	 	 	 	 	 	 dd„Zdd„Zy)ÚBigQueryLoaderah  Load from the Google Cloud Platform `BigQuery`.

    Each document represents one row of the result. The `page_content_columns`
    are written into the `page_content` of the document. The `metadata_columns`
    are written into the `metadata` of the document. By default, all columns
    are written into the `page_content` and none into the `metadata`.

    Nc                óJ   — || _         || _        || _        || _        || _        y)a  Initialize BigQuery document loader.

        Args:
            query: The query to run in BigQuery.
            project: Optional. The project to run the query in.
            page_content_columns: Optional. The columns to write into the `page_content`
                of the document.
            metadata_columns: Optional. The columns to write into the `metadata` of the
                document.
            credentials : google.auth.credentials.Credentials, optional
              Credentials for accessing Google APIs. Use this parameter to override
                default credentials, such as to use Compute Engine
                (`google.auth.compute_engine.Credentials`) or Service Account
                (`google.oauth2.service_account.Credentials`) credentials directly.
        N)ÚqueryÚprojectÚpage_content_columnsÚmetadata_columnsÚcredentials)Úselfr   r   r   r   r   s         úw/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/langchain_community/document_loaders/bigquery.pyÚ__init__zBigQueryLoader.__init__   s*   € ð. ˆŒ
ØˆŒØ$8ˆÔ!Ø 0ˆÔØ&ˆÕó    c                óÀ  ‡— 	 ddl m} |j                  | j                  | j
                  t        d¬«      ¬«      }|j
                  sd}t        |«      ‚|j                  | j                  «      j                  «       }g }| j                  Š| j                  }‰€$|j                  D �cg c]  }|j                  ‘Œ c}Š|€g }|D ]p  }	dj                  ˆfd	„|	j                  «       D «       «      }
|	j                  «       D ��ci c]  \  }}||v sŒ||“Œ }}}t!        |
|¬
«      }|j#                  |«       Œr |S # t        $ r}t        d«      |‚d }~ww xY wc c}w c c}}w )Nr   )ÚbigqueryzrCould not import google-cloud-bigquery python package. Please install it with `pip install google-cloud-bigquery`.r   )Úmodule)r   r   Úclient_infoz±GCP project for Big Query is not set! Either provide a `project` argument during BigQueryLoader instantiation, or set a default project with `gcloud config set project` command.Ú
c              3  ó<   •K  — | ]  \  }}|‰v sŒ|› d |› �–— Œ y­w)z: N© )Ú.0ÚkÚvr   s      €r   Ú	<genexpr>z&BigQueryLoader.load.<locals>.<genexpr>]   s+   øè ø€ ð %Ù(3¡  1°qÐ<PÒ7P�1�#�R˜�s”©ùs   ƒ�)Úpage_contentÚmetadata)Úgoogle.cloudr   ÚImportErrorÚClientr   r   r
   Ú
ValueErrorr   Úresultr   r   ÚschemaÚnameÚjoinÚitemsr   Úappend)r   r   ÚexÚ	bq_clientÚ
error_descÚquery_resultÚdocsr   ÚcolumnÚrowr&   r#   r$   r'   Údocr   s                  @r   ÚloadzBigQueryLoader.load;   sq  ø€ ð	Ý-ð —O‘OØ×(Ñ(Ø—L‘LÜ'¨zÔ:ð $ó 
ˆ	ð
 × Ò ðð ô ˜ZÓ(Ð(Ø —‘ t§z¡zÓ2×9Ñ9Ó;ˆØ!ˆà#×8Ñ8ÐØ×0Ñ0ÐàÐ'Ø>J×>QÒ>QÓ#RÑ>Q°F F§K£KÐ>QÑ#RÐ ØÐ#Ø!ÐãˆCØŸ9™9ó %Ø(+¯	©	¬ó%ó ˆLð *-¯©¬ÔN©¡  A¸Ð=MÒ8M˜˜1™¨ˆHÑNÜ¨¸xÔHˆCØ�K‰K˜Õð  ð ˆøôM ò 	ÜðNóð ðûð	üò4 $Sùó Os)   ƒD8 Â'EÄEÄEÄ8	EÅEÅE)NNNN)
r   Ústrr   zOptional[str]r   úOptional[List[str]]r   r<   r   zOptional[Credentials])ÚreturnzList[Document])Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r:   r!   r   r   r   r      sO   „ ñð "&Ø48Ø04Ø-1ð'àð'ð ð'ð 2ð	'ð
 .ð'ð +ó'ô:)r   r   N)Ú
__future__r   Útypingr   r   r   Úlangchain_core._api.deprecationr   Úlangchain_core.documentsr   Ú)langchain_community.document_loaders.baser	   Ú&langchain_community.utilities.vertexair
   Úgoogle.auth.credentialsr   r   r!   r   r   Ú<module>rI      sL   ðÝ "ç 0Ñ 0å 6Ý -å @Ý BáÝ3ñ Ø
ØØBôô
P�Zó Póñ
Pr   