File size: 4,429 Bytes
03703df
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d035a60
03703df
 
 
 
4076712
d035a60
03703df
 
1bdadd4
c597678
 
 
cfa1351
af1ead5
 
cfa1351
c597678
af1ead5
c597678
 
cfa1351
c597678
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
af1ead5
c597678
 
 
1bdadd4
 
 
03703df
 
 
 
 
1bdadd4
03703df
 
cfa1351
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
---
license: apache-2.0
language:
- en
- ja
pipeline_tag: text-generation
library_name: transformers
base_model: pfnet/plamo-2-1b
tags:
- mlx
---

# mlx-community/plamo-2-1b

The Model [mlx-community/plamo-2-1b](https://huggingface.co/mlx-community/plamo-2-1b) was
converted to MLX format from [pfnet/plamo-2-1b](https://huggingface.co/pfnet/plamo-2-1b)
using mlx-lm version **0.22.0**.

## Use with mlx

```bash
# numba is required for the new PLaMo tokenizer
pip install mlx numba 'mlx-lm>=0.22.0'
```

```bash
python -m mlx_lm.generate \                                                              
--model mlx-community/plamo-2-1b \ 
--prompt '็พŽๅ‘ณใ—ใ„ใ‚ซใƒฌใƒผใฎไฝœใ‚Šๆ–นใ‚’็ดนไป‹ใ—ใพใ™ใ€‚' \
--ignore-chat-template \
--max-tokens 1024 \
--extra-eos-token '<|plamo:bos|>' \
--temp 0.7 \
--seed 0
==========

ใ‚นใƒ‘ใ‚คใ‚นใฎไฝฟใ„ๆ–นใ‹ใ‚‰ใ‚ซใƒฌใƒผใฎไฝœใ‚Šๆ–นใพใง่ฉณใ—ใ่งฃ่ชฌใ—ใพใ™ใ€‚
## ใ‚ซใƒฌใƒผใฎไฝœใ‚Šๆ–น
**โ‘ ๆๆ–™ใ‚’็”จๆ„ใ™ใ‚‹**
ๅกฉใ‚’้ฉ้‡ๅŠ ใˆใ‚‹ใจใ€ใ‚นใƒ‘ใ‚คใ‚ทใƒผใช้ฆ™ใ‚ŠใŒๅบƒใŒใ‚Šใพใ™ใ€‚
ใ‚ฏใƒŸใƒณใ€ใ‚ณใƒชใ‚ขใƒณใƒ€ใƒผใชใฉใฎใ‚นใƒ‘ใ‚คใ‚นใ‚’ไฝฟใ†ใจใ€้ฃŸๆฌฒใ‚’ใใใ‚Šใพใ™ใ€‚
**โ‘กใ‚นใƒ‘ใ‚คใ‚นใ‚’็‚’ใ‚ใ‚‹**
ใ‚นใƒ‘ใ‚คใ‚นใฏๅง‹ใ‚ใซๅฐ‘ใ—ๅ…ฅใ‚Œใ‚‹ใ ใ‘ใงใ€ใใฎๅพŒใฏๅพใ€…ใซๅŠ ใˆใพใ™ใ€‚
**โ‘ข็މใญใŽใฎใฟใ˜ใ‚“ๅˆ‡ใ‚Šใ‚’็‚’ใ‚ใ‚‹**
็މใญใŽใ‚’็‚’ใ‚ใ‚‹ใ“ใจใงใ€็”˜ใฟใŒๅผ•ใๅ‡บใ•ใ‚Œใพใ™ใ€‚
**โ‘ฃ่‚‰ใ‚’็‚’ใ‚ใ‚‹**
่‚‰ใฏ่–„ใใ‚นใƒฉใ‚คใ‚นใ—ใฆใ€ใ‚นใƒ‘ใ‚คใ‚นใจใ‚ˆใๆททใœใพใ™ใ€‚
**โ‘ค้‡Ž่œใ‚‚็‚’ใ‚ใ‚‹**
ไบบๅ‚ใ‚„ใ‚ธใƒฃใ‚ฌใ‚คใƒขใ€ใ‚คใƒณใ‚ฒใƒณใชใฉใ‚‚ไธ€็ท’ใซ็‚’ใ‚ใพใ™ใ€‚้‡Ž่œใฏ็‚’ใ‚ใ‚‹ๅ‰ใซใ‚ซใƒƒใƒˆใ—ใฆใŠใใพใ—ใ‚‡ใ†ใ€‚
**โ‘ฅๆฐดใ‚’ๅŠ ใˆใ‚‹**
**โ‘ฆใ‚ซใƒฌใƒผใƒซใƒผใ‚’ๅŠ ใˆใ‚‹**
**โ‘งๅ‡บๆฅไธŠใŒใ‚Š**
## ใ‚ซใƒฌใƒผใฎๅ‘ณไป˜ใ‘ๆ–นๆณ•
**โ‘ ่‚‰ใ‚’็‚’ใ‚ใ‚‹**
่‚‰ใฏ่–„ใใ‚นใƒฉใ‚คใ‚นใ—ใฆใ€ใ‚นใƒ‘ใ‚คใ‚นใจใ‚ˆใๆททใœใพใ™ใ€‚
**โ‘ก้‡Ž่œใ‚‚็‚’ใ‚ใ‚‹**
้‡Ž่œใฏ็‚’ใ‚ใ‚‹ๅ‰ใซใ‚ซใƒƒใƒˆใ—ใฆใŠใใพใ—ใ‚‡ใ†ใ€‚
**โ‘ขๆฐดใ‚’ๅŠ ใˆใ‚‹**
**โ‘ฃใ‚ซใƒฌใƒผใƒซใƒผใ‚’ๅŠ ใˆใ‚‹**
## ใ‚ซใƒฌใƒผใซใฏโ—‹โ—‹ใ‚’ๅ…ฅใ‚Œใ‚ˆใ†
**โ‘ ใ—ใ‚‡ใ†ใ‚†**
ใ—ใ‚‡ใ†ใ‚†ใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€ใพใ‚ใ‚„ใ‹ใงใ‚ณใ‚ฏใฎใ‚ใ‚‹ๅ‘ณใซใชใ‚Šใพใ™ใ€‚
**โ‘กใซใ‚“ใซใ**
ใซใ‚“ใซใใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€้ฆ™ใ‚Šใจ้ขจๅ‘ณใŒใ‚ขใƒƒใƒ—ใ—ใพใ™ใ€‚
**โ‘ขใ—ใ‚‡ใ†ใŒ**
ใ—ใ‚‡ใ†ใŒใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€ใ‚นใƒ‘ใ‚คใ‚ทใƒผใช้ขจๅ‘ณใŒๅŠ ใ‚ใ‚Šใพใ™ใ€‚
**โ‘ฃใƒˆใƒžใƒˆ็ผถ**
ใƒˆใƒžใƒˆ็ผถใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€้…ธๅ‘ณใŒๅŠ ใ‚ใ‚Šใ€ๆทฑใฟใฎใ‚ใ‚‹ๅ‘ณใ‚ใ„ใซใชใ‚Šใพใ™ใ€‚
**โ‘คใƒจใƒผใ‚ฐใƒซใƒˆ**
ใƒจใƒผใ‚ฐใƒซใƒˆใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€ใ‚ณใ‚ฏใŒใ‚ขใƒƒใƒ—ใ—ใพใ™ใ€‚
## ใ‚ซใƒฌใƒผใฎใ‚ชใ‚นใ‚นใƒกใฎๅ…ทๆ
**โ‘ ่‚‰**
็‰›่‚‰ใ€่ฑš่‚‰ใ€้ถ่‚‰ใชใฉใ€ใŠๅฅฝใฟใฎ่‚‰ใ‚’ไฝฟใฃใฆใฟใพใ—ใ‚‡ใ†ใ€‚
**โ‘ก้‡Ž่œ**
ไบบๅ‚ใ€ใ‚ธใƒฃใ‚ฌใ‚คใƒขใ€ใ‚คใƒณใ‚ฒใƒณใชใฉใ€ใŠๅฅฝใฟใฎ้‡Ž่œใ‚’ไฝฟใฃใฆใฟใพใ—ใ‚‡ใ†ใ€‚
**โ‘ขใ‚ทใƒผใƒ•ใƒผใƒ‰**
ใ‚ใ•ใ‚Šใ€ใˆใณใ€ใ„ใ‹ใชใฉใ€ใ‚ทใƒผใƒ•ใƒผใƒ‰ใ‚’ไฝฟใฃใฆใฟใพใ—ใ‚‡ใ†ใ€‚
**โ‘ฃใƒใƒผใ‚บ**
ใƒใƒผใ‚บใ‚’ๅŠ ใˆใ‚‹ใ“ใจใงใ€ใ‚ฏใƒชใƒผใƒŸใƒผใงใ‚ณใ‚ฏใฎใ‚ใ‚‹ๅ‘ณใ‚ใ„ใซใชใ‚Šใพใ™ใ€‚
## ใ‚ซใƒฌใƒผใฎ็พŽๅ‘ณใ—ใ„ไฝœใ‚Šๆ–น
**โ‘ ๆๆ–™ใ‚’็”จๆ„ใ™ใ‚‹**
ๅกฉใ‚’้ฉ้‡ๅŠ ใˆใ‚‹ใจใ€ใ‚นใƒ‘ใ‚คใ‚ทใƒผใช้ฆ™ใ‚ŠใŒๅบƒใŒใ‚Šใพใ™ใ€‚
ใ‚ฏใƒŸใƒณใ€ใ‚ณใƒชใ‚ขใƒณใƒ€ใƒผใชใฉใฎใ‚นใƒ‘ใ‚คใ‚นใ‚’ไฝฟใ†ใจใ€้ฃŸๆฌฒใ‚’ใใใ‚Šใพใ™ใ€‚
**โ‘กใ‚นใƒ‘ใ‚คใ‚นใ‚’็‚’ใ‚ใ‚‹**
ใ‚นใƒ‘ใ‚คใ‚นใฏๅง‹ใ‚ใซๅฐ‘ใ—ๅ…ฅใ‚Œใ‚‹ใ ใ‘ใงใ€ใใฎๅพŒใฏๅพใ€…ใซๅŠ ใˆใพใ™ใ€‚
**โ‘ข็މใญใŽใฎใฟใ˜ใ‚“ๅˆ‡ใ‚Šใ‚’็‚’ใ‚ใ‚‹**
็މใญใŽใ‚’็‚’ใ‚ใ‚‹ใ“ใจใงใ€็”˜ใฟใŒๅผ•ใๅ‡บใ•ใ‚Œใพใ™ใ€‚
**โ‘ฃ่‚‰ใ‚’็‚’ใ‚ใ‚‹**
่‚‰ใฏ่–„ใใ‚นใƒฉใ‚คใ‚นใ—ใฆใ€ใ‚นใƒ‘ใ‚คใ‚นใจใ‚ˆใๆททใœใพใ™ใ€‚
**โ‘ค้‡Ž่œใ‚‚็‚’ใ‚ใ‚‹**
ไบบๅ‚ใ‚„ใ‚ธใƒฃใ‚ฌใ‚คใƒขใ€ใ‚คใƒณใ‚ฒใƒณใชใฉใ‚‚ไธ€็ท’ใซ็‚’ใ‚ใพใ™ใ€‚้‡Ž่œใฏ็‚’ใ‚ใ‚‹ๅ‰ใซใ‚ซใƒƒใƒˆใ—ใฆใŠใใพใ—ใ‚‡ใ†ใ€‚
**โ‘ฅๆฐดใ‚’ๅŠ ใˆใ‚‹**
**โ‘ฆใ‚ซใƒฌใƒผใƒซใƒผใ‚’ๅŠ ใˆใ‚‹**
**โ‘งๅ‡บๆฅไธŠใŒใ‚Š**
## ใพใจใ‚
ใ‚นใƒ‘ใ‚คใ‚นใจ้‡Ž่œใฎ็ต„ใฟๅˆใ‚ใ›ใฏใ€ใ‚ซใƒฌใƒผใฎๅ‘ณใ‚ใ„ใ‚’ๆทฑใ‚ใ‚‹ใฎใซๆฌ ใ‹ใ›ใพใ›ใ‚“ใ€‚
ใœใฒไปŠๅ›ž็ดนไป‹ใ—ใŸใƒฌใ‚ทใƒ”ใ‚’ๅ‚่€ƒใซใ€็พŽๅ‘ณใ—ใ„ใ‚ซใƒฌใƒผใ‚’ไฝœใฃใฆใฟใฆใใ ใ•ใ„ใ€‚
==========
Prompt: 6 tokens, 87.012 tokens-per-sec
Generation: 496 tokens, 52.861 tokens-per-sec
Peak memory: 5.317 GB
```

You can also write your code to use this model like this:
```python
from mlx_lm import load, generate

model, tokenizer = load("mlx-community/plamo-2-1b")

prompt = "็พŽๅ‘ณใ—ใ„ใ‚ซใƒฌใƒผใฎไฝœใ‚Šๆ–นใฎใƒฌใ‚ทใƒ”ใ‚’็ดนไป‹ใ—ใพใ™ใ€‚"

response = generate(model, tokenizer, prompt=prompt, verbose=True)
```