← back to Exo
formatted changes
fbec1d2b10ccf3a804294c0742b69d508f7b5fb8 · 2024-11-08 15:47:40 -0600 · Ogden Wells
Files touched
M exo/inference/tinygrad/inference.pyM exo/inference/tinygrad/models/llama.py
Diff
commit fbec1d2b10ccf3a804294c0742b69d508f7b5fb8
Author: Ogden Wells <ooohhhwells@gmail.com>
Date: Fri Nov 8 15:47:40 2024 -0600
formatted changes
---
exo/inference/tinygrad/inference.py | 14 +++++++++++---
exo/inference/tinygrad/models/llama.py | 4 ++--
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/exo/inference/tinygrad/inference.py b/exo/inference/tinygrad/inference.py
index 2b66c63d..38c67ec3 100644
--- a/exo/inference/tinygrad/inference.py
+++ b/exo/inference/tinygrad/inference.py
@@ -22,9 +22,17 @@ TOP_P = 0.9
ALPHA_F = 0.1
ALPHA_P = 0.0
MODEL_PARAMS = {
- "1B": {"args": {"dim": 2048, "n_heads": 32, "n_kv_heads": 8, "n_layers": 16, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 8192, "rope_scaling": {"factor": 32.0, "high_freq_factor": 4.0, "low_freq_factor": 1.0, "original_max_position_embeddings": 8192, "rope_type": "llama3"}, "tie_word_embeddings": True}, "files": 1},
- "3B": {"args": {"dim": 3072, "n_heads": 24, "n_kv_heads": 8, "n_layers": 28, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 8192, "rope_scaling": {"factor": 32.0, "high_freq_factor": 4.0, "low_freq_factor": 1.0, "original_max_position_embeddings": 8192, "rope_type": "llama3"}, "tie_word_embeddings": True}, "files": 1},
- "8B": {"args": {"dim": 4096, "n_heads": 32, "n_kv_heads": 8, "n_layers": 32, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 14336}, "files": 1},
+ "1B": {
+ "args": {
+ "dim": 2048, "n_heads": 32, "n_kv_heads": 8, "n_layers": 16, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 8192,
+ "rope_scaling": {"factor": 32.0, "high_freq_factor": 4.0, "low_freq_factor": 1.0, "original_max_position_embeddings": 8192, "rope_type": "llama3"}, "tie_word_embeddings": True
+ }, "files": 1
+ }, "3B": {
+ "args": {
+ "dim": 3072, "n_heads": 24, "n_kv_heads": 8, "n_layers": 28, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 8192,
+ "rope_scaling": {"factor": 32.0, "high_freq_factor": 4.0, "low_freq_factor": 1.0, "original_max_position_embeddings": 8192, "rope_type": "llama3"}, "tie_word_embeddings": True
+ }, "files": 1
+ }, "8B": {"args": {"dim": 4096, "n_heads": 32, "n_kv_heads": 8, "n_layers": 32, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 14336}, "files": 1},
"70B": {"args": {"dim": 8192, "n_heads": 64, "n_kv_heads": 8, "n_layers": 80, "norm_eps": 1e-5, "rope_theta": 500000, "vocab_size": 128256, "hidden_dim": 28672}, "files": 8}
}
diff --git a/exo/inference/tinygrad/models/llama.py b/exo/inference/tinygrad/models/llama.py
index f94343ce..0171d71a 100644
--- a/exo/inference/tinygrad/models/llama.py
+++ b/exo/inference/tinygrad/models/llama.py
@@ -14,8 +14,8 @@ def precompute_freqs_cis(dim: int, end: int, theta: float = 10000.0, dtype=dtype
original_max_pos_emb = rope_scaling.get('original_max_position_embeddings', end)
freqs[:dim // 4] *= low_freq_factor
- freqs[dim // 4:] = freqs[dim // 4:].contiguous() * high_freq_factor
- freqs *= (original_max_pos_emb / end) ** (1.0 / factor)
+ freqs[dim // 4:] = freqs[dim // 4:].contiguous()*high_freq_factor
+ freqs *= (original_max_pos_emb/end)**(1.0/factor)
freqs = Tensor.arange(end).unsqueeze(dim=1)*freqs.unsqueeze(dim=0)
# TODO: move dtype outside this
← af01b23a added rope_scaling and tie_word_embeddings to llama transfor
·
back to Exo
·
update mlx to 0.20.0, mlx-lm to 0.19.3 83d4d2b3 →