Basic difference is that uvm_reg_adapter is used to translate uvm_reg_item transactions to design bus transactions (AXI, AHB etc) and vice versa. uvm_reg_predictors are passive components which monitors the bus transactions and updates registers data accordingly. uvm_reg_predictors has a handle to bus monitor analysis port and reg_adapter to get the bus transactions.
For more details just go thorugh source and try an small example.