Skip to main content

ModelInfo

Struct ModelInfo 

Source
pub struct ModelInfo {
Show 17 fields pub model_id: String, pub name: String, pub version: String, pub description: String, pub modality: ModelModality, pub architecture: String, pub provider: Address, pub model_hash: Hash, pub parameters: ModelParameters, pub pricing: PricingConfig, pub status: ModelStatus, pub metadata: HashMap<String, String>, pub moe: Option<MoeMetadata>, pub timeseries: Option<TimeseriesParameters>, pub vision: Option<VisionParameters>, pub audio: Option<AudioParameters>, pub video: Option<VideoParameters>,
}
Expand description

Information about an AI model on Tenzro Network

Fields§

§model_id: String

Unique model identifier

§name: String

Model name

§version: String

Model version

§description: String

Model description

§modality: ModelModality

Model modality

§architecture: String

Model architecture

§provider: Address

Model provider/creator

§model_hash: Hash

Model hash for verification

§parameters: ModelParameters

Model parameters

§pricing: PricingConfig

Model pricing

§status: ModelStatus

Model status

§metadata: HashMap<String, String>

Model metadata

§moe: Option<MoeMetadata>

Mixture-of-Experts routing metadata (optional).

Populated for MoE architectures (Mixtral, DeepSeek-V2/V3, Qwen2-MoE, OpenMythos RDT-MoE, etc.) to enable routing schedulers to reason about expert utilization, per-token expert selection cost, and specialization-aware dispatch.

§timeseries: Option<TimeseriesParameters>

Timeseries-specific parameters (forecast horizon, context length, …). Populated only when modality == Timeseries.

§vision: Option<VisionParameters>

Vision encoder parameters (input size, embedding dim, normalization). Populated for Image and image-bearing compound modalities.

§audio: Option<AudioParameters>

Audio model parameters (sample rate, encoder/decoder filenames, langs). Populated for Audio and audio-bearing compound modalities.

§video: Option<VideoParameters>

Video model parameters (frame size, num frames, fps, embedding dim). Populated for Video modality.

Implementations§

Source§

impl ModelInfo

Source

pub fn new( model_id: String, name: String, version: String, modality: ModelModality, provider: Address, ) -> Self

Creates a new model info

Source

pub fn with_moe(self, moe: MoeMetadata) -> Self

Declares the model as a Mixture-of-Experts architecture and attaches routing metadata.

Source

pub fn with_timeseries(self, params: TimeseriesParameters) -> Self

Attach timeseries-specific parameters (forecast horizon, context length, etc.). Should only be set when modality == Timeseries.

Source

pub fn with_vision(self, params: VisionParameters) -> Self

Attach vision-encoder parameters (input size, embedding dim, normalization). Should be set for image and image-bearing compound modalities.

Source

pub fn with_audio(self, params: AudioParameters) -> Self

Attach audio-model parameters (sample rate, ONNX bundle filenames, supported languages). Should be set for Audio modality.

Source

pub fn with_video(self, params: VideoParameters) -> Self

Attach video-model parameters (frame size, num frames, fps, embedding dim). Should be set for Video modality.

Source

pub fn is_moe(&self) -> bool

Returns true if this model is an MoE architecture with routing metadata available.

Source

pub fn with_description(self, description: String) -> Self

Sets the description

Source

pub fn with_architecture(self, architecture: String) -> Self

Sets the architecture

Source

pub fn with_hash(self, hash: Hash) -> Self

Sets the model hash

Trait Implementations§

Source§

impl Clone for ModelInfo

Source§

fn clone(&self) -> ModelInfo

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ModelInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ModelInfo

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Eq for ModelInfo

Source§

impl PartialEq for ModelInfo

Source§

fn eq(&self, other: &ModelInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for ModelInfo

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for ModelInfo

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.