2. 环境准备:Python环境、LightGBM库安装、依赖库安装
本章将搭建完整的LightGBM实时推理链路开发环境。环境准备是后续模型训练、服务封装与容器化部署的基础,请按以下步骤依次完成配置。
2.1 Python虚拟环境创建
推荐使用 Python 3.8 ~ 3.11 版本,并创建独立的虚拟环境,避免与系统全局Python环境产生依赖冲突。
💡 推荐工具: 使用
conda 或 venv 管理虚拟环境。生产环境建议使用 conda,便于后续管理GPU相关依赖。
# 使用 conda 创建虚拟环境
conda create -n lightgbm_serving python=3.9 -y
# 激活环境
conda activate lightgbm_serving
# 或使用 venv
python3 -m venv lightgbm_serving
source lightgbm_serving/bin/activate # Linux/Mac
# lightgbm_serving\Scripts\activate # Windows
2.2 LightGBM库安装
LightGBM 支持 CPU 和 GPU 两种训练模式。本教程以 CPU 推理链路为主,安装标准版本即可。
| 安装方式 | 命令 | 适用场景 |
|---|---|---|
| PyPI 标准版 | pip install lightgbm |
CPU 训练与推理 |
| GPU 加速版 | pip install lightgbm --install-option=--gpu |
GPU 训练(需预装CUDA) |
| conda 安装 | conda install -c conda-forge lightgbm |
conda 环境统一管理 |
# 安装 LightGBM CPU 版本
pip install lightgbm
# 验证安装
python -c "import lightgbm as lgb; print(lgb.__version__)"
✅ 验证输出示例:
4.5.0(版本号可能因发布时间不同而略有差异)
2.3 依赖库安装:Flask、gRPC、Docker
实时推理链路需要以下三类核心依赖库,分别负责 HTTP RESTful API、高性能RPC通信 和 容器化部署。
2.3.1 Flask — HTTP推理服务框架
Flask 用于快速搭建 RESTful API 推理端点,适合轻量级模型服务场景。
pip install flask flask-cors
2.3.2 gRPC — 高性能RPC通信框架
gRPC 基于 Protocol Buffers,提供低延迟、高吞吐的跨语言服务调用能力,适合微服务架构下的推理链路。
pip install grpcio grpcio-tools protobuf
| 组件 | 作用 | 版本建议 |
|---|---|---|
grpcio |
gRPC 运行时库 | ≥ 1.48.0 |
grpcio-tools |
protobuf 编译工具,生成Python桩代码 | ≥ 1.48.0 |
protobuf |
Protocol Buffers 序列化库 | ≥ 3.20.0 |
2.3.3 Docker — 容器化部署引擎
Docker 用于将推理服务打包为可移植容器镜像,实现环境一致性交付。
# 安装 Docker Engine(Ubuntu 示例)
sudo apt-get update
sudo apt-get install docker.io
# 启动 Docker 服务
sudo systemctl start docker
sudo systemctl enable docker
# 验证安装
docker --version
⚠️ 注意: Windows/macOS 用户请从 Docker Desktop 官方页面下载安装包。安装后需确保 Docker 守护进程正常运行。
2.4 环境依赖关系总览
下图展示了各组件在实时推理链路中的位置与依赖关系:
2.5 一键安装脚本
为节省重复操作时间,以下脚本可一次性完成所有依赖安装:
#!/bin/bash
# install_deps.sh — LightGBM 实时推理链路依赖一键安装
set -e
echo "=== 1. 安装 LightGBM ==="
pip install lightgbm
echo "=== 2. 安装 Flask 及扩展 ==="
pip install flask flask-cors
echo "=== 3. 安装 gRPC 工具链 ==="
pip install grpcio grpcio-tools protobuf
echo "=== 4. 验证安装 ==="
python -c "
import lightgbm as lgb
import flask
import grpc
print(f'LightGBM: {lgb.__version__}')
print(f'Flask: {flask.__version__}')
print(f'gRPC: {grpc.__version__}')
"
echo "=== 环境准备完成 ==="
2.6 环境验证清单
完成安装后,请逐项核对以下清单,确保环境就绪:
| 检查项 | 验证命令 | 预期结果 |
|---|---|---|
| Python 版本 | python --version |
Python 3.8 ~ 3.11 |
| LightGBM | python -c "import lightgbm; print(lightgbm.__version__)" |
≥ 4.0.0 |
| Flask | python -c "import flask; print(flask.__version__)" |
≥ 2.0.0 |
| gRPC | python -c "import grpc; print(grpc.__version__)" |
≥ 1.48.0 |
| Docker | docker --version |
Docker version ≥ 20.10 |
📌 建议: 将上述验证命令保存为
check_env.py 脚本,每次切换环境或部署新节点时运行一次,快速确认环境完整性。