Skip to main content

Model Architecture

CLOVA Tutor adopts a subject-specific ReAct agent architecture combined with tool-based dialogue orchestration.

This document describes the overall system flow, architecture diagrams for each subject agent, and a detailed reference of the tools used in the pipeline.


Overall Flow

User input first passes through a shared Pre-Pipeline stage.
Based on the detected learning subject, the input is then routed to the corresponding ReAct agent (Math or English), where subject-specific reasoning and tool selection take place.


Math ReAct Agent Architecture

Math ReAct Agent Architecture

English ReAct Agent Architecture

English ReAct Agent Architecture

Tool Reference

Common (Pre-Pipeline)

SubjectToolTool Intent
Commonproblem_info_toolCalled when the user explicitly signals a transition to a new learning unit (problem, topic, word, or question type).
Example triggers: "new problem", "different problem", "new topic", "change topic", "what does this mean?", "explain this", "start over", "change the type".
Commonpersuasion_toolUsed when the conversation deviates from the learning objective and needs to be gently guided back to the original topic.
Commonmake_problem_summary_toolCalled when a learning interaction has reached a clear problem-level completion and the user requests a summary of the discussion.
Mathdetect_unknown_concept_math_toolTriggered when signals of conceptual confusion or insufficient understanding related to a math concept are detected.
Example triggers: "what is this?", "explain", "what's the definition?", "I don't get it", "this is hard", "I'm confused", "what's the formula?", "explain the principle", "define the terms".

Math — ReAct Agent

SubjectToolTool Intent
Mathconcept_note_toolUsed when the user asks about a specific math concept.
Example triggers: "define this", "what are the conditions?", "what properties does it have?", "summarize the formula", "explain the concept".
Mathstepwise_solution_toolUsed when the student intends to solve the problem step by step with guidance.
Example triggers: "show me how to solve it", "let's solve it together", "what's the answer?", "where did I go wrong?".
Note: This tool is intended for guided problem-solving. For concept-only explanations, use concept_note_tool.
Mathrecommend_problem_toolCalled when either (1) the student explicitly requests a new problem recommendation, or (2) the student's response is judged to be correct.
Whenever possible, correctness is verified objectively (e.g. arithmetic validation). The tool is called only on strong affirmative signals. Uncertain phrasing lowers decision confidence, and the tool must not be called in cases of clear mismatch or explicit negation.
If incorrect-answer signals are detected, demonstrate_solution_tool is used instead.
Mathdefault_chat_toolHandles off-topic or non-math-related queries.

English — ReAct Agent

SubjectToolTool Intent
Englishtranslation_toolUsed when the user requests translation or interpretation.
Englishtable_fetch_toolUsed when vocabulary or grammar information is requested.
Englishanswer_included_toolUsed when the user asks for an explanation of an English problem or exercise.
Englishrecommend_problem_toolCalled when either (1) the student requests a new problem recommendation, or (2) the student's response is judged to be correct.
Englishdefault_chat_toolHandles off-topic or non–English-learning queries.