pub struct ModelType(/* private fields */);Implementations§
Source§impl ModelType
impl ModelType
Sourcepub const COMPLETIONS: Self
pub const COMPLETIONS: Self
OpenAI Completions API - legacy (/v1/completions)
Sourcepub const EMBEDDINGS: Self
pub const EMBEDDINGS: Self
Embeddings API (/v1/embeddings)
Sourcepub const MODERATION: Self
pub const MODERATION: Self
Content moderation models
Sourcepub const VISION_LLM: Self
pub const VISION_LLM: Self
Vision-capable LLM: LLM + vision
Sourcepub const REASONING_LLM: Self
pub const REASONING_LLM: Self
Reasoning LLM: LLM + reasoning (e.g., o1, o3, DeepSeek-R1)
Sourcepub const EMBED_MODEL: Self
pub const EMBED_MODEL: Self
Embedding model only
Sourcepub const RERANK_MODEL: Self
pub const RERANK_MODEL: Self
Reranker model only
Sourcepub const IMAGE_MODEL: Self
pub const IMAGE_MODEL: Self
Image generation model only (DALL-E, Sora, gpt-image)
Sourcepub const AUDIO_MODEL: Self
pub const AUDIO_MODEL: Self
Audio model only (TTS, Whisper, realtime)
Sourcepub const MODERATION_MODEL: Self
pub const MODERATION_MODEL: Self
Content moderation model only
Source§impl ModelType
impl ModelType
Sourcepub const fn bits(&self) -> u16
pub const fn bits(&self) -> u16
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: u16) -> Option<Self>
pub const fn from_bits(bits: u16) -> Option<Self>
Convert from a bits value.
This method will return None if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: u16) -> Self
pub const fn from_bits_truncate(bits: u16) -> Self
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: u16) -> Self
pub const fn from_bits_retain(bits: u16) -> Self
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in other are also set in self.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in other are also set in self.
Sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
Sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in self and other.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert when value is true or remove when value is false.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&) of the bits in self and other.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|) of the bits in self and other.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^) of the bits in self and other.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!) of the bits in self, truncating the result.
Source§impl ModelType
impl ModelType
Source§impl ModelType
impl ModelType
Sourcepub fn supports_chat(self) -> bool
pub fn supports_chat(self) -> bool
Check if this model type supports the chat completions endpoint
Sourcepub fn supports_completions(self) -> bool
pub fn supports_completions(self) -> bool
Check if this model type supports the legacy completions endpoint
Sourcepub fn supports_responses(self) -> bool
pub fn supports_responses(self) -> bool
Check if this model type supports the responses endpoint
Sourcepub fn supports_embeddings(self) -> bool
pub fn supports_embeddings(self) -> bool
Check if this model type supports the embeddings endpoint
Sourcepub fn supports_rerank(self) -> bool
pub fn supports_rerank(self) -> bool
Check if this model type supports the rerank endpoint
Sourcepub fn supports_generate(self) -> bool
pub fn supports_generate(self) -> bool
Check if this model type supports the generate endpoint
Sourcepub fn supports_vision(self) -> bool
pub fn supports_vision(self) -> bool
Check if this model type supports vision/multimodal input
Sourcepub fn supports_tools(self) -> bool
pub fn supports_tools(self) -> bool
Check if this model type supports tool/function calling
Sourcepub fn supports_reasoning(self) -> bool
pub fn supports_reasoning(self) -> bool
Check if this model type supports reasoning/thinking
Sourcepub fn supports_image_gen(self) -> bool
pub fn supports_image_gen(self) -> bool
Check if this model type supports image generation
Sourcepub fn supports_audio(self) -> bool
pub fn supports_audio(self) -> bool
Check if this model type supports audio (TTS, Whisper, etc.)
Sourcepub fn supports_moderation(self) -> bool
pub fn supports_moderation(self) -> bool
Check if this model type supports content moderation
Sourcepub fn supports_endpoint(self, endpoint: Endpoint) -> bool
pub fn supports_endpoint(self, endpoint: Endpoint) -> bool
Check if this model type supports a given endpoint
Sourcepub fn as_capability_names(self) -> Vec<&'static str>
pub fn as_capability_names(self) -> Vec<&'static str>
Convert to a list of supported capability names
Sourcepub fn is_embedding_model(self) -> bool
pub fn is_embedding_model(self) -> bool
Check if this is an embedding model
Sourcepub fn is_reranker(self) -> bool
pub fn is_reranker(self) -> bool
Check if this is a reranker model
Sourcepub fn is_image_model(self) -> bool
pub fn is_image_model(self) -> bool
Check if this is an image generation model
Sourcepub fn is_audio_model(self) -> bool
pub fn is_audio_model(self) -> bool
Check if this is an audio model
Sourcepub fn is_moderation_model(self) -> bool
pub fn is_moderation_model(self) -> bool
Check if this is a moderation model
Trait Implementations§
Source§impl BitAndAssign for ModelType
impl BitAndAssign for ModelType
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&) of the bits in self and other.
Source§impl BitOrAssign for ModelType
impl BitOrAssign for ModelType
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|) of the bits in self and other.
Source§impl BitXorAssign for ModelType
impl BitXorAssign for ModelType
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in self and other.
impl Copy for ModelType
Source§impl<'de> Deserialize<'de> for ModelType
impl<'de> Deserialize<'de> for ModelType
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
impl Eq for ModelType
Source§impl Extend<ModelType> for ModelType
impl Extend<ModelType> for ModelType
Source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)Source§impl Flags for ModelType
impl Flags for ModelType
Source§fn from_bits_retain(bits: u16) -> ModelType
fn from_bits_retain(bits: u16) -> ModelType
Source§fn known_bits(&self) -> Self::Bits
fn known_bits(&self) -> Self::Bits
Source§fn unknown_bits(&self) -> Self::Bits
fn unknown_bits(&self) -> Self::Bits
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self> ⓘ
fn iter_names(&self) -> IterNames<Self> ⓘ
Source§fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
Self::FLAGS.Source§fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in self and other.Source§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in self and other.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in self and other.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
Source§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in self and other.Source§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in self, truncating the result.Source§impl FromIterator<ModelType> for ModelType
impl FromIterator<ModelType> for ModelType
Source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|) of the bits in each flags value.
Source§impl IntoIterator for ModelType
impl IntoIterator for ModelType
Source§impl JsonSchema for ModelType
Manual JsonSchema impl for ModelType — serialized as an array of capability name strings.
impl JsonSchema for ModelType
Manual JsonSchema impl for ModelType — serialized as an array of capability name strings.
Source§fn json_schema(_generator: &mut SchemaGenerator) -> Schema
fn json_schema(_generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreimpl StructuralPartialEq for ModelType
Source§impl Sub for ModelType
impl Sub for ModelType
Auto Trait Implementations§
impl Freeze for ModelType
impl RefUnwindSafe for ModelType
impl Send for ModelType
impl Sync for ModelType
impl Unpin for ModelType
impl UnsafeUnpin for ModelType
impl UnwindSafe for ModelType
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.