applexml quwsarohi commited on
Commit
4cc2d93
·
0 Parent(s):

Duplicate from quwsarohi/NanoAgent-135M

Browse files

Co-authored-by: Quwsar Ohi <quwsarohi@users.noreply.huggingface.co>

.gitattributes ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ model.gguf filter=lfs diff=lfs merge=lfs -text
Modelfile ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ TEMPLATE """{{- if .Messages }}
2
+ {{- if .System }}<|im_start|>system
3
+ {{ .System }}<|im_end|>
4
+ {{ end }}
5
+ {{- range $i, $_ := .Messages }}
6
+ {{- $last := eq (len (slice $.Messages $i)) 1 -}}
7
+ {{- if eq .Role "user" }}<|im_start|>user
8
+ {{ .Content }}<|im_end|>
9
+ {{ else if eq .Role "assistant" }}<|im_start|>assistant
10
+ {{ .Content }}{{ if not $last }}<|im_end|>
11
+ {{ end }}
12
+ {{- end }}
13
+ {{- if and (ne .Role "assistant") $last }}<|im_start|>assistant
14
+ {{ end }}
15
+ {{- end }}
16
+ {{- else }}
17
+ {{- if .System }}<|im_start|>system
18
+ {{ .System }}<|im_end|>
19
+ {{ end }}{{ if .Prompt }}<|im_start|>user
20
+ {{ .Prompt }}<|im_end|>
21
+ {{ end }}<|im_start|>assistant
22
+ {{ end }}{{ .Response }}{{ if .Response }}<|im_end|>{{ end }}"""
23
+ SYSTEM You are a helpful AI assistant.
24
+ PARAMETER stop <|im_start|>
25
+ PARAMETER stop <|im_end|>
README.md ADDED
@@ -0,0 +1,149 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ license: apache-2.0
5
+ tags:
6
+ - llm
7
+ - tool-calling
8
+ - lightweight
9
+ - agentic-tasks
10
+ - react
11
+ - mlx
12
+ model-index:
13
+ - name: NanoAgent
14
+ results: []
15
+ datasets:
16
+ - microsoft/orca-agentinstruct-1M-v1
17
+ - microsoft/orca-math-word-problems-200k
18
+ - allenai/tulu-3-sft-personas-instruction-following
19
+ - xingyaoww/code-act
20
+ - m-a-p/Code-Feedback
21
+ - weijie210/gsm8k_decomposed
22
+ - Locutusque/function-calling-chatml
23
+ - HuggingFaceTB/smoltalk
24
+ base_model:
25
+ - HuggingFaceTB/SmolLM2-135M-Instruct
26
+ pipeline_tag: text-generation
27
+ ---
28
+
29
+ # 🧠 NanoAgent — 135M Parameter Agentic LLM
30
+
31
+ NanoAgent is a compact 135M parameter, 8k context-length language model trained to **perform tool calls** and **generate responses based on tool outputs**.
32
+ Despite its small size (~135 MB in 8-bit precision), it’s optimized for agentic use cases and runs easily on personal devices.
33
+
34
+ **Github:** [NanoAgent](https://github.com/QuwsarOhi/NanoAgent)
35
+
36
+ **Inference resource:** [link](https://github.com/QuwsarOhi/NanoAgent/blob/main/notebooks/inference.ipynb)
37
+
38
+ ---
39
+
40
+ ## ✨ Features
41
+
42
+ - 🧰 **Tool Calling** — understands and responds with structured outputs from tool calls.
43
+ - 🧭 **Instruction Following** — strong instruction following abilities.
44
+ - 🧠 **Basic Reasoning** — handles lightweight reasoning and ReAct-style interactions.
45
+ - ⚡ **Lightweight** — runs on local hardware with minimal resources.
46
+
47
+ ---
48
+
49
+ ## 🧪 Training Overview
50
+
51
+ **Base model:** [`SmolLM2-135M-Instruct`](https://huggingface.co/HuggingFaceTB/SmolLM2-135M-Instruct)
52
+ **Fine-tuning method:** [Dynamic Fine-Tuning (DFT)](https://github.com/yongliang-wu/DFT/tree/master)
53
+ **Hardware:** Apple Mac M1 (16 GB Unified Memory) using MLX.
54
+
55
+ ### 📚 Datasets Used
56
+ - `microsoft/orca-agentinstruct-1M-v1` — agentic tasks, RAG answers, classification
57
+ - `microsoft/orca-math-word-problems-200k` — lightweight reasoning
58
+ - `allenai/tulu-3-sft-personas-instruction-following` — instruction following
59
+ - `xingyaoww/code-act` — ReAct style reasoning and action
60
+ - `m-a-p/Code-Feedback` — alignment via feedback
61
+ - `HuggingFaceTB/smoltalk` + `/apigen` — tool calling stabilization
62
+ - `weijie210/gsm8k_decomposed` — question decomposition
63
+ - `Locutusque/function-calling-chatml` — tool call response structure
64
+
65
+ ---
66
+
67
+ ## ⚠️ Disclaimer
68
+
69
+ This is a **beta model**.
70
+ - It may produce **incorrect** or **incomplete** outputs.
71
+ - Tool call execution is **basic** and can fail in some cases.
72
+ - Intended for **research and experimentation** only — not production use.
73
+
74
+ ---
75
+
76
+ ## 🧭 Roadmap
77
+
78
+ - ✅ Initial release with DFT fine-tuning
79
+ - 🧪 Benchmarking on agentic tasks
80
+ - ~~🔬 Experimenting with GRPO for tool calling (failed)~~
81
+ - 🧠 Weight merging experiments for improved performance
82
+ - Add more tool calling dataset
83
+
84
+ ---
85
+
86
+ ## 📥 Model Size
87
+
88
+ - 135M parameters
89
+ - ~135 MB in 8-bit precision
90
+ - 8k context length
91
+
92
+ ---
93
+
94
+ ## ⚡ Example Usage
95
+
96
+ ```python
97
+ from transformers import AutoModelForCausalLM, AutoTokenizer
98
+
99
+ model_name = "quwsarohi/NanoAgent-135M"
100
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
101
+ model = AutoModelForCausalLM.from_pretrained(model_name)
102
+
103
+ def inference(messages, max_new_tokens=256, temperature=0.3, min_p=0.15, **kwargs):
104
+ input_text = tokenizer.apply_chat_template(
105
+ messages, tokenize=False, add_generation_prompt=True
106
+ )
107
+ inputs = tokenizer.encode(input_text, return_tensors="pt")
108
+ outputs = model.generate(
109
+ inputs,
110
+ max_new_tokens=max_new_tokens,
111
+ do_sample=True,
112
+ min_p=0.15,
113
+ temperature=temperature,
114
+ **kwargs
115
+ )
116
+ return tokenizer.decode(outputs[0][inputs.shape[1] :], skip_special_tokens=True)
117
+
118
+ messages = [{"role": "user", "content": "Hi! Do you have a name?"}]
119
+ print(inference(messages))
120
+ ```
121
+
122
+ Use the following template for tool calling:
123
+ ```python
124
+ TOOL_TEMPLATE = """You are a helpful AI assistant. You have a set of possible functions/tools inside <tools></tools> tags.
125
+ Based on question, you may need to make one or more function/tool calls to answer user.
126
+
127
+ You have access to the following tools/functions:
128
+ <tools>{tools}</tools>
129
+
130
+ For each function call, return a JSON list object with function name and arguments within <tool_call></tool_call> tags."""
131
+ ```
132
+
133
+ Sample tool call definition:
134
+ ```json
135
+ {
136
+ "name": "web_search",
137
+ "description": "Performs a web search for a query and returns a string of the top search results formatted as markdown with titles, links, and descriptions.",
138
+ "parameters": {
139
+ "type": "object",
140
+ "properties": {
141
+ "query": {
142
+ "type": "string",
143
+ "description": "The search query to perform.",
144
+ }
145
+ },
146
+ "required": ["query"],
147
+ },
148
+ }
149
+ ```
chat_template.jinja ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {% for message in messages %}
2
+ {% if loop.first and messages[0]['role'] != 'system' %}
3
+ {{ '<|im_start|>system
4
+ You are a helpful AI assistant. <|im_end|>' }}
5
+ {% endif %}
6
+ {{'<|im_start|>' + message['role'] + '
7
+ ' + message['content'] + '<|im_end|>'}}
8
+ {% endfor %}
9
+ {% if add_generation_prompt %}
10
+ {{ '<|im_start|>assistant' }}
11
+ {% endif %}
config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "LlamaForCausalLM"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "bos_token_id": 1,
8
+ "eos_token_id": 2,
9
+ "head_dim": 64,
10
+ "hidden_act": "silu",
11
+ "hidden_size": 576,
12
+ "initializer_range": 0.041666666666666664,
13
+ "intermediate_size": 1536,
14
+ "is_llama_config": true,
15
+ "max_position_embeddings": 8192,
16
+ "mlp_bias": false,
17
+ "model_type": "llama",
18
+ "num_attention_heads": 9,
19
+ "num_hidden_layers": 30,
20
+ "num_key_value_heads": 3,
21
+ "pad_token_id": 2,
22
+ "pretraining_tp": 1,
23
+ "rms_norm_eps": 1e-05,
24
+ "rope_interleaved": false,
25
+ "rope_scaling": null,
26
+ "rope_theta": 100000,
27
+ "tie_word_embeddings": true,
28
+ "torch_dtype": "bfloat16",
29
+ "transformers.js_config": {
30
+ "kv_cache_dtype": {
31
+ "fp16": "float16",
32
+ "q4f16": "float16"
33
+ }
34
+ },
35
+ "transformers_version": "4.55.4",
36
+ "use_cache": true,
37
+ "vocab_size": 49152
38
+ }
generation_config.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 1,
4
+ "eos_token_id": 1,
5
+ "pad_token_id": 2,
6
+ "transformers_version": "4.42.3"
7
+ }
merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b788815ccc4faf78f3a7cdd527b4b2306884ddf73a3b770d63e3e791ebf23ca0
3
+ size 269060552
model.safetensors.index.json ADDED
@@ -0,0 +1,280 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "total_size": 269030016,
4
+ "total_parameters": 134515008
5
+ },
6
+ "weight_map": {
7
+ "model.embed_tokens.weight": "model.safetensors",
8
+ "model.layers.0.input_layernorm.weight": "model.safetensors",
9
+ "model.layers.0.mlp.down_proj.weight": "model.safetensors",
10
+ "model.layers.0.mlp.gate_proj.weight": "model.safetensors",
11
+ "model.layers.0.mlp.up_proj.weight": "model.safetensors",
12
+ "model.layers.0.post_attention_layernorm.weight": "model.safetensors",
13
+ "model.layers.0.self_attn.k_proj.weight": "model.safetensors",
14
+ "model.layers.0.self_attn.o_proj.weight": "model.safetensors",
15
+ "model.layers.0.self_attn.q_proj.weight": "model.safetensors",
16
+ "model.layers.0.self_attn.v_proj.weight": "model.safetensors",
17
+ "model.layers.1.input_layernorm.weight": "model.safetensors",
18
+ "model.layers.1.mlp.down_proj.weight": "model.safetensors",
19
+ "model.layers.1.mlp.gate_proj.weight": "model.safetensors",
20
+ "model.layers.1.mlp.up_proj.weight": "model.safetensors",
21
+ "model.layers.1.post_attention_layernorm.weight": "model.safetensors",
22
+ "model.layers.1.self_attn.k_proj.weight": "model.safetensors",
23
+ "model.layers.1.self_attn.o_proj.weight": "model.safetensors",
24
+ "model.layers.1.self_attn.q_proj.weight": "model.safetensors",
25
+ "model.layers.1.self_attn.v_proj.weight": "model.safetensors",
26
+ "model.layers.10.input_layernorm.weight": "model.safetensors",
27
+ "model.layers.10.mlp.down_proj.weight": "model.safetensors",
28
+ "model.layers.10.mlp.gate_proj.weight": "model.safetensors",
29
+ "model.layers.10.mlp.up_proj.weight": "model.safetensors",
30
+ "model.layers.10.post_attention_layernorm.weight": "model.safetensors",
31
+ "model.layers.10.self_attn.k_proj.weight": "model.safetensors",
32
+ "model.layers.10.self_attn.o_proj.weight": "model.safetensors",
33
+ "model.layers.10.self_attn.q_proj.weight": "model.safetensors",
34
+ "model.layers.10.self_attn.v_proj.weight": "model.safetensors",
35
+ "model.layers.11.input_layernorm.weight": "model.safetensors",
36
+ "model.layers.11.mlp.down_proj.weight": "model.safetensors",
37
+ "model.layers.11.mlp.gate_proj.weight": "model.safetensors",
38
+ "model.layers.11.mlp.up_proj.weight": "model.safetensors",
39
+ "model.layers.11.post_attention_layernorm.weight": "model.safetensors",
40
+ "model.layers.11.self_attn.k_proj.weight": "model.safetensors",
41
+ "model.layers.11.self_attn.o_proj.weight": "model.safetensors",
42
+ "model.layers.11.self_attn.q_proj.weight": "model.safetensors",
43
+ "model.layers.11.self_attn.v_proj.weight": "model.safetensors",
44
+ "model.layers.12.input_layernorm.weight": "model.safetensors",
45
+ "model.layers.12.mlp.down_proj.weight": "model.safetensors",
46
+ "model.layers.12.mlp.gate_proj.weight": "model.safetensors",
47
+ "model.layers.12.mlp.up_proj.weight": "model.safetensors",
48
+ "model.layers.12.post_attention_layernorm.weight": "model.safetensors",
49
+ "model.layers.12.self_attn.k_proj.weight": "model.safetensors",
50
+ "model.layers.12.self_attn.o_proj.weight": "model.safetensors",
51
+ "model.layers.12.self_attn.q_proj.weight": "model.safetensors",
52
+ "model.layers.12.self_attn.v_proj.weight": "model.safetensors",
53
+ "model.layers.13.input_layernorm.weight": "model.safetensors",
54
+ "model.layers.13.mlp.down_proj.weight": "model.safetensors",
55
+ "model.layers.13.mlp.gate_proj.weight": "model.safetensors",
56
+ "model.layers.13.mlp.up_proj.weight": "model.safetensors",
57
+ "model.layers.13.post_attention_layernorm.weight": "model.safetensors",
58
+ "model.layers.13.self_attn.k_proj.weight": "model.safetensors",
59
+ "model.layers.13.self_attn.o_proj.weight": "model.safetensors",
60
+ "model.layers.13.self_attn.q_proj.weight": "model.safetensors",
61
+ "model.layers.13.self_attn.v_proj.weight": "model.safetensors",
62
+ "model.layers.14.input_layernorm.weight": "model.safetensors",
63
+ "model.layers.14.mlp.down_proj.weight": "model.safetensors",
64
+ "model.layers.14.mlp.gate_proj.weight": "model.safetensors",
65
+ "model.layers.14.mlp.up_proj.weight": "model.safetensors",
66
+ "model.layers.14.post_attention_layernorm.weight": "model.safetensors",
67
+ "model.layers.14.self_attn.k_proj.weight": "model.safetensors",
68
+ "model.layers.14.self_attn.o_proj.weight": "model.safetensors",
69
+ "model.layers.14.self_attn.q_proj.weight": "model.safetensors",
70
+ "model.layers.14.self_attn.v_proj.weight": "model.safetensors",
71
+ "model.layers.15.input_layernorm.weight": "model.safetensors",
72
+ "model.layers.15.mlp.down_proj.weight": "model.safetensors",
73
+ "model.layers.15.mlp.gate_proj.weight": "model.safetensors",
74
+ "model.layers.15.mlp.up_proj.weight": "model.safetensors",
75
+ "model.layers.15.post_attention_layernorm.weight": "model.safetensors",
76
+ "model.layers.15.self_attn.k_proj.weight": "model.safetensors",
77
+ "model.layers.15.self_attn.o_proj.weight": "model.safetensors",
78
+ "model.layers.15.self_attn.q_proj.weight": "model.safetensors",
79
+ "model.layers.15.self_attn.v_proj.weight": "model.safetensors",
80
+ "model.layers.16.input_layernorm.weight": "model.safetensors",
81
+ "model.layers.16.mlp.down_proj.weight": "model.safetensors",
82
+ "model.layers.16.mlp.gate_proj.weight": "model.safetensors",
83
+ "model.layers.16.mlp.up_proj.weight": "model.safetensors",
84
+ "model.layers.16.post_attention_layernorm.weight": "model.safetensors",
85
+ "model.layers.16.self_attn.k_proj.weight": "model.safetensors",
86
+ "model.layers.16.self_attn.o_proj.weight": "model.safetensors",
87
+ "model.layers.16.self_attn.q_proj.weight": "model.safetensors",
88
+ "model.layers.16.self_attn.v_proj.weight": "model.safetensors",
89
+ "model.layers.17.input_layernorm.weight": "model.safetensors",
90
+ "model.layers.17.mlp.down_proj.weight": "model.safetensors",
91
+ "model.layers.17.mlp.gate_proj.weight": "model.safetensors",
92
+ "model.layers.17.mlp.up_proj.weight": "model.safetensors",
93
+ "model.layers.17.post_attention_layernorm.weight": "model.safetensors",
94
+ "model.layers.17.self_attn.k_proj.weight": "model.safetensors",
95
+ "model.layers.17.self_attn.o_proj.weight": "model.safetensors",
96
+ "model.layers.17.self_attn.q_proj.weight": "model.safetensors",
97
+ "model.layers.17.self_attn.v_proj.weight": "model.safetensors",
98
+ "model.layers.18.input_layernorm.weight": "model.safetensors",
99
+ "model.layers.18.mlp.down_proj.weight": "model.safetensors",
100
+ "model.layers.18.mlp.gate_proj.weight": "model.safetensors",
101
+ "model.layers.18.mlp.up_proj.weight": "model.safetensors",
102
+ "model.layers.18.post_attention_layernorm.weight": "model.safetensors",
103
+ "model.layers.18.self_attn.k_proj.weight": "model.safetensors",
104
+ "model.layers.18.self_attn.o_proj.weight": "model.safetensors",
105
+ "model.layers.18.self_attn.q_proj.weight": "model.safetensors",
106
+ "model.layers.18.self_attn.v_proj.weight": "model.safetensors",
107
+ "model.layers.19.input_layernorm.weight": "model.safetensors",
108
+ "model.layers.19.mlp.down_proj.weight": "model.safetensors",
109
+ "model.layers.19.mlp.gate_proj.weight": "model.safetensors",
110
+ "model.layers.19.mlp.up_proj.weight": "model.safetensors",
111
+ "model.layers.19.post_attention_layernorm.weight": "model.safetensors",
112
+ "model.layers.19.self_attn.k_proj.weight": "model.safetensors",
113
+ "model.layers.19.self_attn.o_proj.weight": "model.safetensors",
114
+ "model.layers.19.self_attn.q_proj.weight": "model.safetensors",
115
+ "model.layers.19.self_attn.v_proj.weight": "model.safetensors",
116
+ "model.layers.2.input_layernorm.weight": "model.safetensors",
117
+ "model.layers.2.mlp.down_proj.weight": "model.safetensors",
118
+ "model.layers.2.mlp.gate_proj.weight": "model.safetensors",
119
+ "model.layers.2.mlp.up_proj.weight": "model.safetensors",
120
+ "model.layers.2.post_attention_layernorm.weight": "model.safetensors",
121
+ "model.layers.2.self_attn.k_proj.weight": "model.safetensors",
122
+ "model.layers.2.self_attn.o_proj.weight": "model.safetensors",
123
+ "model.layers.2.self_attn.q_proj.weight": "model.safetensors",
124
+ "model.layers.2.self_attn.v_proj.weight": "model.safetensors",
125
+ "model.layers.20.input_layernorm.weight": "model.safetensors",
126
+ "model.layers.20.mlp.down_proj.weight": "model.safetensors",
127
+ "model.layers.20.mlp.gate_proj.weight": "model.safetensors",
128
+ "model.layers.20.mlp.up_proj.weight": "model.safetensors",
129
+ "model.layers.20.post_attention_layernorm.weight": "model.safetensors",
130
+ "model.layers.20.self_attn.k_proj.weight": "model.safetensors",
131
+ "model.layers.20.self_attn.o_proj.weight": "model.safetensors",
132
+ "model.layers.20.self_attn.q_proj.weight": "model.safetensors",
133
+ "model.layers.20.self_attn.v_proj.weight": "model.safetensors",
134
+ "model.layers.21.input_layernorm.weight": "model.safetensors",
135
+ "model.layers.21.mlp.down_proj.weight": "model.safetensors",
136
+ "model.layers.21.mlp.gate_proj.weight": "model.safetensors",
137
+ "model.layers.21.mlp.up_proj.weight": "model.safetensors",
138
+ "model.layers.21.post_attention_layernorm.weight": "model.safetensors",
139
+ "model.layers.21.self_attn.k_proj.weight": "model.safetensors",
140
+ "model.layers.21.self_attn.o_proj.weight": "model.safetensors",
141
+ "model.layers.21.self_attn.q_proj.weight": "model.safetensors",
142
+ "model.layers.21.self_attn.v_proj.weight": "model.safetensors",
143
+ "model.layers.22.input_layernorm.weight": "model.safetensors",
144
+ "model.layers.22.mlp.down_proj.weight": "model.safetensors",
145
+ "model.layers.22.mlp.gate_proj.weight": "model.safetensors",
146
+ "model.layers.22.mlp.up_proj.weight": "model.safetensors",
147
+ "model.layers.22.post_attention_layernorm.weight": "model.safetensors",
148
+ "model.layers.22.self_attn.k_proj.weight": "model.safetensors",
149
+ "model.layers.22.self_attn.o_proj.weight": "model.safetensors",
150
+ "model.layers.22.self_attn.q_proj.weight": "model.safetensors",
151
+ "model.layers.22.self_attn.v_proj.weight": "model.safetensors",
152
+ "model.layers.23.input_layernorm.weight": "model.safetensors",
153
+ "model.layers.23.mlp.down_proj.weight": "model.safetensors",
154
+ "model.layers.23.mlp.gate_proj.weight": "model.safetensors",
155
+ "model.layers.23.mlp.up_proj.weight": "model.safetensors",
156
+ "model.layers.23.post_attention_layernorm.weight": "model.safetensors",
157
+ "model.layers.23.self_attn.k_proj.weight": "model.safetensors",
158
+ "model.layers.23.self_attn.o_proj.weight": "model.safetensors",
159
+ "model.layers.23.self_attn.q_proj.weight": "model.safetensors",
160
+ "model.layers.23.self_attn.v_proj.weight": "model.safetensors",
161
+ "model.layers.24.input_layernorm.weight": "model.safetensors",
162
+ "model.layers.24.mlp.down_proj.weight": "model.safetensors",
163
+ "model.layers.24.mlp.gate_proj.weight": "model.safetensors",
164
+ "model.layers.24.mlp.up_proj.weight": "model.safetensors",
165
+ "model.layers.24.post_attention_layernorm.weight": "model.safetensors",
166
+ "model.layers.24.self_attn.k_proj.weight": "model.safetensors",
167
+ "model.layers.24.self_attn.o_proj.weight": "model.safetensors",
168
+ "model.layers.24.self_attn.q_proj.weight": "model.safetensors",
169
+ "model.layers.24.self_attn.v_proj.weight": "model.safetensors",
170
+ "model.layers.25.input_layernorm.weight": "model.safetensors",
171
+ "model.layers.25.mlp.down_proj.weight": "model.safetensors",
172
+ "model.layers.25.mlp.gate_proj.weight": "model.safetensors",
173
+ "model.layers.25.mlp.up_proj.weight": "model.safetensors",
174
+ "model.layers.25.post_attention_layernorm.weight": "model.safetensors",
175
+ "model.layers.25.self_attn.k_proj.weight": "model.safetensors",
176
+ "model.layers.25.self_attn.o_proj.weight": "model.safetensors",
177
+ "model.layers.25.self_attn.q_proj.weight": "model.safetensors",
178
+ "model.layers.25.self_attn.v_proj.weight": "model.safetensors",
179
+ "model.layers.26.input_layernorm.weight": "model.safetensors",
180
+ "model.layers.26.mlp.down_proj.weight": "model.safetensors",
181
+ "model.layers.26.mlp.gate_proj.weight": "model.safetensors",
182
+ "model.layers.26.mlp.up_proj.weight": "model.safetensors",
183
+ "model.layers.26.post_attention_layernorm.weight": "model.safetensors",
184
+ "model.layers.26.self_attn.k_proj.weight": "model.safetensors",
185
+ "model.layers.26.self_attn.o_proj.weight": "model.safetensors",
186
+ "model.layers.26.self_attn.q_proj.weight": "model.safetensors",
187
+ "model.layers.26.self_attn.v_proj.weight": "model.safetensors",
188
+ "model.layers.27.input_layernorm.weight": "model.safetensors",
189
+ "model.layers.27.mlp.down_proj.weight": "model.safetensors",
190
+ "model.layers.27.mlp.gate_proj.weight": "model.safetensors",
191
+ "model.layers.27.mlp.up_proj.weight": "model.safetensors",
192
+ "model.layers.27.post_attention_layernorm.weight": "model.safetensors",
193
+ "model.layers.27.self_attn.k_proj.weight": "model.safetensors",
194
+ "model.layers.27.self_attn.o_proj.weight": "model.safetensors",
195
+ "model.layers.27.self_attn.q_proj.weight": "model.safetensors",
196
+ "model.layers.27.self_attn.v_proj.weight": "model.safetensors",
197
+ "model.layers.28.input_layernorm.weight": "model.safetensors",
198
+ "model.layers.28.mlp.down_proj.weight": "model.safetensors",
199
+ "model.layers.28.mlp.gate_proj.weight": "model.safetensors",
200
+ "model.layers.28.mlp.up_proj.weight": "model.safetensors",
201
+ "model.layers.28.post_attention_layernorm.weight": "model.safetensors",
202
+ "model.layers.28.self_attn.k_proj.weight": "model.safetensors",
203
+ "model.layers.28.self_attn.o_proj.weight": "model.safetensors",
204
+ "model.layers.28.self_attn.q_proj.weight": "model.safetensors",
205
+ "model.layers.28.self_attn.v_proj.weight": "model.safetensors",
206
+ "model.layers.29.input_layernorm.weight": "model.safetensors",
207
+ "model.layers.29.mlp.down_proj.weight": "model.safetensors",
208
+ "model.layers.29.mlp.gate_proj.weight": "model.safetensors",
209
+ "model.layers.29.mlp.up_proj.weight": "model.safetensors",
210
+ "model.layers.29.post_attention_layernorm.weight": "model.safetensors",
211
+ "model.layers.29.self_attn.k_proj.weight": "model.safetensors",
212
+ "model.layers.29.self_attn.o_proj.weight": "model.safetensors",
213
+ "model.layers.29.self_attn.q_proj.weight": "model.safetensors",
214
+ "model.layers.29.self_attn.v_proj.weight": "model.safetensors",
215
+ "model.layers.3.input_layernorm.weight": "model.safetensors",
216
+ "model.layers.3.mlp.down_proj.weight": "model.safetensors",
217
+ "model.layers.3.mlp.gate_proj.weight": "model.safetensors",
218
+ "model.layers.3.mlp.up_proj.weight": "model.safetensors",
219
+ "model.layers.3.post_attention_layernorm.weight": "model.safetensors",
220
+ "model.layers.3.self_attn.k_proj.weight": "model.safetensors",
221
+ "model.layers.3.self_attn.o_proj.weight": "model.safetensors",
222
+ "model.layers.3.self_attn.q_proj.weight": "model.safetensors",
223
+ "model.layers.3.self_attn.v_proj.weight": "model.safetensors",
224
+ "model.layers.4.input_layernorm.weight": "model.safetensors",
225
+ "model.layers.4.mlp.down_proj.weight": "model.safetensors",
226
+ "model.layers.4.mlp.gate_proj.weight": "model.safetensors",
227
+ "model.layers.4.mlp.up_proj.weight": "model.safetensors",
228
+ "model.layers.4.post_attention_layernorm.weight": "model.safetensors",
229
+ "model.layers.4.self_attn.k_proj.weight": "model.safetensors",
230
+ "model.layers.4.self_attn.o_proj.weight": "model.safetensors",
231
+ "model.layers.4.self_attn.q_proj.weight": "model.safetensors",
232
+ "model.layers.4.self_attn.v_proj.weight": "model.safetensors",
233
+ "model.layers.5.input_layernorm.weight": "model.safetensors",
234
+ "model.layers.5.mlp.down_proj.weight": "model.safetensors",
235
+ "model.layers.5.mlp.gate_proj.weight": "model.safetensors",
236
+ "model.layers.5.mlp.up_proj.weight": "model.safetensors",
237
+ "model.layers.5.post_attention_layernorm.weight": "model.safetensors",
238
+ "model.layers.5.self_attn.k_proj.weight": "model.safetensors",
239
+ "model.layers.5.self_attn.o_proj.weight": "model.safetensors",
240
+ "model.layers.5.self_attn.q_proj.weight": "model.safetensors",
241
+ "model.layers.5.self_attn.v_proj.weight": "model.safetensors",
242
+ "model.layers.6.input_layernorm.weight": "model.safetensors",
243
+ "model.layers.6.mlp.down_proj.weight": "model.safetensors",
244
+ "model.layers.6.mlp.gate_proj.weight": "model.safetensors",
245
+ "model.layers.6.mlp.up_proj.weight": "model.safetensors",
246
+ "model.layers.6.post_attention_layernorm.weight": "model.safetensors",
247
+ "model.layers.6.self_attn.k_proj.weight": "model.safetensors",
248
+ "model.layers.6.self_attn.o_proj.weight": "model.safetensors",
249
+ "model.layers.6.self_attn.q_proj.weight": "model.safetensors",
250
+ "model.layers.6.self_attn.v_proj.weight": "model.safetensors",
251
+ "model.layers.7.input_layernorm.weight": "model.safetensors",
252
+ "model.layers.7.mlp.down_proj.weight": "model.safetensors",
253
+ "model.layers.7.mlp.gate_proj.weight": "model.safetensors",
254
+ "model.layers.7.mlp.up_proj.weight": "model.safetensors",
255
+ "model.layers.7.post_attention_layernorm.weight": "model.safetensors",
256
+ "model.layers.7.self_attn.k_proj.weight": "model.safetensors",
257
+ "model.layers.7.self_attn.o_proj.weight": "model.safetensors",
258
+ "model.layers.7.self_attn.q_proj.weight": "model.safetensors",
259
+ "model.layers.7.self_attn.v_proj.weight": "model.safetensors",
260
+ "model.layers.8.input_layernorm.weight": "model.safetensors",
261
+ "model.layers.8.mlp.down_proj.weight": "model.safetensors",
262
+ "model.layers.8.mlp.gate_proj.weight": "model.safetensors",
263
+ "model.layers.8.mlp.up_proj.weight": "model.safetensors",
264
+ "model.layers.8.post_attention_layernorm.weight": "model.safetensors",
265
+ "model.layers.8.self_attn.k_proj.weight": "model.safetensors",
266
+ "model.layers.8.self_attn.o_proj.weight": "model.safetensors",
267
+ "model.layers.8.self_attn.q_proj.weight": "model.safetensors",
268
+ "model.layers.8.self_attn.v_proj.weight": "model.safetensors",
269
+ "model.layers.9.input_layernorm.weight": "model.safetensors",
270
+ "model.layers.9.mlp.down_proj.weight": "model.safetensors",
271
+ "model.layers.9.mlp.gate_proj.weight": "model.safetensors",
272
+ "model.layers.9.mlp.up_proj.weight": "model.safetensors",
273
+ "model.layers.9.post_attention_layernorm.weight": "model.safetensors",
274
+ "model.layers.9.self_attn.k_proj.weight": "model.safetensors",
275
+ "model.layers.9.self_attn.o_proj.weight": "model.safetensors",
276
+ "model.layers.9.self_attn.q_proj.weight": "model.safetensors",
277
+ "model.layers.9.self_attn.v_proj.weight": "model.safetensors",
278
+ "model.norm.weight": "model.safetensors"
279
+ }
280
+ }
special_tokens_map.json ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "additional_special_tokens": [
3
+ "<|im_start|>",
4
+ "<|im_end|>"
5
+ ],
6
+ "bos_token": {
7
+ "content": "<|im_start|>",
8
+ "lstrip": false,
9
+ "normalized": false,
10
+ "rstrip": false,
11
+ "single_word": false
12
+ },
13
+ "eos_token": {
14
+ "content": "<|im_end|>",
15
+ "lstrip": false,
16
+ "normalized": false,
17
+ "rstrip": false,
18
+ "single_word": false
19
+ },
20
+ "pad_token": {
21
+ "content": "<|im_end|>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false
26
+ },
27
+ "unk_token": {
28
+ "content": "<|endoftext|>",
29
+ "lstrip": false,
30
+ "normalized": false,
31
+ "rstrip": false,
32
+ "single_word": false
33
+ }
34
+ }
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "added_tokens_decoder": {
4
+ "0": {
5
+ "content": "<|endoftext|>",
6
+ "lstrip": false,
7
+ "normalized": false,
8
+ "rstrip": false,
9
+ "single_word": false,
10
+ "special": true
11
+ },
12
+ "1": {
13
+ "content": "<|im_start|>",
14
+ "lstrip": false,
15
+ "normalized": false,
16
+ "rstrip": false,
17
+ "single_word": false,
18
+ "special": true
19
+ },
20
+ "2": {
21
+ "content": "<|im_end|>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false,
26
+ "special": true
27
+ },
28
+ "3": {
29
+ "content": "<repo_name>",
30
+ "lstrip": false,
31
+ "normalized": false,
32
+ "rstrip": false,
33
+ "single_word": false,
34
+ "special": true
35
+ },
36
+ "4": {
37
+ "content": "<reponame>",
38
+ "lstrip": false,
39
+ "normalized": false,
40
+ "rstrip": false,
41
+ "single_word": false,
42
+ "special": true
43
+ },
44
+ "5": {
45
+ "content": "<file_sep>",
46
+ "lstrip": false,
47
+ "normalized": false,
48
+ "rstrip": false,
49
+ "single_word": false,
50
+ "special": true
51
+ },
52
+ "6": {
53
+ "content": "<filename>",
54
+ "lstrip": false,
55
+ "normalized": false,
56
+ "rstrip": false,
57
+ "single_word": false,
58
+ "special": true
59
+ },
60
+ "7": {
61
+ "content": "<gh_stars>",
62
+ "lstrip": false,
63
+ "normalized": false,
64
+ "rstrip": false,
65
+ "single_word": false,
66
+ "special": true
67
+ },
68
+ "8": {
69
+ "content": "<issue_start>",
70
+ "lstrip": false,
71
+ "normalized": false,
72
+ "rstrip": false,
73
+ "single_word": false,
74
+ "special": true
75
+ },
76
+ "9": {
77
+ "content": "<issue_comment>",
78
+ "lstrip": false,
79
+ "normalized": false,
80
+ "rstrip": false,
81
+ "single_word": false,
82
+ "special": true
83
+ },
84
+ "10": {
85
+ "content": "<issue_closed>",
86
+ "lstrip": false,
87
+ "normalized": false,
88
+ "rstrip": false,
89
+ "single_word": false,
90
+ "special": true
91
+ },
92
+ "11": {
93
+ "content": "<jupyter_start>",
94
+ "lstrip": false,
95
+ "normalized": false,
96
+ "rstrip": false,
97
+ "single_word": false,
98
+ "special": true
99
+ },
100
+ "12": {
101
+ "content": "<jupyter_text>",
102
+ "lstrip": false,
103
+ "normalized": false,
104
+ "rstrip": false,
105
+ "single_word": false,
106
+ "special": true
107
+ },
108
+ "13": {
109
+ "content": "<jupyter_code>",
110
+ "lstrip": false,
111
+ "normalized": false,
112
+ "rstrip": false,
113
+ "single_word": false,
114
+ "special": true
115
+ },
116
+ "14": {
117
+ "content": "<jupyter_output>",
118
+ "lstrip": false,
119
+ "normalized": false,
120
+ "rstrip": false,
121
+ "single_word": false,
122
+ "special": true
123
+ },
124
+ "15": {
125
+ "content": "<jupyter_script>",
126
+ "lstrip": false,
127
+ "normalized": false,
128
+ "rstrip": false,
129
+ "single_word": false,
130
+ "special": true
131
+ },
132
+ "16": {
133
+ "content": "<empty_output>",
134
+ "lstrip": false,
135
+ "normalized": false,
136
+ "rstrip": false,
137
+ "single_word": false,
138
+ "special": true
139
+ }
140
+ },
141
+ "additional_special_tokens": [
142
+ "<|im_start|>",
143
+ "<|im_end|>"
144
+ ],
145
+ "bos_token": "<|im_start|>",
146
+ "chat_template": "{% for message in messages %}{% if loop.first and messages[0]['role'] != 'system' %}{{ '<|im_start|>system\nYou are a helpful AI assistant named SmolLM, trained by Hugging Face<|im_end|>\n' }}{% endif %}{{'<|im_start|>' + message['role'] + '\n' + message['content'] + '<|im_end|>' + '\n'}}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant\n' }}{% endif %}",
147
+ "clean_up_tokenization_spaces": false,
148
+ "eos_token": "<|im_end|>",
149
+ "model_max_length": 8192,
150
+ "pad_token": "<|im_end|>",
151
+ "tokenizer_class": "GPT2Tokenizer",
152
+ "unk_token": "<|endoftext|>",
153
+ "vocab_size": 49152
154
+ }
train_graph.png ADDED
train_info.json ADDED
The diff for this file is too large to render. See raw diff
 
vocab.json ADDED
The diff for this file is too large to render. See raw diff