Making the model show its reasoning before it acts
ReAct (short for Reason + Act) is a prompting pattern where the model is asked to explicitly write out a 'Thought' before every 'Action,' and then receives an 'Observation' back before deciding on its next Thought. Instead of jumping straight from a goal to a tool call, the model narrates why it's about to do something: 'The user wants the current weather in Lagos, I should call the weather API with that city name.' Only after that reasoning trace does it emit the actual action.
This might look like unnecessary overhead, more tokens, more latency per step, but it consistently improves reliability. Writing out the reasoning forces the model to commit to an interpretation of the situation before acting on it, which surfaces bad assumptions before they turn into a wasted or wrong action. It's the same reason a person talking through their plan out loud catches more mistakes than someone who acts on instinct.
