In this work, an online support vector machines (SVM) training method (Neural Comput. 2003; 15: 2683-2703, referred to as the accurate online support vector regression (AOSVR) algorithm, is embedded in the previously proposed support vector machines-based generalized predictive control (SVM-Based GPC) architecture (Support vector machines based generalized predictive control, under review), thereby obtaining a powerful scheme for controlling non-linear systems adaptively. Starting with an initially empty SVM model of the unknown plant, the proposed online SVM-based GPC method performs the modelling and control tasks simultaneously. At each iteration, if the SVM model is not accurate enough to represent the plant dynamics at the current operating point, it is updated with the training data formed by persistently exciting random input signal applied to the plant, otherwise, if the model is accepted as accurate, a generalized predictive control signal based on the obtained SVM model is applied to the plant. After a short transient time, the model can satisfactorily reflect the behaviour of the plant in the whole phase space or operation region. The incremental algorithm of AOSVR enables the SVM model to learn the new training data pair, while the decremental algorithm allows the SVM model to forget the oldest training point. Thus, the SVM model can adapt the changes in the plant and also in the operating conditions. The simulation results on non-linear systems have revealed that the proposed method provides an excellent control quality. Furthermore, it maintains its performance when a measurement noise is added to the output of the underlying system.