I just started the second course of the Machine learning specialization, which is all about utilizing Tensorflow. So I tried to install Tensorflow locally to experiment with some of my own data. Unfortunately I discovered that it is not compatible with the newer Python versions anymore (>3.12). I researched a bit and I’m reading everywhere that Tensorflow is on it’s way out and not getting updated much anymore, if at all. It seems Pytorch is now all the rage. Now I’m wondering if I’m wasting my time with learning to use Tensorflow?
(I’m not pursuing a career in AI or science, I don’t need to know everything. I have a business background and want to be able to build some prediction models for financial data.).
TensorFlow teaches important general concepts vs. having to hand-code every detail of your model and learning algorithm. TF takes care of the learning algorithm part for you.
Yes, PyTorch and TF are both widely used ML “platforms”. You need to know one or the other. I think torch is a bit easier to learn, but TF is very widely used.
If you want a nice intro to PyTorch, the GANs specialization was the first set of courses here that uses torch. GANs is pretty interesting in its own right.
There is also the new PyTorch Specialization that is very well done, but you need to have the base knowledge of at least MLS and maybe even DLS Course 1 and 4 in order to take that. DLS C4 uses TensorFlow, so you’d end up learning that anyway. The PyTorch Specialization assumes you already know what Deep Neural Networks and ConvNets are and then shows you how to build them using torch.
But on the original TF question you are asking here, I think you must not have downloaded the right version of TF. I asked google the question and here’s the answer:
Thanks, I’ll look into those courses. I will finish MLS since I’m already halfway through and I appreciate the foundational knowledge that I’m gaining. It sounds like Pytorch is what I should use though. I will look into that next.
About the TF version: I meant that it doesn’t work with versions later than 3.12 (“>3.12”). I’m on Python 3.14 and it seems TF is not getting updated regularly anymore. There are some discussions about it on github (Support python 3.14 · Issue #102890 · tensorflow/tensorflow · GitHub ). It sounds like they are winding down support for it.
It would entirely be consistent with Google’s historical behavior to simply drop support for a tool that they’ve invested a lot of resources in developing.
So it sounds like python 3.13 is the best you can do at this point.
“Versionitis” is a huge problem in general with packages based on python. There are tools that are specifically designed to let you create separate environments with just the combination of the versions of various packages that you need to run some high level package like TF or torch that require dozens of different lower level libraries. There are more than one such, but Anaconda and Conda are the ones I’ve tried, q.v.
Interesting! I literally didn’t think of the question in your topic, so I did some search and here is my reasoning.
First, it’s only natural that Tensorflow lags behind Python.
Tensorflow currently supports Python 3.13 and Python 3.14 was released Oct 2025 which means we are talking about a 7 month lag.
If we look at the history, Python 3.13 was released Oct 2024 and Tensorflow only started to support it like Aug 2025, which means a 7-month lag isn’t unprecedented and I think it is justifiable. TF is a Google product and from the product standpoint, it considers the upgrade lifecycle of its enterprise customers, and it is only natural that companies like to stick to their current stable Python environment for as long as they can, therefore, the pushing force for TF to keep up with Python shouldn’t be too large, I suppose?
Pytorch does move faster, but perhaps because it is also most welcomed by researcher and academia?
So, I think it’s not yet a strong signal that TF will die anytime soon, and while our own research may not demand us to know Tensorflow, our work may . Anyway, I think your decision to finish the MLS is a smart move, because knowing TF helps you grasp Pytorch later.
Thanks for the research. I know I can create a separate environment but wasn’t sure if it’s worth the time to set that up. I don’t know how much I should trust the chatter on Github and Reddit but the consensus there seems to be that TF is getting closer to the end of it’s lifecycle and it’s wiser to invest time into Pytorch now. I think I’ll move on to Pytorch (after I finish the current course), especially if it’s easier to learn. Thanks again!
Thanks for the insight @rmwkwok! I’m not living in the ML/AI world so I’m just going by what I’m reading on Reddit and Github and was coming here for some additional insight. I hope it’s all just rumors and support for TF continues. Apparently it’s still used by a lot of people.
Personally I would not put a lot of faith in online chatter. You only see information from people who want to put their opinions online, for whatever their purposes are. It’s not an objective sample of technology strategy.
There’s real signal here beyond online chatter. Google has been visibly reducing investment in TensorFlow’s maintenance, and is actively pushing the JAX ecosystem, including sponsoring conferences like the Deep Learning Indaba, where all the practical Jupyter notebooks are now in JAX. There’s even a dedicated short course on JAX here on DeepLearning.AI.
Perhaps more telling: Laurence Moroney, the lead instructor of the TensorFlow specializations on this very platform, went on to write an entire book on PyTorch and taught the PyTorch specialization. He also shared his thoughts directly on TensorFlow’s trajectory: https://x.com/lmoroney/status/1933917183635275819?s=20
The Keras 3 multi-backend support is a genuine bright spot, it buys TensorFlow more relevance. But the broader momentum, from Google internally and from the research community, has clearly shifted toward JAX and PyTorch.
If I were to look for signs that TensorFlow will be deprecated, as an outsider, it will include when JAX become a complete replacement for TF. I strongly believe that, one way or another, TF or JAX, Google has to maintain at least one framework because Google’s own TPUs are just good. In fact, with Gemini being trained with JAX, it’s some kind of preference, but Google can’t just rule the market’s choice, just like they can’t only provide TPUs in their Cloud (even though the bottlenecks in TPU’s supply chain is also an issue).
You are not wasting your time learning TensorFlow, especially given your specific goal of building prediction models for financial data with a business background.
While it is true that PyTorch has become the dominant framework in research and is often preferred for new academic projects, TensorFlow remains a robust, production-ready tool. The compatibility issue you encountered with Python 3.12+ is a known friction point, but it has been addressed in recent releases (TensorFlow 2.16 and later have improved support for newer Python versions), or you can easily run your experiments in a virtual environment with Python 3.10 or 3.11, which are still widely supported.
Maybe you should create a virtual environment that allows you to use that TensorFlow version with the specific Python version because that’s what I did.