Text Generation
MLX
Safetensors
English
metal
apple-silicon
causal-lm
transformer
from-scratch
learning-project
wikitext
Instructions to use cjnielson44/grizzly-mini-transformer with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use cjnielson44/grizzly-mini-transformer with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # if on a CUDA device, also pip install mlx[cuda] # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("cjnielson44/grizzly-mini-transformer") prompt = "Once upon a time in" text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- MLX LM
How to use cjnielson44/grizzly-mini-transformer with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Generate some text mlx_lm.generate --model "cjnielson44/grizzly-mini-transformer" --prompt "Once upon a time"
- Atomic Chat
Download load_model.py from cjnielson44/grizzly-mini-transformer: direct link, hf CLI and curl.
- Browser
- Download file 1.22 kB
-
https://huggingface.co/cjnielson44/grizzly-mini-transformer/resolve/main/load_model.py
- Command line
-
hf download hf://cjnielson44/grizzly-mini-transformer/load_model.py
-
curl -L -o load_model.py https://huggingface.co/cjnielson44/grizzly-mini-transformer/resolve/main/load_model.py
1.22 kB
| import json | |
| import mlx.core as mx | |
| import mlx.nn as nn | |
| from src.tokenizer import BPETokenizer | |
| from src.transformer import MLXGPT as GPT | |
| def build_model(config_path: str = "config.json") -> GPT: | |
| with open(config_path) as f: | |
| config = json.load(f) | |
| return GPT( | |
| vocab_size=config["vocab_size"], | |
| embedding_dim=config["embedding_dim"], | |
| num_layers=config["num_layers"], | |
| num_heads=config["num_heads"], | |
| num_query_groups=config["num_query_groups"], | |
| hidden_dim=config["hidden_dim"], | |
| max_seq_len=config["max_seq_len"], | |
| dropout=0.0, | |
| ) | |
| def main(): | |
| device = mx.default_device() | |
| print(f"Running on {device}") | |
| model = build_model() | |
| model.load_weights("model.safetensors") | |
| model.eval() | |
| mx.eval(model.parameters()) | |
| tokenizer = BPETokenizer.load("tokenizer") | |
| prompt = "The future of machine learning" | |
| prompt_ids = mx.array([tokenizer.encode(prompt)], dtype=mx.int32) | |
| generated = model.generate( | |
| prompt_ids, | |
| max_new_tokens=40, | |
| temperature=0.8, | |
| top_k=50, | |
| ) | |
| mx.eval(generated) | |
| print(tokenizer.decode(generated[0].tolist())) | |
| if __name__ == "__main__": | |
| main() | |