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

R Markdown运行TensorFlow代码报错,寻求解决方案

解决R Markdown编织TensorFlow/Keras模型时的执行终止问题

问题分析

你遇到的cudart64_110.dll找不到的警告本身可以忽略(如果你的机器没有GPU),但编织时执行终止的核心原因通常是R Markdown的运行环境与R脚本不一致,或是TensorFlow默认尝试GPU资源导致的冲突。以下是具体解决步骤:

  • 强制TensorFlow使用CPU模式
    在R Markdown的代码块开头添加环境变量设置,避免TensorFlow尝试加载GPU相关库:

    # 加载前先强制CPU模式
    Sys.setenv(TENSORFLOW_CPU_ONLY = "1")
    library(tensorflow)
    library(keras)
    
    # 可选:明确禁用GPU可见性
    tf$config$set_visible_devices(list(), 'GPU')
    
  • 对齐R脚本与R Markdown的运行环境
    在R脚本和R Markdown中分别运行sessionInfo(),对比两者的R版本、tensorflow/keras版本、依赖库路径是否一致。如果R Markdown使用了不同的环境,需要切换到与脚本相同的环境:

    • 若使用renv,确保R Markdown激活了对应的项目环境;
    • 手动指定库路径:.libPaths("你的R脚本使用的库路径")。
  • 重新安装适配的TensorFlow版本
    如果不需要GPU支持,直接安装CPU版TensorFlow:

    install_tensorflow(method = "conda", version = "cpu")
    

    若需要GPU,确保CUDA(对应cudart64_110.dll需要CUDA 11.0)和cuDNN版本与TensorFlow版本匹配,再重新安装GPU版。

  • 统一工作目录
    R Markdown编织时默认工作目录是文件所在路径,而R脚本可能使用其他目录,导致数据/模型路径错误。可以在R Markdown开头设置工作目录:

    setwd(dirname(rstudioapi::getSourceEditorContext()$path))
    

    或使用here包管理路径,避免相对路径混乱。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 18:50:26