My model implementation is as follows :
Parameter that are passed : {'eta': 0.01, 'tree_method': 'hist', 'grow_policy': 'lossguide', 'subsample': 1.0, 'alpha': 3, 'objective': 'binary:logistic', 'max_depth': 8, 'eval_metric': 'logloss', 'nthread': 8, 'random_state': 99, 'scale_pos_weight': 250, 'lambda': 5}
I am getting a warning as below, I have searched some references and I have applied this link and links.
But warning persists as below :
core.py:528: FutureWarning: Pass evals as keyword args. Passing these as positional arguments will be considered an error in future releases. format(", ".join(args_msg)), FutureWarning
/home/spark/.local/lib/python3.7/site-packages/xgboost/core.py:528: FutureWarning: Pass `evals` as keyword args. Passing these as positional arguments will be considered as error in future releases. format(", ".join(args_msg)), FutureWarning
I completely understand that some parameters value I am sending is not going to support in a future release but I am not clear which parameter is causing triggers that warning. From the reference link, I was guessing that: eval_metric and tried to change but the error has not changed.
Can anyone help me to understand which parameter is causing to trigger that warning and what are the possible changes that I need to make?

I think the problem is with your line:
Your 'evals' argument is 'watchlist', which you're passing as a positional argument. A positional argument isn't named as an argument (e.g. evals=watchlist), but just by it's position in the function call. At the moment you have some positional arguments (the first four) and some keyword arguments (the last three).
It's usually safest to define as many things as you can using keyword arguments. The warning should go away if you replace your line with:
(Note that this is still passing params, dtrain, and 500 as positional arguments)