o
    i                     @   s~   d dl Z d dlZd dlZd dlZd dlZde fddZdejde	de	dejfd	d
Z
de	fddZedkr=ee  dS dS )    Nreturnc                  C   sP   t  } | jdtdd | jdtdd | jdtdd | jdtdd |  S )Nz--npz_file_pathT)typerequiredz--output_file_pathz--adapter_versionz--model_version)argparseArgumentParseradd_argumentstrint
parse_args)parser r   f/home/kim/smarthome/.venv/lib/python3.10/site-packages/onnxruntime/capi/convert_npz_to_onnx_adapter.pyget_args   s   r   npz_file_pathadapter_versionmodel_versionoutput_file_pathc           
      C   s   t  }|| || i }t| }| D ]\}}t j|}	|	||< qW d   n1 s3w   Y  |	| |
| dS )zCThe function converts lora parameters in npz to onnx_adapter formatN)ortZAdapterFormatZset_adapter_versionZset_model_versionnploaditemsZOrtValueZortvalue_from_numpyZset_parametersZexport_adapter)
r   r   r   r   Zadapter_formatZname_to_ort_valuedatanameZnp_arrZ	ort_valuer   r   r   export_lora_parameters   s   



r   c                  C   s    t  } t| j| j| j| j dS )Nr   )r   r   r   r   r   r   )argsr   r   r   main)   s   r   __main__)r   ossysnumpyr   Zonnxruntimer   r   PathLiker	   r   r   __name__exitr   r   r   r   <module>   s&   	
