Update tensorflow requirement from <2.12.0 to <2.13.0
Created by: dependabot[bot]
Updates the requirements on tensorflow to permit the latest version.
Release notes
Sourced from tensorflow's releases.
TensorFlow 2.12.0
Release 2.12.0
TensorFlow
Breaking Changes
Build, Compilation and Packaging
- Removed redundant packages
tensorflow-gpu
andtf-nightly-gpu
. These packages were removed and replaced with packages that direct users to switch totensorflow
ortf-nightly
respectively. Since TensorFlow 2.1, the only difference between these two sets of packages was their names, so there is no loss of functionality or GPU support. See https://pypi.org/project/tensorflow-gpu for more details.
tf.function
:
tf.function
now uses the Python inspect library directly for parsing the signature of the Python function it is decorated on. This change may break code where the function signature is malformed, but was ignored previously, such as:
- Using
functools.wraps
on a function with different signature- Using
functools.partial
with an invalidtf.function
inputtf.function
now enforces input parameter names to be valid Python identifiers. Incompatible names are automatically sanitized similarly to existing SavedModel signature behavior.- Parameterless
tf.function
s are assumed to have an emptyinput_signature
instead of an undefined one even if theinput_signature
is unspecified.tf.types.experimental.TraceType
now requires an additionalplaceholder_value
method to be defined.tf.function
now traces with placeholder values generated by TraceType instead of the value itself.Experimental APIs
tf.config.experimental.enable_mlir_graph_optimization
andtf.config.experimental.disable_mlir_graph_optimization
were removed.Major Features and Improvements
Support for Python 3.11 has been added.
Support for Python 3.7 has been removed. We are not releasing any more patches for Python 3.7.
tf.lite
:
- Add 16-bit float type support for built-in op
fill
.- Transpose now supports 6D tensors.
- Float LSTM now supports diagonal recurrent tensors: https://arxiv.org/abs/1903.08023
tf.experimental.dtensor
:
- Coordination service now works with
dtensor.initialize_accelerator_system
, and enabled by default.- Add
tf.experimental.dtensor.is_dtensor
to check if a tensor is a DTensor instance.
tf.data
:
- Added support for alternative checkpointing protocol which makes it possible to checkpoint the state of the input pipeline without having to store the contents of internal buffers. The new functionality can be enabled through the
experimental_symbolic_checkpoint
option oftf.data.Options()
.- Added a new
rerandomize_each_iteration
argument for thetf.data.Dataset.random()
operation, which controls whether the sequence of generated random numbers should be re-randomized every epoch or not (the default behavior). Ifseed
is set andrerandomize_each_iteration=True
, therandom()
operation will produce a different (deterministic) sequence of numbers every epoch.- Added a new
rerandomize_each_iteration
argument for thetf.data.Dataset.sample_from_datasets()
operation, which controls whether the sequence of generated random numbers used for sampling should be re-randomized every epoch or not. Ifseed
is set andrerandomize_each_iteration=True
, thesample_from_datasets()
operation will use a different (deterministic) sequence of numbers every epoch.
tf.test
:
- Added
tf.test.experimental.sync_devices
, which is useful for accurately measuring performance in benchmarks.
tf.experimental.dtensor
:
... (truncated)
Changelog
Sourced from tensorflow's changelog.
Release 2.12.0
Breaking Changes
Build, Compilation and Packaging
- Removed redundant packages
tensorflow-gpu
andtf-nightly-gpu
. These packages were removed and replaced with packages that direct users to switch totensorflow
ortf-nightly
respectively. Since TensorFlow 2.1, the only difference between these two sets of packages was their names, so there is no loss of functionality or GPU support. See https://pypi.org/project/tensorflow-gpu for more details.
tf.function
:
tf.function
now uses the Python inspect library directly for parsing the signature of the Python function it is decorated on. This change may break code where the function signature is malformed, but was ignored previously, such as:
- Using
functools.wraps
on a function with different signature- Using
functools.partial
with an invalidtf.function
inputtf.function
now enforces input parameter names to be valid Python identifiers. Incompatible names are automatically sanitized similarly to existing SavedModel signature behavior.- Parameterless
tf.function
s are assumed to have an emptyinput_signature
instead of an undefined one even if theinput_signature
is unspecified.tf.types.experimental.TraceType
now requires an additionalplaceholder_value
method to be defined.tf.function
now traces with placeholder values generated by TraceType instead of the value itself.Experimental APIs
tf.config.experimental.enable_mlir_graph_optimization
andtf.config.experimental.disable_mlir_graph_optimization
were removed.Major Features and Improvements
Support for Python 3.11 has been added.
Support for Python 3.7 has been removed. We are not releasing any more patches for Python 3.7.
tf.lite
:
- Add 16-bit float type support for built-in op
fill
.- Transpose now supports 6D tensors.
- Float LSTM now supports diagonal recurrent tensors: https://arxiv.org/abs/1903.08023
tf.experimental.dtensor
:
- Coordination service now works with
dtensor.initialize_accelerator_system
, and enabled by default.- Add
tf.experimental.dtensor.is_dtensor
to check if a tensor is a DTensor instance.
tf.data
:
- Added support for alternative checkpointing protocol which makes it possible to checkpoint the state of the input pipeline without having to store the contents of internal buffers. The new functionality can be enabled through the
experimental_symbolic_checkpoint
option oftf.data.Options()
.- Added a new
rerandomize_each_iteration
argument for thetf.data.Dataset.random()
operation, which controls whether the sequence of generated random numbers should be re-randomized every epoch or not (the default behavior). Ifseed
is set andrerandomize_each_iteration=True
, therandom()
operation will produce a different (deterministic) sequence of numbers every epoch.- Added a new
rerandomize_each_iteration
argument for thetf.data.Dataset.sample_from_datasets()
operation, which controls whether the sequence of generated random numbers used for sampling should be re-randomized every epoch or not. Ifseed
is set andrerandomize_each_iteration=True
, thesample_from_datasets()
operation will use a different (deterministic) sequence of numbers every epoch.
tf.test
:
- Added
tf.test.experimental.sync_devices
, which is useful for accurately measuring performance in benchmarks.
tf.experimental.dtensor
:
- Added experimental support to ReduceScatter fuse on GPU (NCCL).
... (truncated)
Commits
-
0db597d
Merge pull request #60051 from tensorflow/venkat2469-patch-1 -
1a12f59
Update RELEASE.md -
aa4d558
Merge pull request #60050 from tensorflow/venkat-patch-6 -
bd1ab8a
Update the security section in RELEASE.md -
4905be0
Merge pull request #60049 from tensorflow/venkat-patch-5 -
9f96caa
Update setup.py on TF release branch with released version of Estimator and k... -
e719b6b
Update Relese.md (#60033) -
64a9d54
Merge pull request #60017 from tensorflow/joefernandez-patch-2.12-release-notes -
7a4ebfd
Update RELEASE.md -
e0e10a9
Merge pull request #59988 from tensorflow-jenkins/version-numbers-2.12.0-8756 - Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)