ohtaman commited on
Commit
82fca5f
1 Parent(s): 1c8a137

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +61 -1
README.md CHANGED
@@ -8,8 +8,68 @@ pipeline_tag: text-generation
8
  ---
9
  ## Training procedure
10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
 
12
  ### Framework versions
13
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
 
15
- - PEFT 0.4.0.dev0
 
 
8
  ---
9
  ## Training procedure
10
 
11
+ Finetune [tiiuae/falcon-7b](https://huggingface.co/tiiuae/falcon-7b) with [ohtaman/kokkai2022](https://huggingface.co/datasets/ohtaman/kokkai2022)(currentry, private) dataset with LoRA.
12
+ The training parameters are
13
+
14
+ |param|value|
15
+ |:--:|:--:|
16
+ |r| 4|
17
+ |lora_alpha| 2|
18
+ |target_modules|- query_key_value<br> - dense<br> - dense_h_to_4h<br> - dense_4h_to_h|
19
+ |lora_dropout| 0.01|
20
+ |bias| None|
21
+ |task_type| CAUSAL_LM|
22
+ |optimizer|AdamW|
23
+ |lr|4e-4|
24
+
25
+ the prompt is something like
26
+
27
+ ```
28
+ # question
29
+ {questioner}
30
+
31
+ {question_text}
32
+
33
+ # answer
34
+ {answerer}
35
+
36
+ {answer_text}
37
+
38
+ ```
39
 
40
  ### Framework versions
41
 
42
+ - PEFT 0.4.0.dev0
43
+
44
+ ### Example Notebook (Colab)
45
+
46
+ [Colaboratory](https://colab.research.google.com/drive/1oWHM5_DbltvrD27oZL4-fumXChkMkrC5?usp=sharing) (Pro is not needed.)
47
+
48
+ ### Example Code
49
+
50
+ ```python
51
+ tokenizer = transformers.AutoTokenizer.from_pretrained(base_model_name, trust_remote_code=True)
52
+ base_model = transformers.AutoModelForCausalLM.from_pretrained(base_model_name, device_map="auto", torch_dtype=torch.bfloat16, trust_remote_code=True)
53
+ peft_model = peft.PeftModelForCausalLM.from_pretrained(base_model, peft_model_name, torch_dtype=torch.bfloat16)
54
+
55
+
56
+ prompt = "# question\n麻生太郎\n\n増税すべきとお考えか?\n# answer\n岸田文雄\n\n〔内閣総理大臣岸田文雄君登壇〕"
57
+ input_tokens = tokenizer(prompt, return_tensors="pt").to(peft_model.device)
58
+ input_length = input_tokens.input_ids.shape[1]
59
+
60
+ with torch.no_grad():
61
+ outputs = peft_model.generate(
62
+ input_ids=input_tokens["input_ids"],
63
+ attention_mask=input_tokens["attention_mask"],
64
+ return_dict_in_generate=True,
65
+ eos_token_id=tokenizer.eos_token_id,
66
+ pad_token_id=tokenizer.pad_token_id,
67
+ max_length=max_length,
68
+ temperature=0.7,
69
+ top_p=0.9,
70
+ repetition_penalty=1.05,
71
+ )
72
+ output_tokens = outputs.sequences[0, input_length:-1]
73
 
74
+ print(tokenizer.decode(output_tokens))
75
+ ```