
    >|h                     d    d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZ d dlmZmZmZmZ dedefdZy)    )Any)	VGGFaceOpenFace
FbDeepFaceDeepIDArcFaceSFaceDlibFacenetGhostFaceNet)AgeGenderRaceEmotion
model_namereturnc                 v   t         j                  t        j                  t        j
                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                   t"        j$                  t&        j(                  t*        j,                  t.        j0                  t2        j4                  d}dt7               vri a| t8        j;                         vr8|j=                  |       }|r |       t8        | <   t8        |    S t?        d|        t8        |    S )aS  
    This function builds a deepface model
    Parameters:
            model_name (string): face recognition or facial attribute model
                    VGG-Face, Facenet, OpenFace, DeepFace, DeepID for face recognition
                    Age, Gender, Emotion, Race for facial attributes

    Returns:
            built model class
    )zVGG-Facer   r   
Facenet512DeepFacer   r
   r   r	   r   r   r   r   r   	model_objzInvalid model_name passed - ) r   VggFaceClientr   OpenFaceClientr   FaceNet128dClientFaceNet512dClientr   DeepFaceClientr   DeepIdClientr
   
DlibClientr   ArcFaceClientr	   SFaceClientr   GhostFaceNetClientr   EmotionClientr   ApparentAgeClientr   GenderClientr   
RaceClientglobalsr   keysget
ValueError)r   modelsmodels      X/var/www/html/test/engine/venv/lib/python3.12/site-packages/deepface/modules/modeling.pybuild_modelr,      s      ))++,,//--%%((""$77(($$%%F" ')#	))

:&$)GIj! Z   ;J<HIIZ      N)typingr   deepface.basemodelsr   r   r   r   r   r	   r
   r   r   deepface.extendedmodelsr   r   r   r   strr,    r-   r+   <module>r3      s2    
 
 
 ? >*!C *!C *!r-   