qqc1989 commited on
Commit
d8727b9
·
verified ·
1 Parent(s): da45df0

Upload 36 files

Browse files
Files changed (37) hide show
  1. .gitattributes +1 -0
  2. config.json +0 -0
  3. main_ax650 +3 -0
  4. post_config.json +14 -0
  5. qwen2.5-0.5b-gptq-int8-ctx-ax630c/model.embed_tokens.weight.bfloat16.bin +3 -0
  6. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l0_together.axmodel +3 -0
  7. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l10_together.axmodel +3 -0
  8. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l11_together.axmodel +3 -0
  9. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l12_together.axmodel +3 -0
  10. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l13_together.axmodel +3 -0
  11. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l14_together.axmodel +3 -0
  12. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l15_together.axmodel +3 -0
  13. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l16_together.axmodel +3 -0
  14. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l17_together.axmodel +3 -0
  15. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l18_together.axmodel +3 -0
  16. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l19_together.axmodel +3 -0
  17. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l1_together.axmodel +3 -0
  18. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l20_together.axmodel +3 -0
  19. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l21_together.axmodel +3 -0
  20. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l22_together.axmodel +3 -0
  21. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l23_together.axmodel +3 -0
  22. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l2_together.axmodel +3 -0
  23. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l3_together.axmodel +3 -0
  24. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l4_together.axmodel +3 -0
  25. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l5_together.axmodel +3 -0
  26. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l6_together.axmodel +3 -0
  27. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l7_together.axmodel +3 -0
  28. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l8_together.axmodel +3 -0
  29. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l9_together.axmodel +3 -0
  30. qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_post.axmodel +3 -0
  31. qwen2.5_tokenizer/merges.txt +0 -0
  32. qwen2.5_tokenizer/tokenizer.json +0 -0
  33. qwen2.5_tokenizer/tokenizer_config.json +207 -0
  34. qwen2.5_tokenizer/vocab.json +0 -0
  35. qwen2.5_tokenizer_uid.py +199 -0
  36. run_qwen2.5_0.5b_gptq_int8_ctx_ax630c.sh +14 -0
  37. run_qwen2.5_0.5b_gptq_int8_ctx_ax650.sh +14 -0
.gitattributes CHANGED
@@ -34,3 +34,4 @@ saved_model/**/* 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
  *.axmodel 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
  *.axmodel filter=lfs diff=lfs merge=lfs -text
37
+ main_ax650 filter=lfs diff=lfs merge=lfs -text
config.json ADDED
File without changes
main_ax650 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:870254b83b53d8f1909a03d2e73b0049fd5541e848579fc530888d07c28a48a2
3
+ size 989368
post_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "enable_temperature" : false,
3
+ "temperature" : 0.9,
4
+
5
+ "enable_repetition_penalty" : false,
6
+ "repetition_penalty" : 1.2,
7
+ "penalty_window" : 20,
8
+
9
+ "enable_top_p_sampling" : false,
10
+ "top_p" : 0.8,
11
+
12
+ "enable_top_k_sampling" : true,
13
+ "top_k" : 1
14
+ }
qwen2.5-0.5b-gptq-int8-ctx-ax630c/model.embed_tokens.weight.bfloat16.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4e96b0df6d274768cbb7e72404011853d23349999b658dc2f4dfb3c431ea223f
3
+ size 272269312
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l0_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:27c377bebed44a395db6b0d506d8b31f3a5360c32b969707a38eb67d8657459d
3
+ size 20304815
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l10_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f229d326d98a67fcd0e06fd626eee6982fac4c11fe497f78358ed8bb9f54f20b
3
+ size 20303607
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l11_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:358a9714218158916f6c75888d50ec00a1ba79123711ae02b742825b08ca48f8
3
+ size 20303935
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l12_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:98b7bc199cabfb2220b41ab029b04afc45fe648d9bcda705f8d1c7824437ec4b
3
+ size 20304519
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l13_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d2acb800c135a73da4839033b144d5f2d1390735db7239619c9b50ade97720a6
3
+ size 20304231
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l14_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:53308333e9d7da489babe6a477609f2d5c3266bc61c3eeea0ff7833502435288
3
+ size 20303279
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l15_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c04ba2aede7386c1416fe2048d86d37178b8c055677ec2e4ae268b52f3fda1ca
3
+ size 20303407
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l16_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:babf6eb5a6d0d00bf45ef2568907894ef29a83951b5879db25e63e272c02afaf
3
+ size 20304919
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l17_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ae2ec8552c79007ddf594ecbae6b0c467a2761c1d3a7e1d1ed24dc41863b66a
3
+ size 20304103
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l18_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:25c6250eecda26c7939e53f0859dc8102606e7d59199d8932d093d09d2773553
3
+ size 20304727
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l19_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0dd087701ddd7ec1295b8de44b7b4b5cff175d097ef333000e66c32605e7b735
3
+ size 20303319
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l1_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:184ed6a04383d297f67181e487933f3222f76485bd3841f8bcc6f790bca73f95
3
+ size 20303695
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l20_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:79acbb118c82c021650dbd8f355ddded2a6d96b9e245ac8d1c24607aacca69c4
3
+ size 20304223
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l21_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2e7793790895e3bd068a2281b0ccb20d3259ba146e29d5a237abead475082f93
3
+ size 20302911
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l22_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b1916fbdce339603cec36742c3e3aa0b62dd77a5b2433774d1cb86ad2900fe1f
3
+ size 20304399
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l23_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ff2ea8ebc3f1d0b07d0ec514d80d1a4ea5138e5b0da6109700c437c13647b08
3
+ size 20304479
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l2_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ca8792126c260b11fb09a283044b9482dfa2e47df7a8ef9e2648698443eeb503
3
+ size 20304087
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l3_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:68bef007cf245fe101dcef2d84c83aa224fe4f325a7264799f10f2386f91c997
3
+ size 20304023
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l4_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f089c322eed7bd1d2943f615359d9757eb3a9abe7e89509787e076c70ae4d0e
3
+ size 20304071
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l5_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1c70abb7daba97dab883b2e26cfe6f89cea50b004cae0ea6e4087295eb0a1ba0
3
+ size 20304191
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l6_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b85e521e0d03909fa88971cfca3a92de47a8d8d4c6398958e9c53e38ef864b34
3
+ size 20304367
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l7_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:79c89120b2d1935e47643bbe832869ec58059be83316436e7004b42ea475c9f3
3
+ size 20304543
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l8_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0a9bc3cb0ef4dfbd376750451107022119aa91c56070b78157e0b7ed40fa1aed
3
+ size 20304303
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l9_together.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d5c40f94bbbbd59e87cfa7220df1067d2d641fe6491489b45fd2562e79082cba
3
+ size 20303583
qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_post.axmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c5265a2d1f3feed0ad4530a050c48ebad76711d1f1f6752e32d9d171b401c933
3
+ size 139940316
qwen2.5_tokenizer/merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
qwen2.5_tokenizer/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
qwen2.5_tokenizer/tokenizer_config.json ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "added_tokens_decoder": {
4
+ "151643": {
5
+ "content": "<|endoftext|>",
6
+ "lstrip": false,
7
+ "normalized": false,
8
+ "rstrip": false,
9
+ "single_word": false,
10
+ "special": true
11
+ },
12
+ "151644": {
13
+ "content": "<|im_start|>",
14
+ "lstrip": false,
15
+ "normalized": false,
16
+ "rstrip": false,
17
+ "single_word": false,
18
+ "special": true
19
+ },
20
+ "151645": {
21
+ "content": "<|im_end|>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false,
26
+ "special": true
27
+ },
28
+ "151646": {
29
+ "content": "<|object_ref_start|>",
30
+ "lstrip": false,
31
+ "normalized": false,
32
+ "rstrip": false,
33
+ "single_word": false,
34
+ "special": true
35
+ },
36
+ "151647": {
37
+ "content": "<|object_ref_end|>",
38
+ "lstrip": false,
39
+ "normalized": false,
40
+ "rstrip": false,
41
+ "single_word": false,
42
+ "special": true
43
+ },
44
+ "151648": {
45
+ "content": "<|box_start|>",
46
+ "lstrip": false,
47
+ "normalized": false,
48
+ "rstrip": false,
49
+ "single_word": false,
50
+ "special": true
51
+ },
52
+ "151649": {
53
+ "content": "<|box_end|>",
54
+ "lstrip": false,
55
+ "normalized": false,
56
+ "rstrip": false,
57
+ "single_word": false,
58
+ "special": true
59
+ },
60
+ "151650": {
61
+ "content": "<|quad_start|>",
62
+ "lstrip": false,
63
+ "normalized": false,
64
+ "rstrip": false,
65
+ "single_word": false,
66
+ "special": true
67
+ },
68
+ "151651": {
69
+ "content": "<|quad_end|>",
70
+ "lstrip": false,
71
+ "normalized": false,
72
+ "rstrip": false,
73
+ "single_word": false,
74
+ "special": true
75
+ },
76
+ "151652": {
77
+ "content": "<|vision_start|>",
78
+ "lstrip": false,
79
+ "normalized": false,
80
+ "rstrip": false,
81
+ "single_word": false,
82
+ "special": true
83
+ },
84
+ "151653": {
85
+ "content": "<|vision_end|>",
86
+ "lstrip": false,
87
+ "normalized": false,
88
+ "rstrip": false,
89
+ "single_word": false,
90
+ "special": true
91
+ },
92
+ "151654": {
93
+ "content": "<|vision_pad|>",
94
+ "lstrip": false,
95
+ "normalized": false,
96
+ "rstrip": false,
97
+ "single_word": false,
98
+ "special": true
99
+ },
100
+ "151655": {
101
+ "content": "<|image_pad|>",
102
+ "lstrip": false,
103
+ "normalized": false,
104
+ "rstrip": false,
105
+ "single_word": false,
106
+ "special": true
107
+ },
108
+ "151656": {
109
+ "content": "<|video_pad|>",
110
+ "lstrip": false,
111
+ "normalized": false,
112
+ "rstrip": false,
113
+ "single_word": false,
114
+ "special": true
115
+ },
116
+ "151657": {
117
+ "content": "<tool_call>",
118
+ "lstrip": false,
119
+ "normalized": false,
120
+ "rstrip": false,
121
+ "single_word": false,
122
+ "special": false
123
+ },
124
+ "151658": {
125
+ "content": "</tool_call>",
126
+ "lstrip": false,
127
+ "normalized": false,
128
+ "rstrip": false,
129
+ "single_word": false,
130
+ "special": false
131
+ },
132
+ "151659": {
133
+ "content": "<|fim_prefix|>",
134
+ "lstrip": false,
135
+ "normalized": false,
136
+ "rstrip": false,
137
+ "single_word": false,
138
+ "special": false
139
+ },
140
+ "151660": {
141
+ "content": "<|fim_middle|>",
142
+ "lstrip": false,
143
+ "normalized": false,
144
+ "rstrip": false,
145
+ "single_word": false,
146
+ "special": false
147
+ },
148
+ "151661": {
149
+ "content": "<|fim_suffix|>",
150
+ "lstrip": false,
151
+ "normalized": false,
152
+ "rstrip": false,
153
+ "single_word": false,
154
+ "special": false
155
+ },
156
+ "151662": {
157
+ "content": "<|fim_pad|>",
158
+ "lstrip": false,
159
+ "normalized": false,
160
+ "rstrip": false,
161
+ "single_word": false,
162
+ "special": false
163
+ },
164
+ "151663": {
165
+ "content": "<|repo_name|>",
166
+ "lstrip": false,
167
+ "normalized": false,
168
+ "rstrip": false,
169
+ "single_word": false,
170
+ "special": false
171
+ },
172
+ "151664": {
173
+ "content": "<|file_sep|>",
174
+ "lstrip": false,
175
+ "normalized": false,
176
+ "rstrip": false,
177
+ "single_word": false,
178
+ "special": false
179
+ }
180
+ },
181
+ "additional_special_tokens": [
182
+ "<|im_start|>",
183
+ "<|im_end|>",
184
+ "<|object_ref_start|>",
185
+ "<|object_ref_end|>",
186
+ "<|box_start|>",
187
+ "<|box_end|>",
188
+ "<|quad_start|>",
189
+ "<|quad_end|>",
190
+ "<|vision_start|>",
191
+ "<|vision_end|>",
192
+ "<|vision_pad|>",
193
+ "<|image_pad|>",
194
+ "<|video_pad|>"
195
+ ],
196
+ "bos_token": null,
197
+ "chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0]['role'] == 'system' %}\n {{- messages[0]['content'] }}\n {%- else %}\n {{- 'You are Qwen, created by Alibaba Cloud. You are a helpful assistant.' }}\n {%- endif %}\n {{- \"\\n\\n# Tools\\n\\nYou may call one or more functions to assist with the user query.\\n\\nYou are provided with function signatures within <tools></tools> XML tags:\\n<tools>\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\n</tools>\\n\\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\\n<tool_call>\\n{{\\\"name\\\": <function-name>, \\\"arguments\\\": <args-json-object>}}\\n</tool_call><|im_end|>\\n\" }}\n{%- else %}\n {%- if messages[0]['role'] == 'system' %}\n {{- '<|im_start|>system\\n' + messages[0]['content'] + '<|im_end|>\\n' }}\n {%- else %}\n {{- '<|im_start|>system\\nYou are Qwen, created by Alibaba Cloud. You are a helpful assistant.<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) or (message.role == \"assistant\" and not message.tool_calls) %}\n {{- '<|im_start|>' + message.role + '\\n' + message.content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role }}\n {%- if message.content %}\n {{- '\\n' + message.content }}\n {%- endif %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n<tool_call>\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- '}\\n</tool_call>' }}\n {%- endfor %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n<tool_response>\\n' }}\n {{- message.content }}\n {{- '\\n</tool_response>' }}\n {%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n{%- endif %}\n",
198
+ "clean_up_tokenization_spaces": false,
199
+ "eos_token": "<|im_end|>",
200
+ "errors": "replace",
201
+ "model_max_length": 131072,
202
+ "pad_token": "<|endoftext|>",
203
+ "split_special_tokens": false,
204
+ "tokenizer_class": "Qwen2Tokenizer",
205
+ "unk_token": null,
206
+ "add_bos_token": false
207
+ }
qwen2.5_tokenizer/vocab.json ADDED
The diff for this file is too large to render. See raw diff
 
qwen2.5_tokenizer_uid.py ADDED
@@ -0,0 +1,199 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from transformers import AutoTokenizer, PreTrainedTokenizerFast
2
+ from http.server import HTTPServer, BaseHTTPRequestHandler
3
+ import json
4
+ import argparse
5
+ import uuid
6
+
7
+ # 全局字典:存储 uid 到 Tokenizer_Http 实例的映射
8
+ tokenizers = {}
9
+
10
+ class Tokenizer_Http():
11
+ def __init__(self):
12
+ model_id = "qwen2.5_tokenizer"
13
+ self.tokenizer = AutoTokenizer.from_pretrained(model_id)
14
+ self.messages = [
15
+ {"role": "system", "content": "You are Qwen, created by Alibaba Cloud. You are a helpful assistant."},
16
+ ]
17
+ self.token_ids = []
18
+
19
+ self.token_ids_cache = []
20
+
21
+ def encode(self, prompt, last_reply=None):
22
+ if last_reply is not None:
23
+ self.messages.append({"role": "assistant", "content": last_reply})
24
+ text = self.tokenizer.apply_chat_template(
25
+ self.messages,
26
+ tokenize=False,
27
+ add_generation_prompt=True
28
+ )
29
+ # print("生成的文本:\n============\n", text, "============\n")
30
+ self.token_ids = self.tokenizer.encode(text)[:-3]
31
+ self.messages.append({"role": "user", "content": prompt})
32
+
33
+ text = self.tokenizer.apply_chat_template(
34
+ self.messages,
35
+ tokenize=False,
36
+ add_generation_prompt=True
37
+ )
38
+ print("生成的文本:\n============\n", text, "============\n")
39
+ token_ids = self.tokenizer.encode(text)
40
+ # 找出新增部分
41
+ diff = token_ids[len(self.token_ids):]
42
+ self.token_ids = token_ids
43
+ print(self.decode(diff))
44
+ return token_ids, diff
45
+
46
+ def decode(self, token_ids):
47
+ self.token_ids_cache += token_ids
48
+ text = self.tokenizer.decode(self.token_ids_cache)
49
+ if "\ufffd" in text:
50
+ print("text 中包含非法字符")
51
+ return ""
52
+ else:
53
+ self.token_ids_cache.clear()
54
+ return text
55
+
56
+
57
+ @property
58
+ def bos_id(self):
59
+ return self.tokenizer.bos_token_id
60
+
61
+ @property
62
+ def eos_id(self):
63
+ return self.tokenizer.eos_token_id
64
+
65
+ @property
66
+ def bos_token(self):
67
+ return self.tokenizer.bos_token
68
+
69
+ @property
70
+ def eos_token(self):
71
+ return self.tokenizer.eos_token
72
+
73
+ def reset(self, system_prompt="You are Qwen, created by Alibaba Cloud. You are a helpful assistant."):
74
+ self.messages = [
75
+ {"role": "system", "content": system_prompt},
76
+ ]
77
+ text = self.tokenizer.apply_chat_template(
78
+ self.messages,
79
+ tokenize=False,
80
+ add_generation_prompt=True
81
+ )
82
+ token_ids = self.tokenizer.encode(text)[:-3]
83
+ self.token_ids = token_ids
84
+ print(self.decode(token_ids))
85
+ return token_ids
86
+
87
+
88
+ class Request(BaseHTTPRequestHandler):
89
+ timeout = 5
90
+ server_version = 'Apache'
91
+
92
+ def do_GET(self):
93
+ print("GET 请求路径:", self.path)
94
+ self.send_response(200)
95
+ self.send_header("Content-Type", "application/json")
96
+ self.end_headers()
97
+
98
+ # 新增接口:获取 uid
99
+ if '/get_uid' in self.path:
100
+ new_uid = str(uuid.uuid4())
101
+ print("新 uid:", new_uid)
102
+ # 为该 uid 创建一个新的 Tokenizer_Http 实例
103
+ tokenizers[new_uid] = Tokenizer_Http()
104
+ msg = json.dumps({'uid': new_uid})
105
+ elif '/bos_id' in self.path:
106
+ # 获取 uid 参数(例如 ?uid=xxx)
107
+ uid = self.get_query_param("uid")
108
+ instance: Tokenizer_Http = tokenizers.get(uid)
109
+ if instance is None:
110
+ msg = json.dumps({'error': 'Invalid uid'})
111
+ else:
112
+ bos_id = instance.bos_id
113
+ msg = json.dumps({'bos_id': bos_id if bos_id is not None else -1})
114
+ elif '/eos_id' in self.path:
115
+ uid = self.get_query_param("uid")
116
+ instance: Tokenizer_Http = tokenizers.get(uid)
117
+ if instance is None:
118
+ msg = json.dumps({'error': 'Invalid uid'})
119
+ else:
120
+ eos_id = instance.eos_id
121
+ msg = json.dumps({'eos_id': eos_id if eos_id is not None else -1})
122
+ else:
123
+ msg = json.dumps({'error': 'Invalid GET endpoint'})
124
+
125
+ print("响应消息:", msg)
126
+ self.wfile.write(msg.encode())
127
+
128
+ def do_POST(self):
129
+ content_length = int(self.headers.get('content-length', 0))
130
+ data = self.rfile.read(content_length).decode()
131
+ print("POST 请求路径:", self.path)
132
+ print("接收到的数据:", data)
133
+ req = json.loads(data)
134
+
135
+ self.send_response(200)
136
+ self.send_header("Content-Type", "application/json")
137
+ self.end_headers()
138
+
139
+ if '/encode' in self.path:
140
+ # 请求数据中必须包含 uid, text, 和可选的 last_reply
141
+ uid = req.get('uid')
142
+ prompt = req.get('text')
143
+ last_reply = req.get('last_reply')
144
+ instance: Tokenizer_Http = tokenizers.get(uid)
145
+ if instance is None:
146
+ msg = json.dumps({'error': 'Invalid uid'})
147
+ else:
148
+ token_ids, diff = instance.encode(prompt, last_reply)
149
+ msg = json.dumps({'token_ids': token_ids, 'diff': diff})
150
+ elif '/decode' in self.path:
151
+ uid = req.get('uid')
152
+ token_ids = req.get('token_ids')
153
+ instance: Tokenizer_Http = tokenizers.get(uid)
154
+ if instance is None:
155
+ msg = json.dumps({'error': 'Invalid uid'})
156
+ else:
157
+ text = instance.decode(token_ids)
158
+ msg = json.dumps({'text': text})
159
+ elif '/reset' in self.path:
160
+ uid = req.get("uid")
161
+ system_prompt = req.get("system_prompt")
162
+ instance: Tokenizer_Http = tokenizers.get(uid)
163
+ if instance is None:
164
+ msg = json.dumps({'error': 'Invalid uid'})
165
+ else:
166
+ if system_prompt is not None:
167
+ print("system_prompt:", system_prompt)
168
+ token_ids = instance.reset(system_prompt)
169
+ msg = json.dumps({'token_ids': token_ids})
170
+ else:
171
+ token_ids = instance.reset()
172
+ msg = json.dumps({'token_ids': token_ids})
173
+ else:
174
+ msg = json.dumps({'error': 'Invalid POST endpoint'})
175
+
176
+ print("响应消息:", msg)
177
+ self.wfile.write(msg.encode())
178
+
179
+ def get_query_param(self, key):
180
+ """
181
+ 辅助函数:从 GET 请求的 URL 中获取查询参数的值
182
+ 例如:/bos_id?uid=xxx
183
+ """
184
+ from urllib.parse import urlparse, parse_qs
185
+ query = urlparse(self.path).query
186
+ params = parse_qs(query)
187
+ values = params.get(key)
188
+ return values[0] if values else None
189
+
190
+ if __name__ == "__main__":
191
+ parser = argparse.ArgumentParser()
192
+ parser.add_argument('--host', type=str, default='0.0.0.0')
193
+ parser.add_argument('--port', type=int, default=12345)
194
+ args = parser.parse_args()
195
+
196
+ host = (args.host, args.port)
197
+ print('Server running at http://%s:%s' % host)
198
+ server = HTTPServer(host, Request)
199
+ server.serve_forever()
run_qwen2.5_0.5b_gptq_int8_ctx_ax630c.sh ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ./main_ax650 \
2
+ --system_prompt "You are Qwen, created by Alibaba Cloud. You are a helpful assistant." \
3
+ --template_filename_axmodel "qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_p128_l%d_together.axmodel" \
4
+ --axmodel_num 24 \
5
+ --tokenizer_type 2 \
6
+ --url_tokenizer_model "http://127.0.0.1:12345" \
7
+ --filename_post_axmodel "qwen2.5-0.5b-gptq-int8-ctx-ax630c/qwen2_post.axmodel" \
8
+ --filename_tokens_embed "qwen2.5-0.5b-gptq-int8-ctx-ax630c/model.embed_tokens.weight.bfloat16.bin" \
9
+ --tokens_embed_num 151936 \
10
+ --tokens_embed_size 896 \
11
+ --use_mmap_load_embed 0 \
12
+ --live_print 1
13
+
14
+ # --kvcache_path /home/axera/ax-llm/build/kvcache_yuanqi \
run_qwen2.5_0.5b_gptq_int8_ctx_ax650.sh ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ./main_ax650 \
2
+ --system_prompt "You are Qwen, created by Alibaba Cloud. You are a helpful assistant." \
3
+ --template_filename_axmodel "qwen2.5-0.5b-gptq-int8-ctx-ax650/qwen2_p128_l%d_together.axmodel" \
4
+ --axmodel_num 24 \
5
+ --tokenizer_type 2 \
6
+ --url_tokenizer_model "http://127.0.0.1:12345" \
7
+ --filename_post_axmodel "qwen2.5-0.5b-gptq-int8-ctx-ax650/qwen2_post.axmodel" \
8
+ --filename_tokens_embed "qwen2.5-0.5b-gptq-int8-ctx-ax650/model.embed_tokens.weight.bfloat16.bin" \
9
+ --tokens_embed_num 151936 \
10
+ --tokens_embed_size 896 \
11
+ --use_mmap_load_embed 0 \
12
+ --live_print 1
13
+
14
+ # --kvcache_path /home/axera/ax-llm/build/kvcache_yuanqi \