8a66b9086a
- Started from ac75faa (initial E4B-MarkBase integration)
- Kept Sources/ (all engine code) + Package.swift + .gitignore
- Removed all ad-hoc tests, documentation, scripts, Python files
- Added Tests/00_Unit/ (MathTest, TokenizerTest, SamplerTest)
- Added .gitea/workflows/ci.yaml (build + unit tests + lint)
- Added Scripts/check_resources.sh (memory-aware test runner)
- Added Tests/Manifest.json (resource requirements for all tests)
- Focus: 4-bit quantized models only
111 lines
2.9 KiB
JSON
111 lines
2.9 KiB
JSON
{
|
|
"version": "1.0",
|
|
"description": "MarkBaseEngine v2 test manifest - resource requirements for each test",
|
|
"tests": {
|
|
"00_Unit/MathTest.swift": {
|
|
"tier": 0,
|
|
"memory_gb": 0,
|
|
"gpu": false,
|
|
"model": null,
|
|
"timeout_seconds": 30,
|
|
"schedule": "always"
|
|
},
|
|
"00_Unit/TokenizerTest.swift": {
|
|
"tier": 0,
|
|
"memory_gb": 0.1,
|
|
"gpu": false,
|
|
"model": "E4B-MarkBase (tokenizer only)",
|
|
"timeout_seconds": 30,
|
|
"schedule": "always"
|
|
},
|
|
"00_Unit/SamplerTest.swift": {
|
|
"tier": 0,
|
|
"memory_gb": 0,
|
|
"gpu": false,
|
|
"model": null,
|
|
"timeout_seconds": 30,
|
|
"schedule": "always"
|
|
}
|
|
},
|
|
"models": {
|
|
"E4B-MarkBase": {
|
|
"path": "models/E4B-MarkBase",
|
|
"format": "markbase-4bit",
|
|
"params": "8.5B",
|
|
"weight_gb": 4.4,
|
|
"memory_gb": 6,
|
|
"multimodal": false,
|
|
"status": "available",
|
|
"notes": "Text-only produces gibberish - expected behavior for multimodal model"
|
|
},
|
|
"gemma-4-e2b-it-4bit": {
|
|
"path": "models/gemma-4-e2b-it-4bit",
|
|
"format": "markbase-4bit",
|
|
"params": "2B",
|
|
"weight_gb": 1,
|
|
"memory_gb": 2,
|
|
"multimodal": true,
|
|
"status": "available"
|
|
},
|
|
"gemma-4-26b-standard": {
|
|
"path": "models/gemma-4-26b-standard",
|
|
"format": "markbase-4bit",
|
|
"params": "26B",
|
|
"weight_gb": 15,
|
|
"memory_gb": 20,
|
|
"multimodal": false,
|
|
"status": "available",
|
|
"notes": "Dense model (not MoE)"
|
|
},
|
|
"gemma-4-26b-a4b-it-4bit": {
|
|
"path": "models/gemma-4-26b-a4b-it-4bit",
|
|
"format": "markbase-4bit",
|
|
"params": "26B MoE",
|
|
"weight_gb": 15,
|
|
"memory_gb": 20,
|
|
"multimodal": false,
|
|
"status": "degraded",
|
|
"notes": "Layer 3 weights missing - known NaN on layer 3"
|
|
},
|
|
"gemma-4-31b-it-4bit": {
|
|
"path": "models/gemma-4-31b-it-4bit",
|
|
"format": "markbase-4bit",
|
|
"params": "31B",
|
|
"weight_gb": 17,
|
|
"memory_gb": 22,
|
|
"multimodal": false,
|
|
"status": "available"
|
|
},
|
|
"gemma-4-12b-it-4bit": {
|
|
"path": "models/gemma-4-12b-it-4bit",
|
|
"format": "unknown",
|
|
"params": "12B",
|
|
"weight_gb": 0.008,
|
|
"memory_gb": 0,
|
|
"multimodal": true,
|
|
"status": "unavailable",
|
|
"notes": "Corrupted/incomplete files (8KB only). Full 4-bit 12B needed."
|
|
},
|
|
"12B-it-MLX-8bit": {
|
|
"path": "models/12B-it-MLX-8bit",
|
|
"format": "mlx-8bit",
|
|
"params": "12B",
|
|
"weight_gb": 12,
|
|
"memory_gb": 16,
|
|
"multimodal": false,
|
|
"status": "unavailable",
|
|
"notes": "MLX format, missing Vision/Audio towers. Not 4-bit. Skip v2."
|
|
},
|
|
"E4B-bf16": {
|
|
"path": "models/E4B-bf16",
|
|
"format": "bf16",
|
|
"params": "8.5B",
|
|
"weight_gb": 15,
|
|
"memory_gb": 20,
|
|
"multimodal": false,
|
|
"status": "unavailable",
|
|
"notes": "bf16 format, not 4-bit. Skip v2 Phase 1."
|
|
}
|
|
}
|
|
}
|