You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已安装yaml和pyyaml仍报ModuleNotFoundError:M1 Mac Quarto渲染失败

M1 Mac下Quarto渲染QMD时ModuleNotFoundError: No module named 'yaml'的解决办法

问题场景

在M1芯片Mac的VSCode中使用Quarto,执行命令:

quarto render quarto_vscode.qmd

渲染QMD为HTML时,出现报错:

Starting python3 kernel...Traceback (most recent call last):
  File "/Applications/quarto/share/jupyter/jupyter.py", line 21, in <module>
    from notebook import notebook_execute, RestartKernel
  File "/Applications/quarto/share/jupyter/notebook.py", line 14, in <module>
    from yaml import safe_load
ModuleNotFoundError: No module named 'yaml'

已通过conda list确认虚拟环境中安装了相关包:

pyyaml                    6.0.1           py310h2aa6e3c_1    conda-forge
yaml                      0.2.5                h3422bc3_2    conda-forge

使用的QMD基础测试代码:

---
title: "VSCode Quarto Report"
date: "2023-01-07"
format: html
editor: source
include: TRUE 
echo: TRUE 
jupyter: python3
---

```{python}
print('hello')
## 问题原因
Quarto默认调用的Python环境并非你激活的conda虚拟环境,M1 Mac多Python环境(系统Python、conda环境等)的路径冲突,导致无法找到已安装的`pyyaml`模块。

## 解决步骤

### 1. 获取conda虚拟环境的Python路径
激活目标conda虚拟环境后,在终端执行:
```bash
which python3

复制输出的完整路径(例如/Users/xxx/miniconda3/envs/your_env/bin/python3)

2. 指定Quarto使用该Python环境

方式一:临时命令行指定

执行渲染命令时,先绑定环境变量:

QUARTO_PYTHON=/path/to/your/conda/python3 quarto render quarto_vscode.qmd

将/path/to/your/conda/python3替换为你刚才复制的路径。

方式二:永久配置Quarto Python路径

在终端执行:

quarto config set python.executable /path/to/your/conda/python3

配置完成后,后续所有Quarto渲染都会自动使用该conda环境。

3. 验证配置生效

执行以下命令检查Quarto使用的Python环境:

quarto check python

确认输出中的Python路径为你的conda环境路径,且pyyaml被标记为已安装状态。

额外排查(若上述方法无效)

  • 检查Quarto版本:确保安装的是适配M1 Mac的arm64版本,而非x86_64版本,可重新下载对应架构的安装包。
  • 重新激活环境:关闭终端后重新打开,激活目标conda环境再执行渲染命令。

内容的提问来源于stack exchange,提问作者Joe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 17:20:11