Haven't trained many dogs but
have been training young horses for years and a few dogs along the way.
Start as early as you like and the pup will tell you when he is mature enough to really learn. You can start teaching a pup the basics right now. By that I mean things like walking on a leash, coming when called, sit on command, etc.
You can also start working on "fetch" right now by playing with the pup's favorite toys.
Don't expect instant success and at this stage Praise, praise, praise when the pup is correct and just ask over again when he/she fails. If you try these things and the pup seems totally uninterested, backoff the lessons and give him/her a couple of weeks to gain some maturity.
I can tell you that one of the best horses I ever owned and a couple of the dogs were "slow learners" as youngsters but with a little maturity the lessons just clicked and then they never forgot.