add research-reports/raw_evidence.md
Browse files- research-reports/raw_evidence.md +103 -0
research-reports/raw_evidence.md
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Dovada empirică — date brute colectate
|
| 2 |
+
|
| 3 |
+
Data: 2026-10-09. Metodă: interogare directă HF API / GitHub raw / dataset streaming.
|
| 4 |
+
|
| 5 |
+
## Mediu sandbox (fără GPU)
|
| 6 |
+
- Python 3.13.5, torch ABSENT, nvidia-smi ABSENT → antrenarea efectivă NU s-a putut rula aici.
|
| 7 |
+
- Rețea: OK (HF 200 OK). GitHub API OK. arxiv export API blocat. DDG/Bing blocate (captcha/geo).
|
| 8 |
+
|
| 9 |
+
## Arhitecturi verificate (config.json real, nu inventat)
|
| 10 |
+
TinyLlama-1.1B-Chat-v1.0:
|
| 11 |
+
LlamaForCausalLM hidden=2048 interm=5632 layers=22 heads=32 kv=4 ctx=2048 vocab=32000 rope_theta=10000 rms_eps=1e-5 tie=False silu
|
| 12 |
+
SmolLM2-360M:
|
| 13 |
+
hidden=960 interm=2560 layers=32 heads=15 kv=5 ctx=8192 vocab=49152 rope_theta=100000 tie=True silu
|
| 14 |
+
SmolLM2-360M (nanotron config_smollm2_360M.yaml — START din 2023):
|
| 15 |
+
hidden=960 interm=2560 layers=32 heads=15 kv=5 ctx=2048 vocab=49152 tie=True
|
| 16 |
+
lr=0.003 (peak), warmup=2000, decay_style=linear, decay_start=2.08M, decay_steps=0.52M
|
| 17 |
+
micro_batch=6, seq_len=2048, batch_accum/replica=1, train_steps=2.6M, dp=128, tp=1, pp=1
|
| 18 |
+
opt: AdamW beta=(0.9,0.95) eps=1e-8 weight_decay=0.01 clip=1.0 accumulate_grad_in_fp32=True
|
| 19 |
+
dtype=bfloat16, init std=0.03227
|
| 20 |
+
Phi-3-mini-4k-instruct:
|
| 21 |
+
Phi3ForCausalLM hidden=3072 interm=8192 layers=32 heads=32 kv=32 ctx=4096 vocab=32064
|
| 22 |
+
MobileLLM-350M: model GATED (acces restricționat) → config indisponibil fără auth.
|
| 23 |
+
|
| 24 |
+
## Rețeta TinyLlama (README oficial jzhang38/TinyLlama)
|
| 25 |
+
- 1.1B, 3T tokens, 16×A100-40G, 90 zile
|
| 26 |
+
- GQA (32 heads / 4 KV groups), layers=22, emb=2048, SwiGLU interm=5632
|
| 27 |
+
- seq_len=2048, batch=2M tokens (2048*1024), lr=4e-4 cosine, warmup 2000
|
| 28 |
+
- date: SlimPajama (fără subset GitHub) + Starcoderdata, ratio NL:cod=7:3, ~950B unice, ~3 epoci
|
| 29 |
+
- optimizări: FSDP, FlashAttention2, fused layernorm/swiglu/xent/rope → 24k tok/s/A100 = 56% MFU
|
| 30 |
+
- 3456 A100-h pentru 300B tokens; suport 3090/4090 cu batch mai mic
|
| 31 |
+
|
| 32 |
+
## SmolLM / SmolLM2 / SmolLM3 (README HF + config nanotron)
|
| 33 |
+
- SmolLM2-360M: 4T tokens (FineWeb-Edu + DCLM + The Stack + seturi filtrate); SmolLM2-1.7B: 11T tokens
|
| 34 |
+
- SmolLM2 instruct: SFT (smoltalk) + DPO pe UltraFeedback
|
| 35 |
+
- SmolLM3-3B: 11T tokens, dual-mode reasoning (think/no_think), NoPE + YaRN până la 128k, GQA 4 grupuri
|
| 36 |
+
- Framework: nanotron + datatrove (HF)
|
| 37 |
+
|
| 38 |
+
## Tooling (GitHub API, steluțe la 2026-10-09)
|
| 39 |
+
- unslothai/unsloth 77,632 ★ updated 2026-10-09
|
| 40 |
+
- karpathy/nanoGPT 63,670 ★ (note: karpathy recomandă nanochat în schimb; nanoGPT "deprecated")
|
| 41 |
+
- huggingface/transformers 166,914 ★
|
| 42 |
+
- Lightning-AI/litgpt 13,696 ★ updated 2026-10-07
|
| 43 |
+
- KellerJordan/modded-nanogpt 5,927 ★ (124M în <40s pe 8×H100)
|
| 44 |
+
- pytorch/torchtitan 5,792 ★ ICLR 2025, paper 2410.06511
|
| 45 |
+
- jzhang38/TinyLlama 9,009 ★ (ultima actualizare 2024-05)
|
| 46 |
+
- huggingface/nanotron (menționat de SmolLM)
|
| 47 |
+
|
| 48 |
+
## litgpt config_hub/pretrain (YAML reale)
|
| 49 |
+
- tinystories.yaml: stories15M (6 layere, n_embd=288, block=256, vocab=32000), gbs=512, mbs=128, lr=5e-4, max_tokens=9.7e9
|
| 50 |
+
- microllama.yaml: micro-llama-300M, seq=2048, gbs=48 (4×4090 24G), mbs=12, lr=4e-4, max_tokens=3e12
|
| 51 |
+
- tinyllama.yaml: tiny-llama-1.1b, seq=2048, gbs=512, mbs=4, lr=4e-4, warmup=2000, max_tokens=3e12
|
| 52 |
+
- debug.yaml: pythia-14m, gbs=125, mbs=5, lr=6e-4, max_tokens=1e8
|
| 53 |
+
|
| 54 |
+
## modded-nanogpt (README)
|
| 55 |
+
- țintă: 3.28 val loss FineWeb = GPT-2 124M
|
| 56 |
+
- <40s pe 8×H100; <330M tokens (vs 10B la llm.c)
|
| 57 |
+
- tehnici: rotary, QK-Norm, ReLU², Muon optimizer, FP8 head/MLP/QKV, zero-init proj, skip connections,
|
| 58 |
+
extra value embeddings, FA3 sliding-window (Gemma2-style) + YaRN warmup, EoS-aligned batch starts
|
| 59 |
+
|
| 60 |
+
## Datasets sintetice VERIFICATE
|
| 61 |
+
- teknium/OpenHermes-2.5: 18,596 dl, 913 ★; 1M sample; tag 'synthetic','GPT-4','Distillation'
|
| 62 |
+
structură reală (stream): [{"conversations":[{"from":"human","value":...},{"from":"gpt","value":...}],
|
| 63 |
+
"source":"airoboros2.2","category":"orca","skip_prompt_formatting":false}, ...]
|
| 64 |
+
surse: Airoboros 2.2, CamelAI, LMSys ChatBot Arena (GPT-4 only), CoT-Alpaca-GPT4 etc.
|
| 65 |
+
- HuggingFaceTB/cosmopedia: 22,165 dl, 755 ★; 30M+ doc; tag 'synthetic'
|
| 66 |
+
subseturi (cu n_examples): auto_math_text 1.95M, khanacademy 24k, openstax 126k, stanford 1.02M,
|
| 67 |
+
stories 5.0M, web_samples_v1 12.4M, web_samples_v2 ..., wikihow ...
|
| 68 |
+
format parquet; câmpuri: prompt, text_token_length, text, seed_data, format, audience
|
| 69 |
+
- HuggingFaceTB/smoltalk: 46,692 dl, 443 ★ (SFT SmolLM2)
|
| 70 |
+
- nvidia/OpenMathInstruct-1: 5,305 dl (math CoT sintetic, 1M+)
|
| 71 |
+
- microsoft/orca-math-word-problems-200k: 22,325 dl (Orca reasoning distillation)
|
| 72 |
+
- Magpie-Align/Magpie-Pro-300K-Filtered: 4,271 dl, 56 ★; Magpie-Air-300K-Filtered; Llama-3-Magpie-Pro-1M-v0.1 (518 dl)
|
| 73 |
+
- Open-Orca/OpenOrca: 11,833 dl, 1,607 ★
|
| 74 |
+
- cognitivecomputations/dolphin: configs flan1m-alpaca-uncensored (GPT-4), flan5m-alpaca-uncensored (GPT-3.5)
|
| 75 |
+
- roneneldan/TinyStories: 111,149 dl, 1,188 ★
|
| 76 |
+
|
| 77 |
+
## Zephyr-7b-beta (README): DPO hyperparemti REALI
|
| 78 |
+
- lr=5e-7, train_batch=2, num_devices=16 (total 32), 3 epoci, warmup_ratio 0.1, linear, AdamW eps 1e-8
|
| 79 |
+
- DPO final: loss 0.7496, rewards/acc 0.7812, margins 3.7963
|
| 80 |
+
- SFT pe UltraChat-200k, apoi DPO pe UltraFeedback (distilat GPT-4)
|
| 81 |
+
|
| 82 |
+
## Dolphin (erichartford.com/dolphin + dataset card)
|
| 83 |
+
- Replicare Orca: ~1M FLANv2 + GPT-4 completions; ~3.5M FLANv2 + GPT-3.5
|
| 84 |
+
- Inclus toate 75k CoT din FLAN-1m; dedup; FILTRAT refuz/evitare/alignment/bias → uncensored
|
| 85 |
+
- Dolphin-2.9-llama3-8b: FFT full-params, ChatML, seq 4k, 2.5 zile pe 8×L40S
|
| 86 |
+
- surse dataset: Dolphin-2.9, OpenHermes-2.5, CodeFeedback, dolphin-coder, samantha-data,
|
| 87 |
+
ultrachat_200k, orca-math-word-problems-200k, SystemChat-1.1, function-calling-chatml, Agent-FLAN
|
| 88 |
+
|
| 89 |
+
## Magpie (repo + paper ICLR 2025, arXiv 2406.08464)
|
| 90 |
+
- generează query+response promptând LLM aliniat DOAR cu pre-query template (fără seed questions)
|
| 91 |
+
- Magpie-Reasoning V2: 250K, cu rationale step-by-step
|
| 92 |
+
|
| 93 |
+
## NanoGPT pe 2×T4 (GitHub issue #539, răspuns real)
|
| 94 |
+
- torchrun --standalone --nproc_per_node=2 train.py config/train_gpt2.py (DDP standard)
|
| 95 |
+
|
| 96 |
+
## litgpt issue #2223 (Colab/T4)
|
| 97 |
+
- utilizator raportează rularea pretrain cu precision bf16-mixed pe T4 în Colab
|
| 98 |
+
|
| 99 |
+
## Fapt hardware T4 (Turing TU104) — cunoștințe stabile
|
| 100 |
+
- 16GB GDDR6, 320 GB/s, 40 SM, 2560 CUDA, 320 tensor cores
|
| 101 |
+
- FP32 8.1 TFLOPS; FP16 tensor 65 TFLOPS; INT8 130 TOPS
|
| 102 |
+
- NU are unități bfloat16 hardware → bf16 rulează emulat (lent); fp16+GradScaler preferat
|
| 103 |
+
- 2×T4 Kaggle = DDP; P2P/NVLink absent → comunicare prin PCIe
|