Skip to main content

LightGBM Python Package

Project description

License Python Versions PyPI Version Downloads API Docs

Installation

Preparation

32-bit Python is not supported. Please install 64-bit version. If you have a strong need to install with 32-bit Python, refer to Build 32-bit Version with 32-bit Python section.

setuptools is needed.

Install from PyPI

pip install lightgbm

You may need to install wheel via pip install wheel first.

Compiled library that is included in the wheel file supports both GPU and CPU versions out of the box. This feature is experimental and available only for Windows currently. To use GPU version you only need to install OpenCL Runtime libraries. For NVIDIA and AMD GPU they are included in the ordinary drivers for your graphics card, so no action is required. If you would like your AMD or Intel CPU to act like a GPU (for testing and debugging) you can install AMD APP SDK.

For Windows users, VC runtime is needed if Visual Studio (2015 or newer) is not installed.

For Linux users, glibc >= 2.14 is required. Also, in some rare cases, when you hit OSError: libgomp.so.1: cannot open shared object file: No such file or directory error during importing LightGBM, you need to install OpenMP runtime library separately (use your package manager and search for lib[g|i]omp for doing this).

For macOS (we provide wheels for 3 newest macOS versions) users:

  • Starting from version 2.2.1, the library file in distribution wheels is built by the Apple Clang (Xcode_8.3.3 for versions 2.2.1 - 2.3.1, and Xcode_9.4.1 from version 2.3.2) compiler. This means that you don’t need to install the gcc compiler anymore. Instead of that you need to install the OpenMP library, which is required for running LightGBM on the system with the Apple Clang compiler. You can install the OpenMP library by the following command: brew install libomp.

  • For version smaller than 2.2.1 and not smaller than 2.1.2, gcc-8 with OpenMP support must be installed first. Refer to Installation Guide for installation of gcc-8 with OpenMP support.

  • For version smaller than 2.1.2, gcc-7 with OpenMP is required.

Build from Sources

pip install --no-binary :all: lightgbm

For Linux and macOS users, installation from sources requires installed CMake.

For Linux users, glibc >= 2.14 is required. Also, in some rare cases you may need to install OpenMP runtime library separately (use your package manager and search for lib[g|i]omp for doing this).

For macOS users, you can perform installation either with Apple Clang or gcc.

  • In case you prefer Apple Clang, you should install OpenMP (details for installation can be found in Installation Guide) first and CMake version 3.16 or higher is required.

  • In case you prefer gcc, you need to install it (details for installation can be found in Installation Guide) and specify compilers by running export CXX=g++-7 CC=gcc-7 (replace “7” with version of gcc installed on your machine) first.

For Windows users, Visual Studio (or VS Build Tools) is needed. If you get any errors during installation, you may need to install CMake (version 3.8 or higher).

Build Threadless Version
pip install lightgbm --install-option=--nomp

All requirements, except the OpenMP requirement, from Build from Sources section apply for this installation option as well.

It is strongly not recommended to use this version of LightGBM!

Build MPI Version
pip install lightgbm --install-option=--mpi

All requirements from Build from Sources section apply for this installation option as well.

For Windows users, compilation with MinGW-w64 is not supported and CMake (version 3.8 or higher) is strongly required.

MPI libraries are needed: details for installation can be found in Installation Guide.

Build GPU Version
pip install lightgbm --install-option=--gpu

All requirements from Build from Sources section apply for this installation option as well.

For Windows users, CMake (version 3.8 or higher) is strongly required.

Boost and OpenCL are needed: details for installation can be found in Installation Guide. Almost always you also need to pass OpenCL_INCLUDE_DIR, OpenCL_LIBRARY options for Linux and BOOST_ROOT, BOOST_LIBRARYDIR options for Windows to CMake via pip options, like

pip install lightgbm --install-option=--gpu --install-option="--opencl-include-dir=/usr/local/cuda/include/" --install-option="--opencl-library=/usr/local/cuda/lib64/libOpenCL.so"

All available options:

  • boost-root

  • boost-dir

  • boost-include-dir

  • boost-librarydir

  • opencl-include-dir

  • opencl-library

For more details see FindBoost and FindOpenCL.

Build CUDA Version
pip install lightgbm --install-option=--cuda

All requirements from Build from Sources section apply for this installation option as well, and CMake (version 3.16 or higher) is strongly required.

CUDA library (version 9.0 or higher) is needed: details for installation can be found in Installation Guide.

Build HDFS Version
pip install lightgbm --install-option=--hdfs

All requirements from Build from Sources section apply for this installation option as well.

HDFS library is needed: details for installation can be found in Installation Guide.

Note that the installation process of HDFS version was tested only on Linux.

Build with MinGW-w64 on Windows
pip install lightgbm --install-option=--mingw

CMake and MinGW-w64 should be installed first.

It is recommended to use Visual Studio for its better multithreading efficiency in Windows for many-core systems (see Question 4 and Question 8).

Build 32-bit Version with 32-bit Python
pip install lightgbm --install-option=--bit32

By default, installation in environment with 32-bit Python is prohibited. However, you can remove this prohibition on your own risk by passing bit32 option.

It is strongly not recommended to use this version of LightGBM!

Install from conda-forge channel

If you use conda to manage Python dependencies, you can install LightGBM using conda install.

Note: The lightgbm conda-forge feedstock is not maintained by LightGBM maintainers.

conda install -c conda-forge lightgbm

Install from GitHub

All requirements from Build from Sources section apply for this installation option as well.

For Windows users, if you get any errors during installation and there is the warning WARNING:LightGBM:Compilation with MSBuild from existing solution file failed. in the log, you should install CMake (version 3.8 or higher).

git clone --recursive https://github.com/microsoft/LightGBM.git
cd LightGBM/python-package
# export CXX=g++-7 CC=gcc-7  # macOS users, if you decided to compile with gcc, don't forget to specify compilers (replace "7" with version of gcc installed on your machine)
python setup.py install

Note: sudo (or administrator rights in Windows) may be needed to perform the command.

Run python setup.py install --nomp to disable OpenMP support. All requirements from Build Threadless Version section apply for this installation option as well.

Run python setup.py install --mpi to enable MPI support. All requirements from Build MPI Version section apply for this installation option as well.

Run python setup.py install --mingw, if you want to use MinGW-w64 on Windows instead of Visual Studio. All requirements from Build with MinGW-w64 on Windows section apply for this installation option as well.

Run python setup.py install --gpu to enable GPU support. All requirements from Build GPU Version section apply for this installation option as well. To pass additional options to CMake use the following syntax: python setup.py install --gpu --opencl-include-dir=/usr/local/cuda/include/, see Build GPU Version section for the complete list of them.

Run python setup.py install --cuda to enable CUDA support. All requirements from Build CUDA Version section apply for this installation option as well.

Run python setup.py install --hdfs to enable HDFS support. All requirements from Build HDFS Version section apply for this installation option as well.

Run python setup.py install --bit32, if you want to use 32-bit version. All requirements from Build 32-bit Version with 32-bit Python section apply for this installation option as well.

If you get any errors during installation or due to any other reasons, you may want to build dynamic library from sources by any method you prefer (see Installation Guide) and then just run python setup.py install --precompile.

Build Wheel File

You can use python setup.py bdist_wheel instead of python setup.py install to build wheel file and use it for installation later. This might be useful for systems with restricted or completely without network access.

Install Dask-package

To install all additional dependencies required for Dask-package, you can append [dask] to LightGBM package name:

pip install lightgbm[dask]

Or replace python setup.py install with pip install -e .[dask] if you are installing the package from source files.

Troubleshooting

In case you are facing any errors during the installation process, you can examine $HOME/LightGBM_compilation.log file, in which all operations are logged, to get more details about occurred problem. Also, please attach this file to the issue on GitHub to help faster indicate the cause of the error.

Refer to FAQ.

Examples

Refer to the walk through examples in Python guide folder.

Development Guide

The code style of Python-package follows PEP 8. If you would like to make a contribution and not familiar with PEP 8, please check the PEP 8 style guide first. Otherwise, the check won’t pass. Only E501 (line too long) and W503 (line break occurred before a binary operator) can be ignored.

Documentation strings (docstrings) are written in the NumPy style.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lightgbm-3.3.1.tar.gz (1.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

lightgbm-3.3.1-py3-none-win_amd64.whl (1.0 MB view details)

Uploaded Python 3Windows x86-64

lightgbm-3.3.1-py3-none-manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded Python 3

lightgbm-3.3.1-py3-none-manylinux1_x86_64.whl (2.0 MB view details)

Uploaded Python 3

lightgbm-3.3.1-py3-none-macosx_10_14_x86_64.macosx_10_15_x86_64.macosx_11_0_x86_64.whl (1.2 MB view details)

Uploaded Python 3macOS 10.14+ x86-64macOS 10.15+ x86-64macOS 11.0+ x86-64

File details

Details for the file lightgbm-3.3.1.tar.gz.

File metadata

  • Download URL: lightgbm-3.3.1.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for lightgbm-3.3.1.tar.gz
Algorithm Hash digest
SHA256 5b9f31759ab4e94d9409deb03104c55b0a40058a6ccea804022046d926bc4904
MD5 eb779633b047a8dafdef6a9a5faea6a5
BLAKE2b-256 b731dc662e3850e101008d8d87a0c4e82ee1e7818b7f403948d2575e7f3b0119

See more details on using hashes here.

File details

Details for the file lightgbm-3.3.1-py3-none-win_amd64.whl.

File metadata

  • Download URL: lightgbm-3.3.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for lightgbm-3.3.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 65eb6b3d019b17339c1658a80552b19bc053ecbc829cd3ee877808a29fea5bf5
MD5 cab28146e9a78bb0c3a0efbfa1148917
BLAKE2b-256 2c0ae55e77644c808805945ec8daebccdaea7e3fa263dbdfa9f7e96f125fdb0a

See more details on using hashes here.

File details

Details for the file lightgbm-3.3.1-py3-none-manylinux2014_aarch64.whl.

File metadata

  • Download URL: lightgbm-3.3.1-py3-none-manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for lightgbm-3.3.1-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b84a9a3cfc39c87f4d2c1a1d090895f7019c6ca05a64a51a917755c70e46f8d
MD5 9d376b32aa60e38fc4f47d8d007b2ce8
BLAKE2b-256 10d32074ae48a3e3df215a920d75c2e98b849cc9aac2c715bb7c7c305245aed8

See more details on using hashes here.

File details

Details for the file lightgbm-3.3.1-py3-none-manylinux1_x86_64.whl.

File metadata

  • Download URL: lightgbm-3.3.1-py3-none-manylinux1_x86_64.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for lightgbm-3.3.1-py3-none-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 6c710b6378025ad9d25869ed77bb2ed9574caf64defe670cbd4117d3c55d7579
MD5 a731d611bbcc3cc445b0eb71db6adca8
BLAKE2b-256 6a69b5e23ed4c6ce40f820440b776fdc0401fa4531eab73c38d228d9d59236b1

See more details on using hashes here.

File details

Details for the file lightgbm-3.3.1-py3-none-macosx_10_14_x86_64.macosx_10_15_x86_64.macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for lightgbm-3.3.1-py3-none-macosx_10_14_x86_64.macosx_10_15_x86_64.macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 8a4c630ce8a963028d163ba09e07682f2f7ec10a6cd2891068e12a858cbb1315
MD5 6edad4c175e4176cf9f219bb46106e47
BLAKE2b-256 9a59d38a95be739922078b00b9a9727077310c4913bc593dc35aa7b873b5b756

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page