The 1050 Ti not only has the 4gb, it is faster. The problem with the 460 4gb is it's just a regular speed 460 with 2 more gb of vram. Considering that the 460 is an entry level gaming card, it's questionable what value having 4gb is for that card.
If saving money is a priority, get the 2gb 460. If performance is the priority, get the 1050 Ti.
Both cards are a big improvement over what you have now, so you can't really go wrong either way.