
    Z j
                     t    S r SSKrSSKrSSKJr  SSKJr  SSKJ	r	  \	" SS9\ " S	 S
\5      5       5       r
S
/rg)zDac model configuration    N)strict   )PreTrainedConfig)auto_docstringzdescript/dac_16khz)
checkpointc                      ^  \ rS rSr% SrSrSr\\S'   Sr	\
\   \\S4   -  \S'   S	r\\S
'   Sr\\S'   Sr\\S'   Sr\\S'   Sr\\-  \S'   Sr\\S'   Sr\\S'   Sr\\S'   U 4S jr\S\4S j5       rSrU =r$ )	DacConfig   a  
downsampling_ratios (`list[int]`, *optional*, defaults to `[2, 4, 8, 8]`):
    Ratios for downsampling in the encoder. These are used in reverse order for upsampling in the decoder.
quantizer_dropout (`bool`, *optional*, defaults to 0):
    Whether to apply dropout to the quantizer.
commitment_loss_weight (float, *optional*, defaults to 0.25):
    Weight of the commitment loss term in the VQVAE loss function.
codebook_loss_weight (float, *optional*, defaults to 1.0):
    Weight of the codebook loss term in the VQVAE loss function.

Example:

```python
>>> from transformers import DacModel, DacConfig

>>> # Initializing a "descript/dac_16khz" style configuration
>>> configuration = DacConfig()

>>> # Initializing a model (with random weights) from the "descript/dac_16khz" style configuration
>>> model = DacModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```dac@   encoder_hidden_size)         r   .downsampling_ratiosi   decoder_hidden_size	   n_codebooksi   codebook_sizer   codebook_dimg        quantizer_dropoutg      ?commitment_loss_weightg      ?codebook_loss_weighti>  sampling_ratec                   > U R                   S S S2   U l        U R                  S[        U R                   5      -  -  U l        [        [        R                  " U R                   5      5      U l        [        TU ](  " S0 UD6  g )Nr    )r   upsampling_ratiosr   lenhidden_sizeintnpprod
hop_lengthsuper__post_init__)selfkwargs	__class__s     z/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/transformers/models/dac/configuration_dac.pyr&   DacConfig.__post_init__B   sh    !%!9!9$B$!?33qC@X@X<Y7YZbggd&>&>?@''    returnc                     [         R                  " U R                  5      n[        R                  " U R
                  U-  5      $ )N)r"   r#   r   mathceilr   )r'   r$   s     r*   
frame_rateDacConfig.frame_rateH   s0    WWT334
yy++j899r,   )r    r$   r   )__name__
__module____qualname____firstlineno____doc__
model_typer   r!   __annotations__r   listtupler   r   r   r   r   floatr   r   r   r&   propertyr1   __static_attributes____classcell__)r)   s   @r*   r	   r	      s    2 J!!7CcU38_4C##KM3L#%(us{($(E("%%%M3( :C : :r,   r	   )r7   r/   numpyr"   huggingface_hub.dataclassesr   configuration_utilsr   utilsr   r	   __all__r   r,   r*   <module>rE      sM       . 3 # /00:  0:  10:f -r,   