wassname commited on
Commit
b24e336
·
verified ·
1 Parent(s): 9f2f7a3

Create README.md

Browse files
Files changed (1) hide show
  1. README.md +69 -0
README.md ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model:
3
+ - google/gemma-3-1b-it
4
+ tags:
5
+ - tunix
6
+ - jax
7
+ ---
8
+ tiny random Gemma 3 model (5 layers) for tunix
9
+
10
+
11
+ ```py
12
+ """Create a tiny random Gemma 3 model (5 layers) and upload to HuggingFace.
13
+
14
+ One-off script. The model is text-only with random weights, intended for
15
+ fast smoke tests with tunix/JAX
16
+
17
+ Usage: uv run python scripts/create_tiny_gemma3.py
18
+ """
19
+
20
+ import torch
21
+ from transformers import (
22
+ AutoTokenizer,
23
+ GenerationConfig,
24
+ set_seed,
25
+ )
26
+ from transformers.models.gemma3 import Gemma3ForCausalLM, Gemma3TextConfig
27
+ from huggingface_hub import HfApi
28
+
29
+ source_model_id = "google/gemma-3-1b-it"
30
+ repo_id = "wassname/gemma3-5lyr-tiny-random"
31
+ save_folder = "/tmp/tiny-random/gemma3-5lyr"
32
+
33
+ # Tokenizer from source (same vocab)
34
+ tokenizer = AutoTokenizer.from_pretrained(source_model_id)
35
+ tokenizer.save_pretrained(save_folder)
36
+
37
+ # Tiny text-only config matching tunix ModelConfig in model.py
38
+ config = Gemma3TextConfig(
39
+ vocab_size=262144,
40
+ hidden_size=64,
41
+ intermediate_size=128,
42
+ num_hidden_layers=5,
43
+ num_attention_heads=2,
44
+ head_dim=32,
45
+ num_key_value_heads=1,
46
+ sliding_window=512,
47
+ tie_word_embeddings=True,
48
+ )
49
+ config._name_or_path = source_model_id
50
+
51
+ model = Gemma3ForCausalLM(config).to(torch.bfloat16)
52
+
53
+ # Random init
54
+ set_seed(42)
55
+ with torch.no_grad():
56
+ for name, p in sorted(model.named_parameters()):
57
+ torch.nn.init.normal_(p, 0, 0.5)
58
+ print(name, p.shape)
59
+
60
+ model.generation_config = GenerationConfig.from_pretrained(source_model_id)
61
+ model.save_pretrained(save_folder)
62
+
63
+ # Upload
64
+ api = HfApi()
65
+ api.create_repo(repo_id, exist_ok=True)
66
+ api.upload_folder(folder_path=save_folder, repo_id=repo_id)
67
+ print(f"Uploaded to https://huggingface.co/{repo_id}")
68
+
69
+ ```