1#[derive(Clone)]
3pub struct Moirai2Config {
4 pub d_model: usize, pub n_layers: usize, pub n_heads: usize, pub head_dim: usize, pub d_ff: usize, pub patch_size: usize, pub num_predict_token: usize, pub num_quantiles: usize, pub max_seq_len: usize, pub rope_dim: usize, pub median_quantile: usize, }
16
17impl Moirai2Config {
18 pub fn default() -> Self {
19 Self {
20 d_model: 384,
21 n_layers: 6,
22 n_heads: 6,
23 head_dim: 64,
24 d_ff: 1024,
25 patch_size: 16,
26 num_predict_token: 4,
27 num_quantiles: 9,
28 max_seq_len: 512,
29 rope_dim: 32,
30 median_quantile: 4,
31 }
32 }
33
34 pub fn max_ctx_tokens(&self) -> usize {
35 self.max_seq_len / self.patch_size
36 }
37}