Codex commited on
Commit ·
e396fbd
1
Parent(s): 46e02e0
Enhance CARD.md with detailed training data and validation section; update smoke_space.py with default problem prompts and validation checks
Browse files- modal/CARD.md +7 -1
- scripts/smoke_space.py +8 -0
modal/CARD.md
CHANGED
|
@@ -47,10 +47,16 @@ The adapter is trained on the current production UI format:
|
|
| 47 |
- Base model: `openbmb/MiniCPM-V-4.6`
|
| 48 |
- Method: QLoRA with 4-bit NF4 quantization
|
| 49 |
- Hardware: Modal NVIDIA A10G
|
| 50 |
-
- Training data:
|
| 51 |
- Sequence length: 1536 tokens
|
| 52 |
- Runtime pairing: the same MiniCPM-V base model used by the Pocket Tutor Space
|
| 53 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 54 |
## Limitations
|
| 55 |
|
| 56 |
This model can make mistakes and should not be used to cheat on graded work. It
|
|
|
|
| 47 |
- Base model: `openbmb/MiniCPM-V-4.6`
|
| 48 |
- Method: QLoRA with 4-bit NF4 quantization
|
| 49 |
- Hardware: Modal NVIDIA A10G
|
| 50 |
+
- Training data: 16 structured tutoring examples plus 7 schema-aligned follow-up turns
|
| 51 |
- Sequence length: 1536 tokens
|
| 52 |
- Runtime pairing: the same MiniCPM-V base model used by the Pocket Tutor Space
|
| 53 |
|
| 54 |
+
## Validation
|
| 55 |
+
|
| 56 |
+
The adapter is smoke-tested on Modal against every structured training example
|
| 57 |
+
and follow-up turn. The smoke test fails if any of the seven production UI
|
| 58 |
+
sections fall back to default placeholder text.
|
| 59 |
+
|
| 60 |
## Limitations
|
| 61 |
|
| 62 |
This model can make mistakes and should not be used to cheat on graded work. It
|
scripts/smoke_space.py
CHANGED
|
@@ -20,6 +20,10 @@ from env.config import QUESTION_LIMIT, SPACE_URL
|
|
| 20 |
DEFAULT_QUESTION = "Can you show me how to solve 3(2x - 5) = 21 without jumping straight to the answer?"
|
| 21 |
DEFAULT_GRADE = "High school"
|
| 22 |
DEFAULT_MODE = "Step-by-step"
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
DEFAULT_CHECK = "No answer check generated yet."
|
| 24 |
DEFAULT_HINT = "Ask for a hint after the first explanation."
|
| 25 |
DEFAULT_PARENT = "Parent support note will appear here."
|
|
@@ -183,6 +187,10 @@ def main() -> int:
|
|
| 183 |
failures = [
|
| 184 |
label
|
| 185 |
for label, default in (
|
|
|
|
|
|
|
|
|
|
|
|
|
| 186 |
("check", DEFAULT_CHECK),
|
| 187 |
("hint", DEFAULT_HINT),
|
| 188 |
("parent", DEFAULT_PARENT),
|
|
|
|
| 20 |
DEFAULT_QUESTION = "Can you show me how to solve 3(2x - 5) = 21 without jumping straight to the answer?"
|
| 21 |
DEFAULT_GRADE = "High school"
|
| 22 |
DEFAULT_MODE = "Step-by-step"
|
| 23 |
+
DEFAULT_PROBLEM = "Upload a homework image or type the question to begin."
|
| 24 |
+
DEFAULT_KNOWNS = "- No givens identified yet."
|
| 25 |
+
DEFAULT_STRATEGY = "No strategy generated yet."
|
| 26 |
+
DEFAULT_STEPS = "No worked steps generated yet."
|
| 27 |
DEFAULT_CHECK = "No answer check generated yet."
|
| 28 |
DEFAULT_HINT = "Ask for a hint after the first explanation."
|
| 29 |
DEFAULT_PARENT = "Parent support note will appear here."
|
|
|
|
| 187 |
failures = [
|
| 188 |
label
|
| 189 |
for label, default in (
|
| 190 |
+
("problem", DEFAULT_PROBLEM),
|
| 191 |
+
("knowns", DEFAULT_KNOWNS),
|
| 192 |
+
("strategy", DEFAULT_STRATEGY),
|
| 193 |
+
("steps", DEFAULT_STEPS),
|
| 194 |
("check", DEFAULT_CHECK),
|
| 195 |
("hint", DEFAULT_HINT),
|
| 196 |
("parent", DEFAULT_PARENT),
|