Trait tract_api::NnefInterface
source · pub trait NnefInterface: Sized {
type Model: ModelInterface;
Show 14 methods
// Required methods
fn model_for_path(&self, path: impl AsRef<Path>) -> Result<Self::Model>;
fn enable_tract_core(&mut self) -> Result<()>;
fn enable_tract_extra(&mut self) -> Result<()>;
fn enable_onnx(&mut self) -> Result<()>;
fn enable_pulse(&mut self) -> Result<()>;
fn enable_extended_identifier_syntax(&mut self) -> Result<()>;
fn write_model_to_dir(
&self,
path: impl AsRef<Path>,
model: &Self::Model
) -> Result<()>;
fn write_model_to_tar(
&self,
path: impl AsRef<Path>,
model: &Self::Model
) -> Result<()>;
fn write_model_to_tar_gz(
&self,
path: impl AsRef<Path>,
model: &Self::Model
) -> Result<()>;
// Provided methods
fn with_tract_core(self) -> Result<Self> { ... }
fn with_tract_extra(self) -> Result<Self> { ... }
fn with_onnx(self) -> Result<Self> { ... }
fn with_pulse(self) -> Result<Self> { ... }
fn with_extended_identifier_syntax(self) -> Result<Self> { ... }
}Expand description
an implementation of tract’s NNEF framework object
Entry point for NNEF model manipulation: loading from file, dumping to file.
Required Associated Types§
type Model: ModelInterface
Required Methods§
sourcefn model_for_path(&self, path: impl AsRef<Path>) -> Result<Self::Model>
fn model_for_path(&self, path: impl AsRef<Path>) -> Result<Self::Model>
Load a NNEF model from the path into a tract-core model.
pathcan point to a directory, atarfile or atar.gzfile.
sourcefn enable_tract_core(&mut self) -> Result<()>
fn enable_tract_core(&mut self) -> Result<()>
Allow the framework to use tract_core extensions instead of a stricter NNEF definition.
sourcefn enable_tract_extra(&mut self) -> Result<()>
fn enable_tract_extra(&mut self) -> Result<()>
Allow the framework to use tract_extra extensions.
sourcefn enable_onnx(&mut self) -> Result<()>
fn enable_onnx(&mut self) -> Result<()>
Allow the framework to use tract_onnx extensions to support operators in ONNX that are absent from NNEF.
sourcefn enable_pulse(&mut self) -> Result<()>
fn enable_pulse(&mut self) -> Result<()>
Allow the framework to use tract_pulse extensions to support stateful streaming operation.
sourcefn enable_extended_identifier_syntax(&mut self) -> Result<()>
fn enable_extended_identifier_syntax(&mut self) -> Result<()>
Allow the framework to use a tract-proprietary extension that can support special characters in node names. If disable, tract will replace everything by underscore ‘_’ to keep compatibility with NNEF. If enabled, the extended syntax will be used, allowing to maintain the node names in serialized form.
sourcefn write_model_to_dir(
&self,
path: impl AsRef<Path>,
model: &Self::Model
) -> Result<()>
fn write_model_to_dir( &self, path: impl AsRef<Path>, model: &Self::Model ) -> Result<()>
Dump a TypedModel as a NNEF directory.
path is the directory name to dump to
sourcefn write_model_to_tar(
&self,
path: impl AsRef<Path>,
model: &Self::Model
) -> Result<()>
fn write_model_to_tar( &self, path: impl AsRef<Path>, model: &Self::Model ) -> Result<()>
Dump a TypedModel as a NNEF tar file.
This function creates a plain, non-compressed, archive.
path is the archive name
fn write_model_to_tar_gz( &self, path: impl AsRef<Path>, model: &Self::Model ) -> Result<()>
Provided Methods§
sourcefn with_tract_core(self) -> Result<Self>
fn with_tract_core(self) -> Result<Self>
Convenience function, similar with enable_tract_core but allowing method chaining.
sourcefn with_tract_extra(self) -> Result<Self>
fn with_tract_extra(self) -> Result<Self>
Convenience function, similar with enable_tract_core but allowing method chaining.
sourcefn with_onnx(self) -> Result<Self>
fn with_onnx(self) -> Result<Self>
Convenience function, similar with enable_onnx but allowing method chaining.
sourcefn with_pulse(self) -> Result<Self>
fn with_pulse(self) -> Result<Self>
Convenience function, similar with enable_pulse but allowing method chaining.
sourcefn with_extended_identifier_syntax(self) -> Result<Self>
fn with_extended_identifier_syntax(self) -> Result<Self>
Convenience function, similar with enable_extended_identifier_syntax but allowing method chaining.