
    {h                       d dl mZ d dlZd dlmZ d dlmZ ddlmZm	Z	 ddl
mZmZ dd	lmZ dd
lmZ ddlmZmZ erd dlmZ dd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 G d d      Zy)    )annotationsN)TYPE_CHECKING)ArgumentParser   )
get_clientprint_model   )	NOT_GIVEN
NotGivenOr)	BaseModel)SyncCursorPage)FineTuningJobFineTuningJobEvent)_SubParsersActionc                (   | j                  d      }|j                  dddd       |j                  ddd	d       |j                  d
ddt               |j                  ddd       |j                  ddd       |j                  t        j
                  t               | j                  d      }|j                  dddd       |j                  t        j                  t               | j                  d      }|j                  ddd       |j                  ddd t               |j                  t        j                  t               | j                  d!      }|j                  ddd"d       |j                  t        j                  t               | j                  d#      }|j                  ddd$d       |j                  ddd%       |j                  ddd&t               |j                  t        j                  t               y )'Nzfine_tuning.jobs.createz-mz--modelzThe model to fine-tune.T)helprequiredz-Fz--training-filez,The training file to fine-tune the model on.z-Hz--hyperparametersz6JSON string of hyperparameters to use for fine-tuning.)r   typez-sz--suffixz-A suffix to add to the fine-tuned model name.)r   z-Vz--validation-filez+The validation file to use for fine-tuning.)func
args_modelzfine_tuning.jobs.retrievez-iz--idz*The ID of the fine-tuning job to retrieve.zfine_tuning.jobs.listz-az--afterzIdentifier for the last job from the previous pagination request. If provided, only jobs created after this job will be returned.z-lz--limitz'Number of fine-tuning jobs to retrieve.zfine_tuning.jobs.cancelz(The ID of the fine-tuning job to cancel.zfine_tuning.jobs.list_eventsz1The ID of the fine-tuning job to list events for.zIdentifier for the last event from the previous pagination request. If provided, only events created after this event will be returned.z-Number of fine-tuning job events to retrieve.)
add_parseradd_argumentstrset_defaultsCLIFineTuningJobscreateCLIFineTuningJobsCreateArgsretrieveCLIFineTuningJobsRetrieveArgsintlistCLIFineTuningJobsListArgscancelCLIFineTuningJobsCancelArgslist_eventsCLIFineTuningJobsListEventsArgs)	subparsersubs     a/var/www/html/hubwallet-dev/venv/lib/python3.12/site-packages/openai/cli/_api/fine_tuning/jobs.pyregisterr*      sd   


8
9C&	   ;	   E	   <  
 :  
 +22?Z[


:
;C9	   +44A^_


6
7C Q  
 6	   +00=VW


8
9C7	   +22?Z[


=
>C@	    W  
 <	   +77Dcd    c                  L    e Zd ZU ded<   ded<   eZded<   eZded<   eZded<   y)	r   r   modeltraining_fileNotGivenOr[str]hyperparameterssuffixvalidation_fileN)__name__
__module____qualname____annotations__r
   r0   r1   r2    r+   r)   r   r   i   s+    J'0O_0'FO''0O_0r+   r   c                      e Zd ZU ded<   y)r   r   idNr3   r4   r5   r6   r7   r+   r)   r   r   q       Gr+   r   c                  *    e Zd ZU eZded<   eZded<   y)r"   r/   afterNotGivenOr[int]limitN)r3   r4   r5   r
   r=   r6   r?   r7   r+   r)   r"   r"   u   s    &E?&&E?&r+   r"   c                      e Zd ZU ded<   y)r$   r   r9   Nr:   r7   r+   r)   r$   r$   z   r;   r+   r$   c                  4    e Zd ZU ded<   eZded<   eZded<   y)r&   r   r9   r/   r=   r>   r?   N)r3   r4   r5   r6   r
   r=   r?   r7   r+   r)   r&   r&   ~   s    G&E?&&E?&r+   r&   c                  f    e Zd Zedd       Zedd       Zed	d       Zed
d       Zedd       Zy)r   c                N   | j                   t        ur(t        j                  t	        | j                               nt        }t               j                  j                  j                  | j                  | j                  || j                  | j                        }t        |       y )N)r-   r.   r0   r1   r2   )r0   r
   jsonloadsr   r   fine_tuningjobsr   r-   r.   r1   r2   r   )argsr0   fine_tuning_jobs      r)   r   zCLIFineTuningJobs.create   s}    CGCWCW_hCh$**S)=)=%>?nw)3)A)A)F)F)M)M**,,+;; 00 *N *
 	O$r+   c                    t               j                  j                  j                  | j                        }t        |       y N)fine_tuning_job_id)r   rF   rG   r   r9   r   rH   rI   s     r)   r   zCLIFineTuningJobs.retrieve   s2    )3)A)A)F)F)O)Ocgcjcj)O)kO$r+   c                    t               j                  j                  j                  | j                  xs t
        | j                  xs t
              }t        |       y )N)r=   r?   )r   rF   rG   r!   r=   r
   r?   r   )rH   fine_tuning_jobss     r)   r!   zCLIFineTuningJobs.list   sI    :D,:R:R:W:W:\:\**)	1Hy ;] ;
 	$%r+   c                    t               j                  j                  j                  | j                        }t        |       y rK   )r   rF   rG   r#   r9   r   rM   s     r)   r#   zCLIFineTuningJobs.cancel   s2    )3)A)A)F)F)M)Maeahah)M)iO$r+   c                    t               j                  j                  j                  | j                  | j
                  xs t        | j                  xs t              }t        |       y )N)rL   r=   r?   )	r   rF   rG   r%   r9   r=   r
   r?   r   )rH   fine_tuning_job_eventss     r)   r%   zCLIFineTuningJobs.list_events   sS    EO\E]E]EbEbEnEn#ww**)	**)	 Fo F

 	*+r+   N)rH   r   returnNone)rH   r   rS   rT   )rH   r"   rS   rT   )rH   r$   rS   rT   )rH   r&   rS   rT   )	r3   r4   r5   staticmethodr   r   r!   r#   r%   r7   r+   r)   r   r      sd    	% 	% % % & & % % , ,r+   r   )r'   z!_SubParsersAction[ArgumentParser]rS   rT   )
__future__r   rD   typingr   argparser   _utilsr   r   _typesr
   r   _modelsr   
paginationr   types.fine_tuningr   r   r   r*   r   r   r"   r$   r&   r   r7   r+   r)   <module>r^      sx    "    # - ,   )
 *Rej1) 1I '	 '
) 'i '%, %,r+   