o
    wi                     @  sJ   d Z ddlmZ ddlZddlm  mZ ddlmZ dd
dZ	ej
Z
dS )zonnx version converter

This enables users to convert their models between different opsets within the
default domain ("" or "ai.onnx").
    )annotationsN)
ModelProtomodelr   target_versionintreturnc                 C  sV   t | tstdt|  t |tstdt| |  }t||}t	|S )zConvert opset version of the ModelProto.

    Arguments:
        model: Model.
        target_version: Target opset version.

    Returns:
        Converted model.

    Raises:
        RuntimeError when some necessary conversion is not supported.
    zCVersionConverter only accepts ModelProto as model, incorrect type: zEVersionConverter only accepts int as target_version, incorrect type: )

isinstancer   	TypeErrortyper   SerializeToStringCconvert_versiononnxload_from_string)r   r   	model_strconverted_model_str r   S/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/onnx/version_converter.pyr      s   


r   )r   r   r   r   r   r   )__doc__
__future__r   r   )onnx.onnx_cpp2py_export.version_converteronnx_cpp2py_exportversion_converterr   r   r   ConvertErrorr   r   r   r   <module>   s   

