タイトルの通りで、機械学習のAPIを作成したく、LambdaでLightGBMを使おうとしたところ、次のエラーが出てしまいました。
libgomp.so.1: cannot open shared object file: No such file or directory
libgomp.so.1は並列処理で使われる「OpenMP」に関するライブラリのようで、そのライブラリが読み込めないとのことです。
最初はLambdaでOpenMPを使う方法を模索したのですが、よくよく考えてみたらLightGBMでOpenMPを使わない方法が無いものか調べました。(学習ではなく推論なので並列処理できなくても問題は無いはず)
そして、ありました!
https://github.com/microsoft/LightGBM/tree/master/python-package#build-threadless-version
pipインストール時にオプションでOpenMPを使わないようにできました。(公式としてはOpenMPを使うことを強く推奨していますが)
pip install lightgbm --install-option=--nomp
その結果、無事LambdaでLightGBMが使えるようになりました。
少しでも役に立てば!