add model transfer and model searching protocols, add new subspec