a
    f	g`                     @   s4   d dl mZmZmZ d dlmZ G dd deZdS )    )ListOptionalUnion)OpenAIObjectc                   @   s   e Zd ZU ddgZee ed< edd Zedd Z	ede
eee f ee ee d	d
dZede
eee f ee ee d	ddZdS )
Moderationztext-moderation-stableztext-moderation-latestVALID_MODEL_NAMESc                 C   s   dS )Nz/moderations )clsr   r   b/var/www/html/llm_bihealth/app/venv/lib/python3.9/site-packages/openai/api_resources/moderation.pyget_url	   s    zModeration.get_urlc                 C   sN   |d ur$|| j vr$td| j  d| |d}d|i}|d urF||d< ||fS )Nz*The parameter model should be chosen from z and it is default to be None.)api_keyinputmodel)r   
ValueErrorr	   r   r   r   instanceparamsr   r   r
   _prepare_create   s    
zModeration._prepare_createN)r   r   r   c                 C   s$   |  |||\}}|d|  |S Npost)r   requestr   r   r   r   r
   create   s    zModeration.createc                 C   s$   |  |||\}}|d|  |S r   )r   Zarequestr   r   r   r   r
   acreate%   s    zModeration.acreate)NN)NN)__name__
__module____qualname__r   r   str__annotations__classmethodr   r   r   r   r   r   r   r   r   r
   r      s*   


  	  r   N)typingr   r   r   Zopenai.openai_objectr   r   r   r   r   r
   <module>   s   