o
    3Ih                     @  sR   d dl mZ d dlZd dlZd dlZddlmZmZ dd Ze	dkr'e  dS dS )    )annotationsN   )get_optimization_leveloptimize_modelc                  C  s   t jtjt dtj dd} | jddg ddd | jd	g d
t	dddd | jdt
jdd | jdt
jdd |  }|jdkrGd}n|jdkrOd}n|jdkrWd}n|jdkr^d}t|j|jt|j| d S )N:a7  
                                     Optimize an ONNX model using ONNX Runtime to the specified level.
                                     See https://onnxruntime.ai/docs/performance/model-optimizations/graph-optimizations.html for more
                                     details of the optimization levels.)descriptionz--opt_levelbasic)disabler   extendedallzOptimization level to use.)defaultchoiceshelpz--log_level)debuginfowarningerrorFr   zLog level. Defaults to Error so we don't get output about unused initializers being removed. Warning or Info may be desirable in some scenarios.)r   typerequiredr   r   input_modelz%Provide path to ONNX model to update.)r   r   output_modelz.Provide path to write optimized ONNX model to.   r   r   r   r   r      )argparseArgumentParserospathbasename__file__optimize_model_helper__name__add_argumentstrpathlibPath
parse_args	log_levelr   r   r   r   	opt_level)parserargsr&    r*   e/home/air/sanwanet/gpt-api/venv/lib/python3.10/site-packages/onnxruntime/tools/optimize_onnx_model.pyr      s<   




r   __main__)

__future__r   r   r   r#   onnx_model_utilsr   r   r   r    r*   r*   r*   r+   <module>   s   *
