File size: 1,937 Bytes
c35c7ce
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
project:
  seed: 20260730
  data_dir: data
  output_dir: outputs
  artifact_dir: artifacts

resources:
  card_asset_dir: asset/cards/robmikh_svg_cards
  expected_card_count: 52
  model_dir: model/smolvlm2-2.2b-instruct
  card_split_counts:
    train: 40
    val: 6
    test: 6

geometry:
  card_width_mm: 100.0
  card_height_mm: 60.0
  min_piece_count: 2
  max_piece_count: 4
  max_piece_edges: 5
  min_edge_mm: 20.0
  min_piece_area_mm2: 350.0
  random_partition_attempts: 800
  congruence_tolerance_mm: 0.08
  difficult_congruence_tolerance_mm: 3.5
  max_enumerated_candidates: 512
  max_rank_candidates: 4
  visual_equivalence_mae: 2.0

dataset:
  train_samples: 18000
  val_samples: 1000
  test_samples: 1000
  family_weights:
    random_unique: 0.15
    offset_parallelogram_diagonal: 0.25
    center_double_cut: 0.25
    congruent_symmetric: 0.20
    difficult_near_symmetric: 0.15
  generation_retries: 80
  progress_every: 100
  binary_hard_negatives_per_scene: 1

render:
  pixels_per_mm: 6.0
  card_width_px: 600
  card_height_px: 360
  board_width_px: 1280
  board_height_px: 820
  board_background_rgb: [226, 231, 237]
  cell_background_rgb: [244, 246, 248]
  label_rgb: [25, 31, 42]
  seam_width_px_range: [1, 3]
  piece_brightness_range: [0.94, 1.06]
  piece_color_range: [0.96, 1.04]
  global_brightness_range: [0.90, 1.10]
  global_contrast_range: [0.92, 1.08]
  noise_sigma_range: [0.0, 2.0]
  blur_radius_range: [0.0, 0.45]
  jpeg_quality: 94

model:
  max_length: 2048
  max_image_longest_edge: 1280

training:
  seed: 20260730
  learning_rate: 0.0002
  train_batch_size_per_gpu: 1
  eval_batch_size_per_gpu: 1
  gradient_accumulation_steps: 4
  lora_rank: 16
  lora_alpha: 32
  lora_dropout: 0.05
  warmup_ratio: 0.05
  logging_steps: 10
  eval_steps: 250
  save_steps: 250
  save_total_limit: 2
  dataloader_workers_per_gpu: 2
  binary_epochs: 1
  rank_epochs: 3

evaluation:
  max_samples: 1000
  max_new_tokens: 4