pub struct TransformerConfig {
pub hidden_size: usize,
pub num_attention_heads: usize,
pub num_kv_heads: usize,
pub intermediate_size: usize,
pub num_hidden_layers: usize,
pub vocab_size: usize,
pub max_position_embeddings: usize,
pub rms_norm_eps: f32,
pub rope_theta: f32,
pub use_bias: bool,
}Expand description
Configuration for transformer models
Fields§
Hidden dimension (embedding size)
num_attention_heads: usizeNumber of attention heads
num_kv_heads: usizeNumber of key-value heads (for grouped-query attention)
intermediate_size: usizeFeed-forward network intermediate dimension
Number of transformer layers
vocab_size: usizeVocabulary size
max_position_embeddings: usizeMaximum sequence length
rms_norm_eps: f32RMS normalization epsilon
rope_theta: f32RoPE theta base
use_bias: boolWhether to use bias in linear layers
Implementations§
Source§impl TransformerConfig
impl TransformerConfig
Sourcepub fn llama2_13b() -> Self
pub fn llama2_13b() -> Self
LLaMA 2 13B configuration
Sourcepub fn mistral_7b() -> Self
pub fn mistral_7b() -> Self
Mistral 7B configuration
Sourcepub fn qwen2_0_5b() -> Self
pub fn qwen2_0_5b() -> Self
Qwen2 0.5B configuration (good for testing)
Trait Implementations§
Source§impl Clone for TransformerConfig
impl Clone for TransformerConfig
Source§fn clone(&self) -> TransformerConfig
fn clone(&self) -> TransformerConfig
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 moreSource§impl Debug for TransformerConfig
impl Debug for TransformerConfig
Source§impl<'de> Deserialize<'de> for TransformerConfig
impl<'de> Deserialize<'de> for TransformerConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TransformerConfig
impl RefUnwindSafe for TransformerConfig
impl Send for TransformerConfig
impl Sync for TransformerConfig
impl Unpin for TransformerConfig
impl UnwindSafe for TransformerConfig
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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