The most common cause of puppies vomiting is simply that they ate something they shouldn’t have. The next common causes include parasites followed by underlying diseases including infectious causes, or genetic abnormalities. However, it is impossible to diagnose the cause without getting a full history and giving a proper physical exam. So, the best way to find out what is causing the vomiting and what I would recommend is visiting a veterinarian that can assess the overall health of your puppy, especially if he has not already been seen. Here is an article with more information on vomiting if you are interested in the topic:
It is also important to note that young puppies are extremely vulnerable and that if they are not eating, having diarrhea as well, showing signs of lethargy or just acting sick, you should get your puppy to a veterinarian as soon as possible.