Ë
    I»j’  ã                   óÎ   — d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	 ddl
mZ  G d„ dee«      Z G d	„ d
e«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Zy)u+   Schemas â€” Answer / assessment evaluation.é    )ÚEnum)ÚAny)ÚUUID)Ú	BaseModelÚField)ÚStubMetac                   ó   — e Zd ZdZdZdZy)ÚEvaluationModeÚautoÚrubricÚcomparativeN)Ú__name__Ú
__module__Ú__qualname__ÚAUTOÚRUBRICÚCOMPARATIVE© ó    ú-/var/www/html/TJ-AI/tj/app/schemas/answers.pyr
   r
      s   „ Ø€DØ€FØ�Kr   r
   c                   ó€   — e Zd ZU eed<   eed<   dZedz  ed<   eed<    edd¬«      Zeed	<    ee	¬
«      Z
e	e   ed<   y)Ú
AnswerItemÚquestion_idÚquestion_textNÚexpected_answerÚstudent_answerg      ð?r   )ÚdefaultÚgeÚ	max_score©Údefault_factoryr   )r   r   r   ÚstrÚ__annotations__r   r   r   ÚfloatÚlistr   r   r   r   r   r      sF   … ØÓØÓØ"&€O�S˜4‘ZÓ&ØÓÙ S¨QÔ/€IˆuÓ/Ù¨dÔ3€FˆD�‰IÔ3r   r   c                   óÒ   — e Zd ZU dZdZedz  ed<    edd¬«      Ze	ed<   e
j                  Ze
ed<    edd¬«      Zee   ed	<    ed
dd¬«      Ze	ed<    eed¬«      Zee	ef   ed<   y)ÚAnswerEvaluationRequestzPOST /api/v1/answers/evaluateNÚcorrelation_id.é   )Ú
min_lengthÚassessment_idÚmodeÚanswersÚené   é
   )r   r*   Ú
max_lengthÚlanguagez4Platform options (strictness, return_feedback, etc.))r!   ÚdescriptionÚoptions)r   r   r   Ú__doc__r(   r   r#   r   r+   r"   r
   r   r,   r-   r%   r   r2   Údictr4   r   r   r   r   r'   r'      s|   … Ù'à"&€N�D˜4‘KÓ&Ù˜s¨qÔ1€M�3Ó1Ø)×.Ñ.€Dˆ.Ó.Ù % c°aÔ 8€GˆT�*ÑÓ8Ù $°1ÀÔD€HˆcÓDÙ#ØØJô€GˆT�#�s�(‰^ô r   r'   c                   ó@   — e Zd ZU eed<   eed<   eed<   dZedz  ed<   y)ÚScoreBreakdownÚ	criterionÚscorer   NÚcomment)r   r   r   r"   r#   r$   r;   r   r   r   r8   r8   )   s    … ØƒNØƒLØÓØ€GˆS�4‰ZÔr   r8   c                   óœ   — e Zd ZU eed<   eed<   eed<   dZedz  ed<   dZedz  ed<    e	e
¬«      Ze
e   ed<    e	e¬«      Zeeef   ed	<   y)
ÚEvaluatedAnswerr   r:   r   NÚ
is_correctÚfeedbackr    Ú	breakdownÚmetadata)r   r   r   r"   r#   r$   r>   Úboolr?   r   r%   r@   r8   r6   rA   r   r   r   r   r=   r=   0   sZ   … ØÓØƒLØÓØ"€J��t‘Ó"Ø€Hˆc�D‰jÓÙ&+¸DÔ&A€Iˆt�NÑ#ÓAÙ$°TÔ:€Hˆd�3˜�8‰nÔ:r   r=   c                   ój   — e Zd ZU dZedz  ed<   eed<   dZeed<   dZ	eed<    e
e¬«      Zee   ed<   y)	ÚAnswerEvaluationResponseNr(   r+   g        Útotal_scoreÚmax_total_scorer    Úresults)r   r   r   r(   r   r#   r"   rE   r$   rF   r   r%   rG   r=   r   r   r   rD   rD   :   s>   … Ø"&€N�D˜4‘KÓ&ØÓØ€K�ÓØ €O�UÓ Ù%*¸4Ô%@€GˆT�/Ñ"Ô@r   rD   N)r5   Úenumr   Útypingr   Úuuidr   Úpydanticr   r   Úapp.schemas.commonr   r"   r
   r   r'   r8   r=   rD   r   r   r   Ú<module>rM      sc   ðÙ 1å Ý Ý ç %å 'ô �S˜$ô  ô4�ô 4ô˜iô ô�Yô ô;�iô ;ôA˜xõ Ar   