nabin2004/nebium-medium
0
Nebium-Medium (306.6M)
Nebium-Medium is a 345-million-parameter causal Transformer balancing sequence quality and inference throughput for production evaluation.
- PyTorch Repository: nabin2004/nebium-medium
- GGUF Repository: nabin2004/nebium-medium-gguf
- Source Repository: github.com/nabin2004/nebium
Nebium Model Family Architecture Overview
Architectural Primitives:
- Rotary Position Embeddings (RoPE) on attention query and key projections ($\theta = 10000$)
- SwiGLU feed-forward transformation
- RMSNorm pre-normalization
- Causal mask with padding token masking
- Byte-Pair Encoding (BPE) tokenizer trained on UCI move plies
Architectural Specifications
Validation & Benchmark Results
Scaling Law Analysis (Hoffmann et al. 2022)
Chinchilla power-law formulation:
$$L(N, D) = 1.69 + \frac{406.4}{N^{0.34}} + \frac{410.7}{D^{0.28}}$$
Python Usage Example
import json
import torch
from src.models.transformer.nebium import Nebium
from src.data.tokenizer import ChessTokenizer
tokenizer = ChessTokenizer()
tokenizer.load("tokenizer.json")
with open("model_config.json", "r", encoding="utf-8") as f:
config = json.load(f)
model = Nebium(**config)
state_dict = torch.load("model.pt", map_location="cpu", weights_only=True)
model.load_state_dict(state_dict)
model.eval()
prompt = "e2e4 e7e5 g1f3"
input_ids = torch.tensor([[tokenizer.bos_id] + tokenizer.encode(prompt)], dtype=torch.long)
attention_mask = torch.ones_like(input_ids)
with torch.no_grad():
output = model.generate(input_ids, attention_mask, max_new_tokens=10, temperature=0.7)
print("Continuation:", tokenizer.decode(output[0].tolist()))License
MIT License.
