pub struct QuantizedTensor {
pub data: Vec<i8>,
pub shape: Vec<usize>,
pub scale: f32,
pub zero_point: i8,
}Expand description
Quantized tensor representation: INT8 values + per-tensor scale + zero-point.
Fields§
§data: Vec<i8>§shape: Vec<usize>§scale: f32§zero_point: i8Implementations§
Source§impl QuantizedTensor
impl QuantizedTensor
Sourcepub fn from_tensor(tensor: &Tensor, mode: QuantMode) -> Self
pub fn from_tensor(tensor: &Tensor, mode: QuantMode) -> Self
Quantize an f32 tensor to INT8.
Sourcepub fn to_tensor(&self) -> Result<Tensor, ModelError>
pub fn to_tensor(&self) -> Result<Tensor, ModelError>
Dequantize back to f32 tensor.
Sourcepub fn compression_ratio(&self) -> f32
pub fn compression_ratio(&self) -> f32
Compression ratio vs f32 (4x for INT8).
Trait Implementations§
Source§impl Clone for QuantizedTensor
impl Clone for QuantizedTensor
Source§fn clone(&self) -> QuantizedTensor
fn clone(&self) -> QuantizedTensor
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for QuantizedTensor
impl RefUnwindSafe for QuantizedTensor
impl Send for QuantizedTensor
impl Sync for QuantizedTensor
impl Unpin for QuantizedTensor
impl UnsafeUnpin for QuantizedTensor
impl UnwindSafe for QuantizedTensor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more