+
    QV-jª+  ã                   ó*  € ^ RI t ^ RIHt ^ RIHtHtHt ^ RIt^ RI	H
t ^ RIHt ^ RIHt ^ RIt^ RIt^ RIHt ^ RIHt ]P.                  P0                  P3                  ]4      t] ! R R]P8                  4      4       t ! R	 R
]P<                  4      tR# )é    N)Ú	dataclass)ÚLiteralÚOptionalÚUnion)Úversion)ÚKey)Ú
table_castc                   óZ   a a€ ] tR t^t oRtRtRtRtRtRt	Rt
V 3R ltV3R ltRtVtV ;t# )ÚParquetConfiga	  
BuilderConfig for Parquet.

Args:
    batch_size (`int`, *optional*):
        Size of the RecordBatches to iterate on.
        The default is the row group size (defined by the first row group).
    columns (`list[str]`, *optional*)
        List of columns to load, the other ones are ignored.
        All columns are loaded by default.
    features: (`Features`, *optional*):
        Cast the data to `features`.
    filters (`Union[pyarrow.dataset.Expression, list[tuple], list[list[tuple]]]`, *optional*):
        Return only the rows matching the filter.
        If possible the predicate will be pushed down to exploit the partition information
        or internal metadata found in the data source, e.g. Parquet statistics.
        Otherwise filters the loaded RecordBatches before yielding them.
    fragment_scan_options (`pyarrow.dataset.ParquetFragmentScanOptions`, *optional*)
        Scan-specific options for Parquet fragments.
        This is especially useful to configure buffering and caching.

        <Added version="4.2.0"/>
    on_bad_files (`Literal["error", "warn", "skip"]`, *optional*, defaults to "error")
        Specify what to do upon encountering a bad file (a file that can't be read). Allowed values are :
        * 'error', raise an Exception when a bad file is encountered.
        * 'warn', raise a warning when a bad file is encountered and skip that file.
        * 'skip', skip bad files without raising or warning when they are encountered.

        <Added version="4.2.0"/>

Example:

Load a subset of columns:

```python
>>> ds = load_dataset(parquet_dataset_id, columns=["col_0", "col_1"])
```

Stream data and efficiently filter data, possibly skipping entire files or row groups:

```python
>>> filters = [("col_0", "==", 0)]
>>> ds = load_dataset(parquet_dataset_id, streaming=True, filters=filters)
```

Increase the minimum request size when streaming from 32MiB (default) to 128MiB and enable prefetching:

```python
>>> import pyarrow
>>> import pyarrow.dataset
>>> fragment_scan_options = pyarrow.dataset.ParquetFragmentScanOptions(
...     cache_options=pyarrow.CacheOptions(
...         prefetch_limit=1,
...         range_size_limit=128 << 20
...     ),
... )
>>> ds = load_dataset(parquet_dataset_id, streaming=True, fragment_scan_options=fragment_scan_options)
```

NÚerrorc                ó$   <€ \         SV `  4        R # ©N)ÚsuperÚ__post_init__)ÚselfÚ	__class__s   &€Úz/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/datasets/packaged_modules/parquet/parquet.pyr   ÚParquetConfig.__post_init__Y   s   ø€ Ü‰ÑÖó    c                óV  <€ V ^8„  d   Qh/ S[ S[,          ;R&   S[ S[S[,          ,          ;R&   S[ S[P
                  ,          ;R&   S[ S[S[P                  S[S[	,          S[S[S[	,          ,          3,          ,          ;R&   S[ S[P                  ,          ;R&   S[R,          ;R&   # )é   Ú
batch_sizeÚcolumnsÚfeaturesÚfiltersÚfragment_scan_optionsÚon_bad_files)r   ÚwarnÚskip)r   ÚintÚlistÚstrÚdatasetsÚFeaturesr   ÚdsÚ
ExpressionÚtupleÚParquetFragmentScanOptionsr   )ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚParquetConfig.__annotate__   sª   ø‡ ‚ ñ~ ™•Ñ$ñ ñ@ ‘d™3•iÕ Ñ'ñA ñB ‘x×(Ñ(Õ)Ñ0ñC ñD ‘e™BŸM™M©4±­;¹¹TÁ%½[Õ8IÐIÕJÕKÑRñE ñF $¡B×$AÑ$AÕBÑIñG ñH Ð1Õ2Ñ<òI r   © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   r   r   r   r   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   r*   s   @@r   r   r      s9   ù‡ € ñ;ðz !%€JØ#'€GØ,0€HØNR€GØEIÐØ5<€Lõ ÷M … r   r   c                   óX   a € ] tR t^]t o ]tRtR tR tV 3R lR lt	R t
R tR tR	tV tR
# )ÚParquetTc                ó<  a € S P                   P                  EeR   S P                   P                  Ee9   \        S P                   P                  4      \        S P                   P                  4      8w  dø   \        ;QJ d3    V 3R lS P                   P                   4       F  '       g   K   RM(	  RM$! V 3R lS P                   P                   4       4      '       d:   \        RS P                   P                   RS P                   P                   24      h\        P                  ! S P                   P                   Uu/ uF   qS P                   P                  V,          bK"  	  up4      pMS P                   P                  p\        P                  ! VR7      # u upi )Nc              3   óT   <"  € T F  qSP                   P                  9  x € K  	  R # 5ir   )Úconfigr   )Ú.0Úcolr   s   & €r   Ú	<genexpr>Ú Parquet._info.<locals>.<genexpr>g   s    øé € ÐRÑ>Q°s˜dŸk™k×2Ñ2Ö2Ó>Qùs   ƒ%(TFz6The columns and features argument must match, but got z and )r   )	r;   r   r   ÚsetÚanyÚ
ValueErrorr#   r$   ÚDatasetInfo)r   r=   r   s   f  r   Ú_infoÚParquet._infoa   s  ø€ à�K‰K×ÑÓ+Ø—‘×$Ñ$Ó0Ü�D—K‘K×'Ñ'Ó(¬C°·±×0DÑ0DÓ,EÔEç‹sÔR¸d¿k¹k×>QÒ>QÓR�s�sŠsÔR¸d¿k¹k×>QÒ>QÓR×RÒRÜ ØLØ—{‘{×*Ñ*Ð+¨5°·±×1EÑ1EÐ0FÐGóð ô
 $×,Ò,ÐX\×XcÑXc×XkÒXkÓ-lÑXkÐQT°4·;±;×3GÑ3GÈÕ3LÒ.LÑXkÑ-lÓm‘à—{‘{×+Ñ+ˆHÜ×#Ò#¨XÔ6Ð6ùò .ms   Ä>&Fc                óØ  € V P                   P                  '       g#   \        RV P                   P                   24      hRVP                  n        VP                  V P                   P                  4      p. pVP                  4        Fý  w  rEV P                  P                  fk   V Fd  p \        VR4      ;_uu_ 4       p\        P                  P                  \        P                  ! V4      4      V P                  n         RRR4        M	  V P                  P                  f#   \        RV P                   P                   24      hVP1                  \        P2                  ! VRVRR.\5        V4      ,          /R7      4       Kÿ  	  V P                   P6                  e¹   \9        V P                   P6                  4      \9        V P                  P                  4      8w  dx   \        P                  ! V P                  P                  P                  4        U	U
u/ uF#  w  ršW�P                   P6                  9   g   K!  WšbK%  	  up
p	4      V P                  n        V#   + '       g   i     EKÆ  ; i  \        P                    dà   pT P                   P"                  R8X  d3   \$        P'                  RT R\)        T4      P*                   RT 24       h T P                   P"                  R	8X  d:   \$        P-                  R
T R\)        T4      P*                   RT R24        Rp?EK  \$        P/                  R
T R\)        T4      P*                   RT R24        Rp?EK¸  Rp?ii ; iu up
p	i )z-We handle string, list and dicts in datafilesz=At least one data file must be specified, but got data_files=TNÚrbr   zFailed to read schema from 'ú' with error ú: r   zSkipping bad schema from 'ú'. Ú`zPAt least one valid data file must be specified, all the data_files are invalid: ÚfilesÚrow_groups_list)ÚnameÚ
gen_kwargs)r;   Ú
data_filesrB   Údownload_configÚextract_on_the_flyÚdownloadÚitemsÚinfor   Úopenr#   r$   Úfrom_arrow_schemaÚpqÚread_schemaÚpaÚArrowInvalidr   Úloggerr   Útyper.   ÚwarningÚdebugÚappendÚSplitGeneratorÚlenr   r@   )r   Ú
dl_managerrP   ÚsplitsÚ
split_namerL   ÚfileÚfÚer=   Úfeats   &&         r   Ú_split_generatorsÚParquet._split_generatorsr   sË  € à�{‰{×%×%Ð%ÜÐ\Ð]a×]hÑ]h×]sÑ]sÐ\tÐuÓvÐvØ8<ˆ
×"Ñ"Ô5Ø×(Ñ(¨¯©×)?Ñ)?Ó@ˆ
ØˆØ!+×!1Ñ!1Ö!3ÑˆJà�y‰y×!Ñ!Ò)Û!�DðiÜ! $¨×-Ô-°Ü19×1BÑ1B×1TÑ1TÔUW×UcÒUcÐdeÓUfÓ1g˜DŸI™IÔ.Ø!÷ .Ñ-ñ "ð �y‰y×!Ñ!Ò)Ü ØfÐgk×grÑgr×g}Ñg}Ðf~Ðóð ð �M‰MÜ×'Ò'Ø#°¸%ÐARÐUYÐTZÔ]`ÐafÓ]gÕTgÐ0hôöñ) "4ð2 �;‰;×ÑÒ*¬s°4·;±;×3FÑ3FÓ/GÌ3ÈtÏyÉy×OaÑOaÓKbÔ/bÜ!)×!2Ò!2Ø,0¯I©I×,>Ñ,>×,DÑ,DÔ,FÔeÑ,F™y˜sÈ#×Q\ÑQ\×QdÑQdÑJd”�’Ñ,FÒeó"ˆD�I‰IÔð ˆ÷1 .×-Ñ-ûô Ÿ?™?ô iØŸ;™;×3Ñ3°wÔ>Ü"ŸL™LÐ+GÈÀvÈ]Ô[_Ð`aÓ[b×[kÑ[kÐZlÐlnÐopÐnqÐ)rÔsØ!Ø!Ÿ[™[×5Ñ5¸Ô?Ü"ŸN™NÐ-GÈÀvÈSÔQUÐVWÓQX×QaÑQaÐPbÐbdÐefÐdgÐghÐ+i×jÓjä"ŸL™LÐ+EÀdÀVÈ3ÌtÐTUËw×O_ÑO_ÐN`Ð`bÐcdÐbeÐefÐ)g×hÓhûðiüó& fsJ   Â*I/Â>AI	ÄI/ÈM&
È;M&
ÉI,É%I/É,I/É/M#ÊBMÌ%2MÍM#c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# )r   Úpa_tableÚreturn)rZ   ÚTable)r)   r*   s   "€r   r+   ÚParquet.__annotate__˜   s#   ø€ ÷ ñ ¡B§H¡Hð ±·±ñ r   c                óˆ   € V P                   P                  e*   \        WP                   P                  P                  4      pV# r   )rU   r   r	   Úarrow_schema)r   rm   s   &&r   Ú_cast_tableÚParquet._cast_table˜   s3   € Ø�9‰9×ÑÒ)ô " (¯I©I×,>Ñ,>×,KÑ,KÓLˆHØˆr   c              #  ór   "  € V'       g   T R j  x€L
  R # \        W4       F  w  r4RVRV/x € K  	  R #  L$5i)NÚfragment_data_fileÚfragment_row_groups)Úzip)r   rL   rM   rf   Ú
row_groupss   &&&  r   Ú_generate_shardsÚParquet._generate_shardsŸ   s=   é € ßØ×Òä$'¨Ö$?Ñ �à(¨$Ø)¨:ðô ó %@ñ ùs   ‚7�5‘%7c           
   #  óB  "  € V'       d;   \         ;QJ d    R  V 4       F  '       g   K   RM	  RM! R  V 4       4      '       d¢   \        P                  ! V P                  P                  R7      pV Fn  p\        VR4      ;_uu_ 4       pVP                  V4      pRV.VP                  ,          R\        VP                  4       Uu. uF  qw3NK  	  up/x € RRR4       Kp  	  R# \        W4       F  w  rHRV.RV./x € K  	  R# u upi   + '       g   i     Kª  ; i5i)c              3   ó(   "  € T F  qR J x € K
  	  R # 5ir   r-   )r<   Ú	row_groups   & r   r>   Ú4Parquet._generate_more_gen_kwargs.<locals>.<genexpr>ª   s   é € Ð%YÉ¸I°4Õ&7Ëùs   ‚TF©Údefault_fragment_scan_optionsrG   rL   rM   N)
rA   r%   ÚParquetFileFormatr;   r   rV   Úmake_fragmentÚnum_row_groupsÚrangerx   )	r   rL   rM   Úparquet_file_formatrf   rg   Úparquet_fragmentÚrow_group_idry   s	   &&&      r   Ú_generate_more_gen_kwargsÚ!Parquet._generate_more_gen_kwargs©   sõ   é € ß§#£#Ñ%YÉÓ%Y§#§#¢#Ñ%YÉÓ%Y×"YÒ"YÜ"$×"6Ò"6ÐUY×U`ÑU`×UvÑUvÔ"wÐÛ�Ü˜$ ×%Ô%¨Ø':×'HÑ'HÈÓ'KÐ$à $ Ð*:×*IÑ*IÕ!IØ)Ü@EÐFV×FeÑFeÔ@fó,Ù@f°›OÑ@fñ,ðò ÷ &Ñ%ó ô %(¨Ö$?Ñ �Ø  Ð(9¸J¸<ÐHÔHó %@ùò,÷	 &×%Ð%üs@   ‚D–DªDÁADÂ	>DÃDÃDÃ.DÄDÄDÄ	Dc              #  óŒ  "  € V P                   P                  e¥   V P                   P                  e�   \        R V P                  P                  P
                   4       4      \        V P                   P                  4      8w  d;   \        RV P                   P                   RV P                  P                   R24      h\        V P                   P                  \        4      '       d+   \        P                  ! V P                   P                  4      MV P                   P                  p\        P                  ! V P                   P                  R7      p\        \!        W4      4       EFk  w  pw  rg \#        VR4      ;_uu_ 4       pVP%                  V4      p	Rp
 Ve   V	P'                  VR7      p	V	P(                  '       d¸   V P                   P*                  ;'       g    V	P(                  ^ ,          P,                  p\        V	P/                  VV P                   P                  V^ ^ R	7      4       FC  w  rÍ\0        P2                  P5                  V.4      p\7        W\4      V P9                  V4      3x € KE  	  R
p
V
'       gJ   \:        P                   P<                  \>        P@                  ! R4      8:  d   ?	\B        PD                  ! 4        R R R 4       EKn  	  R #   T
'       gL   \:        P                   P<                  \>        P@                  ! R4      8:  d   ?	\B        PD                  ! 4        i i i ; i  + '       g   i     EKÜ  ; i  \0        PF                  \        3 dà   pT P                   PH                  R8X  d3   \J        PM                  RT R\O        T4      PP                   RT 24       h T P                   PH                  R8X  d:   \J        PS                  RT R\O        T4      PP                   RT R24        R p?EK›  \J        PU                  RT R\O        T4      PP                   RT R24        R p?EKÔ  R p?ii ; i5i)Nc              3   ó8   "  € T F  qP                   x € K  	  R # 5ir   )rN   )r<   Úfields   & r   r>   Ú+Parquet._generate_tables.<locals>.<genexpr>»   s   é € ÐNÑ.M U—j–jÓ.Mùs   ‚z)Tried to load parquet data with columns 'z' with mismatching features 'Ú'r€   rG   F)Úrow_group_ids)r   r   ÚfilterÚbatch_readaheadÚfragment_readaheadTz24.0.0r   zFailed to read file 'rH   rI   r   zSkipping bad file 'rJ   rK   )+r;   r   r   ÚsortedrU   rr   rB   Ú
isinstancer   r!   rX   Úfilters_to_expressionr%   r‚   r   Ú	enumeraterx   rV   rƒ   Úsubsetry   r   Únum_rowsÚ
to_batchesrZ   ro   Úfrom_batchesr   rs   r#   ÚPYARROW_VERSIONr   ÚparseÚgcÚcollectr[   r   r\   r   r]   r.   r^   r_   )r   rL   rM   Úfilter_exprr†   Úfile_idxrf   ry   rg   r‡   Úfragment_is_closedr   Ú	batch_idxÚrecord_batchrm   rh   s   &&&             r   Ú_generate_tablesÚParquet._generate_tables¹   s}  é € Ø�;‰;×ÑÒ+°·±×0CÑ0CÒ0OÜÑN¨d¯i©i×.@Ñ.@×.MÒ.MÓNÓNÔRXÐY]×YdÑYd×YlÑYlÓRmÔmÜ Ø?ÀÇÁ×@SÑ@SÐ?TÐTqÐrv×r{Ñr{÷  sEñ  sEð  rFð  FGð  Hóð ô
 ˜$Ÿ+™+×-Ñ-¬t×4Ò4ô ×$Ò$ T§[¡[×%8Ñ%8Ô9à—‘×$Ñ$ð 	ô
 !×2Ò2ÐQU×Q\ÑQ\×QrÑQrÔsÐÜ,5´c¸%Ó6Q×,RÑ(ˆHÑ(�tð$ZÜ˜$ ×%Ô%¨Ø':×'HÑ'HÈÓ'KÐ$Ø).Ð&ð)Ø%Ò1Ø/?×/FÑ/FÐU_Ð/FÓ/`Ð,Ø+×6×6Ð6Ø)-¯©×)?Ñ)?×)jÐ)jÐCS×C^ÑC^Ð_`ÕCa×CjÑCj˜JÜ;DØ 0× ;Ñ ;Ø/9Ø,0¯K©K×,?Ñ,?Ø+6Ø45Ø78ð !<ó !"ö<Ñ 7 	ô ,.¯8©8×+@Ñ+@À,ÀÓ+P ô '*¨(Ó&>À×@PÑ@PÐQYÓ@ZÐ&ZÔ Zñ<ð 26Ð.÷  2´h·o±o×6UÑ6UÔY`×YfÒYfÐgoÓYpÔ6pØ 0ÜŸJšJœL÷7 &Ò%ó -Sø÷6  2´h·o±o×6UÑ6UÔY`×YfÒYfÐgoÓYpÔ6pØ 0ÜŸJšJ�Lð 7qÐ1ú÷3 &×%Ñ%ûô8 —O‘O¤ZÐ0ô ZØ—;‘;×+Ñ+¨wÔ6Ü—L‘LÐ#8¸¸¸mÌDÐQRËG×L\ÑL\ÐK]Ð]_Ð`aÐ_bÐ!cÔdØØ—[‘[×-Ñ-°Ô7Ü—N‘NÐ%8¸¸¸cÄ$ÀqÃ'×BRÑBRÐASÐSUÐVWÐUXÐXYÐ#Z×[Ó[ä—L‘LÐ#6°t°f¸CÄÀQÃ×@PÑ@PÐ?QÐQSÐTUÐSVÐVWÐ!X×YÓYûðZüsˆ   ‚E/QÅ2MÆL2Æ'KÇKÇ BKÉ:AL2ËMËQËAL/	Ì/L2Ì2MÌ=MÍQÍMÍQÍ"BP<Ï<QÐ2P<Ð5QÐ<QÑQr-   N)r.   r/   r0   r1   r   ÚBUILDER_CONFIG_CLASSÚSLEEP_ON_THREADS_SHUTDOWNSrD   rj   rs   rz   r‰   r¥   r4   r5   )r*   s   @r   r8   r8   ]   s=   ø‡ € Ø(ÐØ!%Ðò7ò"$÷Lð òòI÷ 1Zð 1Zr   r8   ) rž   Údataclassesr   Útypingr   r   r   ÚpyarrowrZ   Úpyarrow.datasetÚdatasetr%   Úpyarrow.parquetÚparquetrX   Ú	packagingr   r#   Údatasets.configÚdatasets.builderr   Údatasets.tabler	   ÚutilsÚloggingÚ
get_loggerr.   r\   ÚBuilderConfigr   ÚArrowBasedBuilderr8   r-   r   r   Ú<module>r¹      s€   ðÛ 	Ý !ß +Ñ +ã Ý Ý Ý ã Û Ý  Ý %ð 
�‰×	Ñ	×	*Ñ	*¨8Ó	4€ð ôF �H×*Ñ*ó F ó ðF ôRMZˆh×(Ñ(ö MZr   