有没有办法抑制 TensorFlow 打印的消息?

2024-01-29

我认为这些信息在最初几次确实很重要,但后来就毫无用处了。 它实际上使阅读和调试的情况变得更糟。

我tensorflow/stream_executor/dso_loader.cc:128]成功打开 CUDA库libcublas.so.8.0本地我 tensorflow/stream_executor/dso_loader.cc:119] 无法打开 CUDA 库 libcudnn.so。 LD_LIBRARY_PATH:我 tensorflow/stream_executor/cuda/cuda_dnn.cc:3459] 无法加载 cuDNN DSO 我tensorflow/stream_executor/dso_loader.cc:128]成功 在本地打开CUDA库libcufft.so.8.0我 tensorflow/stream_executor/dso_loader.cc:128]成功打开CUDA 本地库 libcuda.so.1 我 tensorflow/stream_executor/dso_loader.cc:128]成功打开CUDA 本地库 libcurand.so.8.0

有没有办法压制那些只说成功的人?


UPDATE(超越1.14):请参阅我更彻底的答案(无论如何,这是一个愚蠢的问题):https://stackoverflow.com/a/38645250/6557588 https://stackoverflow.com/a/38645250/6557588

除了 Wintro 的答案之外,您还可以从 C 端禁用/抑制 TensorFlow 日志(即以单个字符开头的丑陋日志:I、E 等);这issue https://github.com/tensorflow/tensorflow/issues/1258有关日志记录的开放已更新,表明您现在可以通过环境变量控制日志记录。您现在可以通过设置名为的环境变量来更改级别TF_CPP_MIN_LOG_LEVEL;默认为 0(显示所有日志),但可以设置为 1 以过滤掉INFO日志,2额外过滤掉WARNING日志,以及 3 来额外过滤掉ERROR日志。它现在似乎在 master 中,并且可能会成为未来版本(即 r0.11 之后的版本)的一部分。看这一页 https://github.com/tensorflow/tensorflow/issues/1258了解更多信息。以下是使用 Python 更改详细程度的示例:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'  # or any {'0', '1', '2'}
import tensorflow as tf

您可以在运行脚本的环境中设置此环境变量。例如,对于 bash,这可以位于文件中~/.bashrc, /etc/environment, /etc/profile,或者在实际的 shell 中为:

TF_CPP_MIN_LOG_LEVEL=2 python my_tf_script.py
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法抑制 TensorFlow 打印的消息? 的相关文章

随机推荐