Spaces:
Running on Zero
Running on Zero
File size: 1,659 Bytes
bc02199 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | """Generate stable public sample traces for the mock MVP."""
from __future__ import annotations
import json
import sys
from datetime import datetime, timezone
from pathlib import Path
PROJECT_ROOT = Path(__file__).resolve().parents[1]
if str(PROJECT_ROOT) not in sys.path:
sys.path.insert(0, str(PROJECT_ROOT))
from src.examples import EXAMPLE_OBJECTS
from src.pipeline import generate_object_diary
DEFAULT_OUTPUT_DIR = Path("data/traces/samples")
def generate_sample_traces(output_dir: Path = DEFAULT_OUTPUT_DIR) -> list[Path]:
output_dir.mkdir(parents=True, exist_ok=True)
written_paths: list[Path] = []
for index, example in enumerate(EXAMPLE_OBJECTS, start=1):
description = example["description"]
mode = example["mode"]
result = generate_object_diary(
image_path=None,
description=description,
mode=mode,
save=False,
trace_id=f"sample-{index:02d}",
created_at=datetime(2026, 6, 5, 0, index, tzinfo=timezone.utc),
)
filename = f"sample-{index:02d}-{_slug(example['label'])}.json"
path = output_dir / filename
path.write_text(
json.dumps(result.trace.model_dump(mode="json"), ensure_ascii=False, indent=2),
encoding="utf-8",
)
written_paths.append(path)
return written_paths
def _slug(value: str) -> str:
slug = value.split("/", maxsplit=1)[0].strip().lower()
return "".join(char if char.isalnum() else "-" for char in slug).strip("-")
if __name__ == "__main__":
for generated_path in generate_sample_traces():
print(generated_path)
|