Ë
    I»jU  ã                   ó¦   — d Z ddlmZ ddlmZ ddlmZ ddlmZ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y)u    Schemas â€” Voice transcription.é    )ÚEnum)ÚAny)ÚUUID)Ú	BaseModelÚFieldÚmodel_validator)ÚStubMetac                   ó   — e Zd ZdZdZy)ÚTranscriptionProviderÚwhisperÚstubN)Ú__name__Ú
__module__Ú__qualname__ÚWHISPERÚSTUB© ó    ú3/var/www/html/TJ-AI/tj/app/schemas/transcription.pyr   r      s   „ Ø€GØ�Dr   r   c                   óî   — e Zd ZU dZdZedz  ed<   eed<   ej                  Z
eed<   dZedz  ed<   dZedz  ed<    edd	d
¬«      Zeed<   dZeed<    ee¬«      Zeeef   ed<    ed¬«      dd„«       Zy)ÚTranscriptionRequestzPOST /api/v1/transcriptionNÚcorrelation_idÚinterview_idÚproviderÚaudio_base64Ú
source_urlÚené   é
   )ÚdefaultÚ
min_lengthÚ
max_lengthÚlanguageFÚdiarize©Údefault_factoryÚoptionsÚafter)Úmodec                 ór   — t        | j                  «      t        | j                  «      k(  rt        d«      ‚| S )Nz1Provide exactly one of audio_base64 or source_url)Úboolr   r   Ú
ValueError)Úselfs    r   Úrequire_one_sourcez'TranscriptionRequest.require_one_source   s/   € ä�×!Ñ!Ó"¤d¨4¯?©?Ó&;Ò;ÜÐPÓQÐQØˆr   )Úreturnr   )r   r   r   Ú__doc__r   r   Ú__annotations__Ústrr   r   r   r   r   r   r#   r$   r+   Údictr'   r   r   r.   r   r   r   r   r      s‘   … Ù$à"&€N�D˜4‘KÓ&ØÓØ&;×&CÑ&C€HÐ#ÓCØ#€L�#˜‘*Ó#Ø!€J��d‘
Ó!Ù $°1ÀÔD€HˆcÓDØ€GˆTÓÙ#°DÔ9€GˆT�#�s�(‰^Ó9á˜'Ô"òó #ñr   r   c                   óT   — e Zd ZU eed<   eed<   dZedz  ed<   eed<   dZedz  ed<   y)ÚTranscriptSegmentÚstart_msÚend_msNÚspeakerÚtextÚ
confidence)	r   r   r   Úintr1   r8   r2   r:   Úfloatr   r   r   r5   r5   $   s-   … ØƒMØƒKØ€GˆS�4‰ZÓØ
ƒIØ#€J�˜‘Ô#r   r5   c                   ól   — e Zd ZU dZedz  ed<   eed<   eed<   dZedz  ed<    e	e
¬«      Ze
e   ed<   y)ÚTranscriptionResponseNr   r   r   r9   r%   Úsegments)r   r   r   r   r   r1   r2   r   r9   r   Úlistr?   r5   r   r   r   r>   r>   ,   s?   … Ø"&€N�D˜4‘KÓ&ØÓØ#Ó#Ø€Dˆ#�‰*ÓÙ(-¸dÔ(C€HˆdÐ$Ñ%ÔCr   r>   N)r0   Úenumr   Útypingr   Úuuidr   Úpydanticr   r   r   Úapp.schemas.commonr	   r2   r   r   r5   r>   r   r   r   Ú<module>rF      sN   ðÙ &å Ý Ý ç 6Ñ 6å 'ô˜C ô ô
˜9ô ô&$˜	ô $ôD˜Hõ Dr   