Why does your puppy eat so much?
You should do some research and find out how much your puppy should be eating depending on its age and weight (many puppy foods have that information right on the side of the bag). Then, feed them in the morning, afternoon, and evening, giving them a set amount each time. Puppies can eat too much very easily, they won't stop until they make themselves sick, so only give them as much food as necessary at each feeding. Take their food dish away or make sure it's empty when they don't need to eat, but be sure to always keep water available. As your puppy grows you'll need to feed them slightly bigger meals. Again, the puppy food bag should tell you this information (or it can be found easily on the internet). At about 10 or 11 months they should transition to adult food (refer to those packages for feeding amounts).
*side note* if you switch the type of food you give them (mainly when switching brands, or from moist/wet food to solid food), make sure to slowly transition. Start by mixing a small amount of new food in with the old food, adding more new food and less old food over a period of about a week until they are fully transitioned to the new food. This is necessary because puppies have sensitive stomachs and digestive systems, immediately switching to a new food can upset their stomach and cause diarreah/vomiting.