FatStinkyPanda commited on
Commit
67b8906
·
verified ·
1 Parent(s): 4c6b445

remove architecture detail (proprietary)

Browse files
Files changed (1) hide show
  1. config.yaml +0 -134
config.yaml DELETED
@@ -1,134 +0,0 @@
1
- # aether-100m "all improvements" preset — same architecture as aether-100m
2
- # but every adaptive variant turned ON (except those needing Ollama).
3
- #
4
- # What's enabled vs aether-100m.yaml:
5
- # * SSM: chunk_strategy=sqrt — Mamba2 picks chunk size from seq length
6
- # * MoE: adaptive_bias_speed + adaptive_top_k — load-aware routing
7
- # * Reasoning: adaptive_threshold — ALR halt threshold tracks a target rate
8
- # * Memory: activation_checkpointing=selective — adaptive memory-pressure policy
9
- #
10
- # The training-time flags (adaptive grad clip, adaptive curriculum) live in
11
- # scripts/train_improved.py since they're TrainConfig fields, not architecture.
12
-
13
- name: aether-100m-improved
14
- vocab_size: 16000 # matches the trained 16k BPE tokenizer (pinned at load regardless)
15
- # LM-head z-loss (PaLM/Chinchilla logit regularizer): keeps output logits from drifting
16
- # large → better bf16 stability at high LR/depth, complementing QK-norm (attention logits)
17
- # and the router z-loss. Near-free in the fused CE (reuses the per-chunk logsumexp). 1e-4
18
- # is PaLM's value; set 0.0 to disable.
19
- lm_z_loss_coef: 1.0e-4
20
- # Multi-Token Prediction (DeepSeek-V3): extra head(s) predict the +2… token from the shared
21
- # trunk hidden — a denser training signal (and a speculative-decoding draft head) that's near-free
22
- # since the forward already builds MTPHeads + folds the averaged MTP loss into aux_losses.
23
- num_mtp_heads: 1
24
- mtp_loss_weight: 0.3
25
- hidden_size: 768
26
- num_hidden_layers: 12
27
- layer_pattern: "ASSS"
28
- activation: swiglu
29
- norm_type: rmsnorm
30
- norm_eps: 1.0e-5
31
- tie_word_embeddings: true
32
- init_std: 0.02
33
- hidden_dropout: 0.0
34
- dtype: bfloat16
35
- moe_layer_freq: every_other
36
- dense_layer_prefix: 2
37
-
38
- attention:
39
- num_query_heads: 12
40
- num_kv_heads: 4
41
- head_dim: 64
42
- kv_lora_rank: 128
43
- q_lora_rank: 0
44
- rope_theta: 1000000.0
45
- rope_scaling: 1.0
46
- max_position_embeddings: 4096
47
- sliding_window: 0
48
- attention_bias: false
49
- attention_dropout: 0.0
50
- qk_norm: true # per-head RMSNorm on Q/K before SDPA — bounds attention logits (default ON)
51
-
52
- ssm:
53
- state_size: 64
54
- conv_kernel: 4
55
- expand: 2
56
- head_dim: 64
57
- n_groups: 1
58
- dt_min: 0.001
59
- dt_max: 0.1
60
- dt_init_floor: 1.0e-4
61
- chunk_size: 128
62
- # Adaptive chunk size: pick based on sqrt(seq * state_size), clamped to [min, max].
63
- chunk_strategy: sqrt
64
- chunk_size_min: 32
65
- chunk_size_max: 512
66
- # True chunk-parallel SSD scan (structured matmul, ~10x faster than the
67
- # per-timestep loop; identical function — proven by equivalence tests) +
68
- # recompute-in-backward to bound activation memory.
69
- scan_impl: matmul
70
- mem_efficient_scan: true
71
-
72
- moe:
73
- enabled: true
74
- expert_dim: 1024
75
- num_routed_experts: 16
76
- num_shared_experts: 2
77
- num_experts_per_token: 4
78
- routing_bias_update_speed: 0.001
79
- score_func: sigmoid
80
- sparsity_schedule: depth
81
- router_z_loss_coef: 0.001
82
- # Adaptive: scale bias-update speed by load imbalance.
83
- adaptive_bias_speed: true
84
- bias_speed_min_mult: 0.25
85
- bias_speed_max_mult: 4.0
86
- # Adaptive: per-token gap-confidence collapse to k=1.
87
- adaptive_top_k: true
88
- adaptive_top_k_gap_threshold: 0.10
89
-
90
- reasoning:
91
- enabled: true
92
- num_latent_tokens: 4
93
- max_recurrence: 2 # raised from 1 so ALR can actually re-execute
94
- recurrence_entropy_threshold: 1.5
95
- verifier_hidden: 128
96
- verifier_dropout: 0.1
97
- dual_stream: true
98
- max_thinking_tokens: 128
99
- # Adaptive: ALR halt threshold drifts to hit a 30% recurrence rate.
100
- adaptive_threshold: true
101
- target_recurrence_rate: 0.30
102
- threshold_min: 0.05
103
- threshold_max: 0.95
104
- threshold_ema_alpha: 0.02
105
-
106
- memory:
107
- kv_cache_dtype: auto
108
- paged_kv_block_size: 16
109
- # Adaptive (memory-pressure) activation checkpointing — now correct with the
110
- # stateful MoE/ALR paths (in-place updates deferred out of the forward, so
111
- # recompute == forward). Tuned to only engage under genuine VRAM pressure
112
- # (<2 GB free): a 110M model that fits stays at full speed, while a tighter
113
- # fit transparently trades compute for memory instead of OOMing.
114
- activation_checkpointing: adaptive
115
- # Tuned for an 8 GB card: during training free VRAM is normally ~0.7-2 GB, so a
116
- # high `free_high` (e.g. 2048) made the adaptive policy checkpoint ~50% almost
117
- # always — paying the recompute tax even when the model fits uncheckpointed. With
118
- # free_high=768 the policy stays at 0% in the normal regime (full speed) and only
119
- # ramps recompute when genuinely near the edge (<768), full at <512; the VRAM
120
- # guard (<450) shrinks the batch as the last resort.
121
- activation_ckpt_free_low_mb: 512
122
- activation_ckpt_free_high_mb: 768
123
- offload_dormant_experts: false
124
- offload_threshold: 0.01
125
- weight_quant: none
126
-
127
- brain:
128
- enabled: false
129
- num_cross_attention_layers: 2
130
- top_k_memories: 4
131
- embed_model: nomic-embed-text
132
- embed_dim: 768
133
- gbrain_home: null
134
- ollama_base_url: http://localhost:11434