a
    f                     @  s   d dl mZ d dlZd dlmZmZmZmZ d dlm	Z	 ddl
mZmZ ddlmZ dd	lmZ dd
lmZ ddlmZ erd dlmZ dddddZG dd deZG dd deZG dd dZdS )    )annotationsN)TYPE_CHECKINGAnyOptionalcast)ArgumentParser   )
get_clientprint_model   )	NOT_GIVEN)	BaseModel)BufferReader)Transcription)_SubParsersActionz!_SubParsersAction[ArgumentParser]None)	subparserreturnc                 C  s   |  d}|jddtdd |jddtdd	 |jd
td |jdtd |jddtd |jdtd |jtjtd |  d}|jddtdd	 |jddtdd |jd
td |jddtd |jdtd |jtjt	d d S )Nzaudio.transcriptions.createz-mz--modelz	whisper-1)typedefaultz-fz--fileT)r   requiredz--response-format)r   z
--languagez-tz--temperaturez--prompt)funcZ
args_modelzaudio.translations.create)

add_parseradd_argumentstrfloatset_defaultsCLIAudio
transcribeCLITranscribeArgs	translateCLITranslationArgs)r   sub r#   N/var/www/ai-form-bot/venv/lib/python3.9/site-packages/openai/cli/_api/audio.pyregister   s    

r%   c                   @  sN   e Zd ZU ded< ded< dZded< dZded< dZded	< dZded
< dS )r   r   modelfileNOptional[str]response_formatlanguageOptional[float]temperatureprompt__name__
__module____qualname____annotations__r)   r*   r,   r-   r#   r#   r#   r$   r   .   s   
r   c                   @  sN   e Zd ZU ded< ded< dZded< dZded< dZded	< dZded
< dS )r!   r   r&   r'   Nr(   r)   r*   r+   r,   r-   r.   r#   r#   r#   r$   r!   7   s   
r!   c                   @  s4   e Zd ZedddddZedddddZd	S )
r   r   r   )argsr   c                 C  s   t | jd }t| dd}W d    n1 s20    Y  tdt jjj| j|f| j	| j
p^t| jpft| jpnttt| jd}t|trtj|d  nt| d S )NrbUpload progressdescTranscription | str)r'   r&   r*   r,   r-   r)   
)openr'   r   readr   r	   audioZtranscriptionscreater&   r*   r   r,   r-   r   r)   
isinstancer   sysstdoutwriter
   r3   Zfile_readerZbuffer_readerr&   r#   r#   r$   r   A   s     .


zCLIAudio.transcriber!   c              
   C  s   t | jd }t| dd}W d    n1 s20    Y  tdt jjj| j|f| j	| j
p^t| jpfttt| jd}t|trtj|d  nt| d S )Nr4   r5   r6   r8   )r'   r&   r,   r-   r)   r9   )r:   r'   r   r;   r   r	   r<   Ztranslationsr=   r&   r,   r   r-   r   r)   r>   r   r?   r@   rA   r
   rB   r#   r#   r$   r    X   s    .


zCLIAudio.translateN)r/   r0   r1   staticmethodr   r    r#   r#   r#   r$   r   @   s   r   )
__future__r   r?   typingr   r   r   r   argparser   Z_utilsr	   r
   _typesr   Z_modelsr   	_progressr   Ztypes.audior   r   r%   r   r!   r   r#   r#   r#   r$   <module>   s   		