def test_get_package_version_comparison(): package_version = get_package_version("pytest") current_version = parse_version("6.2.3") old_version = parse_version("6.2.0") new_version = parse_version("6.2.4") assert package_version == current_version assert not package_version < current_version assert not package_version > current_version assert package_version <= new_version assert package_version >= old_version
def test_get_package_version_comparison(): package_version = get_package_version('pytest') current_version = parse_version('4.3.0') old_version = parse_version('4.2.1') new_version = parse_version('4.4.1') assert package_version == current_version assert not package_version < current_version assert not package_version > current_version assert package_version <= new_version assert package_version >= old_version
def get_tensorflow(): # Ensures backward and forward compatibility with TensorFlow 1 and 2. if get_package_version("tensorflow") < parse_version("1.13.1"): import warnings warnings.warn( "Use of TensorFlow 1.12 and older is deprecated. " "Use Tensorflow 1.13 or newer instead.", DeprecationWarning, ) import tensorflow as tf else: import tensorflow.compat.v1 as tf return tf
def set_global_seed(seed): random.seed(seed) if opt.has_numpy: opt.np.random.seed(seed) if module_is_in_cache('tensorflow'): # Ensures backward and forward compatibility with TensorFlow 1 and 2. if get_package_version('tensorflow') < parse_version('1.13.1'): import warnings warnings.warn("Use of TensorFlow 1.12 and older is deprecated. " "Use Tensorflow 1.13 or newer instead.", DeprecationWarning) import tensorflow as tf else: import tensorflow.compat.v1 as tf tf.set_random_seed(seed) if module_is_in_cache('torch'): import torch torch.manual_seed(seed) if torch.cuda.is_available(): torch.cuda.manual_seed_all(seed)
def set_global_seed(seed): random.seed(seed) if opt.has_numpy: opt.np.random.seed(seed) if module_is_in_cache('tensorflow'): # Ensures backward and forward compatibility with TensorFlow 1 and 2. if get_package_version('tensorflow') < parse_version('1.13.1'): import warnings warnings.warn( "Use of TensorFlow 1.12 and older is deprecated. " "Use Tensorflow 1.13 or newer instead.", DeprecationWarning) import tensorflow as tf else: import tensorflow.compat.v1 as tf tf.set_random_seed(seed) if module_is_in_cache('torch'): import torch torch.manual_seed(seed) if torch.cuda.is_available(): torch.cuda.manual_seed_all(seed)
def tf(): """ Creates a simplified tensorflow interface if necessary, so `tensorflow` is not required during the tests. """ from sacred.optional import has_tensorflow if has_tensorflow: # Ensures backward and forward compatibility with TensorFlow 1 and 2. if get_package_version('tensorflow') < parse_version('1.13.1'): import tensorflow as tf else: import tensorflow.compat.v1 as tf return tf else: # Let's define a mocked tensorflow class tensorflow: class summary: class FileWriter: def __init__(self, logdir, graph): self.logdir = logdir self.graph = graph print("Mocked FileWriter got logdir=%s, graph=%s" % (logdir, graph)) class Session: def __init__(self): self.graph = None def __enter__(self): return self def __exit__(self, exc_type, exc_val, exc_tb): pass # Set stflow to use the mock as the test import sacred.stflow.method_interception sacred.stflow.method_interception.tf = tensorflow return tensorflow
def test_parse_version(): parsed_version = parse_version("6.2.3") assert str(parsed_version) == "6.2.3"
def test_parse_version(): parsed_version = parse_version('4.3.0') assert str(parsed_version) == '4.3.0'
def test_parse_version(): parsed_version = parse_version("4.3.0") assert str(parsed_version) == "4.3.0"
from .contextlibbackport import ContextDecorator from .internal import ContextMethodDecorator import sacred.optional as opt from sacred.utils import get_package_version, parse_version if opt.has_tensorflow: # Ensures backward and forward compatibility with TensorFlow 1 and 2. if get_package_version('tensorflow') < parse_version('1.13.1'): import warnings warnings.warn("Use of TensorFlow 1.12 and older is deprecated. " "Use Tensorflow 1.13 or newer instead.", DeprecationWarning) import tensorflow as tf else: import tensorflow.compat.v1 as tf else: tf = None class LogFileWriter(ContextDecorator, ContextMethodDecorator): """ Intercept ``logdir`` each time a new ``FileWriter`` instance is created. :param experiment: Tensorflow experiment. The state of the experiment must be running when entering the annotated function / the context manager. When creating ``FileWriters`` in Tensorflow, you might want to store the path to the produced log files in the sacred database. In the scope of ``LogFileWriter``, the corresponding log directory path