xaxexu commited on
Commit
5ba6389
1 Parent(s): 1988bd9

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +135 -3
README.md CHANGED
@@ -1,3 +1,135 @@
1
- ---
2
- license: llama3.3
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: llama3.3
3
+ ---
4
+ README.md
5
+ Mô hình XaXeXu
6
+ Đây là mô hình LLM đã được tinh chỉnh từ Meta-Llama-3-8B sử dụng QLoRA để giảm chi phí tính toán nhưng vẫn đảm bảo hiệu suất cao. Mục đích của mô hình là sinh output kết quả từ bộ dữ liệu ELYZA-tasks-100.
7
+
8
+ 1. Cài đặt môi trường
9
+ Đầu tiên, cài đặt các thư viện cần thiết:
10
+
11
+ bash
12
+ Sao chép mã
13
+ pip install transformers bitsandbytes accelerate peft datasets torch
14
+ Ngoài ra, cần đăng nhập vào Hugging Face CLI để tải mô hình:
15
+
16
+ bash
17
+ Sao chép mã
18
+ huggingface-cli login
19
+ 2. Tải mô hình
20
+ Dưới đây là cách tải tokenizer và mô hình đã tinh chỉnh:
21
+
22
+ python
23
+ Sao chép mã
24
+ import torch
25
+ from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
26
+
27
+ model_name = "meta-llama/Meta-Llama-3-8B"
28
+
29
+ # Cấu hình nén QLoRA
30
+ bnb_config = BitsAndBytesConfig(
31
+ load_in_4bit=True,
32
+ bnb_4bit_compute_dtype=torch.float16,
33
+ bnb_4bit_quant_type="nf4",
34
+ bnb_4bit_use_double_quant=False,
35
+ )
36
+
37
+ # Tải tokenizer và mô hình
38
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
39
+ model = AutoModelForCausalLM.from_pretrained(
40
+ model_name,
41
+ device_map="auto",
42
+ quantization_config=bnb_config,
43
+ torch_dtype=torch
44
+
45
+
46
+
47
+
48
+
49
+ Bạn đã nói:
50
+ viết bằng tiếng nhật
51
+ ChatGPT đã nói:
52
+ ChatGPT
53
+ 以下は、Hugging Face上のxaxexu/XaXeXuリポジトリのREADME.mdの完全なサンプルです。
54
+
55
+ XaXeXuモデル
56
+ このリポジトリには、Meta-Llama-3-8BをベースにQLoRAを使用してファインチューニングされたXaXeXuモデルが含まれています。
57
+ 日本語のベンチマーク ELYZA-tasks-100 に対して高精度な結果を出力するために設計されています。
58
+
59
+ 環境構築
60
+ 以下のライブラリをインストールすることで環境をセットアップできます。
61
+
62
+ bash
63
+ Sao chép mã
64
+ pip install transformers bitsandbytes accelerate peft datasets
65
+ Hugging Faceアカウントでログインする必要があります。
66
+
67
+ bash
68
+ Sao chép mã
69
+ huggingface-cli login
70
+ モデルのダウンロード
71
+ モデルはHugging Faceから直接ダウンロードできます。
72
+
73
+ python
74
+ Sao chép mã
75
+ from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
76
+ import torch
77
+
78
+ # モデル名
79
+ model_name = "meta-llama/Meta-Llama-3-8B"
80
+
81
+ # 量子化設定 (QLoRA用)
82
+ bnb_config = BitsAndBytesConfig(
83
+ load_in_4bit=True,
84
+ bnb_4bit_compute_dtype=torch.float16,
85
+ bnb_4bit_quant_type="nf4",
86
+ bnb_4bit_use_double_quant=False,
87
+ )
88
+
89
+ # トークナイザーとモデルのロード
90
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
91
+ model = AutoModelForCausalLM.from_pretrained(
92
+ model_name,
93
+ device_map="auto",
94
+ quantization_config=bnb_config,
95
+ torch_dtype=torch.bfloat16,
96
+ )
97
+ ベンチマークデータのダウンロード
98
+ ELYZA-tasks-100データセットを使用します。
99
+
100
+ python
101
+ Sao chép mã
102
+ from datasets import load_dataset
103
+
104
+ # データセットのロード
105
+ dataset = load_dataset("elyza/ELYZA-tasks-100", split="test")
106
+ print(dataset)
107
+ モデルの実行と出力
108
+ 入力データを処理し、出力を生成してoutput_results.jsonlとして保存します。
109
+
110
+ python
111
+ Sao chép mã
112
+ import json
113
+
114
+ # ベンチマークデータの入力から出力を生成
115
+ results = []
116
+ for sample in dataset:
117
+ input_text = sample["input"]
118
+ inputs = tokenizer(input_text, return_tensors="pt", truncation=True, padding=True, max_length=512)
119
+ outputs = model.generate(**inputs, max_new_tokens=128)
120
+ output_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
121
+ results.append({"input": input_text, "output": output_text})
122
+
123
+ # JSONL形式で結果を保存
124
+ with open("output_results.jsonl", "w", encoding="utf-8") as f:
125
+ for result in results:
126
+ f.write(json.dumps(result, ensure_ascii=False) + "\n")
127
+
128
+ print("出力結果は 'output_results.jsonl' に保存されました。")
129
+ 出力例
130
+ output_results.jsonlのサンプル内容:
131
+
132
+ json
133
+ Sao chép mã
134
+ {"input": "日本の経済成長について説明してください。", "output": "日本の経済成長は主に高度経済成長期に急速に進みました..."}
135
+ {"input": "古代ギリシャの哲学者について教えてください。", "output": "古代ギリシャの哲学者には、ソクラテス、プラトン、アリストテレスがいます..."}