This only happens if you call lerp on a lerp product. If you lerp on a starting point then you should get a constant speed.
function lerp(a, b, c)
return a + (b - a) * c
end
local Alpha = 0
local Start = CFrame.new()
local Goal = CFrame.Angles(math.rad(math.random(0, 360)), math.rad(math.random(0, 360)), math.rad(math.random(0, 360)))
local Current = Start
game:GetService("RunService").heartbeat:Connect(function(DeltaTime)
Alpha += DeltaTime
Current = lerp(Start, Goal, Alpha)
end)
This will move the value of Current to Goal at a consistent speed.