gitextract_k9ephqoc/ ├── .clang-format ├── .gitignore ├── .gitmodules ├── AGENTS.md ├── README.md ├── csrc/ │ ├── loader/ │ │ ├── chunk_source/ │ │ │ ├── chunk_source.h │ │ │ ├── chunk_source_view.h │ │ │ ├── debug_chunk_source.cc │ │ │ ├── debug_chunk_source.h │ │ │ ├── rawfile_chunk_source.cc │ │ │ ├── rawfile_chunk_source.h │ │ │ ├── tar_chunk_source.cc │ │ │ └── tar_chunk_source.h │ │ ├── data_loader.cc │ │ ├── data_loader.h │ │ ├── data_loader_metrics.cc │ │ ├── data_loader_metrics.h │ │ ├── data_loader_test.cc │ │ ├── frame_type.h │ │ ├── loader_main.cpp │ │ ├── pybind_module.cc │ │ └── stages/ │ │ ├── chunk_rescorer.cc │ │ ├── chunk_rescorer.h │ │ ├── chunk_rescorer_test.cc │ │ ├── chunk_source_loader.cc │ │ ├── chunk_source_loader.h │ │ ├── chunk_source_loader_test.cc │ │ ├── chunk_source_splitter.cc │ │ ├── chunk_source_splitter.h │ │ ├── chunk_source_splitter_test.cc │ │ ├── chunk_unpacker.cc │ │ ├── chunk_unpacker.h │ │ ├── chunk_unpacker_test.cc │ │ ├── file_path_provider.cc │ │ ├── file_path_provider.h │ │ ├── file_path_provider_main.cc │ │ ├── file_path_provider_test.cc │ │ ├── join_stage.cc │ │ ├── join_stage.h │ │ ├── join_stage_test.cc │ │ ├── position_sampling.cc │ │ ├── position_sampling.h │ │ ├── shuffling_chunk_pool.cc │ │ ├── shuffling_chunk_pool.h │ │ ├── shuffling_chunk_pool_test.cc │ │ ├── shuffling_frame_sampler.cc │ │ ├── shuffling_frame_sampler.h │ │ ├── shuffling_frame_sampler_test.cc │ │ ├── simple_chunk_extractor.cc │ │ ├── simple_chunk_extractor.h │ │ ├── simple_chunk_extractor_test.cc │ │ ├── stage.cc │ │ ├── stage.h │ │ ├── stage_factory.cc │ │ ├── stage_factory.h │ │ ├── stage_factory_test.cc │ │ ├── tensor_generator.cc │ │ ├── tensor_generator.h │ │ ├── tensor_generator_test.cc │ │ └── training_chunk.h │ ├── tools/ │ │ ├── dump_chunk_main.cc │ │ ├── filter_chunks_main.cc │ │ ├── position_weight_stats_main.cc │ │ ├── rescore_chunk_main.cc │ │ ├── result_distribution_main.cc │ │ └── startpos_policy_distribution_main.cc │ └── utils/ │ ├── gz.cc │ ├── gz.h │ ├── metrics/ │ │ ├── exponential_aggregator.h │ │ ├── group.h │ │ ├── load_metric.h │ │ ├── load_metric_test.cc │ │ ├── printer.h │ │ ├── statistics_metric.h │ │ └── stats_test.cc │ ├── queue.h │ ├── queue_test.cc │ ├── stream_shuffler.cc │ ├── stream_shuffler.h │ ├── stream_shuffler_test.cc │ ├── tensor.h │ ├── tensor_test.cc │ ├── thread_pool.h │ ├── training_data_printer.cc │ └── training_data_printer.h ├── docs/ │ ├── README.md │ ├── architecture.md │ ├── checkpoint_migration.md │ ├── example.textproto │ ├── heads.md │ ├── index.md │ ├── loader.md │ ├── new_stage.md │ ├── overview.md │ ├── shuffling_pool_hanse_sampling.md │ ├── training_tuple.md │ ├── tui.md │ └── weights_tool.md ├── init.sh ├── justfile ├── meson.build ├── native.ini ├── proto/ │ ├── checkpoint_migration_config.proto │ ├── data_loader_config.proto │ ├── export_config.proto │ ├── metrics_config.proto │ ├── model_config.proto │ ├── root_config.proto │ ├── stage_control.proto │ ├── training_config.proto │ └── training_metrics.proto ├── pyproject.toml ├── scripts/ │ ├── diff.py │ ├── fixorder.py │ ├── init.sh │ ├── initsplit.py │ ├── inittrainingname.py │ ├── pack.py │ ├── purge.py │ ├── rescore.sh │ ├── shuffle.py │ ├── split.sh │ ├── stage.sh │ ├── unpack.py │ └── upload.sh ├── src/ │ ├── lczero_training/ │ │ ├── __init__.py │ │ ├── _lczero_training.pyi │ │ ├── commands/ │ │ │ ├── __init__.py │ │ │ ├── backfill_metrics.py │ │ │ ├── common.py │ │ │ ├── daemon.py │ │ │ ├── dataloader_viz.py │ │ │ ├── describe_training.py │ │ │ ├── jax2leela.py │ │ │ ├── leela2jax.py │ │ │ ├── migrate_checkpoint.py │ │ │ ├── overfit.py │ │ │ ├── test_dataloader.py │ │ │ ├── train.py │ │ │ ├── training_eval.py │ │ │ ├── training_init.py │ │ │ ├── tui.py │ │ │ ├── tune_lr.py │ │ │ └── weights_tool.py │ │ ├── convert/ │ │ │ ├── __init__.py │ │ │ ├── jax_to_leela.py │ │ │ ├── leela_pytree_visitor.py │ │ │ ├── leela_to_jax.py │ │ │ └── leela_to_modelconfig.py │ │ ├── daemon/ │ │ │ ├── __init__.py │ │ │ ├── daemon.py │ │ │ ├── metrics.py │ │ │ ├── metrics_base.py │ │ │ ├── pipeline.py │ │ │ ├── protocol/ │ │ │ │ ├── __init__.py │ │ │ │ ├── communicator.py │ │ │ │ ├── messages.py │ │ │ │ └── registry.py │ │ │ └── rms_metrics.py │ │ ├── dataloader/ │ │ │ └── __init__.py │ │ ├── model/ │ │ │ ├── __init__.py │ │ │ ├── embedding.py │ │ │ ├── encoder.py │ │ │ ├── loss_function.py │ │ │ ├── model.py │ │ │ ├── movesleft_head.py │ │ │ ├── policy_head.py │ │ │ ├── shared.py │ │ │ ├── utils.py │ │ │ └── value_head.py │ │ ├── py.typed │ │ ├── tests/ │ │ │ ├── test_protobuf.py │ │ │ ├── test_protocol_registry.py │ │ │ └── test_weights_tool.py │ │ ├── tools/ │ │ │ ├── __init__.py │ │ │ ├── weight_codecs.py │ │ │ ├── weight_wrappers.py │ │ │ └── weights_tool.py │ │ ├── training/ │ │ │ ├── __init__.py │ │ │ ├── backfill_metrics.py │ │ │ ├── dataloader_probe.py │ │ │ ├── describe.py │ │ │ ├── eval.py │ │ │ ├── init.py │ │ │ ├── lr_schedule.py │ │ │ ├── migrate_checkpoint.py │ │ │ ├── optimizer.py │ │ │ ├── overfit.py │ │ │ ├── state.py │ │ │ ├── tensorboard.py │ │ │ ├── test_lr_schedule.py │ │ │ ├── training.py │ │ │ ├── tune_lr.py │ │ │ └── utils.py │ │ └── tui/ │ │ ├── __init__.py │ │ ├── app.py │ │ ├── app.tcss │ │ ├── data_pipeline_pane.py │ │ ├── dataloader_widgets.py │ │ ├── log_pane.py │ │ └── training_widgets.py │ └── proto/ │ └── __init__.py └── tf/ ├── attention_policy_map.py ├── chunkparsefunc.py ├── chunkparser.py ├── configs/ │ └── example.yaml ├── decode_training.py ├── lc0_az_policy_map.py ├── make_model.py ├── model_to_net.py ├── net.py ├── net_to_model.py ├── policy_index.py ├── requirements.txt ├── shufflebuffer.py ├── start.sh ├── tfprocess.py ├── train.py └── update_steps.py