@@ -1021,24 +1021,31 @@ def run_pipeline_with_coordinates(
10211021 slide_artifacts = slide_artifacts ,
10221022 process_list_path = process_list_path ,
10231023 )
1024- embedded_slides = _compute_embedded_slides (
1025- model ,
1026- embeddable_slides ,
1027- embeddable_tiling_results ,
1024+ local_persist_callback , tile_or_hier_artifacts , slide_artifacts = _build_incremental_persist_callback (
1025+ model = model ,
10281026 preprocessing = resolved_preprocessing ,
10291027 execution = execution ,
1028+ process_list_path = process_list_path ,
10301029 )
1031- tile_artifacts , hierarchical_artifacts , slide_artifacts = _collect_local_pipeline_artifacts (
1032- model = model ,
1033- embedded_slides = embedded_slides ,
1034- tiling_results = embeddable_tiling_results ,
1030+ _compute_embedded_slides (
1031+ model ,
1032+ embeddable_slides ,
1033+ embeddable_tiling_results ,
10351034 preprocessing = resolved_preprocessing ,
10361035 execution = execution ,
1036+ on_embedded_slide = local_persist_callback ,
10371037 )
1038+ tile_artifacts : list [TileEmbeddingArtifact ] = []
1039+ hierarchical_artifacts : list [HierarchicalEmbeddingArtifact ] = []
1040+ for artifact in tile_or_hier_artifacts :
1041+ if isinstance (artifact , HierarchicalEmbeddingArtifact ):
1042+ hierarchical_artifacts .append (artifact )
1043+ elif artifact is not None :
1044+ tile_artifacts .append (artifact )
10381045 return RunResult (
10391046 tile_artifacts = tile_artifacts ,
10401047 hierarchical_artifacts = hierarchical_artifacts ,
1041- slide_artifacts = slide_artifacts ,
1048+ slide_artifacts = list ( slide_artifacts ) ,
10421049 process_list_path = process_list_path ,
10431050 )
10441051 except Exception as exc :
0 commit comments