South-Korea-Shuan
commited on
Update README.md
Browse files
README.md
CHANGED
@@ -11,11 +11,26 @@ tags:
|
|
11 |
이 저장소는 Amazon SageMaker를 사용하여 Qwen 2.5 7B Instruct 모델을 파인튜닝하는 코드를 포함하고 있습니다. 이 프로젝트는 대규모 언어 모델의 효율적인 파인튜닝을 위해 QLoRA(Quantized Low-Rank Adaptation)를 사용합니다.
|
12 |
|
13 |
## 모델 사용 방법
|
14 |
-
파인튜닝된 모델은 다음과 같이 사용할 수 있습니다:
|
15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
```python
|
|
|
17 |
from transformers import AutoModelForCausalLM, AutoTokenizer
|
18 |
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
# 모델과 토크나이저 로드
|
20 |
model = AutoModelForCausalLM.from_pretrained(
|
21 |
"seong67360/Qwen2.5-7B-Instruct_v4",
|
@@ -27,20 +42,38 @@ tokenizer = AutoTokenizer.from_pretrained(
|
|
27 |
trust_remote_code=True
|
28 |
)
|
29 |
|
30 |
-
# 대화
|
31 |
messages = [
|
32 |
{"role": "system", "content": "You are a helpful assistant."},
|
33 |
{"role": "user", "content": "What is quantum computing?"}
|
34 |
]
|
35 |
|
36 |
-
#
|
37 |
response = model.chat(tokenizer, messages)
|
38 |
print(response)
|
39 |
```
|
40 |
|
41 |
-
|
42 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
|
|
|
44 |
```python
|
45 |
response = model.chat(
|
46 |
tokenizer,
|
@@ -52,6 +85,7 @@ response = model.chat(
|
|
52 |
)
|
53 |
```
|
54 |
|
|
|
55 |
|
56 |
## 프로젝트 구조
|
57 |
|
|
|
11 |
이 저장소는 Amazon SageMaker를 사용하여 Qwen 2.5 7B Instruct 모델을 파인튜닝하는 코드를 포함하고 있습니다. 이 프로젝트는 대규모 언어 모델의 효율적인 파인튜닝을 위해 QLoRA(Quantized Low-Rank Adaptation)를 사용합니다.
|
12 |
|
13 |
## 모델 사용 방법
|
|
|
14 |
|
15 |
+
### 요구사항
|
16 |
+
- Python 3.8 이상
|
17 |
+
- CUDA 지원 GPU (최소 24GB VRAM 권장)
|
18 |
+
- 필요한 라이브러리:
|
19 |
+
```bash
|
20 |
+
pip install torch transformers accelerate
|
21 |
+
```
|
22 |
+
|
23 |
+
## 기본 사용 예시
|
24 |
```python
|
25 |
+
import torch
|
26 |
from transformers import AutoModelForCausalLM, AutoTokenizer
|
27 |
|
28 |
+
# CUDA 사용 가능 여부 확인
|
29 |
+
if torch.cuda.is_available():
|
30 |
+
print(f"Using GPU: {torch.cuda.get_device_name(0)}")
|
31 |
+
else:
|
32 |
+
print("Warning: CUDA not available, using CPU")
|
33 |
+
|
34 |
# 모델과 토크나이저 로드
|
35 |
model = AutoModelForCausalLM.from_pretrained(
|
36 |
"seong67360/Qwen2.5-7B-Instruct_v4",
|
|
|
42 |
trust_remote_code=True
|
43 |
)
|
44 |
|
45 |
+
# 대화 예시
|
46 |
messages = [
|
47 |
{"role": "system", "content": "You are a helpful assistant."},
|
48 |
{"role": "user", "content": "What is quantum computing?"}
|
49 |
]
|
50 |
|
51 |
+
# 응답 생성
|
52 |
response = model.chat(tokenizer, messages)
|
53 |
print(response)
|
54 |
```
|
55 |
|
56 |
+
## 메모리 최적화 옵션
|
57 |
+
GPU 메모리가 제한된 경우, 8비트 또는 4비트 양자화를 사용할 수 있습니다:
|
58 |
+
```python
|
59 |
+
# 8비트 양자화
|
60 |
+
model = AutoModelForCausalLM.from_pretrained(
|
61 |
+
"seong67360/Qwen2.5-7B-Instruct_v4",
|
62 |
+
device_map="auto",
|
63 |
+
trust_remote_code=True,
|
64 |
+
load_in_8bit=True
|
65 |
+
)
|
66 |
+
|
67 |
+
# 또는 4비트 양자화
|
68 |
+
model = AutoModelForCausalLM.from_pretrained(
|
69 |
+
"seong67360/Qwen2.5-7B-Instruct_v4",
|
70 |
+
device_map="auto",
|
71 |
+
trust_remote_code=True,
|
72 |
+
load_in_4bit=True
|
73 |
+
)
|
74 |
+
```
|
75 |
|
76 |
+
## 생성 파라미터 설정
|
77 |
```python
|
78 |
response = model.chat(
|
79 |
tokenizer,
|
|
|
85 |
)
|
86 |
```
|
87 |
|
88 |
+
---
|
89 |
|
90 |
## 프로젝트 구조
|
91 |
|