AI-Assisted Exercise Authoring
Artemis can help write an exercise rather than just store it. The Hyperion module drafts and refines problem statements, analyses them for clarity and difficulty, generates Java template, solution and test code, and flags inconsistencies between the problem statement and the repositories.
None of it happens behind your back: every AI-generated change is shown as a diff you accept or discard, and generated code is a draft to review and build before students see it. This page also covers review comments, which are how exercise authors discuss the code with each other, with or without AI involved.
AI-Assisted Problem Statement Authoring
Artemis integrates AI-assisted authoring capabilities into the programming exercise editor through the Hyperion module. These features help instructors generate, refine, and analyze problem statements without leaving the editor. The AI assists the process while the instructor retains full control — every AI-generated modification must be reviewed and accepted through a diff view before it is applied.
The AI-assisted authoring features are organized into two areas:
- Problem Statement Generation and Refinement — create and iteratively improve problem statements
- Instructor Checklist — analyze quality, infer learning goals, and assess difficulty
Generate Problem Statement
When creating a new exercise, the Problem step provides a requirements input field. Enter a textual prompt describing the desired exercise (up to 1,000 characters) and click Generate Draft Problem Statement. The system generates a Markdown draft that includes task annotations for linking tasks to test cases and inserts it directly into the editor.
Refine Problem Statement
Once a problem statement exists in the editor, the same input field accepts a refinement instruction. Click Refine Problem Statement to revise the entire document based on the instruction. The system produces a revised version and presents the changes in a diff view.
Targeted Refinement
To modify a specific portion of the problem statement, select a text region in the Markdown editor. A Refine Selection button appears next to the selection. Click it to open an inline instruction field (up to 500 characters), then enter a description of the desired change. The system produces a localized revision affecting only the selected region.
Diff View
Every AI change to an existing problem statement — global refinement, targeted refinement, quality fixes and difficulty adaptation — is presented in a diff view before it is applied. The left column shows the current problem statement with deletions highlighted in red, while the right column shows the proposed revision with additions highlighted in green. A summary bar reports the net change statistics. You can accept, discard, or toggle between split and inline views.
Generating a first draft is the one exception: there is no previous version to compare against, so the draft goes straight into the editor. It is not saved until you save the exercise, so discarding it means leaving the page without saving.
Instructor Checklist
The instructor checklist analyzes the problem statement across three dimensions concurrently:
- Quality Assessment — detects issues in clarity, coherence, and completeness
- Learning Goal Estimation — infers learning goals from the problem statement
- Difficulty Assessment — evaluates exercise complexity relative to the declared level
Click Analyze Problem Statement in the checklist panel to run all three analyses. Results appear in collapsible sections. After modifying the problem statement, sections are marked as stale and can be re-analyzed individually.
Quality Assessment: Displays a radar chart with percentage scores for clarity, coherence, and completeness. Detected issues appear with category badges, severity levels, descriptions, suggested fixes, and impact assessments. Use Fix to apply an AI-generated correction for a single issue, or Fix All Issues for batch correction. Both actions present proposed changes in the diff view.
Difficulty Assessment: Shows the suggested difficulty level alongside the declared level. When a mismatch exists, an arrow indicator and descriptive text alert you. Task and test counts summarize the exercise structure, and a detailed explanation describes the reasoning. Click an Adapt to button (Easy, Medium, or Hard) to generate a revised problem statement adjusted to the target difficulty, presented in the diff view.
Learning Goal Estimation: Presents estimated learning goals, each tagged with a knowledge area badge (e.g., AL for Algorithms, SE for Software Engineering), a taxonomy level (e.g., APPLY, ANALYZE), and a "Linked" indicator when the goal matches an existing course competency. Each entry includes textual evidence from the problem statement. Select individual goals or use Select All, then click Apply All to link them to the course's competencies. The system checks whether suitable competencies already exist, links matching ones directly, and creates new competencies only where no match is found.
AI-Assisted Code Generation
For supported unreleased Java exercises built with Gradle or Maven, Hyperion generates the problem statement, template, solution, and tests together in an isolated workspace. Artemis rebuilds and verifies the candidate before saving it; a generated draft still needs an instructor's review before release.
For a new exercise, start from Create → Generate. For an existing exercise, use Artemis Intelligence → Adapt exercise in the instructor code editor. Follow Generate a programming exercise with Hyperion for prerequisites, progress, cancellation, reviewing saved and retained artifacts, adaptation, and undo. This workflow does not generate repositories independently.
For a targeted adaptation, mark the relevant active review threads with Select for AI adaptation, then choose Artemis Intelligence → Adapt exercise and review the selected feedback before starting. Resolved, outdated, and unrelated threads are not valid generation feedback. Hyperion applies the same whole-exercise verification and saving rules to adaptations.
Review Comments
During exercise creation, instructors and editors can use review comments to discuss specific lines directly in the online editor. Review comments are meant for coordinating exercise authors before releasing or updating an exercise. They are not student feedback and are only visible to users who can edit the exercise.
To add a review comment, open the exercise with Edit in Editor, hover next to the relevant line, and use the comment action. If Artemis asks you to submit first, click Submit so the comment can be attached to the current saved version of the file or problem statement.
Review comments can be attached to:
- Problem statement lines
- Template repository files
- Solution repository files
- Test repository files
- Auxiliary repository files
Each review comment starts a thread at the selected location. Other instructors and editors working on the same exercise see new comments, replies, edits, deletions, and resolved states in real time. Files with unresolved review comments are marked in the file tree. Reply to a thread to continue the discussion, and resolve it when the issue has been addressed. Resolved threads remain available, but they are collapsed so open discussions stay visible.
Consistency Check Comments: The consistency check can create review comments for potential mismatches between the problem statement and the exercise repositories — a method the problem statement calls calculateAverage while the template declares computeMean, for instance. These AI-created threads are labeled as consistency issues and show their severity and category. If one issue affects multiple artifacts, the related locations are grouped, and you can jump between them from the review comment. The issue navigator in the editor toolbar lets you move through the current consistency findings.
Some consistency check comments may include a suggested inline fix. This suggested change is intended for simple, local corrections, such as aligning a name, signature, or small code fragment. Review the suggested change before applying it. For complex or ambiguous issues, Artemis may leave the suggested fix empty and only keep the explanatory review comment.












