Files
2026-07-13 13:17:40 +08:00

22 lines
711 B
Python

from contextlib import contextmanager
from ray.train.v2._internal.execution.train_fn_utils import get_train_fn_utils
from ray.train.xgboost.config import XGBoostConfig as XGBoostConfigV1
class XGBoostConfig(XGBoostConfigV1):
@property
def train_func_context(self):
distributed_context = super(XGBoostConfig, self).train_func_context
@contextmanager
def collective_communication_context():
# The distributed_context is only needed in distributed mode
if get_train_fn_utils().is_distributed():
with distributed_context():
yield
else:
yield
return collective_communication_context