Practice Question Generator
Generate comprehensive practice questions from lecture notes to test student understanding of learning objectives and key concepts.
Input
Supported formats: LaTeX (.tex), PDF, Markdown (.md), plain text (.txt)
PDF: Use pdfplumber for text extraction
LaTeX: Read as text, strip preamble (everything before \begin{document}), preserve math environments ($...$, \[...\], \begin{equation}, etc.)
Markdown/Text
Content to extract:
- Learning objectives - Usually at beginning: "After this lecture, you should be able to..." or may be in section: "Learning Outcomes","Objectives", "Goals". If absent, derive from main topics.
- Main topics - Section headings, bold terms, definitions, algorithms.
- Examples - Use for realistic scenarios in questions.
Question Structure
Generate questions in this order:
- True/False (one per learning objective, or 3-5 if no objectives)
- Explanatory Questions (3-5 covering main topics)
- Coding Question (1 algorithm implementation or concept simulation)
- Use Case (1 realistic application)
For each question type, follow guidelines below, and never include answer key.
Question Guidelines
Type 1: True/False
Test factual understanding and common misconceptions.
Coverage:
- One per learning objective, or 3-5 covering main topics if no objectives
Difficulty progression:
- Start with 1-2 simple definitional questions
- Include 2-3 reasoning-based questions requiring concept application or testing relationships between concepts
Quality criteria:
- Unambiguous with one correct interpretation
- Clear language without complex nested clauses
- Answer directly found in lecture notes
- Wrong answer reveals common misconception
Examples:
- Easy: "In supervised learning, the training data includes both input features and their corresponding labels."
- Medium: "A model with high training accuracy but low test accuracy is likely underfitting the data."
Type 2: Explanatory Questions
Test deeper understanding by requiring students to articulate concepts, compare approaches, and explain reasoning.
Topic selection:
- Choose 3-5 main topics (key algorithms and their implementations, Advantages/limitations of approaches, Relationships between concepts)
- Avoid repetition: If topic appears in T/F, ask about a different aspect
Question formulations:
- "Explain..." - requires description in student's words
- "Compare and contrast..." - tests understanding of differences
- "Why does..." - tests causal reasoning
- "What are the advantages/disadvantages..." - tests critical analysis
- "Describe the steps..." - tests procedural knowledge
Quality criteria:
- Open-ended but focused
- Cannot be answered with simple yes/no
- Requires 3-5 sentences to answer well
Examples:
- "Explain the bias-variance tradeoff. How does increasing model complexity affect bias and variance?"
- "Compare K-Nearest Neighbors and Decision Trees in terms of decision boundaries, training time, and prediction time."
Type 3: Coding Question
Test practical implementation through code.
Scope:
- Implementation of an algorithm discussed in lecture
- Simulation of a concept or process
- Must be achievable with lecture knowledge only
- Should take 15-30 minutes for prepared student
Required structure:
- Clear objective
- Step-by-step instructions (3-5 steps)
- Function signature (if applicable)
- Expected behavior with input/output examples
- Hints (optional but helpful)
Language:
- Python (default) with standard library.
- If using external libraries: NumPy, pandas, matplotlib, scikit-learn.
- Should not require advanced Python features
Type 4: Use Case Question
Test ability to apply concepts or algorithms explained in lecture notes to realistic scenarios.
Components:
- Context - Realistic scenario description
- Data description - What data is available (provide generation code if needed)
- Task - What needs accomplishment
- Constraints (optional) - Time, space, accuracy requirements
- Hints (2-3) - Guidance without giving solution
- Libraries - Can use scikit-learn, pandas, NumPy
Data generation: If needed, provide simple, clear code to generate appropriate data.
Output Format Guidelines
Output format depends on user request (LaTeX, PDF, Markdown, plain text).
General structure for all formats:
- Title with document name
- Instructions section
- Part 1: True/False Questions (numbered sequentially)
- Part 2: Explanatory Questions (numbered sequentially)
- Part 3: Coding Question (with steps, signature, examples, hints)
- Part 4: Use Case Application (with scenario, data, task, requirements, hints)
For specific formats: For LaTeX and Markdown document structures, use the following templates (in assets/ folder):
questions_template.tex - Complete LaTeX document structure with formatting
markdown_template.md - Complete Markdown document structure
Supporting Resources
References (in references/ folder):
examples_by_topic.md - Domain-specific question examples for ML topics (algorithms, preprocessing, evaluation, etc.)
1---2name: generating-practice-questions3description: Generate educational practice questions from lecture notes to test student understanding. Use when users request practice questions, exam preparation materials, study guides, or assessment items based on lecture content.4---5
6# Practice Question Generator
7
8Generate comprehensive practice questions from lecture notes to test student understanding of learning objectives and key concepts.
9
10## Input
11
12**Supported formats**: LaTeX (.tex), PDF, Markdown (.md), plain text (.txt)
13
14- **PDF**: Use `pdfplumber` for text extraction
15
16- **LaTeX**: Read as text, strip preamble (everything before `\begin{document}`), preserve math environments (`$...$`, `\[...\]`, `\begin{equation}`, etc.)
17
18- **Markdown/Text**
19
20**Content to extract**:
21
221. **Learning objectives** - Usually at beginning: "After this lecture, you should be able to..." or may be in section: "Learning Outcomes","Objectives", "Goals". If absent, derive from main topics.
232. **Main topics** - Section headings, bold terms, definitions, algorithms.
243. **Examples** - Use for realistic scenarios in questions.
25
26## Question Structure
27
28Generate questions in this order:
29
301. **True/False** (one per learning objective, or 3-5 if no objectives)
312. **Explanatory Questions** (3-5 covering main topics)
323. **Coding Question** (1 algorithm implementation or concept simulation)
334. **Use Case** (1 realistic application)
34
35For each question type, follow guidelines below, and never include answer key.
36
37## Question Guidelines
38
39### Type 1: True/False
40
41Test factual understanding and common misconceptions.
42
43**Coverage**:
44
45- One per learning objective, or 3-5 covering main topics if no objectives
46
47**Difficulty progression**:
48
49- Start with 1-2 simple definitional questions
50- Include 2-3 reasoning-based questions requiring concept application or testing relationships between concepts
51
52**Quality criteria**:
53
54- Unambiguous with one correct interpretation
55- Clear language without complex nested clauses
56- Answer directly found in lecture notes
57- Wrong answer reveals common misconception
58
59**Examples**:
60
61- *Easy*: "In supervised learning, the training data includes both input features and their corresponding labels."
62- *Medium*: "A model with high training accuracy but low test accuracy is likely underfitting the data."
63
64### Type 2: Explanatory Questions
65
66Test deeper understanding by requiring students to articulate concepts, compare approaches, and explain reasoning.
67
68**Topic selection**:
69
70- Choose 3-5 main topics (key algorithms and their implementations, Advantages/limitations of approaches, Relationships between concepts)
71- Avoid repetition: If topic appears in T/F, ask about a *different aspect*
72
73**Question formulations**:
74
75- "Explain..." - requires description in student's words
76- "Compare and contrast..." - tests understanding of differences
77- "Why does..." - tests causal reasoning
78- "What are the advantages/disadvantages..." - tests critical analysis
79- "Describe the steps..." - tests procedural knowledge
80
81**Quality criteria**:
82
83- Open-ended but focused
84- Cannot be answered with simple yes/no
85- Requires 3-5 sentences to answer well
86
87**Examples**:
88
89- "Explain the bias-variance tradeoff. How does increasing model complexity affect bias and variance?"
90- "Compare K-Nearest Neighbors and Decision Trees in terms of decision boundaries, training time, and prediction time."
91
92### Type 3: Coding Question
93
94Test practical implementation through code.
95
96**Scope**:
97
98- Implementation of an algorithm discussed in lecture
99- Simulation of a concept or process
100- Must be achievable with lecture knowledge only
101- Should take 15-30 minutes for prepared student
102
103**Required structure**:
104
1051. Clear objective
1062. Step-by-step instructions (3-5 steps)
1073. Function signature (if applicable)
1084. Expected behavior with input/output examples
1095. Hints (optional but helpful)
110
111**Language**:
112
113- Python (default) with standard library.
114- If using external libraries: NumPy, pandas, matplotlib, scikit-learn.
115- Should not require advanced Python features
116
117### Type 4: Use Case Question
118
119Test ability to apply concepts or algorithms explained in lecture notes to realistic scenarios.
120
121**Components**:
122
1231. **Context** - Realistic scenario description
1242. **Data description** - What data is available (provide generation code if needed)
1253. **Task** - What needs accomplishment
1264. **Constraints** (optional) - Time, space, accuracy requirements
1275. **Hints** (2-3) - Guidance without giving solution
1286. **Libraries** - Can use scikit-learn, pandas, NumPy
129
130**Data generation**: If needed, provide simple, clear code to generate appropriate data.
131
132## Output Format Guidelines
133
134Output format depends on user request (LaTeX, PDF, Markdown, plain text).
135
136**General structure for all formats**:
137
1381. Title with document name
1392. Instructions section
1403. Part 1: True/False Questions (numbered sequentially)
1414. Part 2: Explanatory Questions (numbered sequentially)
1425. Part 3: Coding Question (with steps, signature, examples, hints)
1436. Part 4: Use Case Application (with scenario, data, task, requirements, hints)
144
145**For specific formats**: For LaTeX and Markdown document structures, use the following templates (in `assets/` folder):
146- `questions_template.tex` - Complete LaTeX document structure with formatting
147- `markdown_template.md` - Complete Markdown document structure
148
149## Supporting Resources
150
151**References** (in `references/` folder):
152
153- `examples_by_topic.md` - Domain-specific question examples for ML topics (algorithms, preprocessing, evaluation, etc.)