use super::context::QuantizationContext;
use super::types::QuantizationScheme;
use crate::{FxGraph, TorshResult};
pub struct QATUtils;
impl QATUtils {
pub fn prepare_qat(
graph: &mut FxGraph,
scheme: QuantizationScheme,
) -> TorshResult<QuantizationContext> {
let mut context = QuantizationContext::new(scheme);
context.prepare_qat(graph)?;
Ok(context)
}
pub fn convert_qat_to_quantized(
graph: &mut FxGraph,
context: &QuantizationContext,
) -> TorshResult<()> {
context.quantize_graph(graph)
}
}