TileLang 怎么卸载?pip 卸载 tilelang 与 tilelang-ascend、清编译缓存与残留

卸载与清理发布于 2026-10-01作者: DeepSeek Plugin 插件市场
TileLangtilelang 卸载pip uninstall编译缓存残留清理昇腾tilelang-ascend
TileLang 卸载分三步:pip uninstall tilelang 或 pip uninstall tilelang-ascend 移除包,再清 ~/.tilelang/cache 编译缓存与源码构建的 build/ 目录,最后用 import 报错与 pip show 无输出确认卸干净。

卸载 TileLang 分三步:先用 pip uninstall tilelang(昇腾侧 pip uninstall tilelang-ascend)移除包,再清 ~/.tilelang/cache 编译缓存与源码构建留下的 build/ 目录,最后用 import 报错和 pip show 无输出确认卸干净,并确保 CANN 与 torch-npu 未被牵连。

本文按「卸包 → 清残留 → 验收」讲。如果你只是想换版本而不是彻底移除,先看《TileLang 怎么更新》。

TileLang 标准卸载怎么做?

TileLang 卸载就是一次 pip 卸载,包名按当初装的路线写:NVIDIA 侧 pip uninstall tilelang,昇腾侧 pip uninstall tilelang-ascend(来源)。

  1. 确认当前装的是哪个包。执行 pip show tilelang 与 pip show tilelang-ascend。预期结果:只有其中一个有输出,那就是要卸的对象(来源)。
  2. 看清待删清单再确认。执行 pip uninstall tilelang(或 tilelang-ascend),pip 会先列出将被移除的文件并等你确认。预期结果:清单只包含 TileLang 自己的文件,没有 torch-npu 之类的依赖。
  3. 确认卸载。在提示处输入 y,或直接加 -y 跳过交互。预期结果:终端打印 Successfully uninstalled。
  4. 在虚拟环境里装的就删环境。如果 TileLang 装在 venv / conda 环境里且不再需要整个环境,直接删除该环境比逐个包卸载更干净。预期结果:环境目录消失,系统 Python 不受影响。

TileLang 卸载后有哪些残留、怎么清?

TileLang 的残留集中在三处:~/.tilelang/cache 编译缓存、源码构建留下的 build/ 目录,以及昇腾侧写进 shell 的 set_env.sh 环境变量(来源)。

  1. 清编译缓存。执行 rm -rf ~/.tilelang/cache。预期结果:缓存目录被删除,下次安装后编译不会复用卸载前的旧产物(来源)。
  2. 清源码构建目录。如果你当初是 git clone 后本地构建的,删掉仓库里的 build/ 与 dist/。预期结果:这些目录不再占用磁盘,也不会在重装时被误用。
  3. 清 shell 里的环境变量。昇腾侧如果你手动 export ASCEND_HOME_PATH=... 或把 source set_env.sh 写进了 ~/.bashrc,把多余的那行去掉。预期结果:新开的 shell 里 echo $ASCEND_HOME_PATH 的变化符合你的预期——但注意:CANN 本身的 set_env.sh 是给昇腾工具链用的,不要因为卸 TileLang 而删掉它。
  4. 清 pip 缓存(可选)。执行 pip cache purge 可清掉 pip 自己下载的 wheel 缓存。预期结果:与该包相关的下载缓存被释放。

卸完怎么确认 TileLang 干净?

验收两条命令就够:python -c "import tilelang" 应报 ModuleNotFoundError,pip show tilelang 应无输出;昇腾侧用 tilelang-ascend 再验一遍(来源)。

  1. 验证不可导入。执行 python -c "import tilelang"。预期结果:报 ModuleNotFoundError: No module named 'tilelang';若还能导入,说明装在另一个解释器或另一个环境里。
  2. 验证包记录已消失。执行 pip show tilelang(昇腾侧 pip show tilelang-ascend)。预期结果:终端没有任何输出,或提示找不到该包。
  3. 确认依赖未被误伤。执行 python -c "import torch_npu; print(torch_npu.__version__)" 与查看 CANN 版本。预期结果:两者仍正常,说明卸载只动了自己该动的部分(来源)。

TileLang 卸载的注意事项

  1. 别把 CANN 当残留删掉。CANN 是系统级安装、不经 pip 管理,卸载 TileLang 不需要也不应该动它;误删 CANN 会让整台昇腾机器的算子环境一起失效。
  2. torch-npu 要单独判断。它是 pip 包,升级或重装时可能被 pip 提示一起移除;除非你确认要换掉,否则保留。
  3. 卸载与回退不是一回事。只是想换版本走《TileLang 怎么更新》,卸载用于彻底移除或重来。
  4. 重装前先清缓存。干净卸载后重装,先把 ~/.tilelang/cache 清掉,重编一次换取结果的确定性。

恢复安装的完整步骤见《TileLang 怎么安装》,日常命令速查见《TileLang 命令大全》。

来源:TileLang Installation Guide、tilelang-ascend · PyPI、tile-ai/tilelang-ascend GitHub repository

常见问题

TileLang 怎么卸载?pip uninstall 要卸哪个包名?

TileLang 卸载用 pip uninstall:按你当初装的路线写包名——NVIDIA 侧 pip uninstall tilelang,昇腾侧 pip uninstall tilelang-ascend。两条路线装的是两个独立包,只卸其中一个时,另一个仍会留在环境里。想一次清空就在虚拟环境里卸载后直接删除整个环境。

卸载 TileLang 时会不会把 torch-npu 或 CANN 一起删掉?

卸载 TileLang 不会删掉 CANN,因为 CANN 是系统级安装、不经 pip 管理;但 torch-npu 是 pip 包,如果你升级过它或手动装过,pip 在解析依赖时可能提示一起移除。卸载前看清 pip 列出的待删清单,只保留你要删的那一个,CANN 与 torch-npu 都该留着。

TileLang 卸载后还有哪些残留文件?编译缓存和 shell 变量要不要一起清?

TileLang 的残留在三处:编译缓存目录 ~/.tilelang/cache、源码构建留在仓库里的 build/ 目录,以及昇腾侧 set_env.sh 写进 shell 的环境变量。前两个删目录即可,第三个从你的 shell 配置文件(如 ~/.bashrc)里去掉对应的 source 行。

怎么确认 TileLang 已经卸干净了?用哪两条命令验证包确实被移除?

确认 TileLang 卸干净看两条:python -c "import tilelang" 应报 ModuleNotFoundError,pip show tilelang 应无任何输出。昇腾侧把包名换成 tilelang-ascend 再验一遍,同时确认 CANN 与 torch-npu 的版本没变,说明卸载只动了自己该动的部分。

只卸载 tilelang 但保留编译缓存,重新安装时会有什么影响?

只卸 TileLang 而保留 ~/.tilelang/cache 不会导致装不上,但缓存里的产物可能来自你卸载前的旧版本,重装或换版本后仍命中旧产物会造成结果与预期不符。所以重装前先清一次该目录,等于用一次重编换取结果的确定性。

相关术语

TileLang
TileLang 是由北京大学团队发起、基于 TVM 编译栈的 tile 级领域特定语言,用类 Python 语法生成高性能 GPU / NPU kernel;DeepSeek 于 2026-09-30 宣布开源其昇腾适配版。— TileLang Installation Guide
tilelang-ascend
tilelang-ascend 是 TileLang 面向华为昇腾 NPU 的独立发行版,卸载命令为 pip uninstall tilelang-ascend,与 NVIDIA 侧的 tilelang 是两个包。— tilelang-ascend · PyPI
编译缓存
TileLang 的编译缓存位于 ~/.tilelang/cache,保存已编译的 kernel 产物;卸载或换版本后应删除该目录,避免旧产物被复用到新环境。— TileLang Installation Guide
ASCEND_HOME_PATH
ASCEND_HOME_PATH 是昇腾工具链的根路径环境变量,通常由 CANN 的 set_env.sh 写入 shell;卸载 tilelang-ascend 时它不属于要删除的对象,CANN 本身要继续保留。— tilelang-ascend · PyPI

来源