Bird
Raised Fist0
Agentic AIml~10 mins

ReAct pattern (Reasoning + Acting) in Agentic AI - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to start the ReAct agent with an initial prompt.

Agentic AI
agent = ReActAgent(prompt=[1])
Drag options to blanks, or click blank then click option'
A"Think step-by-step and then act."
B"What is the weather today?"
C"Calculate the sum of 2 and 3."
D"Hello, how are you?"
Attempts:
3 left
💡 Hint
Common Mistakes
Using a simple question as the prompt instead of a reasoning instruction.
2fill in blank
medium

Complete the code to make the agent perform an action after reasoning.

Agentic AI
response = agent.[1](input_text)
Drag options to blanks, or click blank then click option'
Athink
Brun
Cact
Dprocess
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'think' instead of 'act' to perform the action.
3fill in blank
hard

Fix the error in the reasoning step method call.

Agentic AI
thought = agent.[1](context)
Drag options to blanks, or click blank then click option'
Areason
Bthink
Crespond
Dact
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'act' or 'reason' which are not the exact method names.
4fill in blank
hard

Fill both blanks to create a loop that alternates reasoning and acting until done.

Agentic AI
while not done:
    thought = agent.[1](input_data)
    action = agent.[2](thought)
Drag options to blanks, or click blank then click option'
Athink
Bact
Crun
Dprocess
Attempts:
3 left
💡 Hint
Common Mistakes
Swapping the order of 'think' and 'act'.
Using incorrect method names like 'run' or 'process'.
5fill in blank
hard

Fill all three blanks to store thoughts, actions, and results in a dictionary.

Agentic AI
log = {
    'thought': agent.[1](query),
    'action': agent.[2](query),
    'result': agent.[3](query)
}
Drag options to blanks, or click blank then click option'
Athink
Bact
Cobserve
Drespond
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'respond' instead of 'observe' for the result.
Mixing up the order of methods.

Practice

(1/5)
1. What is the main purpose of the ReAct pattern in AI problem solving?
easy
A. To store large datasets efficiently
B. To speed up training of neural networks
C. To combine reasoning steps with actions for clearer problem solving
D. To replace human decision making completely

Solution

  1. Step 1: Understand the ReAct pattern components

    The ReAct pattern mixes reasoning (thought) and acting (actions) to solve problems step-by-step.
  2. Step 2: Identify the main goal

    Its goal is to help AI explain its reasoning clearly while using tools effectively.
  3. Final Answer:

    To combine reasoning steps with actions for clearer problem solving -> Option C
  4. Quick Check:

    ReAct = Reasoning + Acting [OK]
Hint: ReAct means think and do together for better answers [OK]
Common Mistakes:
  • Confusing ReAct with data storage methods
  • Thinking it speeds up training only
  • Believing it replaces humans fully
2. Which of the following shows the correct sequence of steps in the ReAct pattern?
easy
A. Action -> Thought -> Observation -> Final Answer
B. Thought -> Action -> Observation -> Final Answer
C. Observation -> Thought -> Action -> Final Answer
D. Final Answer -> Thought -> Action -> Observation

Solution

  1. Step 1: Recall the ReAct step order

    The ReAct pattern follows Thought (reasoning), then Action (doing), then Observation (seeing results), and finally Final Answer.
  2. Step 2: Match the correct sequence

    Thought -> Action -> Observation -> Final Answer matches this exact order.
  3. Final Answer:

    Thought -> Action -> Observation -> Final Answer -> Option B
  4. Quick Check:

    Step order = Thought, Action, Observation, Final Answer [OK]
Hint: Remember: Think first, then do, then check, then answer [OK]
Common Mistakes:
  • Swapping Action and Thought order
  • Placing Final Answer too early
  • Confusing Observation with Action
3. Given this simplified ReAct code snippet, what will be the final answer output?
thought = "Check if number is even"
action = "Divide number by 2"
observation = 4 / 2
final_answer = "Number is even" if observation == 2 else "Number is odd"
print(final_answer)
medium
A. None
B. Number is odd
C. Error: division by zero
D. Number is even

Solution

  1. Step 1: Evaluate the action and observation

    The action divides 4 by 2, resulting in observation = 2.
  2. Step 2: Determine the final answer based on observation

    Since observation == 2, the final answer is "Number is even".
  3. Final Answer:

    Number is even -> Option D
  4. Quick Check:

    4 / 2 = 2 -> even number [OK]
Hint: Check the observation value to decide final answer [OK]
Common Mistakes:
  • Confusing observation value with input number
  • Assuming division error
  • Ignoring the if-else condition
4. Identify the error in this ReAct pattern snippet:
thought = "Find square root"
action = "Calculate sqrt of 16"
observation = sqrt(16)
final_answer = "Square root is " + observation
print(final_answer)
medium
A. Missing import for sqrt function
B. Incorrect string concatenation with number
C. Wrong variable name for observation
D. No error, code runs fine

Solution

  1. Step 1: Check usage of sqrt function

    The code uses sqrt(16) but does not import sqrt from math module.
  2. Step 2: Identify missing import causing error

    Without 'from math import sqrt', this will cause a NameError.
  3. Final Answer:

    Missing import for sqrt function -> Option A
  4. Quick Check:

    sqrt needs import from math [OK]
Hint: Always import math functions before use [OK]
Common Mistakes:
  • Assuming string concatenation error
  • Thinking variable names are wrong
  • Believing code runs without imports
5. You want an AI agent using the ReAct pattern to answer: "Is 15 a prime number?" Which sequence best shows how the agent should reason and act?
hard
A. Thought: Check divisibility from 2 to 14 -> Action: Test divisibility by 3 -> Observation: 15 divisible by 3 -> Final Answer: Not prime
B. Thought: Check if 15 is even -> Action: Divide by 2 -> Observation: Not divisible -> Final Answer: Prime
C. Thought: Check if 15 is greater than 10 -> Action: Return yes -> Observation: None -> Final Answer: Prime
D. Thought: Guess number is prime -> Action: Return prime -> Observation: None -> Final Answer: Prime

Solution

  1. Step 1: Understand prime checking logic

    To check if 15 is prime, test divisibility by numbers from 2 up to 14.
  2. Step 2: Follow ReAct steps correctly

    The agent thinks about divisibility, acts by testing 3, observes 15 is divisible, then concludes not prime.
  3. Final Answer:

    Thought: Check divisibility from 2 to 14 -> Action: Test divisibility by 3 -> Observation: 15 divisible by 3 -> Final Answer: Not prime -> Option A
  4. Quick Check:

    Divisible by 3 means not prime [OK]
Hint: Test divisors stepwise to confirm prime status [OK]
Common Mistakes:
  • Only checking even divisibility
  • Guessing without testing
  • Ignoring observations in reasoning