The 26-year-old arrives after spending his first four NFL seasons with the Rams. He has appeared in 57 games with three starts, rushing for 748 yards and four touchdowns on 171 carries, catching 93 passes for 752 yards and 1 TD and averaging 27.1 yards on 95 kickoff returns.
Last season Cunningham played in 11 games, rushing for 101 yards on 21 carries and catching 16 passes for 91 yards. The speedy 5-10, 210-pounder also ranked third in the NFL with a 27.2-yard average on 22 kickoff returns.
Cunningham entered the NFL with the Rams in 2013 as an undrafted free agent from Middle Tennessee State.