Gamoooo commited on
Commit
cc20c76
·
verified ·
1 Parent(s): 7ac00c2

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +27 -22
README.md CHANGED
@@ -1,43 +1,48 @@
1
  ---
2
  base_model: llm-jp/llm-jp-3-13b
3
- tags:
4
- - text-generation-inference
5
- - transformers
6
- - unsloth
7
- - llama
8
- - trl
9
- language:
10
- - en
11
- - ja
12
  ---
13
 
 
 
 
 
 
 
 
14
  # 推論用コード
15
- Hugging Faceにアップロードしたモデルを用いてELYZA-tasks-100-TVの出力を得るためのコードです。
16
- このコードで生成されたjsonlファイルは課題の成果として提出可能なフォーマットになっております。
17
 
 
 
 
18
  ```
19
  !pip install unsloth
20
  !pip uninstall unsloth -y && pip install --upgrade --no-cache-dir "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
21
  !pip install -U torch
22
  !pip install -U peft
23
- ```
24
-
25
- # モデル・トークナイザの読み込み
26
- ```
27
  from unsloth import FastLanguageModel
28
  from peft import PeftModel
29
  import torch
30
  import json
31
  from tqdm import tqdm
32
  import re
 
33
 
34
- model_id = "llm-jp/llm-jp-3-13b"
35
- adapter_id = "Gamoooo/llm-jp-3-13b-last"
36
-
37
  HF_TOKEN = "your-token" #@param {type:"string"}
 
 
 
 
 
 
 
 
38
 
39
  dtype = None
40
- load_in_4bit = True
41
 
42
  model, tokenizer = FastLanguageModel.from_pretrained(
43
  model_name=model_id,
@@ -49,7 +54,7 @@ model, tokenizer = FastLanguageModel.from_pretrained(
49
  model = PeftModel.from_pretrained(model, adapter_id, token = HF_TOKEN)
50
  ```
51
 
52
- # 入力データの準備
53
  ```
54
  datasets = []
55
  with open("./elyza-tasks-100-TV_0.jsonl", "r") as f:
@@ -62,7 +67,7 @@ with open("./elyza-tasks-100-TV_0.jsonl", "r") as f:
62
  item = ""
63
  ```
64
 
65
- # 推論実行
66
  ```
67
  FastLanguageModel.for_inference(model)
68
 
@@ -86,7 +91,7 @@ for dt in tqdm(datasets):
86
  results.append({"task_id": dt["task_id"], "input": input, "output": prediction})
87
  ```
88
 
89
- # 出力の保存
90
  ```
91
  json_file_id = re.sub(".*/", "", adapter_id)
92
  with open(f"/content/{json_file_id}_output.jsonl", 'w', encoding='utf-8') as f:
 
1
  ---
2
  base_model: llm-jp/llm-jp-3-13b
 
 
 
 
 
 
 
 
 
3
  ---
4
 
5
+ # モデルの概要
6
+ このモデルは、松尾研大規模言語モデル講座2024の最終課題として作成された提出モデルです。
7
+ ベースとなるモデルは「llm-jp/llm-jp-3-13b」です。このベースモデルを元に以下のデータセットを用いて追加学習を行いました。
8
+ ・ichikara-Instruction
9
+ ・ELIZA-task-100
10
+ これらのデータセットを活用することで、モデルの指示対応能力とタスク処理能力を向上させています。
11
+
12
  # 推論用コード
13
+ 以下のコードを実行すると、HuggingFace上の本モデル「Gamoooo/llm-jp-3-13b-last」を実行して、最終課題用入力データ「elyza-tasks-100-TV_0.jsonl」(課題用オリジナルデータセット)を推論し、その結果を{json_file_id}-outputs.jsonlというファイルに出力できます。
 
14
 
15
+ ### ライブラリーのインストール&セットアップ
16
+ ### Google Colab環境向けインストール手順
17
+ 以下のコマンドをGoogle Colabのセルに入力して実行してください:
18
  ```
19
  !pip install unsloth
20
  !pip uninstall unsloth -y && pip install --upgrade --no-cache-dir "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
21
  !pip install -U torch
22
  !pip install -U peft
 
 
 
 
23
  from unsloth import FastLanguageModel
24
  from peft import PeftModel
25
  import torch
26
  import json
27
  from tqdm import tqdm
28
  import re
29
+ ```
30
 
31
+ ### Hugging FaceのTokenの指定
32
+ 以下のコードを使用して、Hugging Faceのトークンを指定してください:
33
+ ```
34
  HF_TOKEN = "your-token" #@param {type:"string"}
35
+ ```
36
+
37
+ ### モデル・トークナイザの読み込み
38
+ ### 量子化パラメータの設定
39
+ ベースモデルは13Bの大規模モデルであるため、量子化(4bit)を行います。
40
+ ```
41
+ model_id = "llm-jp/llm-jp-3-13b" # ベースモデルのID
42
+ adapter_id = "Gamoooo/llm-jp-3-13b-last" # 本モデルのアダプタモデルID
43
 
44
  dtype = None
45
+ load_in_4bit = True # メモリ効率化のため4bit量子化を有効化
46
 
47
  model, tokenizer = FastLanguageModel.from_pretrained(
48
  model_name=model_id,
 
54
  model = PeftModel.from_pretrained(model, adapter_id, token = HF_TOKEN)
55
  ```
56
 
57
+ ### 入力データの準備
58
  ```
59
  datasets = []
60
  with open("./elyza-tasks-100-TV_0.jsonl", "r") as f:
 
67
  item = ""
68
  ```
69
 
70
+ ### 推論実行
71
  ```
72
  FastLanguageModel.for_inference(model)
73
 
 
91
  results.append({"task_id": dt["task_id"], "input": input, "output": prediction})
92
  ```
93
 
94
+ ### 出力の保存
95
  ```
96
  json_file_id = re.sub(".*/", "", adapter_id)
97
  with open(f"/content/{json_file_id}_output.jsonl", 'w', encoding='utf-8') as f: