github.com/kubeflow/training-operator@v1.7.0/examples/xgboost/lightgbm-dist/train.py (about)

     1  # Licensed under the Apache License, Version 2.0 (the "License");
     2  # you may not use this file except in compliance with the License.
     3  # You may obtain a copy of the License at
     4  #
     5  #     http://www.apache.org/licenses/LICENSE-2.0
     6  #
     7  # Unless required by applicable law or agreed to in writing, software
     8  # distributed under the License is distributed on an "AS IS" BASIS,
     9  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    10  # See the License for the specific language governing permissions and
    11  # limitations under the License.
    12  
    13  
    14  import logging
    15  import subprocess
    16  
    17  logger = logging.getLogger(__name__)
    18  
    19  
    20  def train(train_config_filepath: str):
    21      cmd = ["lightgbm", f"config={train_config_filepath}"]
    22      proc = subprocess.Popen(cmd, stdout=subprocess.PIPE)
    23      line = proc.stdout.readline()
    24      while line:
    25          logger.info((line.decode("utf-8").strip()))
    26          line = proc.stdout.readline()