mirror of
https://github.com/hpcaitech/ColossalAI.git
synced 2025-09-06 19:40:28 +00:00
@@ -87,7 +87,7 @@ def launch_distributed(
|
|||||||
num_generations=num_generations,
|
num_generations=num_generations,
|
||||||
consumer_plugin_config=plugin_config,
|
consumer_plugin_config=plugin_config,
|
||||||
eval_dataset_config=eval_dataset_config,
|
eval_dataset_config=eval_dataset_config,
|
||||||
eval_interval=eval_interval * num_recv_per_update,
|
eval_interval=eval_interval,
|
||||||
evaluation_function_type=grpo_config["reward_fn_type"],
|
evaluation_function_type=grpo_config["reward_fn_type"],
|
||||||
eval_save_dir=eval_save_dir,
|
eval_save_dir=eval_save_dir,
|
||||||
)
|
)
|
||||||
|
@@ -129,7 +129,7 @@ class BaseProducer:
|
|||||||
else:
|
else:
|
||||||
raise ValueError(f"Unexpected backend {backend}")
|
raise ValueError(f"Unexpected backend {backend}")
|
||||||
|
|
||||||
self.consumer_pp_size = consumer_plugin_config.get("pp_size", 1) # consumer pp size
|
self.consumer_pp_size = consumer_plugin_config["pp_size"] # consumer pp size
|
||||||
|
|
||||||
def setup(self) -> None:
|
def setup(self) -> None:
|
||||||
cc.init_collective_group(1 + self.num_consumer_procs, 0, group_name=f"sync_data_{self.producer_idx}")
|
cc.init_collective_group(1 + self.num_consumer_procs, 0, group_name=f"sync_data_{self.producer_idx}")
|
||||||
@@ -250,11 +250,14 @@ class BaseProducer:
|
|||||||
# linear annealing for 1 episode, temperature from initial to 0.9
|
# linear annealing for 1 episode, temperature from initial to 0.9
|
||||||
if episode <= 0:
|
if episode <= 0:
|
||||||
ratio = 1 - (len(self.train_dataloader) - i) / len(self.train_dataloader)
|
ratio = 1 - (len(self.train_dataloader) - i) / len(self.train_dataloader)
|
||||||
self.model.generate_config["temperature"] = (1 - ratio) * self.generate_config[
|
if isinstance(self.model.generate_config.temperature, dict):
|
||||||
"temperature"
|
self.model.generate_config["temperature"] = (1 - ratio) * self.generate_config[
|
||||||
] + ratio * 0.9
|
"temperature"
|
||||||
if hasattr(self.model, "sample_params"):
|
] + ratio * 0.9
|
||||||
self.model.sample_params.temperature = self.model.generate_config["temperature"]
|
else:
|
||||||
|
self.model.generate_config.temperature = (1 - ratio) * self.generate_config[
|
||||||
|
"temperature"
|
||||||
|
] + ratio * 0.9
|
||||||
|
|
||||||
|
|
||||||
@ray.remote
|
@ray.remote
|
||||||
@@ -307,8 +310,8 @@ class SimpleProducer(BaseProducer):
|
|||||||
@torch.no_grad()
|
@torch.no_grad()
|
||||||
def rollout(self, input_ids, attention_mask, **kwargs):
|
def rollout(self, input_ids, attention_mask, **kwargs):
|
||||||
rollouts = self.model.generate(input_ids, attention_mask, **kwargs)
|
rollouts = self.model.generate(input_ids, attention_mask, **kwargs)
|
||||||
if self.producer_idx == 1:
|
# if self.producer_idx == 1:
|
||||||
print("Rollout example:\n", self.tokenizer.decode(rollouts["input_ids"][0][0], skip_special_tokens=True))
|
# print("Rollout example:\n", self.tokenizer.decode(rollouts["input_ids"][0][0], skip_special_tokens=True))
|
||||||
|
|
||||||
return rollouts
|
return rollouts
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user