
    2Vh7                     `    d dl mZ d dlmZ d dlmZ d dlmZ  ed       G d de             Zy)	    )ops)keras_export)	InputSpec)Layerzkeras.layers.RepeatVectorc                   8     e Zd ZdZ fdZd Zd Z fdZ xZS )RepeatVectorai  Repeats the input n times.

    Example:

    >>> x = keras.Input(shape=(32,))
    >>> y = keras.layers.RepeatVector(3)(x)
    >>> y.shape
    (None, 3, 32)

    Args:
        n: Integer, repetition factor.

    Input shape:
        2D tensor with shape `(batch_size, features)`.

    Output shape:
        3D tensor with shape `(batch_size, n, features)`.
    c                     t        |   di | || _        t        |t              st        dt        |       d      t        d      | _        y )Nz'Expected an integer value for `n`, got .   )ndim )	super__init__n
isinstanceint	TypeErrortyper   
input_spec)selfr   kwargs	__class__s      X/home/dcms/DCMS/lib/python3.12/site-packages/keras/src/layers/reshaping/repeat_vector.pyr   zRepeatVector.__init__   sO    "6"!S!9$q'!D  $+    c                 ,    |d   | j                   |d   fS )Nr      )r   )r   input_shapes     r   compute_output_shapez!RepeatVector.compute_output_shape%   s    AA77r   c                     t        j                  |      }t        j                  ||d   d|d   f      }t        j                  || j                  d      S )Nr   r   )axis)r   shapereshaperepeatr   )r   inputsr   reshapeds       r   callzRepeatVector.call(   sF    ii';;vA;q>'JKzz(DFF33r   c                 H    d| j                   i}t        | 	         }i ||S )Nr   )r   r   
get_config)r   configbase_configr   s      r   r(   zRepeatVector.get_config-   s-    tvvg(*(+(((r   )	__name__
__module____qualname____doc__r   r   r&   r(   __classcell__)r   s   @r   r   r      s!    &,84
) )r   r   N)		keras.srcr   keras.src.api_exportr   keras.src.layers.input_specr   keras.src.layers.layerr   r   r   r   r   <module>r4      s2     - 1 ( )*()5 () +()r   