Nas versões atuais das bibliotecas, ao instanciar o SFTrainer é gerado um erro: aparentemente o parâmetro formattingfunc passou a ser obrigatório.
trainer = SFTTrainer(
model = modelo,
tokenizer = tokenizador,
train_dataset = dataset,
dataset_text_field = 'texto',
max_seq_length= 2048,
dataset_num_proc = 2,
packing = False,
args = TrainingArguments(
per_device_train_batch_size = 2,
gradient_accumulation_steps = 4,
warmup_steps = 5,
learning_rate = 2e-5,
max_steps = 60,
fp16 = not is_bfloat16_supported(),
bf16 = is_bfloat16_supported(),
logging_steps = 1,
optim = 'adamw_8bit',
weight_decay = 0.01,
lr_scheduler_type = 'linear',
seed = 10,
output_dir = 'outputs'
)
)
(...)
if formatting_func is None:
raise RuntimeError("Unsloth: You must specify a `formatting_func`")
pass
RuntimeError: Unsloth: You must specify a `formatting_func`
Não consegui configurar o treinamento com o código apresentado.