## 前言

原本下载的 d2l 版本是 1.0.3,结果版本太高,里面的 `d2l.train_epoch_ch3` 等好几个函数都用不了;后来又重新按教程下载对应版本,踩了一些坑,现在整理安装教程供大家参考。

## 一、前置准备

| 项目 | 说明 |
| --- | --- |
| Anaconda | 已安装(官网:https://www.anaconda.com/) |
| 适配 | 旧版教程(依赖 `d2l.train_epoch_ch3` 等 API) |
| 系统 | Windows / macOS / Linux 通用 |

## 二、核心步骤(复制粘贴执行)

### 1. 创建并激活 conda 环境

创建 Python 3.9 环境(d2l==0.17.6 最优兼容):

```bash
conda create --name d2l python=3.9 -y
```

激活环境(所有系统通用):

```bash
conda activate d2l
```

> **验证**:终端提示符显示 `(d2l)` 即成功。

### 2. 安装 PyTorch + TorchVision(阿里云源加速)

**CPU 版**(无需显卡,直接用):

```bash
pip install torch==1.12.0 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip install torchvision==0.13.0 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
```

**GPU 版**(可选,需 NVIDIA 显卡 + CUDA 11.3):

```bash
pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 -f https://download.pytorch.org/whl/torch_stable.html -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
```

> **验证**:执行 `python -c "import torch; print(torch.__version__)"`,输出 1.12.0。

### 3. 安装 d2l==0.17.6(旧版核心)

```bash
pip install d2l==0.17.6 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
```

> **验证**:执行 `python -c "import d2l; print(d2l.__version__)"`,输出 0.17.6。

### 4. 修复 Jupyter 依赖冲突(关键避坑)

默认依赖版本过高会报错,直接执行以下命令。

**第一步:卸载冲突包**

```bash
pip uninstall -y notebook jupyter_server traitlets nbclassic notebook-shim
```

**第二步:安装兼容版本**

```bash
pip install traitlets==5.8.1
pip install jupyter_server==1.23.6
pip install notebook==6.5.4
pip install nbclassic==0.4.8
```

### 5. 修复 matplotlib 导入错误(关键避坑)

导入 d2l 时出现 RcParams 报错,执行:

**第一步:卸载高版本冲突包**

```bash
pip uninstall -y matplotlib_inline matplotlib
```

**第二步:安装兼容版本**

```bash
pip install matplotlib==3.5.3
pip install matplotlib_inline==0.1.6
pip install IPython==7.34.0
```

### 6. 启动 Jupyter Notebook

浏览器自动打开 http://localhost:8888 ,无报错即成功。

> 本文整理自博客园文章《动手学深度学习》d2l==0.17.6 环境搭建 - Endid - 博客园 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐