I think that, as of March 2023, the only tensorflow distribution for cuda 12 is the docker package from NVIDIA.
A tf package for cuda 12 should show the following info
>>> tf.sysconfig.get_build_info()
OrderedDict([('cpu_compiler', '/usr/bin/x86_64-linux-gnu-gcc-11'),
('cuda_compute_capabilities', ['compute_86']),
('cuda_version', '12.0'), ('cudnn_version', '8'),
('is_cuda_build', True), ('is_rocm_build', False), ('is_tensorrt_build', True)])
But if we run tf.sysconfig.get_build_info() on any tensorflow package installed via pip, it stills tells that cuda_version is 11.x
So your alternatives are:
- install docker with the nvidia cloud instructions and run one of the
recent containers - compile tensorflow from source, either nightly or last release. Caveat, it takes a lot of RAM and some time, as all good compilations do, and the occasional error to be corrected on the run. In my case, to define kFP8, the new 8-bits float.
- wait