Welcome to the Evaluation module! The module's purpose is to evaluate ATLAS and understand if it provides any learning benefits. There are three parts of the evaluation module:
- Simulation: Simulate tutoring sessions between ATLAS and learners, but also a Vanilla LLM tutor and learners. The course used for evaluation is always PYT101. (
simulation.py) - Exam Prediction: Using previously run and locally saved chat sessions (see
chat_sessions/), predict a learner's exam results. More particularly, instead of asking the student agent to take the exam using newly acquired knowledge, we found that coherence in test results increased if we ask an external entity to predict what the student would answer. (exam.py) - Statistics: With the saved exam results (see
exam_results/), compute statistics to better understand the impact ATLAS has on personalised learning.
We built a CLI to play around with statistics, explained below.
This CLI provides tools for running simulations, exams, and statistics calculations for the SAILED evaluation framework.
Run the CLI from the command line:
python src/evaluation/cli.py <mode> [options]simulation: Run a tutoring simulation between a teacher and a learner agent.exam: Run an exam for one or all learners.stats: Calculate and display evaluation statistics.
-l,--learner-id: Specify the learner ID (required forsimulationandexammodes; use"all"only forexammode).-t,--tutoring-type: Specify the tutoring agent type (atlasorvanilla, required forsimulationmode).-n,--max-chat-rounds: Maximum number of chat rounds in the simulation (required forsimulationmode).-m,--llm: LLM deployment name (default:gpt-4.1).
Run a simulation:
python src/evaluation/cli.py simulation --learner-id learner_1 --tutoring-type atlas --max-chat-rounds 10Run an exam for a single learner:
python src/evaluation/cli.py exam --learner-id learner_1Run exams for all learners:
python src/evaluation/cli.py exam --learner-id allCalculate statistics:
python src/evaluation/cli.py stats- All arguments are validated; missing required options will result in an error.
- The learner ID
learner_10is reserved for demo purposes and cannot be used. - For available learner IDs, check the
LEARNERSdictionary in the codebase. - The CLI uses Azure clients and may require appropriate credentials/configuration.
Some useful files:
- After running
simulation, a transcript is saved inchat_reports/. - After running
exam, a report is saved inexam_reports/. - After running
stats, figures are availablefigures/.