Is it required to train the model in entire data after cross validation? I have a model trained as follows.
random_search=RandomizedSearchCV(classifier, param_distributions=params,\
     scoring='f1',
     n_iter=100, cv=5, verbose=3, random_state=42, n_jobs=-1)
random_search.fit(X, y)
final_classifier=random_search.best_estimator_

My question is, do I have to train final_classifier on entire data before putting it into production?
i.e. Should I do
final_clssifier.fit(X,y)

Or random_search returning the model after fitting it again on entire data?
I really appreciate any help you can provide.

The argument refit is for this purpose, which is by default True.
See the documentation:

refit: bool, str, or callable, default=True
Refit an estimator using the best found parameters on the whole dataset.

About putting it into the production, I'd suggest you separate some part of your dataset as a test set and do a final check with the refitted model. Although CV is there to select best HPs, it doesn't have the ability to prevent overfitting, and it's for your good to detect if you have it and choose to go with it. Nobody should go to production blindfold.
