shimmyshimmer commited on
Commit
b1ece2b
·
verified ·
1 Parent(s): 918d237

Create README.md

Browse files
Files changed (1) hide show
  1. README.md +374 -0
README.md ADDED
@@ -0,0 +1,374 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ pipeline_tag: text-generation
3
+ inference: false
4
+ license: apache-2.0
5
+ library_name: transformers
6
+ tags:
7
+ - language
8
+ - granite-3.2
9
+ - ganite
10
+ base_model:
11
+ - ibm-granite/granite-3.2-2b-instruct
12
+ ---
13
+
14
+ # Granite-3.2-8B-Instruct
15
+
16
+ **Model Summary:**
17
+ Granite-3.2-8B-Instruct is an 8-billion-parameter, long-context AI model fine-tuned for thinking capabilities. Built on top of [Granite-3.1-8B-Instruct](https://huggingface.co/ibm-granite/granite-3.1-8b-instruct), it has been trained using a mix of permissively licensed open-source datasets and internally generated synthetic data designed for reasoning tasks. The model allows controllability of its thinking capability, ensuring it is applied only when required.
18
+
19
+
20
+ - **Developers:** Granite Team, IBM
21
+ - **Website**: [Granite Docs](https://www.ibm.com/granite/docs/)
22
+ - **Release Date**: February 26th, 2025
23
+ - **License:** [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)
24
+
25
+ **Supported Languages:**
26
+ English, German, Spanish, French, Japanese, Portuguese, Arabic, Czech, Italian, Korean, Dutch, and Chinese. However, users may finetune this Granite model for languages beyond these 12 languages.
27
+
28
+ **Intended Use:**
29
+ This model is designed to handle general instruction-following tasks and can be integrated into AI assistants across various domains, including business applications.
30
+
31
+ **Capabilities**
32
+ * **Thinking**
33
+ * Summarization
34
+ * Text classification
35
+ * Text extraction
36
+ * Question-answering
37
+ * Retrieval Augmented Generation (RAG)
38
+ * Code related tasks
39
+ * Function-calling tasks
40
+ * Multilingual dialog use cases
41
+ * Long-context tasks including long document/meeting summarization, long document QA, etc.
42
+
43
+
44
+
45
+ **Generation:**
46
+ This is a simple example of how to use Granite-3.2-8B-Instruct model.
47
+
48
+ Install the following libraries:
49
+
50
+ ```shell
51
+ pip install torch torchvision torchaudio
52
+ pip install accelerate
53
+ pip install transformers
54
+ ```
55
+ Then, copy the snippet from the section that is relevant for your use case.
56
+
57
+ ```python
58
+ from transformers import AutoModelForCausalLM, AutoTokenizer, set_seed
59
+ import torch
60
+
61
+ model_path="ibm-granite/granite-3.2-8b-instruct"
62
+ device="cuda"
63
+ model = AutoModelForCausalLM.from_pretrained(
64
+ model_path,
65
+ device_map=device,
66
+ torch_dtype=torch.bfloat16,
67
+ )
68
+ tokenizer = AutoTokenizer.from_pretrained(
69
+ model_path
70
+ )
71
+
72
+ conv = [{"role": "user", "content":"You have 10 liters of a 30% acid solution. How many liters of a 70% acid solution must be added to achieve a 50% acid mixture?"}]
73
+
74
+ input_ids = tokenizer.apply_chat_template(conv, return_tensors="pt", thinking=True, return_dict=True, add_generation_prompt=True).to(device)
75
+
76
+ set_seed(42)
77
+ output = model.generate(
78
+ **input_ids,
79
+ max_new_tokens=8192,
80
+ )
81
+
82
+ prediction = tokenizer.decode(output[0, input_ids["input_ids"].shape[1]:], skip_special_tokens=True)
83
+ print(prediction)
84
+ ```
85
+
86
+ **Example Outputs**
87
+ - thinking=True
88
+ ```md
89
+ Here is my thought process:
90
+
91
+ 1. We know we start with 10 liters of a 30% acid solution, so there's 3 liters of pure acid in it (10 liters * 0.3).
92
+ 2. We need to determine how much of the 70% acid solution to add such that the final mixture is 50% acid.
93
+ 3. Let's say x liters of the 70% acid solution are added. This will contribute 0.7x liters of pure acid.
94
+ 4. The total volume of the new mixture will be 10 + x liters, and the total amount of pure acid will be 3 + 0.7x liters.
95
+ 5. We need to set up an equation where (3 + 0.7x) / (10 + x) = 0.5 (since we want a 50% acid mixture).
96
+ 6. Solving this equation for x will give us the volume of 70% solution needed.
97
+
98
+ Here is my response:
99
+
100
+ To solve this, we need to set up an equation based on the concentration of acid before and after mixing.
101
+
102
+ 1. **Initial Acid Content**:
103
+ - We start with 10 liters of a 30% acid solution.
104
+ - Pure acid in this = 10 * 0.3 = 3 liters.
105
+
106
+ 2. **Variable for Addition**:
107
+ - Let x be the liters of 70% acid solution to be added.
108
+ - Pure acid in x liters of 70% solution = 0.7x liters.
109
+
110
+ 3. **Final Mixture Concentration**:
111
+ - Total volume of mixture = 10 + x liters.
112
+ - Total pure acid in the mixture = 3 (from initial solution) + 0.7x (from added solution).
113
+
114
+ 4. **Setting up the equation for 50% acid concentration**:
115
+ - We require that the ratio of pure acid to total volume is 0.5 (50%).
116
+ - Therefore, the equation is:
117
+
118
+ \[
119
+ \frac{3 + 0.7x}{10 + x} = 0.5
120
+ \]
121
+
122
+ 5. **Solving the equation**:
123
+
124
+ Multiply both sides by (10 + x) to clear the fraction:
125
+
126
+ \[
127
+ 3 + 0.7x = 0.5(10 + x)
128
+ \]
129
+
130
+ Expanding the right side:
131
+
132
+ \[
133
+ 3 + 0.7x = 5 + 0.5x
134
+ \]
135
+
136
+ Subtract 0.5x from both sides:
137
+
138
+ \[
139
+ 3 + 0.2x = 5
140
+ \]
141
+
142
+ Subtract 3 from both sides:
143
+
144
+ \[
145
+ 0.2x = 2
146
+ \]
147
+
148
+ Divide by 0.2:
149
+
150
+ \[
151
+ x = 10
152
+ \]
153
+
154
+ So, 10 liters of the 70% acid solution must be added to the initial 10 liters of 30% solution to get a 50% acid mixture.
155
+
156
+ Let's verify:
157
+
158
+ - Initial acid: 3 liters
159
+ - Acid from added solution: 0.7 * 10 = 7 liters
160
+ - Total acid: 3 + 7 = 10 liters
161
+ - Total volume: 10 + 10 = 20 liters
162
+ - Acid percentage: \(\frac{10}{20} = 0.5 = 50\%\)
163
+
164
+ This confirms our solution.
165
+
166
+ Final answer: 10 liters of 70% acid solution should be added.
167
+ ```
168
+ - thinking=False
169
+ ```md
170
+ Let's denote the amount of 70% acid solution to be added as x liters.
171
+
172
+ We start with 10 liters of a 30% acid solution, which means there are 0.3 * 10 = 3 liters of pure acid in it.
173
+
174
+ We want to end up with a 50% acid solution after adding x liters of 70% acid solution. The total volume of the mixture will be 10 + x liters, and we want half of this volume to be pure acid.
175
+
176
+ So, the amount of pure acid in the final mixture should be 0.5 * (10 + x) liters.
177
+
178
+ The amount of pure acid in the final mixture comes from two sources: the original 30% solution and the added 70% solution. So, we can set up the following equation:
179
+
180
+ 3 (from the original solution) + 0.7x (from the added solution) = 0.5 * (10 + x)
181
+
182
+ Now, let's solve for x:
183
+
184
+ 3 + 0.7x = 5 + 0.5x
185
+ 0.7x - 0.5x = 5 - 3
186
+ 0.2x = 2
187
+ x = 2 / 0.2
188
+ x = 10
189
+
190
+ So, you need to add 10 liters of a 70% acid solution to the 10 liters of a 30% acid solution to get a 50% acid mixture.
191
+ ```
192
+
193
+ **Evaluation Results:**
194
+ <table>
195
+
196
+ <thead>
197
+ <tr>
198
+ <th style="text-align:left; background-color: #001d6c; color: white;">Models</th>
199
+ <th style="text-align:center; background-color: #001d6c; color: white;">ArenaHard</th>
200
+ <th style="text-align:center; background-color: #001d6c; color: white;">Alpaca-Eval-2</th>
201
+ <th style="text-align:center; background-color: #001d6c; color: white;">MMLU</th>
202
+ <th style="text-align:center; background-color: #001d6c; color: white;">PopQA</th>
203
+ <th style="text-align:center; background-color: #001d6c; color: white;">TruthfulQA</th>
204
+ <th style="text-align:center; background-color: #001d6c; color: white;">BigBenchHard</th>
205
+ <th style="text-align:center; background-color: #001d6c; color: white;">DROP</th>
206
+ <th style="text-align:center; background-color: #001d6c; color: white;">GSM8K</th>
207
+ <th style="text-align:center; background-color: #001d6c; color: white;">HumanEval</th>
208
+ <th style="text-align:center; background-color: #001d6c; color: white;">HumanEval+</th>
209
+ <th style="text-align:center; background-color: #001d6c; color: white;">IFEval</th>
210
+ <th style="text-align:center; background-color: #001d6c; color: white;">AttaQ</th>
211
+ </tr></thead>
212
+ <tbody>
213
+ <tr>
214
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">Llama-3.1-8B-Instruct</td>
215
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">36.43</td>
216
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">27.22</td>
217
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">69.15</td>
218
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">28.79</td>
219
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">52.79</td>
220
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">72.66</td>
221
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">61.48</td>
222
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">83.24</td>
223
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">85.32</td>
224
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">80.15</td>
225
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">79.10</td>
226
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">83.43</td>
227
+ </tr>
228
+
229
+ <tr>
230
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">DeepSeek-R1-Distill-Llama-8B</td>
231
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">17.17</td>
232
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">21.85</td>
233
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">45.80</td>
234
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">13.25</td>
235
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">47.43</td>
236
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">65.71</td>
237
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">44.46</td>
238
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">72.18</td>
239
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">67.54</td>
240
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">62.91</td>
241
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">66.50</td>
242
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">42.87</td>
243
+ </tr>
244
+
245
+ <tr>
246
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">Qwen-2.5-7B-Instruct</td>
247
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">25.44</td>
248
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">30.34</td>
249
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">74.30</td>
250
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">18.12</td>
251
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">63.06</td>
252
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">70.40</td>
253
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">54.71</td>
254
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">84.46</td>
255
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">93.35</td>
256
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">89.91</td>
257
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">74.90</td>
258
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">81.90</td>
259
+ </tr>
260
+
261
+ <tr>
262
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">DeepSeek-R1-Distill-Qwen-7B</td>
263
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">10.36</td>
264
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">15.35</td>
265
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">50.72</td>
266
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">9.94</td>
267
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">47.14</td>
268
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">65.04</td>
269
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">42.76</td>
270
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">78.47</td>
271
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">79.89</td>
272
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">78.43</td>
273
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">59.10</td>
274
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">42.45</td>
275
+ </tr>
276
+
277
+ <tr>
278
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">Granite-3.1-8B-Instruct</td>
279
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">37.58</td>
280
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">30.34</td>
281
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">66.77</td>
282
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">28.7</td>
283
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">65.84</td>
284
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">68.55</td>
285
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">50.78</td>
286
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">79.15</td>
287
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">89.63</td>
288
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">85.79</td>
289
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">73.20</td>
290
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">85.73</td>
291
+ </tr>
292
+
293
+
294
+ <tr>
295
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">Granite-3.1-2B-Instruct</td>
296
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">23.3</td>
297
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">27.17</td>
298
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">57.11</td>
299
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">20.55</td>
300
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">59.79</td>
301
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">54.46</td>
302
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">18.68</td>
303
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">67.55</td>
304
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">79.45</td>
305
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">75.26</td>
306
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">63.59</td>
307
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">84.7</td>
308
+ </tr>
309
+
310
+
311
+ <tr>
312
+ <td style="text-align:left; background-color: #DAE8FF; color: black;">Granite-3.2-2B-Instruct</td>
313
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">24.86</td>
314
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">34.51</td>
315
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">57.18</td>
316
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">20.56</td>
317
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">59.8</td>
318
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">52.27</td>
319
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">21.12</td>
320
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">67.02</td>
321
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">80.13</td>
322
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">73.39</td>
323
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">61.55</td>
324
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">83.23</td>
325
+ </tr>
326
+
327
+ <tr>
328
+ <td style="text-align:left; background-color: #DAE8FF; color: black;"><b>Granite-3.2-8B-Instruct</b></td>
329
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">55.25</td>
330
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">61.19</td>
331
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">66.79</td>
332
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">28.04</td>
333
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">66.92</td>
334
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">64.77</td>
335
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">50.95</td>
336
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">81.65</td>
337
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">89.35</td>
338
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">85.72</td>
339
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">74.31</td>
340
+ <td style="text-align:center; background-color: #DAE8FF; color: black;">85.42</td>
341
+
342
+ </tr>
343
+
344
+
345
+
346
+ </tbody></table>
347
+
348
+ **Training Data:**
349
+ Overall, our training data is largely comprised of two key sources: (1) publicly available datasets with permissive license, (2) internal synthetically generated data targeted to enhance reasoning capabilites.
350
+ <!-- A detailed attribution of datasets can be found in [Granite 3.2 Technical Report (coming soon)](#), and [Accompanying Author List](https://github.com/ibm-granite/granite-3.0-language-models/blob/main/author-ack.pdf). -->
351
+
352
+ **Infrastructure:**
353
+ We train Granite-3.2-8B-Instruct using IBM's super computing cluster, Blue Vela, which is outfitted with NVIDIA H100 GPUs. This cluster provides a scalable and efficient infrastructure for training our models over thousands of GPUs.
354
+
355
+ **Ethical Considerations and Limitations:**
356
+ Granite-3.2-8B-Instruct builds upon Granite-3.1-8B-Instruct, leveraging both permissively licensed open-source and select proprietary data for enhanced performance. Since it inherits its foundation from the previous model, all ethical considerations and limitations applicable to [Granite-3.1-8B-Instruct](https://huggingface.co/ibm-granite/granite-3.1-8b-instruct) remain relevant.
357
+
358
+
359
+ **Resources**
360
+ - ⭐️ Learn about the latest updates with Granite: https://www.ibm.com/granite
361
+ - 📄 Get started with tutorials, best practices, and prompt engineering advice: https://www.ibm.com/granite/docs/
362
+ - 💡 Learn about the latest Granite learning resources: https://ibm.biz/granite-learning-resources
363
+
364
+ <!-- ## Citation
365
+ ```
366
+ @misc{granite-models,
367
+ author = {author 1, author2, ...},
368
+ title = {},
369
+ journal = {},
370
+ volume = {},
371
+ year = {2024},
372
+ url = {https://arxiv.org/abs/0000.00000},
373
+ }
374
+ ``` -->