o
    i e	                     @   s   d 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	 ddlm
Z
 ddlmZ dd	lmZ 			dd
dZG dd dejZdS )z/The implementation of `tf.data.Dataset.random`.    N)tf2)dataset_ops)random_seed)dtypes)tensor_spec)gen_dataset_ops)gen_experimental_dataset_opsc                 C   s   t | ||dS )z#See `Dataset.random()` for details.seedrerandomize_each_iterationname)_RandomDatasetr	    r   S/var/www/myenv/lib/python3.10/site-packages/tensorflow/python/data/ops/random_op.py_random   s
   r   c                       s.   e Zd ZdZd fdd	Zedd Z  ZS )r   #A `Dataset` of pseudorandom values.Nc                    s   t |\| _| _|| _|| _|r.t st	d t
jd| j| jt | jd| j}nt
jd| j| jd| j}t | dS )r   z`In TF 1, the `rerandomize_each_iteration=True` option is only supported for repeat-based epochs.)r
   seed2seed_generatorr   )r
   r   Nr   )r   get_seed_seed_seed2_rerandomize_namer   enabledwarningswarnged_opsrandom_dataset_v2r   dummy_seed_generator_common_argsrandom_datasetsuper__init__)selfr
   r   r   variant_tensor	__class__r   r   r"   *   s(   
z_RandomDataset.__init__c                 C   s   t g tjS )N)r   
TensorSpecr   int64)r#   r   r   r   element_spec>   s   z_RandomDataset.element_specNNN)__name__
__module____qualname____doc__r"   propertyr)   __classcell__r   r   r%   r   r   '   s
    r   r*   )r.   r   tensorflow.pythonr   tensorflow.python.data.opsr   tensorflow.python.data.utilr   tensorflow.python.frameworkr   r   tensorflow.python.opsr   r   r   r   DatasetSourcer   r   r   r   r   <module>   s   
