RichardErkhov commited on
Commit
524f5be
·
verified ·
1 Parent(s): 89990bd

uploaded readme

Browse files
Files changed (1) hide show
  1. README.md +101 -0
README.md ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Quantization made by Richard Erkhov.
2
+
3
+ [Github](https://github.com/RichardErkhov)
4
+
5
+ [Discord](https://discord.gg/pvy7H8DZMG)
6
+
7
+ [Request more models](https://github.com/RichardErkhov/quant_request)
8
+
9
+
10
+ MiniChat-3B - bnb 8bits
11
+ - Model creator: https://huggingface.co/GeneZC/
12
+ - Original model: https://huggingface.co/GeneZC/MiniChat-3B/
13
+
14
+
15
+
16
+
17
+ Original model description:
18
+ ---
19
+ license: apache-2.0
20
+ language:
21
+ - en
22
+ - zh
23
+ library_name: transformers
24
+ widget:
25
+ - text: "<s> [|User|] Hi 👋 </s>[|Assistant|]"
26
+ ---
27
+
28
+ ## MiniChat-3B
29
+
30
+ 📑 [arXiv](https://arxiv.org/abs/2311.07052) | 👻 [GitHub](https://github.com/GeneZC/MiniMA) | 🤗 [HuggingFace-MiniMA](https://huggingface.co/GeneZC/MiniMA-3B) | 🤗 [HuggingFace-MiniChat](https://huggingface.co/GeneZC/MiniChat-3B) | 🤗 [HuggingFace-MiniChat-1.5](https://huggingface.co/GeneZC/MiniChat-1.5-3B) | 🤖 [ModelScope-MiniMA](https://modelscope.cn/models/GeneZC/MiniMA-3B) | 🤖 [ModelScope-MiniChat](https://modelscope.cn/models/GeneZC/MiniChat-3B)
31
+
32
+ 🆕 **Updates: MiniChat-1.5-3B**
33
+
34
+ ❗ Must comply with LICENSE of LLaMA2 since it is derived from LLaMA2.
35
+
36
+ A language model distilled and finetuned from an adapted version of LLaMA2-7B following "Towards the Law of Capacity Gap in Distilling Language Models".
37
+
38
+ Outperforming a wide range of 3B competitors in GPT4 evaluation and even competing with several 7B chat models.
39
+
40
+ <img src="./teaser_b.jpg" alt="teaser_b" width="687" />
41
+
42
+ The following is an example code snippet to use MiniChat-3B:
43
+
44
+ ```python
45
+ import torch
46
+
47
+ from transformers import AutoModelForCausalLM, AutoTokenizer
48
+
49
+ from conversation import get_default_conv_template
50
+
51
+ # MiniChat
52
+ tokenizer = AutoTokenizer.from_pretrained("GeneZC/MiniChat-3B", use_fast=False)
53
+ # GPU.
54
+ model = AutoModelForCausalLM.from_pretrained("GeneZC/MiniChat-3B", use_cache=True, device_map="auto", torch_dtype=torch.float16).eval()
55
+ # CPU.
56
+ # model = AutoModelForCausalLM.from_pretrained("GeneZC/MiniChat-3B", use_cache=True, device_map="cpu", torch_dtype=torch.float32).eval()
57
+ device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
58
+ conv = get_default_conv_template("minichat")
59
+
60
+ question = "Implement a program to find the common elements in two arrays without using any extra data structures."
61
+ conv.append_message(conv.roles[0], question)
62
+ conv.append_message(conv.roles[1], None)
63
+ prompt = conv.get_prompt()
64
+ input_ids = tokenizer([prompt]).input_ids
65
+ output_ids = model.generate(
66
+ torch.as_tensor(input_ids).to(device),
67
+ do_sample=True,
68
+ temperature=0.7,
69
+ max_new_tokens=1024,
70
+ )
71
+ output_ids = output_ids[0][len(input_ids[0]):]
72
+ output = tokenizer.decode(output_ids, skip_special_tokens=True).strip()
73
+ # output: "def common_elements(arr1, arr2):\n if len(arr1) == 0:\n return []\n if len(arr2) == 0:\n return arr1\n\n common_elements = []\n for element in arr1:\n if element in arr2:\n common_elements.append(element)\n\n return common_elements"
74
+ # Multiturn conversation could be realized by continuously appending questions to `conv`.
75
+ ```
76
+
77
+ ## Bibtex
78
+
79
+ ```bibtex
80
+ @article{zhang2023law,
81
+ title={Towards the Law of Capacity Gap in Distilling Language Models},
82
+ author={Zhang, Chen and Song, Dawei and Ye, Zheyu and Gao, Yan},
83
+ year={2023},
84
+ url={https://arxiv.org/abs/2311.07052}
85
+ }
86
+ ```
87
+ # [Open LLM Leaderboard Evaluation Results](https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard)
88
+ Detailed results can be found [here](https://huggingface.co/datasets/open-llm-leaderboard/details_GeneZC__MiniChat-3B)
89
+
90
+ | Metric | Value |
91
+ |-----------------------|---------------------------|
92
+ | Avg. | 42.94 |
93
+ | ARC (25-shot) | 44.03 |
94
+ | HellaSwag (10-shot) | 67.19 |
95
+ | MMLU (5-shot) | 39.17 |
96
+ | TruthfulQA (0-shot) | 45.67 |
97
+ | Winogrande (5-shot) | 65.27 |
98
+ | GSM8K (5-shot) | 10.54 |
99
+ | DROP (3-shot) | 28.73 |
100
+
101
+