Bird
Raised Fist0
Agentic AIml~5 mins

Reflection and self-critique pattern in Agentic AI

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
Introduction

This pattern helps AI agents think about their own answers and find ways to improve them. It makes AI smarter by learning from mistakes.

When an AI agent needs to check if its answer is good enough before giving it.
When you want the AI to learn from its own errors and improve over time.
When solving complex problems that need careful thinking and correction.
When building AI that can explain why it made a decision.
When you want to reduce mistakes in AI-generated responses.
Syntax
Agentic AI
def reflect_and_critique(agent_output):
    reflection = analyze(agent_output)
    critique = find_errors(reflection)
    improved_output = fix_errors(agent_output, critique)
    return improved_output

This is a simple function showing the pattern steps: reflection, critique, and improvement.

Each step helps the AI review and improve its own work.

Examples
This example shows a basic check for the word 'error' and fixes it.
Agentic AI
def reflect_and_critique(answer):
    print('Reflection: Checking answer quality...')
    if 'error' in answer:
        print('Critique: Found errors, fixing...')
        answer = answer.replace('error', 'correct')
    return answer
Here, the AI reflects on how confident it is and tries to improve if confidence is low.
Agentic AI
def reflect_and_critique(prediction):
    confidence = evaluate_confidence(prediction)
    if confidence < 0.7:
        prediction = improve_prediction(prediction)
    return prediction
Sample Model

This program shows an AI agent reflecting on its output, finding a mistake, and fixing it before sharing the final answer.

Agentic AI
def reflect_and_critique(agent_output):
    # Reflection step: check if output contains mistakes
    mistakes = []
    if 'mistake' in agent_output:
        mistakes.append('Found the word mistake')
    # Critique step: decide if output needs fixing
    if mistakes:
        improved_output = agent_output.replace('mistake', 'correction')
    else:
        improved_output = agent_output
    return improved_output

# Example usage
initial_output = 'This is a mistake in the answer.'
final_output = reflect_and_critique(initial_output)
print('Initial output:', initial_output)
print('Final output:', final_output)
OutputSuccess
Important Notes

Reflection helps AI pause and think about its own work.

Self-critique means finding what can be better or wrong.

Improvement is fixing mistakes to give better answers.

Summary

The reflection and self-critique pattern helps AI improve by reviewing its own answers.

It works by reflecting, finding errors, and fixing them.

This makes AI more reliable and smarter over time.

Practice

(1/5)
1. What is the main purpose of the Reflection and self-critique pattern in AI?
easy
A. To store large amounts of data
B. To speed up AI computations
C. To help AI review and improve its own answers
D. To create new AI models automatically

Solution

  1. Step 1: Understand the pattern's goal

    The reflection and self-critique pattern is designed to let AI look back at its answers and find mistakes.
  2. Step 2: Identify the main benefit

    By reviewing its own work, AI can fix errors and improve future responses.
  3. Final Answer:

    To help AI review and improve its own answers -> Option C
  4. Quick Check:

    Reflection and self-critique = improve answers [OK]
Hint: Focus on improvement through self-review [OK]
Common Mistakes:
  • Confusing speed with accuracy
  • Thinking it stores data
  • Assuming it creates new models
2. Which of the following is the correct way to describe the reflection step in the pattern?
easy
A. AI reviews its previous answers to find mistakes
B. AI ignores previous answers and generates new ones
C. AI deletes all previous data to start fresh
D. AI copies answers from other models without checking

Solution

  1. Step 1: Define reflection in AI context

    Reflection means looking back at past answers to check for errors or improvements.
  2. Step 2: Match options to definition

    Only AI reviews its previous answers to find mistakes correctly states that AI reviews previous answers to find mistakes.
  3. Final Answer:

    AI reviews its previous answers to find mistakes -> Option A
  4. Quick Check:

    Reflection = review past answers [OK]
Hint: Reflection means reviewing past work carefully [OK]
Common Mistakes:
  • Thinking reflection means ignoring past answers
  • Confusing reflection with deleting data
  • Assuming copying answers is reflection
3. Consider this simple AI pseudo-code using reflection and self-critique:
answer = AI.generate_answer(question)
errors = AI.reflect(answer)
if errors:
    answer = AI.fix_errors(answer, errors)
print(answer)

What will print(answer) show if the AI finds errors?
medium
A. The original answer without changes
B. The corrected answer after fixing errors
C. No output because the program stops
D. An error message instead of an answer

Solution

  1. Step 1: Understand the code flow

    The AI first generates an answer, then reflects to find errors. If errors exist, it fixes them.
  2. Step 2: Determine the final printed output

    Since errors are fixed before printing, the output is the corrected answer.
  3. Final Answer:

    The corrected answer after fixing errors -> Option B
  4. Quick Check:

    Errors fixed before print = corrected answer [OK]
Hint: Errors fixed before print means corrected output [OK]
Common Mistakes:
  • Assuming original answer prints despite errors
  • Thinking program stops on errors
  • Confusing error message with fixed answer
4. You have this AI code snippet:
answer = AI.generate_answer(question)
errors = AI.reflect(answer)
if errors:
    AI.fix_errors(answer, errors)
print(answer)

Why might this code fail to print the corrected answer?
medium
A. Because fix_errors does not update answer variable
B. Because reflect never finds errors
C. Because print is called before generating answer
D. Because answer is not defined

Solution

  1. Step 1: Analyze variable updates

    The fix_errors function is called but its result is not assigned back to answer.
  2. Step 2: Understand impact on output

    Since answer is unchanged, print shows the original, not corrected, answer.
  3. Final Answer:

    Because fix_errors does not update answer variable -> Option A
  4. Quick Check:

    Fix must assign back to answer [OK]
Hint: Assign fixed answer back to variable before printing [OK]
Common Mistakes:
  • Assuming reflect never finds errors
  • Thinking print is called too early
  • Ignoring variable assignment after fixing
5. You want to improve an AI assistant using the reflection and self-critique pattern. Which approach best applies this pattern to reduce repeated mistakes over time?
hard
A. AI copies answers from a fixed database without checking
B. AI generates answers randomly to explore new possibilities
C. AI deletes old answers to save memory without review
D. After each answer, AI reviews its response, identifies errors, fixes them, and updates its knowledge base

Solution

  1. Step 1: Identify key steps in the pattern

    The pattern involves reviewing answers, finding errors, fixing them, and learning from mistakes.
  2. Step 2: Match approach to pattern goals

    After each answer, AI reviews its response, identifies errors, fixes them, and updates its knowledge base describes reviewing, fixing, and updating knowledge, which fits the pattern perfectly.
  3. Final Answer:

    After each answer, AI reviews its response, identifies errors, fixes them, and updates its knowledge base -> Option D
  4. Quick Check:

    Review + fix + learn = improved AI [OK]
Hint: Choose option with review, fix, and learning steps [OK]
Common Mistakes:
  • Ignoring learning from errors
  • Choosing random or fixed answers
  • Skipping error identification