SyntheticMDProductions's picture
Some of Adams structure
e0265b9 verified
Raw
History Blame Contribute Delete
1.76 kB
from __future__ import annotations
from adam.models import ExecutionPlan, Job, JobStatus, PlanStep
from adam.commands import TrainingCommand
def test_job_round_trip_preserves_enums_and_plan() -> None:
job = Job(
plan=ExecutionPlan(
request="Check GPU",
summary="Inspect resources",
steps=[
PlanStep(
"system_monitor",
"Inspect system",
"Read local sensors",
{"project_name": "System check"},
)
],
),
status=JobStatus.FINISHED,
progress=100,
preview_path="D:/runs/preview_epoch_5.png",
preview_epoch=5,
preview_next_epoch=10,
preview_prompt="test prompt",
preview_seed=42,
preview_steps=30,
)
restored = Job.from_dict(job.to_dict())
assert restored.status == JobStatus.FINISHED
assert restored.plan.steps[0].tool_id == "system_monitor"
assert restored.progress == 100
assert restored.preview_path == "D:/runs/preview_epoch_5.png"
assert restored.preview_epoch == 5
assert restored.preview_next_epoch == 10
assert restored.preview_prompt == "test prompt"
assert restored.preview_seed == 42
assert restored.preview_steps == 30
def test_training_command_accepts_live_preview_options() -> None:
command = TrainingCommand.from_dict({
"trainer": "ddpm", "dataset": "D:/data", "model_name": "Test",
"epochs": 10,
"training_options": {
"preview_enabled": True, "preview_every": 3,
"preview_prompt": "a test subject", "preview_seed": 123456789,
},
})
assert command.training_options["preview_every"] == 3