metastable-void commited on
Commit
59be267
·
unverified ·
1 Parent(s): 831dbac
Files changed (3) hide show
  1. app.py +10 -3
  2. pyproject.toml +8 -7
  3. requirements.txt +21 -7
app.py CHANGED
@@ -8,6 +8,7 @@ import gradio as gr
8
  import spaces
9
  import torch
10
  from transformers import AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer, pipeline
 
11
 
12
  DESCRIPTION = "# chat-1"
13
 
@@ -22,10 +23,16 @@ MAX_INPUT_TOKEN_LENGTH = int(os.getenv("MAX_INPUT_TOKEN_LENGTH", "32768"))
22
  if torch.cuda.is_available():
23
  model_id = "vericava/llm-jp-3-1.8b-instruct-lora-vericava7-llama"
24
  base_model_id = "llm-jp/llm-jp-3-1.8b-instruct"
 
 
 
 
 
 
25
  my_pipeline=pipeline(
26
- model=model_id,
27
- tokenizer=base_model_id,
28
- use_safetensors=True,
29
  )
30
  my_pipeline.tokenizer.chat_template = "{{bos_token}}{% for message in messages %}{% if message['role'] == 'user' %}{{ '\\n\\n### 前の投稿:\\n' + message['content'] + '' }}{% elif message['role'] == 'system' %}{{ '以下は、SNS上の投稿です。あなたはSNSの投稿生成botとして、次に続く投稿を考えなさい。説明はせず、投稿の内容のみを鉤括弧をつけずに答えよ。' }}{% elif message['role'] == 'assistant' %}{{ '\\n\\n### 次の投稿:\\n' + message['content'] + eos_token }}{% endif %}{% if loop.last and add_generation_prompt %}{{ '\\n\\n### 次の投稿:\\n' }}{% endif %}{% endfor %}"
31
 
 
8
  import spaces
9
  import torch
10
  from transformers import AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer, pipeline
11
+ from peft import PeftModel
12
 
13
  DESCRIPTION = "# chat-1"
14
 
 
23
  if torch.cuda.is_available():
24
  model_id = "vericava/llm-jp-3-1.8b-instruct-lora-vericava7-llama"
25
  base_model_id = "llm-jp/llm-jp-3-1.8b-instruct"
26
+ tokenizer = AutoTokenizer.from_pretrained(base_model_id, trust_remote_code=True)
27
+ base_model = AutoModelForCausalLM.from_pretrained(
28
+ base_model_id,
29
+ trust_remote_code=True,
30
+ )
31
+ model = PeftModel.from_pretrained(base_model, model_id, trust_remote_code=True)
32
  my_pipeline=pipeline(
33
+ task="text-generation",
34
+ model=model,
35
+ tokenizer=tokenizer,
36
  )
37
  my_pipeline.tokenizer.chat_template = "{{bos_token}}{% for message in messages %}{% if message['role'] == 'user' %}{{ '\\n\\n### 前の投稿:\\n' + message['content'] + '' }}{% elif message['role'] == 'system' %}{{ '以下は、SNS上の投稿です。あなたはSNSの投稿生成botとして、次に続く投稿を考えなさい。説明はせず、投稿の内容のみを鉤括弧をつけずに答えよ。' }}{% elif message['role'] == 'assistant' %}{{ '\\n\\n### 次の投稿:\\n' + message['content'] + eos_token }}{% endif %}{% if loop.last and add_generation_prompt %}{{ '\\n\\n### 次の投稿:\\n' }}{% endif %}{% endfor %}"
38
 
pyproject.toml CHANGED
@@ -1,12 +1,13 @@
1
  [project]
2
  dependencies = [
3
- "accelerate>=1.2.1",
4
- "bitsandbytes>=0.45.0",
5
- "gradio>=5.9.1",
6
- "hf-transfer>=0.1.8",
7
- "spaces>=0.31.1",
8
- "torch==2.4.0",
9
- "transformers>=4.48.3",
 
10
  ]
11
  description = ""
12
  name = "chat-1"
 
1
  [project]
2
  dependencies = [
3
+ "accelerate>=1.2.1",
4
+ "bitsandbytes>=0.45.0",
5
+ "gradio>=5.9.1",
6
+ "hf-transfer>=0.1.8",
7
+ "spaces>=0.31.1",
8
+ "torch==2.4.0",
9
+ "transformers>=4.48.3",
10
+ "peft==0.14.0",
11
  ]
12
  description = ""
13
  name = "chat-1"
requirements.txt CHANGED
@@ -1,7 +1,9 @@
1
  # This file was autogenerated by uv via the following command:
2
  # uv pip compile pyproject.toml -o requirements.txt
3
  accelerate==1.2.1
4
- # via calm2-7b-chat (pyproject.toml)
 
 
5
  aiofiles==23.2.1
6
  # via gradio
7
  annotated-types==0.7.0
@@ -12,7 +14,7 @@ anyio==4.7.0
12
  # httpx
13
  # starlette
14
  bitsandbytes==0.45.0
15
- # via calm2-7b-chat (pyproject.toml)
16
  certifi==2024.12.14
17
  # via
18
  # httpcore
@@ -41,7 +43,7 @@ fsspec==2024.12.0
41
  # torch
42
  gradio==5.9.1
43
  # via
44
- # calm2-7b-chat (pyproject.toml)
45
  # spaces
46
  gradio-client==1.5.2
47
  # via gradio
@@ -50,7 +52,7 @@ h11==0.14.0
50
  # httpcore
51
  # uvicorn
52
  hf-transfer==0.1.8
53
- # via calm2-7b-chat (pyproject.toml)
54
  httpcore==1.0.7
55
  # via httpx
56
  httpx==0.28.1
@@ -64,6 +66,7 @@ huggingface-hub==0.27.0
64
  # accelerate
65
  # gradio
66
  # gradio-client
 
67
  # tokenizers
68
  # transformers
69
  idna==3.10
@@ -93,6 +96,7 @@ numpy==2.2.1
93
  # bitsandbytes
94
  # gradio
95
  # pandas
 
96
  # transformers
97
  nvidia-cublas-cu12==12.1.3.1
98
  # via
@@ -133,15 +137,19 @@ packaging==24.2
133
  # gradio
134
  # gradio-client
135
  # huggingface-hub
 
136
  # spaces
137
  # transformers
138
  pandas==2.2.3
139
  # via gradio
 
 
140
  pillow==11.1.0
141
  # via gradio
142
  psutil==5.9.8
143
  # via
144
  # accelerate
 
145
  # spaces
146
  pydantic==2.10.4
147
  # via
@@ -165,6 +173,7 @@ pyyaml==6.0.2
165
  # accelerate
166
  # gradio
167
  # huggingface-hub
 
168
  # transformers
169
  regex==2024.11.6
170
  # via transformers
@@ -182,6 +191,7 @@ safehttpx==0.1.6
182
  safetensors==0.4.5
183
  # via
184
  # accelerate
 
185
  # transformers
186
  semantic-version==2.10.0
187
  # via gradio
@@ -192,7 +202,7 @@ six==1.17.0
192
  sniffio==1.3.1
193
  # via anyio
194
  spaces==0.31.1
195
- # via calm2-7b-chat (pyproject.toml)
196
  starlette==0.41.3
197
  # via
198
  # fastapi
@@ -205,15 +215,19 @@ tomlkit==0.13.2
205
  # via gradio
206
  torch==2.4.0
207
  # via
208
- # calm2-7b-chat (pyproject.toml)
209
  # accelerate
210
  # bitsandbytes
 
211
  tqdm==4.67.1
212
  # via
213
  # huggingface-hub
 
214
  # transformers
215
  transformers==4.50.1
216
- # via calm2-7b-chat (pyproject.toml)
 
 
217
  triton==3.0.0
218
  # via torch
219
  typer==0.15.1
 
1
  # This file was autogenerated by uv via the following command:
2
  # uv pip compile pyproject.toml -o requirements.txt
3
  accelerate==1.2.1
4
+ # via
5
+ # chat-1 (pyproject.toml)
6
+ # peft
7
  aiofiles==23.2.1
8
  # via gradio
9
  annotated-types==0.7.0
 
14
  # httpx
15
  # starlette
16
  bitsandbytes==0.45.0
17
+ # via chat-1 (pyproject.toml)
18
  certifi==2024.12.14
19
  # via
20
  # httpcore
 
43
  # torch
44
  gradio==5.9.1
45
  # via
46
+ # chat-1 (pyproject.toml)
47
  # spaces
48
  gradio-client==1.5.2
49
  # via gradio
 
52
  # httpcore
53
  # uvicorn
54
  hf-transfer==0.1.8
55
+ # via chat-1 (pyproject.toml)
56
  httpcore==1.0.7
57
  # via httpx
58
  httpx==0.28.1
 
66
  # accelerate
67
  # gradio
68
  # gradio-client
69
+ # peft
70
  # tokenizers
71
  # transformers
72
  idna==3.10
 
96
  # bitsandbytes
97
  # gradio
98
  # pandas
99
+ # peft
100
  # transformers
101
  nvidia-cublas-cu12==12.1.3.1
102
  # via
 
137
  # gradio
138
  # gradio-client
139
  # huggingface-hub
140
+ # peft
141
  # spaces
142
  # transformers
143
  pandas==2.2.3
144
  # via gradio
145
+ peft==0.14.0
146
+ # via chat-1 (pyproject.toml)
147
  pillow==11.1.0
148
  # via gradio
149
  psutil==5.9.8
150
  # via
151
  # accelerate
152
+ # peft
153
  # spaces
154
  pydantic==2.10.4
155
  # via
 
173
  # accelerate
174
  # gradio
175
  # huggingface-hub
176
+ # peft
177
  # transformers
178
  regex==2024.11.6
179
  # via transformers
 
191
  safetensors==0.4.5
192
  # via
193
  # accelerate
194
+ # peft
195
  # transformers
196
  semantic-version==2.10.0
197
  # via gradio
 
202
  sniffio==1.3.1
203
  # via anyio
204
  spaces==0.31.1
205
+ # via chat-1 (pyproject.toml)
206
  starlette==0.41.3
207
  # via
208
  # fastapi
 
215
  # via gradio
216
  torch==2.4.0
217
  # via
218
+ # chat-1 (pyproject.toml)
219
  # accelerate
220
  # bitsandbytes
221
+ # peft
222
  tqdm==4.67.1
223
  # via
224
  # huggingface-hub
225
+ # peft
226
  # transformers
227
  transformers==4.50.1
228
+ # via
229
+ # chat-1 (pyproject.toml)
230
+ # peft
231
  triton==3.0.0
232
  # via torch
233
  typer==0.15.1