Difference between validation and prediction
In the GridsearchCV function, there is a parameter, cv that tells you how many times cross-validation is performed. If you're performing cross-validation on the train set, all you need is a train/test set since the hyperparameters are being tuned without seeing the test set.

If you want to use your own validation set, see the link below. The link below that also has a good description of how K-Fold CV works in GridSearchCV.

Finally, gridsearch optimization is pretty slow and there are more advanced methods for hyperparameter tuning now, in case performance is an issue.

See this previous answer: 

Difference between test and validation set

Preselected Validation Set

Gridsearch CV and KFold CV