# Quick Self-Check (ungraded) [[quiz2]]

What?! Another Quiz? We know, we know, ... 😅 But this short, ungraded quiz is here to **help you reinforce key concepts you've just learned**.

This quiz covers agent workflows and interactions - essential components for building effective AI agents.

### Q1: What is the purpose of AgentWorkflow in LlamaIndex?

<Question
choices={[
{
text: "To run one or more agents with tools",
explain: "Yes, the AgentWorkflow is the main way to quickly create a system with one or more agents.",
correct: true
},
{
text: "To create a single agent that can query your data without memory",
explain: "No, the AgentWorkflow is more capable than that, the QueryEngine is for simple queries over your data.",
},
{
text: "To automatically build tools for agents",
explain: "The AgentWorkflow does not build tools, that is the job of the developer.",
},
{
text: "To manage agent memory and state",
explain: "Managing memory and state is not the primary purpose of AgentWorkflow.",
}
]}
/>

---

### Q2: What object is used for keeping track of the state of the workflow?

<Question
choices={[
{
text: "State",
explain: "State is not the correct object for workflow state management.",
},
{
text: "Context",
explain: "Context is the correct object used for keeping track of workflow state.",
correct: true
},
{
text: "WorkflowState",
explain: "WorkflowState is not the correct object.",
},
{
text: "Management",
explain: "Management is not a valid object for workflow state.",
}
]}
/>

---

### Q3: Which method should be used if you want an agent to remember previous interactions?

<Question
choices={[
{
text: "run(query_str)",
explain: ".run(query_str) does not maintain conversation history.",
},
{
text: "chat(query_str, ctx=ctx)",
explain: "chat() is not a valid method on workflows.",
},
{
text: "interact(query_str)",
explain: "interact() is not a valid method for agent interactions.",
},
{
text: "run(query_str, ctx=ctx)",
explain: "By passing in and maintaining the context, we can maintain state!",
correct: true
}
]}
/>

---

### Q4: What is a key feature of Agentic RAG?

<Question
choices={[
{
text: "It can only use document-based tools, to answer questions in a RAG workflow",
explain: "Agentic RAG can use different tools, including document-based tools.",
},
{
text: "It automatically answers questions without tools, like a chatbot",
explain: "Agentic RAG does use tools to answer questions.",
},
{
text: "It can decide to use any tool to answer questions, including RAG tools",
explain: "Agentic RAG has the flexibility to use different tools to answer questions.",
correct: true
},
{
text: "It only works with Function Calling Agents",
explain: "Agentic RAG is not limited to Function Calling Agents.",
}
]}
/>

---


Got it? Great! Now let's **do a brief recap of the unit!**


<EditOnGithub source="https://github.com/huggingface/agents-course/blob/main/units/en/unit2/llama-index/quiz2.mdx" />