Агенты самокоррекции и рефлексии
Научитесь создавать агентов, способных критически оценивать собственные результаты и итеративно улучшать ответы или действия
«Агенты самокоррекции и рефлексии» — бесплатный урок AI Agents with LangChain & Autonomous Workflows на CoddyKit. Это урок 3 из 6. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Agents with LangChain & Autonomous Workflows, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Agents with LangChain & Autonomous Workflows содержит 6 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Agents That Think Twice
Ever wished your AI agent could check its own work? That's exactly what self-correction and reflection agents do!
These agents are designed to not just generate an output, but also to critically evaluate it and make improvements. Think of it as an agent having an internal "editor" or "critic".
The Reflective Cycle
The core idea of reflection is an iterative process:
- Generate: The agent produces an initial response or action.
- Reflect: It then uses another prompt (or a different LLM) to analyze its own output against specific criteria.
- Refine: Based on the reflection, the agent adjusts its original output, aiming for better quality or accuracy.
This cycle can repeat multiple times until a satisfactory result is achieved.
Inside a Reflection Agent
A self-correcting agent typically involves a few key parts:
- Generator LLM: The primary Large Language Model that creates the initial output.
- Critic/Reflector LLM: Often the same LLM, but prompted to act as a critic, evaluating the generator's output.
- Reflection Prompt: A carefully designed prompt that guides the critic LLM on what to evaluate and how.
- Refinement Mechanism: The logic that takes the critic's feedback and uses it to improve the next generation.
The Generator Prompt
Just like any LLM interaction, a clear initial prompt for the "generator" is crucial. This prompt tells the agent what task to perform.
For example, if we want an agent to write a short story, the generator prompt would define the story's theme, characters, and length. The goal is a solid first draft.
prompt_template = "Write a 3-sentence story about a brave knight and a dragon."Crafting the Reflection Prompt
The reflection prompt is where the magic happens. It instructs the LLM to review the previous output and identify areas for improvement.
This prompt should include specific criteria. For our story example, it might ask: "Is the story engaging? Does it clearly mention a knight and a dragon? Is it exactly 3 sentences?"
reflection_prompt = "Critique the following story: '{story}'. Does it meet these criteria: 1. Engaging? 2. Knight and Dragon present? 3. Exactly 3 sentences? Provide specific feedback for improvement."Simple Reflection Example
Let's trace our story example conceptually:
- Generate: LLM writes an initial story draft.
- Reflect: LLM reads the story and the reflection prompt, then gives feedback (e.g., "It's 4 sentences, not 3.").
- Refine: The agent receives the feedback. It then tries to rewrite the story, incorporating the feedback (e.g., shortening it to 3 sentences).
This loop continues until the story meets all criteria or a limit is reached.
Building a Refinement Loop
In practice, the refinement process often involves a loop. The agent continues to generate and reflect until a set condition is met. This condition could be:
- A maximum number of iterations.
- The reflection feedback indicates no further improvements are needed.
- A specific quality metric is achieved.
This iterative process allows for continuous self-improvement, making agents more robust.
Code: A Simple Reflection Loop
Here's a simplified Python example demonstrating a basic self-correction loop. We'll use a placeholder LLM for clarity, focusing on the generate, reflect, and refine logic.
class MockLLM:
def __init__(self):
pass
def generate_initial_output(self, task_prompt):
# Simulate a generator LLM that sometimes gets it wrong
if "start with 'Hello'" in task_prompt:
return "Greetings! How are you?" # Incorrect initial attempt
return "Hello World!" # Correct initial attempt based on prompt
def reflect_and_suggest(self, original_task, generated_output):
# Simulate a critic LLM
reflection_prompt = (
f"Given the task: '{original_task}'. "
f"The generated output was: '{generated_output}'. "
"Critique this output: Does it start with 'Hello'? "
"If not, suggest a correction. Be concise."
)
# Simplified reflection logic for the mock LLM
if not generated_output.strip().startswith("Hello"):
return "Doesn't start with 'Hello'. Suggestion: Start with 'Hello'."
return "Output meets criteria."
# --- Main Logic ---
llm = MockLLM()
task = "Create a greeting sentence that starts with 'Hello'."
current_output = llm.generate_initial_output(task)
print(f"Initial Output: {current_output}")
for i in range(3): # Max 3 attempts (initial + 2 refinements)
reflection = llm.reflect_and_suggest(task, current_output)
print(f"Reflection {i+1}: {reflection}")
if "Output meets criteria" in reflection:
print("Agent self-corrected successfully!")
break
else:
# Simulate applying the suggestion
if "Start with 'Hello'" in reflection and not current_output.startswith("Hello"):
current_output = "Hello" + current_output[current_output.find(' '):] # Simple fix
print(f"Refined Output: {current_output}")
else:
print("No specific refinement strategy for this feedback. Stopping.")
break
print("\nFinal Output:", current_output)Benefits & Trade-offs
Reflection agents are powerful for tasks requiring high accuracy or complex reasoning, especially when a single pass might miss nuances.
- Improved Accuracy: Reduces errors and hallucinations.
- Robustness: Handles complex prompts better.
- Quality: Leads to higher-quality outputs.
However, they increase computational cost and latency due to multiple LLM calls. Use them where quality justifies the overhead.
Test Your Knowledge
Consider an agent designed to summarize a document and then self-correct. What is the primary purpose of the "reflection prompt" in this scenario?
Recap: Self-Correction
We've explored how self-correction and reflection agents work. These agents enhance AI capabilities by allowing them to critically evaluate and refine their own outputs.
- They follow a generate, reflect, refine cycle.
- Key components include a generator, a critic, and specific reflection prompts.
- While increasing cost and latency, they significantly boost output quality and accuracy for complex tasks.
This ability to "think twice" is a crucial step towards more robust and intelligent AI systems!
Изучай AI Agents with LangChain & Autonomous Workflows с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 12
- Уроки
- 50
Часто задаваемые вопросы
Урок «Агенты самокоррекции и рефлексии» бесплатный?
Да — полный текст урока «Агенты самокоррекции и рефлексии» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Agents with LangChain & Autonomous Workflows, подпишись на CoddyKit PRO. Курс AI Agents with LangChain & Autonomous Workflows содержит 6 уроков всего.
Чему я научусь в уроке «Агенты самокоррекции и рефлексии»?
Научитесь создавать агентов, способных критически оценивать собственные результаты и итеративно улучшать ответы или действия Ты практикуешь AI Agents with LangChain & Autonomous Workflows с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать AI Agents with LangChain & Autonomous Workflows?
Предыдущий опыт не требуется. AI Agents with LangChain & Autonomous Workflows на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 6.
Сколько времени занимает урок «Агенты самокоррекции и рефлексии»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке AI Agents with LangChain & Autonomous Workflows?
Да. Каждый урок AI Agents with LangChain & Autonomous Workflows включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Агенты ReAct и планирования с выполнением
- Иерархические архитектуры агентов
- Агенты самокоррекции и рефлексии
- Когнитивные архитектуры для агентов
- Шаблоны взаимодействия нескольких агентов
- Гибридные системы агентов