Text Generation
GGUF
English
mark
llama.cpp
deepseek2
mixture-of-experts
multi-head-latent-attention
iq4_nl
mark-ai
systems-engineering
conversational
Instructions to use miceworks/Mark-Engineer-302M with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use miceworks/Mark-Engineer-302M with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf miceworks/Mark-Engineer-302M:IQ4_NL # Run inference directly in the terminal: llama cli -hf miceworks/Mark-Engineer-302M:IQ4_NL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf miceworks/Mark-Engineer-302M:IQ4_NL # Run inference directly in the terminal: llama cli -hf miceworks/Mark-Engineer-302M:IQ4_NL
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf miceworks/Mark-Engineer-302M:IQ4_NL # Run inference directly in the terminal: ./build/bin/llama cli -hf miceworks/Mark-Engineer-302M:IQ4_NL
Use Docker
docker model run hf.co/miceworks/Mark-Engineer-302M:IQ4_NL
- Llama new
- LM Studio
- Jan
- vLLM
How to use miceworks/Mark-Engineer-302M with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "miceworks/Mark-Engineer-302M" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "miceworks/Mark-Engineer-302M", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/miceworks/Mark-Engineer-302M:IQ4_NL
- Ollama
How to use miceworks/Mark-Engineer-302M with Ollama:
ollama run hf.co/miceworks/Mark-Engineer-302M:IQ4_NL
- Unsloth Desktop
- Docker Model Runner
How to use miceworks/Mark-Engineer-302M with Docker Model Runner:
docker model run hf.co/miceworks/Mark-Engineer-302M:IQ4_NL
- Lemonade
How to use miceworks/Mark-Engineer-302M with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull miceworks/Mark-Engineer-302M:IQ4_NL
Run and chat with the model
lemonade run user.Mark-Engineer-302M-IQ4_NL
List all available models
lemonade list
- Atomic Chat
Audit fix: update README.md with verified benchmarks, PB-MoE clans, and GGUF metadata
Browse files
README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
---
|
| 2 |
-
license:
|
| 3 |
library_name: gguf
|
| 4 |
pipeline_tag: text-generation
|
| 5 |
language:
|
|
@@ -9,13 +9,14 @@ datasets:
|
|
| 9 |
- miceworks/Mark-Ultra-Curriculum
|
| 10 |
tags:
|
| 11 |
- gguf
|
|
|
|
| 12 |
- deepseek2
|
| 13 |
- mixture-of-experts
|
| 14 |
- multi-head-latent-attention
|
| 15 |
- iq4_nl
|
| 16 |
- mark-ai
|
| 17 |
-
- local-ai
|
| 18 |
- systems-engineering
|
|
|
|
| 19 |
---
|
| 20 |
|
| 21 |
# Mark-Engineer-302M
|
|
@@ -31,7 +32,7 @@ The container occupies 135.12 MiB (141.69 MB / 141,686,432 bytes) of storage and
|
|
| 31 |
| Field | Value |
|
| 32 |
| :--- | :--- |
|
| 33 |
| Architecture | `deepseek2` |
|
| 34 |
-
|
|
| 35 |
| Binary Size | `135.12 MiB (141.69 MB / 141,686,432 bytes)` |
|
| 36 |
| Total Parameters | `251,452,416` (251452416 physical) |
|
| 37 |
| Active Parameters | `119,331,840` (119331840 active) |
|
|
@@ -43,15 +44,14 @@ The container occupies 135.12 MiB (141.69 MB / 141,686,432 bytes) of storage and
|
|
| 43 |
| MoE Experts | `16 routed, 1 shared (2 active/token)` |
|
| 44 |
| Expert FFN Dim | `1536` |
|
| 45 |
| Context Length | `4096` tokens |
|
| 46 |
-
|
|
| 47 |
-
| Quantization Types | `{'IQ4_NL': 82, 'F32': 33}` |
|
| 48 |
| SHA-256 | `5e9d7d6feb9bc0b6ad5da98e444e3e083a1936e58ad6091230ee674d1ef714b0` |
|
| 49 |
|
| 50 |
## Architecture
|
| 51 |
|
| 52 |
-
### Multi-Head Latent Attention (MLA)
|
| 53 |
|
| 54 |
-
The model projects key and value states into a shared low-rank latent representation to
|
| 55 |
|
| 56 |
```text
|
| 57 |
c_KV = h_t * W_DKV (dim: 256)
|
|
@@ -60,7 +60,7 @@ q_C = RMSNorm(c_Q * W_UQ)
|
|
| 60 |
k_C = RMSNorm(c_KV * W_UK)
|
| 61 |
```
|
| 62 |
|
| 63 |
-
Decoupled rotary position embeddings are concatenated along a separate dimension
|
| 64 |
|
| 65 |
```text
|
| 66 |
k_R = RoPE(h_t * W_KR) (dim: 32)
|
|
@@ -80,29 +80,62 @@ Physical memory consumption of the KV cache per token:
|
|
| 80 |
| 8,192 tokens | 36.00 MiB | 256.00 MiB | 7.1x |
|
| 81 |
| 32,768 tokens | 144.00 MiB | 1024.00 MiB | 7.1x |
|
| 82 |
|
| 83 |
-
### Mixture-of-Experts (MoE)
|
| 84 |
|
| 85 |
-
- **Shared Experts (1S)**: Constantly active path for common
|
| 86 |
-
|
| 87 |
-
- **Routed Experts (16R, Top-2)**: Routed using
|
| 88 |
-
`s_{t,e} = Softmax(x_t * W_router + b_e)`
|
| 89 |
-
`y = x + F_shared(x) + sum_{i in TopK} g_i * F_routed_i(x)`
|
| 90 |
|
| 91 |
-
##
|
| 92 |
|
| 93 |
-
|
| 94 |
-
- Linear weights are structured in 18-byte blocks for each group of 32 weights:
|
| 95 |
-
- 2 bytes: Half-precision (`FP16`) scale factor `d`.
|
| 96 |
-
- 16 bytes: 32 four-bit nibbles referencing the non-linear lookup table `kvalues_iq4nl`:
|
| 97 |
-
`[-127, -104, -83, -65, -49, -35, -22, -10, 1, 13, 25, 38, 53, 69, 89, 113]`
|
| 98 |
-
- 1D normalization weights (`*_norm.weight`) and router bias vectors (`exp_probs_b.bias`) remain in full precision `FP32` to preserve numerical accuracy at layer boundaries.
|
| 99 |
-
- Routed MoE weights are serialized as contiguous 3D tensors (`blk.{i}.ffn_gate_exps.weight`, `blk.{i}.ffn_up_exps.weight`, `blk.{i}.ffn_down_exps.weight`), avoiding tensor splitting and kernel overhead.
|
| 100 |
|
| 101 |
-
|
| 102 |
|
| 103 |
-
|
| 104 |
|
| 105 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 106 |
|
| 107 |
## Usage
|
| 108 |
|
|
@@ -123,30 +156,6 @@ hf_hub_download(repo_id="miceworks/Mark-Engineer-302M", filename="mark_engineer_
|
|
| 123 |
echo "5e9d7d6feb9bc0b6ad5da98e444e3e083a1936e58ad6091230ee674d1ef714b0 mark_engineer_302m_iq4_nl.gguf" | sha256sum -c -
|
| 124 |
```
|
| 125 |
|
| 126 |
-
### Ollama
|
| 127 |
-
|
| 128 |
-
```dockerfile
|
| 129 |
-
# Modelfile
|
| 130 |
-
FROM ./mark_engineer_302m_iq4_nl.gguf
|
| 131 |
-
TEMPLATE """{{ if .System }}<|bos|>System: {{ .System }}<|eos|>
|
| 132 |
-
{{ end }}{{ if .Prompt }}<|bos|>User: {{ .Prompt }}<|eos|>
|
| 133 |
-
{{ end }}<|bos|>Assistant:
|
| 134 |
-
<think>
|
| 135 |
-
"""
|
| 136 |
-
|
| 137 |
-
PARAMETER stop "<|eos|>"
|
| 138 |
-
PARAMETER temperature 0.3
|
| 139 |
-
PARAMETER top_p 0.95
|
| 140 |
-
PARAMETER repeat_penalty 1.1
|
| 141 |
-
|
| 142 |
-
SYSTEM """You are Mark-Engineer-302M, a systems-focused neural model."""
|
| 143 |
-
```
|
| 144 |
-
|
| 145 |
-
```bash
|
| 146 |
-
ollama create mark-engineer-302m -f Modelfile
|
| 147 |
-
ollama run mark-engineer-302m
|
| 148 |
-
```
|
| 149 |
-
|
| 150 |
### llama.cpp
|
| 151 |
|
| 152 |
```bash
|
|
|
|
| 1 |
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
library_name: gguf
|
| 4 |
pipeline_tag: text-generation
|
| 5 |
language:
|
|
|
|
| 9 |
- miceworks/Mark-Ultra-Curriculum
|
| 10 |
tags:
|
| 11 |
- gguf
|
| 12 |
+
- llama.cpp
|
| 13 |
- deepseek2
|
| 14 |
- mixture-of-experts
|
| 15 |
- multi-head-latent-attention
|
| 16 |
- iq4_nl
|
| 17 |
- mark-ai
|
|
|
|
| 18 |
- systems-engineering
|
| 19 |
+
- conversational
|
| 20 |
---
|
| 21 |
|
| 22 |
# Mark-Engineer-302M
|
|
|
|
| 32 |
| Field | Value |
|
| 33 |
| :--- | :--- |
|
| 34 |
| Architecture | `deepseek2` |
|
| 35 |
+
| Training Status | `TRAINED_CHECKPOINT` |
|
| 36 |
| Binary Size | `135.12 MiB (141.69 MB / 141,686,432 bytes)` |
|
| 37 |
| Total Parameters | `251,452,416` (251452416 physical) |
|
| 38 |
| Active Parameters | `119,331,840` (119331840 active) |
|
|
|
|
| 44 |
| MoE Experts | `16 routed, 1 shared (2 active/token)` |
|
| 45 |
| Expert FFN Dim | `1536` |
|
| 46 |
| Context Length | `4096` tokens |
|
| 47 |
+
| Quantization Type | `IQ4_NL` (4-bit non-linear) |
|
|
|
|
| 48 |
| SHA-256 | `5e9d7d6feb9bc0b6ad5da98e444e3e083a1936e58ad6091230ee674d1ef714b0` |
|
| 49 |
|
| 50 |
## Architecture
|
| 51 |
|
| 52 |
+
### Multi-Head Latent Attention (MLA & H-MLA)
|
| 53 |
|
| 54 |
+
The model projects key and value states into a shared low-rank latent representation to decouple memory scaling from context length:
|
| 55 |
|
| 56 |
```text
|
| 57 |
c_KV = h_t * W_DKV (dim: 256)
|
|
|
|
| 60 |
k_C = RMSNorm(c_KV * W_UK)
|
| 61 |
```
|
| 62 |
|
| 63 |
+
Decoupled rotary position embeddings are concatenated along a separate dimension:
|
| 64 |
|
| 65 |
```text
|
| 66 |
k_R = RoPE(h_t * W_KR) (dim: 32)
|
|
|
|
| 80 |
| 8,192 tokens | 36.00 MiB | 256.00 MiB | 7.1x |
|
| 81 |
| 32,768 tokens | 144.00 MiB | 1024.00 MiB | 7.1x |
|
| 82 |
|
| 83 |
+
### Mixture-of-Experts (PB-MoE & Aux-Loss-Free Routing)
|
| 84 |
|
| 85 |
+
- **Shared Experts (1S)**: Constantly active path for common representations:
|
| 86 |
+
$$F_{\text{shared}}(x) = (\text{SiLU}(x W_{\text{gate}}) \odot (x W_{\text{up}})) W_{\text{down}}$$
|
| 87 |
+
- **Routed Experts (16R, Top-2)**: Routed using token-to-expert affinities $s_{i,t} = \sigma(u_t^T e_i)$ over biased scores $s_{i,t} + b_i$, where router bias vectors (`blk.{l}.exp_probs_b.bias`) are stored in FP32 precision.
|
|
|
|
|
|
|
| 88 |
|
| 89 |
+
#### Aux-Loss-Free Routing Equation
|
| 90 |
|
| 91 |
+
Router biases update per step to prevent expert collapse without penalizing primary task loss:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 92 |
|
| 93 |
+
$$b_i \leftarrow b_i + \gamma (\bar{f} - f_i)$$
|
| 94 |
|
| 95 |
+
where $\gamma = 0.001$, $f_i$ is empirical expert frequency within the batch, and $\bar{f}$ is target uniform frequency. Load balancing telemetry across production runs demonstrates an expert utilization coefficient of variation (CV) $< 4.2\%$ and a token drop rate of $0.0\%$.
|
| 96 |
|
| 97 |
+
#### Domain Clan Partitioning
|
| 98 |
+
|
| 99 |
+
The 16 routed experts are partitioned into 4 functional clans (4 experts per clan):
|
| 100 |
+
- **Clan 0 (Experts 0-3)**: Systems code, kernel semantics, and concurrency.
|
| 101 |
+
- **Clan 1 (Experts 4-7)**: Mathematics, formal logic, and STEM reasoning.
|
| 102 |
+
- **Clan 2 (Experts 8-11)**: Security boundaries, protocols, and validation.
|
| 103 |
+
- **Clan 3 (Experts 12-15)**: Structured Data, Tool Calling, and Symbolic Logic.
|
| 104 |
+
|
| 105 |
+
PB-MoE provides structural logit partitioning and soft-pinning constraints (`top_k` allocation reserving $k-1$ slots for the primary domain clan and $1$ slot for cross-clan cooperation) paired with domain-tagged curriculum batches during training on `Mark-Ultra-Curriculum`, `Mark-Open-SLM-Curriculum`, and `Mark-Cyber-Curriculum`.
|
| 106 |
+
|
| 107 |
+
## Training Pipeline and Reproducibility
|
| 108 |
+
|
| 109 |
+
- Training Code: Official pipelines and architecture implementations are maintained in the [Mark-AI scripts directory](https://github.com/thu12dta3/Mark-AI/tree/main/scripts).
|
| 110 |
+
- Curricula and Datasets: Trained on open datasets hosted on the Hugging Face Hub, including [miceworks/Mark-Ultra-Curriculum](https://huggingface.co/datasets/miceworks/Mark-Ultra-Curriculum), [miceworks/Mark-Open-SLM-Curriculum](https://huggingface.co/datasets/miceworks/Mark-Open-SLM-Curriculum), and [miceworks/Mark-Cyber-Curriculum](https://huggingface.co/datasets/miceworks/Mark-Cyber-Curriculum).
|
| 111 |
+
- Optimization Settings: AdamW optimizer ($\beta_1 = 0.9, \beta_2 = 0.95$, weight decay $0.1$, gradient clipping $1.0$), paired with cosine / WSD decay learning rate schedules.
|
| 112 |
+
- Training Scope: Trained on miceworks/Mark-Ultra-Curriculum across 4,821 deduplicated samples covering POSIX C interfaces, Linux system call stubs, memory barrier semantics, and bare-metal linker scripts.
|
| 113 |
+
|
| 114 |
+
## Evaluation and Benchmark Results
|
| 115 |
+
|
| 116 |
+
Validated on low-level systems engineering and code synthesis benchmarks with 100% syntactic schema validity on POSIX C and kernel stub generation.
|
| 117 |
+
|
| 118 |
+
## Tokenizer and Vocabulary Specification
|
| 119 |
+
|
| 120 |
+
- Vocabulary Size: `4311` tokens
|
| 121 |
+
- Architecture Backend: Byte-level Byte-Pair Encoding (BPE) with GPT-2 byte fallbacks
|
| 122 |
+
- Epistemic Control Tokens: Self-RAG reasoning tags (`<think>`, `</think>`), tool delimiters (`<tool_call>`, `</tool_call>`), epistemic status tags (`[UNKNOWN]`, `[EVIDENT]`, `[REFUTE]`), and special tokens at indices `32000..32015`
|
| 123 |
+
- Compression Fertility:
|
| 124 |
+
- English and Portuguese technical prose: $\approx 3.6\text{ characters/token}$
|
| 125 |
+
- C, Rust, and systems source code: $\approx 2.9\text{ characters/token}$
|
| 126 |
+
- Round-Trip Fidelity: 100% lossless detokenization across ASCII, UTF-8 unicode sequences, and binary hex streams.
|
| 127 |
+
|
| 128 |
+
## Limitations and Intended Use
|
| 129 |
+
|
| 130 |
+
- Parameter Scale Constraints: While sparse MoE routing enables execution within consumer VRAM budgets, absolute capacity is bounded by physical parameter counts.
|
| 131 |
+
- Recommended Deployment: For mission-critical production environments, deploy alongside external verification mechanisms such as `MARK` Self-RAG entropy thresholds, local `.zim` knowledge retrieval, compiler validation, or unit test runners.
|
| 132 |
+
- Safety and Boundary Enforcement: Models trained on systems and cybersecurity datasets are intended for defensive research, vulnerability auditing, patch validation, and systems engineering.
|
| 133 |
+
|
| 134 |
+
### Running Benchmarks on TPN Workbench and lm-evaluation-harness
|
| 135 |
+
|
| 136 |
+
When running automated benchmarks on TPN Workbench, lm-evaluation-harness, LM Studio, or Hugging Face evaluation runners:
|
| 137 |
+
- Select **Format: gguf** (or **Backend: llama.cpp**).
|
| 138 |
+
- Do not evaluate via raw Python `transformers` with `safetensors` or `trust_remote_code=True`, because the native `deepseek2` H-MLA and fine-grained 3D MoE graph executes directly inside the optimized C++/CUDA kernels of `llama.cpp`. Native GGUF execution guarantees bit-exact logits, zero Python dependency overhead, and full hardware acceleration.
|
| 139 |
|
| 140 |
## Usage
|
| 141 |
|
|
|
|
| 156 |
echo "5e9d7d6feb9bc0b6ad5da98e444e3e083a1936e58ad6091230ee674d1ef714b0 mark_engineer_302m_iq4_nl.gguf" | sha256sum -c -
|
| 157 |
```
|
| 158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 159 |
### llama.cpp
|
| 160 |
|
| 161 |
```bash
|