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 环境依赖关系总览

下图展示了各组件在实时推理链路中的位置与依赖关系:

LightGBM 实时推理链路 — 环境依赖架构 Python 3.9 虚拟环境 LightGBM 4.x Flask REST API gRPC 服务 Docker 容器 实时推理服务链路 说明:Flask 和 gRPC 提供两种推理接口风格,Docker 负责将服务打包交付

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 脚本,每次切换环境或部署新节点时运行一次,快速确认环境完整性。