tokushi commited on
Commit
dac2e68
·
verified ·
1 Parent(s): 3ed47ca

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +16 -8
README.md CHANGED
@@ -27,13 +27,15 @@ Hugging Faceにアダプタをアップロードしてあることが前提と
27
 
28
  ※本コードはGoogle Colabでの動作を想定しています。
29
 
 
30
  # 必要なライブラリをインストール
31
  %%capture
32
  !pip install unsloth
33
  !pip uninstall unsloth -y && pip install --upgrade --no-cache-dir "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
34
  !pip install -U torch
35
  !pip install -U peft
36
-
 
37
  # 必要なライブラリを読み込み
38
  from unsloth import FastLanguageModel
39
  from peft import PeftModel
@@ -41,11 +43,13 @@ import torch
41
  import json
42
  from tqdm import tqdm
43
  import re
44
-
 
45
  # ベースとなるモデルと学習したLoRAのアダプタ(Hugging FaceのIDを指定)。
46
  model_id = "llm-jp/llm-jp-3-13b"
47
  adapter_id = "tokushi"
48
-
 
49
  # Hugging Face Token を指定。
50
  # 下記の URL から Hugging Face Token を取得できますので下記の HF_TOKEN に入れてください。
51
  # https://huggingface.co/settings/tokens
@@ -61,9 +65,11 @@ model, tokenizer = FastLanguageModel.from_pretrained(
61
  load_in_4bit=load_in_4bit,
62
  trust_remote_code=True,
63
  )
64
-
 
65
  adapter_id = "tokushi/llm-jp-3-13b-it_lora"
66
-
 
67
  # 元のモデルにLoRAのアダプタを統合。
68
  model = PeftModel.from_pretrained(model, adapter_id, token = HF_TOKEN)
69
 
@@ -79,8 +85,9 @@ with open("/content/elyza-tasks-100-TV_0.jsonl", "r") as f:
79
  datasets.append(json.loads(item))
80
  item = ""
81
 
 
 
82
  # モデルを用いてタスクの推論。
83
-
84
  # 推論するためにモデルのモードを変更
85
  FastLanguageModel.for_inference(model)
86
 
@@ -96,12 +103,13 @@ for dt in tqdm(datasets):
96
  prediction = tokenizer.decode(outputs[0], skip_special_tokens=True).split('\n### 回答')[-1]
97
 
98
  results.append({"task_id": dt["task_id"], "input": input, "output": prediction})
99
-
 
100
  # 結果をjsonlで保存。
101
-
102
  # ここではadapter_idを元にファイル名を決定しているが、ファイル名は任意で問題なし。
103
  json_file_id = re.sub(".*/", "", adapter_id)
104
  with open(f"/content/{json_file_id}_output.jsonl", 'w', encoding='utf-8') as f:
105
  for result in results:
106
  json.dump(result, f, ensure_ascii=False)
107
  f.write('\n')
 
 
27
 
28
  ※本コードはGoogle Colabでの動作を想定しています。
29
 
30
+ ```
31
  # 必要なライブラリをインストール
32
  %%capture
33
  !pip install unsloth
34
  !pip uninstall unsloth -y && pip install --upgrade --no-cache-dir "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
35
  !pip install -U torch
36
  !pip install -U peft
37
+ ```
38
+ ```
39
  # 必要なライブラリを読み込み
40
  from unsloth import FastLanguageModel
41
  from peft import PeftModel
 
43
  import json
44
  from tqdm import tqdm
45
  import re
46
+ ```
47
+ ```
48
  # ベースとなるモデルと学習したLoRAのアダプタ(Hugging FaceのIDを指定)。
49
  model_id = "llm-jp/llm-jp-3-13b"
50
  adapter_id = "tokushi"
51
+ ```
52
+ ```
53
  # Hugging Face Token を指定。
54
  # 下記の URL から Hugging Face Token を取得できますので下記の HF_TOKEN に入れてください。
55
  # https://huggingface.co/settings/tokens
 
65
  load_in_4bit=load_in_4bit,
66
  trust_remote_code=True,
67
  )
68
+ ```
69
+ ```
70
  adapter_id = "tokushi/llm-jp-3-13b-it_lora"
71
+ ```
72
+ ```
73
  # 元のモデルにLoRAのアダプタを統合。
74
  model = PeftModel.from_pretrained(model, adapter_id, token = HF_TOKEN)
75
 
 
85
  datasets.append(json.loads(item))
86
  item = ""
87
 
88
+ ```
89
+ ```
90
  # モデルを用いてタスクの推論。
 
91
  # 推論するためにモデルのモードを変更
92
  FastLanguageModel.for_inference(model)
93
 
 
103
  prediction = tokenizer.decode(outputs[0], skip_special_tokens=True).split('\n### 回答')[-1]
104
 
105
  results.append({"task_id": dt["task_id"], "input": input, "output": prediction})
106
+ ```
107
+ ```
108
  # 結果をjsonlで保存。
 
109
  # ここではadapter_idを元にファイル名を決定しているが、ファイル名は任意で問題なし。
110
  json_file_id = re.sub(".*/", "", adapter_id)
111
  with open(f"/content/{json_file_id}_output.jsonl", 'w', encoding='utf-8') as f:
112
  for result in results:
113
  json.dump(result, f, ensure_ascii=False)
114
  f.write('\n')
115
+ ```