A Survey of Reinforcement Learning from Human Feedback