I have been trying to understand FEP, and so far my understanding is that essentially the agent tries to learn the generative model that most closely explains observations and then tries to act in a way that are more likely to cause the environment to generate its preferred observations (say pH and temperature in the right range).
The problem with this approach is in scalability of inference and candidate model generation. By the time you provide model for the agent, you as a designer have coded much of your knowledge already and hence constrain the agent. True AI will build model from the scratch, and not just learn model complexity.