Views
No views yet
| Parameter | Value |
|---|---|
| Total Parameters | 236M |
| Active Parameters | ~62M per token |
| Layers | 8 |
| Hidden Dim | 512 |
| Expert FFN Dim | 1,365 |
| Experts | 16 (top-2 routing) |
| Shared Expert | Yes (dim=1,365) |
| Vocab Size | 32,002 (BPE + <call> / </call>) |
| Context Length | 512 tokens |
| Framework | MLX (Apple Silicon native) |
| Model | Params | HellaSwag | ARC-Easy | MMLU | Training Data |
|---|---|---|---|---|---|
| GPT-2 Small | 124M | 30.0% | 38.7% | 25.0% | ~10B tokens |
| OPT-125M | 125M | 31.5% | 22.9% | 24.0% | 300B tokens |
| SmolLM2-135M | 135M | 67.5% | 54.3% | 23.1% | 2T tokens |
| Pythia-160M | 160M | 29.4% | 43.5% | 24.0% | 300B tokens |
| MirrorAI V3 (ours) | 236M | 25.5% | 37.0% | 26.0% | ~61M tokens |
Note: MirrorAI V3 was trained on significantly less data (~61M tokens vs 300B+ for comparable models). Our training budget is ~5,000x smaller than OPT-125M and ~33,000x smaller than SmolLM2-135M.
| Capability | Score | Description |
|---|---|---|
| Identity | 100% | Correctly identifies as MirrorAI by Dipesh Majithia |
| Tool Calling (RAG) | 80% | Uses <call>search_knowledge("query")</call> for factual questions |
| Tool Calling (Math) | 100% | Uses <call>calculator("expression")</call> for math |
| Conversation | 100% | Natural chitchat and greetings |
| Coherence | 100% | Generates coherent multi-sentence responses |
<call>search_knowledge("query")</call> — For factual information retrieval<call>calculator("expression")</call> — For mathematical calculationsUser: What is the capital of France?
MirrorAI: <call>search_knowledge("capital of France")</call>
[Context: Paris is the capital of France]
MirrorAI: The capital of France is Paris.
User: What is 125 + 372?
MirrorAI: <call>calculator("125 + 372")</call>
[Result: 497]
MirrorAI: The answer is 497.
User: Who created you?
MirrorAI: I was created by Dipesh Majithia.| Parameter | Value |
|---|---|
| Epochs | 3 |
| Epoch 1 | Curriculum-ordered (easy → hard) |
| Epochs 2-3 | Shuffled with diversified system prompts |
| Peak LR | 5e-5 |
| Scheduler | Cosine with warmup |
| Warmup Steps | 2,000 |
| Weight Decay | 0.05 |
| Grad Clipping | 1.0 |
| Batch Size | 16 (gradient accumulation) |
| Precision | float16 (MLX) |
| Hardware | Apple Silicon (M-series) |
1import mlx.core as mx
2from model.transformer import MirrorTransformer, ModelArgs
3from tokenizer_wrapper import MirrorTokenizer
4
5args = ModelArgs(
6 dim=512, hidden_dim=1365, n_layers=8,
7 vocab_size=32002, use_moe=True,
8 num_experts=16, num_experts_per_tok=2,
9 shared_expert_dim=1365
10)
11
12model = MirrorTransformer(args)
13model.load_weights("model.safetensors", strict=False)
14model.eval()
15
16tokenizer = MirrorTokenizer("custom_bpe_32k_v2.json")