
    0Fieg                        d dl mZ d dlZd dlmZmZmZmZ  ej        ej	                  d             Z
 ej        ej	                  d             ZdS )    )annotationsN)dask_deserializedask_serializedeserialize	serializec                .   dd l }|j        dk     rt          d          |                                 }|                                 }t          t          t          t          |                     \  }}||d<   d |D             |d<   d |D             }||fS )Nr   z1.2.0zHNeed Keras >= 1.2.0. Try python -m pip install keras --upgrade --no-depsheadersc                ,    g | ]}t          |          S  )len).0Ls     :lib/python3.11/site-packages/distributed/protocol/keras.py
<listcomp>z)serialize_keras_model.<locals>.<listcomp>   s    000AQ000    nframesc                    g | ]	}|D ]}|
S r   r   )r   r   frames      r   r   z)serialize_keras_model.<locals>.<listcomp>   s%    33333e3333r   )	keras__version__ImportError_updated_configget_weightslistzipmapr   )modelr   headerweightsr	   framess         r   serialize_keras_modelr!      s    LLL7""V
 
 	
 ""$$F!!G3Iw 7 7899OGVF900000F933V333F6>r   c                   ddl m} d}g }t          | d         | d                   D ]:\  }}t          |||||z                      }|                    |           ||z  }; ||           }|                    |           |S )Nr   )model_from_configr	   r   )keras.modelsr#   r   r   appendset_weights)	r   r    r#   nr   headlengthxr   s	            r   deserialize_keras_modelr+      s    ......	AGF9-vi/@AA  ffQV^455q	Vf%%E	gLr   )
__future__r   r   distributed.protocol.serializer   r   r   r   registerModelr!   r+   r   r   r   <module>r0      s    " " " " " "             %%  &%" 5;''  ('  r   