o
    ãÊip  ã                   @   sH   d dl mZmZ d dlmZ d dlZ	 G dd„ deƒZG dd„ dƒZdS )é    )ÚABCÚabstractmethod)ÚAnyNc                	   @   s2   e Zd Zedejjdededejjfdd„ƒZdS )Ú	QuantizerÚmodelÚargsÚkwargsÚreturnc                 O   ó   d S ©N© ©Úselfr   r   r   r   r   úP/home/ubuntu/.local/lib/python3.10/site-packages/torchao/quantization/unified.pyÚquantize   ó   zQuantizer.quantizeN)	Ú__name__Ú
__module__Ú__qualname__r   ÚtorchÚnnÚModuler   r   r   r   r   r   r      s    ÿÿÿþr   c                	   @   sX   e Zd Zedejjdededejjfdd„ƒZedejjdededejjfdd„ƒZ	d	S )
ÚTwoStepQuantizerr   r   r   r	   c                 O   r
   r   r   r   r   r   r   Úprepare   r   zTwoStepQuantizer.preparec                 O   r
   r   r   r   r   r   r   Úconvert%   r   zTwoStepQuantizer.convertN)
r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s*    ÿÿÿþÿÿÿþr   )Úabcr   r   Útypingr   r   r   r   r   r   r   r   Ú<module>   s   
	