Nanobit commited on
Commit
7eae903
2 Parent(s): c8242de 2cfe9e9

Merge pull request #166 from NanoCode012/fix/seed

Browse files
src/axolotl/utils/data.py CHANGED
@@ -78,6 +78,13 @@ def load_tokenized_prepared_datasets(
78
  else:
79
  logging.info(f"Unable to find prepared dataset in {prepared_ds_path}")
80
  logging.info("Loading raw datasets...")
 
 
 
 
 
 
 
81
  datasets = []
82
  # pylint: disable=invalid-name
83
  for d in cfg.datasets:
@@ -127,11 +134,11 @@ def load_tokenized_prepared_datasets(
127
  # support for using a subset of the data
128
  if d.shards:
129
  if "train" in ds:
130
- ds = ds.shuffle(seed=42)["train"].shard(
131
  num_shards=d.shards, index=0
132
  )
133
  else:
134
- ds = ds.shuffle(seed=42).shard(num_shards=d.shards, index=0)
135
  d_type = d.type
136
  d_type_split = d_type.split(":")
137
  d_base_type = d_type_split[0]
@@ -239,7 +246,7 @@ def load_tokenized_prepared_datasets(
239
  samples: List[int] = []
240
  for d in datasets:
241
  samples = samples + list(d)
242
- dataset = Dataset.from_list(samples).shuffle(seed=42)
243
  if cfg.local_rank == 0:
244
  logging.info(
245
  f"Saving merged prepared dataset to disk... {prepared_ds_path}"
 
78
  else:
79
  logging.info(f"Unable to find prepared dataset in {prepared_ds_path}")
80
  logging.info("Loading raw datasets...")
81
+
82
+ if cfg.seed:
83
+ seed = cfg.seed
84
+ else:
85
+ logging.info("No seed provided, using default seed of 42")
86
+ seed = 42
87
+
88
  datasets = []
89
  # pylint: disable=invalid-name
90
  for d in cfg.datasets:
 
134
  # support for using a subset of the data
135
  if d.shards:
136
  if "train" in ds:
137
+ ds = ds.shuffle(seed=seed)["train"].shard(
138
  num_shards=d.shards, index=0
139
  )
140
  else:
141
+ ds = ds.shuffle(seed=seed).shard(num_shards=d.shards, index=0)
142
  d_type = d.type
143
  d_type_split = d_type.split(":")
144
  d_base_type = d_type_split[0]
 
246
  samples: List[int] = []
247
  for d in datasets:
248
  samples = samples + list(d)
249
+ dataset = Dataset.from_list(samples).shuffle(seed=seed)
250
  if cfg.local_rank == 0:
251
  logging.info(
252
  f"Saving merged prepared dataset to disk... {prepared_ds_path}"
src/axolotl/utils/trainer.py CHANGED
@@ -74,6 +74,10 @@ def setup_trainer(cfg, train_dataset, eval_dataset, model, tokenizer):
74
  training_arguments_kwargs["tf32"] = cfg.tf32
75
  training_arguments_kwargs["warmup_steps"] = warmup_steps
76
  training_arguments_kwargs["logging_steps"] = logging_steps
 
 
 
 
77
  if cfg.gradient_checkpointing:
78
  if cfg.gptq:
79
  from alpaca_lora_4bit.gradient_checkpointing import (
 
74
  training_arguments_kwargs["tf32"] = cfg.tf32
75
  training_arguments_kwargs["warmup_steps"] = warmup_steps
76
  training_arguments_kwargs["logging_steps"] = logging_steps
77
+
78
+ if cfg.seed:
79
+ training_arguments_kwargs["seed"] = cfg.seed
80
+
81
  if cfg.gradient_checkpointing:
82
  if cfg.gptq:
83
  from alpaca_lora_4bit.gradient_checkpointing import (