Skip to content

Commit 12f4e82

Browse files
committed
refactor: Replace AutoModelForCausalLM with SFTTrainer in LoRA examples across multiple languages
1 parent 8212609 commit 12f4e82

File tree

7 files changed

+24
-50
lines changed

7 files changed

+24
-50
lines changed

units/en/unit1/3a.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,6 @@ trainer = SFTTrainer(
7373
)
7474
```
7575

76-
Above, we used `device_map="auto"` to automatically assign the model to the correct device. You can also manually assign the model to a specific device using `device_map={"": device_index}`. You could also scale training across multiple GPUs while keeping memory usage efficient.
77-
7876
## Basic Merging Implementation
7977

8078
After training a LoRA adapter, you can merge the adapter weights back into the base model. Here's how to do it:

v1/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ PEFT methods can be combined with TRL (Transformers Reinforcement Learning) for
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# Load model with PEFT config
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# Load model on specific device
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # Optional: use 8-bit precision
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
Above, we used `device_map="auto"` to automatically assign the model to the correct device. You can also manually assign the model to a specific device using `device_map={"": device_index}`. You could also scale training across multiple GPUs while keeping memory usage efficient.
71-
7268
## Basic Merging Implementation
7369

7470
After training a LoRA adapter, you can merge the adapter weights back into the base model. Here's how to do it:

v1/es/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ Los métodos PEFT pueden combinarse con TRL (Transformers Reinforcement Learning
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# Carga el modelo con configuración PEFT
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# Carga el modelo en un dispositivo específico
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # Opcional: usa la precisión de 8 bits
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
Aquí, usamos `device_map="auto"` para asignar automáticamente el modelo al dispositivo correcto. También puedes asignar manualmente el modelo a un dispositivo específico usando `device_map={"": device_index}`. Además, podrías escalar el entrenamiento en múltiples GPUs mientras mantienes un uso eficiente de memoria.
71-
7268
## Implementación básica de fusión
7369

7470
Después de entrenar un adaptador LoRA, puedes fusionar los pesos del adaptador de vuelta en el modelo base. Aquí tienes cómo hacerlo:

v1/ja/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ PEFTメソッドは、TRL(Transformers Reinforcement Learning)と組み合
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# PEFT設定でモデルを読み込む
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# 特定のデバイスにモデルを読み込む
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # オプション: 8ビット精度を使用
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
上記では、`device_map="auto"`を使用してモデルを自動的に適切なデバイスに割り当てました。また、`device_map={"": device_index}`を使用してモデルを特定のデバイスに手動で割り当てることもできます。メモリ使用量を効率的に保ちながら、複数のGPUにトレーニングをスケールすることもできます。
71-
7268
## 基本的な統合実装
7369

7470
LoRAアダプタをトレーニングした後、アダプタ重みをベースモデルに統合することができます。以下はその方法です:

v1/ko/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ PEFT 방법을 구현할 때는 LoRA의 랭크를 4~8 정도의 작은 값으로
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# PEFT configuration 설정
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# 특정 디바이스에서 모델 불러오기
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # 선택 사항: 8비트 정밀도 사용
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
위 코드에서 `device_map="auto"`를 사용해 모델을 적절한 디바이스에 자동으로 할당했습니다. `device_map={"": device_index}`를 써서 모델을 특정 디바이스에 직접 할당할 수도 있습니다. 또한, 메모리 사용량을 효율적으로 유지하면서 여러 GPU에 걸쳐 학습을 확장할 수도 있습니다.
71-
7268
## 기본적인 병합 구현
7369

7470
LoRA 어댑터 학습이 끝나면 어댑터 가중치를 기본 모델에 합칠 수 있습니다. 합치는 방법은 다음과 같습니다:

v1/pt-br/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ Os métodos PEFT podem ser combinados com TRL (Reinforcement Learning com Transf
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# Load model with PEFT config
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# Load model on specific device
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # Optional: use 8-bit precision
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
No exemplo acima, usamos `device_map="auto"` para atribuir automaticamente o modelo ao dispositivo correto. Você também pode atribuir manualmente o modelo a um dispositivo específico usando `device_map={"": device_index}`. Também é possível escalar o treinamento em várias GPUs enquanto mantém o uso de memória eficiente.
71-
7268
## Implementação Básica de Mesclagem
7369

7470
Após treinar um adaptador LoRA, você pode mesclar os pesos do adaptador de volta ao modelo base. Veja como fazer isso:

v1/vi/3_parameter_efficient_finetuning/lora_adapters.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ Các phương pháp PEFT có thể được kết hợp với thư viện TRL đ
4747

4848
```python
4949
from peft import LoraConfig
50-
from transformers import AutoModelForCausalLM
50+
from trl import SFTTrainer
5151

5252
# Tải mô hình với cấu hình PEFT
5353
lora_config = LoraConfig(
@@ -58,17 +58,13 @@ lora_config = LoraConfig(
5858
task_type="CAUSAL_LM"
5959
)
6060

61-
# Tải mô hình trên thiết bị cụ thể
62-
model = AutoModelForCausalLM.from_pretrained(
63-
"your-model-name",
64-
load_in_8bit=True, # Tùy chọn: sử dụng độ chính xác 8-bit
65-
device_map="auto",
61+
trainer = SFTTrainer(
62+
model="your-model-name",
63+
train_dataset=dataset["train"]
6664
peft_config=lora_config
6765
)
6866
```
6967

70-
Ở trên, chúng ta đã sử dụng `device_map="auto"` để tự động gán mô hình cho thiết bị phù hợp. Bạn cũng có thể gán thủ công mô hình cho một thiết bị cụ thể bằng cách sử dụng `device_map={"": device_index}`. Bạn cũng có thể mở rộng việc huấn luyện trên nhiều GPU trong khi vẫn giữ việc sử dụng bộ nhớ hiệu quả.
71-
7268
## Triển khai gộp cơ bản
7369

7470
Sau khi huấn luyện một adapter LoRA, bạn có thể gộp trọng số adapter trở lại mô hình cơ sở. Đây là cách thực hiện:

0 commit comments

Comments
 (0)