|
26 | 26 | from sagemaker.tensorflow.defaults import TF_VERSION |
27 | 27 | from sagemaker.tensorflow.model import TensorFlowModel |
28 | 28 | from sagemaker.tensorflow.serving import Model |
29 | | -from sagemaker.utils import get_config_value |
| 29 | +from sagemaker import utils |
30 | 30 | from sagemaker.vpc_utils import VPC_CONFIG_DEFAULT |
31 | 31 |
|
32 | 32 | logger = logging.getLogger("sagemaker") |
@@ -190,9 +190,11 @@ class TensorFlow(Framework): |
190 | 190 |
|
191 | 191 | __framework_name__ = "tensorflow" |
192 | 192 |
|
193 | | - LATEST_VERSION = "1.12" |
| 193 | + LATEST_VERSION = "1.13" |
194 | 194 | """The latest version of TensorFlow included in the SageMaker pre-built Docker images.""" |
195 | 195 |
|
| 196 | + _LOWEST_SCRIPT_MODE_ONLY_VERSION = [1, 13] |
| 197 | + |
196 | 198 | def __init__( |
197 | 199 | self, |
198 | 200 | training_steps=None, |
@@ -321,6 +323,17 @@ def _validate_args( |
321 | 323 | ) |
322 | 324 | ) |
323 | 325 |
|
| 326 | + if (not self._script_mode_enabled()) and self._only_script_mode_supported(): |
| 327 | + logger.warning( |
| 328 | + "Legacy mode is deprecated in versions 1.13 and higher. Using script mode instead." |
| 329 | + ) |
| 330 | + self.script_mode = True |
| 331 | + |
| 332 | + def _only_script_mode_supported(self): |
| 333 | + return [ |
| 334 | + int(s) for s in self.framework_version.split(".") |
| 335 | + ] >= self._LOWEST_SCRIPT_MODE_ONLY_VERSION |
| 336 | + |
324 | 337 | def _validate_requirements_file(self, requirements_file): |
325 | 338 | if not requirements_file: |
326 | 339 | return |
@@ -489,7 +502,7 @@ def _create_tfs_model(self, role=None, vpc_config_override=VPC_CONFIG_DEFAULT): |
489 | 502 | image=self.image_name, |
490 | 503 | name=self._current_job_name, |
491 | 504 | container_log_level=self.container_log_level, |
492 | | - framework_version=self.framework_version, |
| 505 | + framework_version=utils.get_short_version(self.framework_version), |
493 | 506 | sagemaker_session=self.sagemaker_session, |
494 | 507 | vpc_config=self.get_vpc_config(vpc_config_override), |
495 | 508 | ) |
@@ -553,7 +566,7 @@ def hyperparameters(self): |
553 | 566 | return hyperparameters |
554 | 567 |
|
555 | 568 | def _default_s3_path(self, directory, mpi=False): |
556 | | - local_code = get_config_value("local.local_code", self.sagemaker_session.config) |
| 569 | + local_code = utils.get_config_value("local.local_code", self.sagemaker_session.config) |
557 | 570 | if self.sagemaker_session.local_mode and local_code: |
558 | 571 | return "/opt/ml/shared/{}".format(directory) |
559 | 572 | elif mpi: |
|
0 commit comments