A PyTorch native platform for training generative AI models
This report presents the forensic synthetic code analysis of pytorch/torchtitan, a Python project with 5,532 GitHub stars. SynthScan v2.0 examined 133,971 lines of code across 505 source files, recording 2325 pattern matches distributed across 19 syntactic categories. The overall adjusted score of 20.9 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 2325 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/unit_tests/test_fused_swiglu.py | 55 | def test_saves_in_stock_layout(self): | CODE |
| LOW | tests/unit_tests/test_fused_swiglu.py | 64 | def test_fused_checkpoint_loads_into_stock(self): | CODE |
| LOW | tests/unit_tests/test_fused_swiglu.py | 76 | def test_stock_checkpoint_loads_into_fused(self): | CODE |
| LOW | tests/unit_tests/test_fused_swiglu.py | 106 | def test_strict_load_reports_missing(self): | CODE |
| LOW | tests/unit_tests/test_fused_swiglu.py | 114 | def test_hf_adapter_roundtrip(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 56 | def test_dataloader_yields_correct_batches(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 87 | def test_load_state_dict_missing_rank_warning_includes_rank_id(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 105 | def test_validate_kwargs_rejects_invalid_kwargs(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 120 | def test_config_batch_size_overwritten_by_explicit_batch_size(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 144 | def test_build_dataloader_with_trainer_config(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 165 | def test_positions_matching_sequences(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 218 | def test_rejects_empty_sources(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 223 | def test_rejects_mixed_infinite(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 234 | def test_construction_batch_size_and_num_workers(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 248 | def test_yields_input_and_positions_keys(self): | CODE |
| LOW | tests/unit_tests/test_dataloader.py | 265 | def test_single_source_equivalent_to_huggingfacetextdataloader(self): | CODE |
| LOW⚡ | tests/unit_tests/test_compile_regional_inductor.py | 36 | def test_inductor_backend_left_unchanged(self): | CODE |
| LOW⚡ | tests/unit_tests/test_compile_regional_inductor.py | 41 | def test_aot_eager_with_flex_scoops(self): | CODE |
| LOW⚡ | tests/unit_tests/test_compile_regional_inductor.py | 46 | def test_aot_eager_without_flex_left_unchanged(self): | CODE |
| LOW⚡ | tests/unit_tests/test_compile_regional_inductor.py | 51 | def test_other_backend_with_flex_raises(self): | CODE |
| LOW⚡ | tests/unit_tests/test_compile_regional_inductor.py | 56 | def test_region_annotation_follows_flag(self): | CODE |
| LOW | tests/unit_tests/test_compile_regional_inductor.py | 90 | def _triton_flex_kernel_count(backend) -> int: | CODE |
| LOW | tests/unit_tests/test_compile_regional_inductor.py | 118 | def test_plain_aot_eager_decomposes_flex(self): | CODE |
| LOW | tests/unit_tests/test_compile_regional_inductor.py | 122 | def test_regional_scoop_lowers_flex_to_triton(self): | CODE |
| LOW | tests/unit_tests/test_rmsnorm.py | 26 | def test_config_build_without_fields_raises(self): | CODE |
| LOW | tests/unit_tests/test_rmsnorm.py | 49 | def test_elementwise_affine_false(self): | CODE |
| LOW | tests/unit_tests/test_rmsnorm.py | 63 | def test_normalized_shape_required_at_config_init(self): | CODE |
| LOW | tests/unit_tests/test_fused_qkv.py | 60 | def test_fused_checkpoint_loads_into_stock(self): | CODE |
| LOW | tests/unit_tests/test_fused_qkv.py | 79 | def test_stock_checkpoint_loads_into_fused(self): | CODE |
| LOW | tests/unit_tests/test_fused_qkv.py | 98 | def test_hf_adapter_roundtrip(self): | CODE |
| LOW | tests/unit_tests/test_fused_qkv.py | 139 | def test_forward_outputs_are_contiguous_and_correct(self): | CODE |
| LOW | tests/unit_tests/test_fused_qkv.py | 161 | def test_raw_pointer_read_needs_contiguous(self): | CODE |
| LOW | tests/unit_tests/test_gpt_oss_moe.py | 20 | def test_swiglu_matches_reference_formula_and_gradients(): | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 334 | def test_download_and_build_tokenizer(self, test_repo_id): | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 397 | def test_apply_chat_template_renders_chatml(self): | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 407 | def test_apply_chat_template_raises_when_no_template(self): | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 412 | def test_raise_exception_available_in_template(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 67 | def test_works_without_tokenizer_config(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 93 | def test_same_bos_eos_token_is_inferred_for_both_ids(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 462 | def test_auto_loads_chat_template_from_config(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 467 | def test_no_chat_template_when_config_lacks_field(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 489 | def test_auto_loads_chat_template_from_jinja_file(self): | CODE |
| LOW | tests/unit_tests/test_tokenizer.py | 512 | def test_jinja_file_takes_priority_over_inline(self): | CODE |
| LOW | tests/unit_tests/test_dataset_checkpointing.py | 71 | def test_map_style_shuffle_on_reloop(self): | CODE |
| LOW | tests/unit_tests/test_dataset_checkpointing.py | 139 | def test_interleaved_resumption(self): | CODE |
| LOW | tests/unit_tests/test_dataset_checkpointing.py | 171 | def test_interleaved_resumption_mid_epoch(self): | CODE |
| LOW | tests/unit_tests/test_dataset_checkpointing.py | 211 | def _build_interleaved_dataloader(self, batch_size, seq_len, world_size, rank): | CODE |
| LOW⚡ | tests/unit_tests/test_module.py | 310 | def test_sequential_init_states(self): | CODE |
| LOW⚡ | tests/unit_tests/test_module.py | 317 | def test_containers_are_module(self): | CODE |
| LOW⚡ | tests/unit_tests/test_module.py | 327 | def test_param_init_on_instance(self): | CODE |
| LOW⚡ | tests/unit_tests/test_module.py | 335 | def test_no_param_init_by_default(self): | CODE |
| LOW⚡ | tests/unit_tests/test_module.py | 341 | def test_init_states_uses_config_param_init(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 30 | def test_default_init_states_no_param_init_raises(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 42 | def test_init_states_falls_back_to_reset_parameters(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 57 | def test_init_states_auto_recurses(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 75 | def test__init_self_buffers_called(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 133 | def test_module_hierarchy_is_flat(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 149 | def test_nn_module_init_called_once(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 189 | def test_init_states_calls_reset_parameters(self): | CODE |
| LOW | tests/unit_tests/test_module.py | 198 | def test_init_states_uses_custom_param_init(self): | CODE |
| 1252 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 109 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 111 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 119 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 121 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 129 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_tp_kv_heads_validation.py | 131 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 86 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 88 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 319 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 321 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 510 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 512 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 649 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 651 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 705 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 707 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 755 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 757 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 1525 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ts/unit_tests/observability/test_structured_logging.py | 1527 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 47 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 49 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 298 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 300 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 544 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 546 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 790 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 792 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 990 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 992 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 1209 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | …ts/unit_tests/observability/test_structured_logging.py | 1215 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | scripts/loss_compare.py | 301 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | scripts/loss_compare.py | 303 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 71 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 73 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 84 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 86 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 210 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 212 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 407 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 409 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 492 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 494 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 566 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 568 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 832 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 834 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 876 | # ============================================================================= | COMMENT |
| MEDIUM | scripts/loss_compare.py | 878 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 47 | # ============================================================ | COMMENT |
| MEDIUM⚡ | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 49 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 76 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 78 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 230 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 232 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 263 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 265 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 322 | # ============================================================ | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 324 | # ============================================================ | COMMENT |
| 67 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | torchtitan/overrides/helion_rope.py | 37 | CODE | |
| LOW | torchtitan/distributed/spmd_types.py | 9 | CODE | |
| LOW | torchtitan/distributed/spmd_types.py | 25 | CODE | |
| LOW | torchtitan/distributed/fsdp.py | 13 | CODE | |
| LOW | torchtitan/distributed/fsdp.py | 24 | CODE | |
| LOW | torchtitan/distributed/__init__.py | 7 | CODE | |
| LOW | torchtitan/distributed/utils.py | 7 | CODE | |
| LOW | torchtitan/distributed/utils.py | 501 | CODE | |
| LOW | torchtitan/distributed/parallel_dims.py | 7 | CODE | |
| LOW | torchtitan/distributed/deepep/inference_override.py | 26 | CODE | |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 7 | CODE | |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 7 | CODE | |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 7 | CODE | |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 7 | CODE | |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 7 | CODE | |
| LOW | torchtitan/config/__init__.py | 15 | CODE | |
| LOW | torchtitan/config/__init__.py | 15 | CODE | |
| LOW | torchtitan/config/__init__.py | 15 | CODE | |
| LOW | torchtitan/config/__init__.py | 15 | CODE | |
| LOW | torchtitan/config/__init__.py | 15 | CODE | |
| LOW | torchtitan/config/__init__.py | 22 | CODE | |
| LOW | torchtitan/config/__init__.py | 23 | CODE | |
| LOW | torchtitan/config/__init__.py | 24 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/__init__.py | 25 | CODE | |
| LOW | torchtitan/config/override.py | 32 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/precompile.py | 7 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/precompile.py | 96 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 14 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_eager_chunk.py | 14 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/custom_codegen.py | 9 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 21 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/registry.py | 14 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/graph_utils.py | 11 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/memory_policy.py | 16 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/inductor_passes.py | 14 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/storage.py | 7 | CODE | |
| LOW | …tan/experiments/graph_trainer/ep_process_group_pass.py | 17 | CODE | |
| LOW | …eriments/graph_trainer/log_activation_memory_policy.py | 9 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 62 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/passes.py | 25 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/passes.py | 79 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_overlap_pass.py | 55 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 110 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 113 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 116 | CODE | |
| LOW | …tan/experiments/graph_trainer/tests/test_precompile.py | 379 | CODE | |
| LOW | …n/experiments/graph_trainer/deepseek_v3/parallelize.py | 76 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 7 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 10 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 10 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 14 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 14 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 18 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 18 | CODE | |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 18 | CODE | |
| 176 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .ci/docker/common/install_conda.sh | 52 | # WARNING: This is a HACK from PyTorch core to be able to build PyTorch on 22.04. | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 344 | # Step 1: Download tokenizer files | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 359 | # Step 2: Load tokenizer using our function | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 365 | # Step 3: Load tokenizer using official Tokenizer library (if available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 372 | # Step 4: Load tokenizer using transformers AutoTokenizer (if available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 381 | # Step 5: Compare underlying tokenizer attributes (only if official tokenizer is available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 387 | # Step 6: Compare with transformers tokenizer if available | COMMENT |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 95 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 96 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 97 | 1.0, # Step 2: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 98 | 7.0 / 8.0, # Step 3: 7/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 99 | 6.0 / 8.0, # Step 4: 3/4 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 100 | 5.0 / 8.0, # Step 5: 5/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 101 | 4.0 / 8.0, # Step 6: 1/2 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 102 | 3.0 / 8.0, # Step 7: 3/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 103 | 2.0 / 8.0, # Step 8: 1/4 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 104 | 1.0 / 8.0, # Step 9: 1/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 138 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 139 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 140 | 1.0, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 141 | 1.0, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 142 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 143 | 1.0, # Step 5: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 144 | 0.8, # Step 6: Linear decay starts (80% of max LR) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 145 | 0.6, # Step 7: 60% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 146 | 0.4, # Step 8: 40% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 147 | 0.2, # Step 9: 20% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 204 | 0.2, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 205 | 0.4, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 206 | 0.6, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 207 | 0.8, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 208 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 241 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 242 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 243 | 1.0, # Step 2: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 244 | 1.0, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 245 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 246 | 1.0, # Step 5: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 247 | 1.0, # Step 6: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 248 | 1.0, # Step 7: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 249 | 1.0, # Step 8: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 250 | 1.0, # Step 9: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 284 | 0.2, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 285 | 0.4, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 286 | 0.6, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 287 | 0.8, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 288 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 289 | 1.0, # Step 5: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 290 | 0.8, # Step 6: Linear decay starts (80% of max LR) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 291 | 0.6, # Step 7: 60% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 292 | 0.4, # Step 8: 40% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 293 | 0.2, # Step 9: 20% of max LR | CODE |
| LOW⚡ | scripts/checkpoint_compat_test.py | 228 | # Step 1: Reference run at load_commit (full training from scratch) | COMMENT |
| LOW⚡ | scripts/checkpoint_compat_test.py | 237 | # Step 2: Save run at save_commit (partial training + checkpoint) | COMMENT |
| LOW | scripts/checkpoint_compat_test.py | 253 | # Step 3: Resume run at load_commit (load checkpoint, train to end) | COMMENT |
| LOW | scripts/checkpoint_compat_test.py | 268 | # Step 4: Compare | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_torchft.yaml | 32 | # Step 1: Dynamically compute the matrix based on conditions | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_torchft.yaml | 40 | # Step 2: Use the dynamic matrix in the build-test job | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_rl.yaml | 29 | # Step 1: Dynamically compute the matrix based on conditions | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_rl.yaml | 39 | # Step 2: Use the dynamic matrix in the build-test job | COMMENT |
| 42 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 344 | # Step 1: Download tokenizer files | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 359 | # Step 2: Load tokenizer using our function | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 365 | # Step 3: Load tokenizer using official Tokenizer library (if available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 372 | # Step 4: Load tokenizer using transformers AutoTokenizer (if available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 381 | # Step 5: Compare underlying tokenizer attributes (only if official tokenizer is available) | COMMENT |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 387 | # Step 6: Compare with transformers tokenizer if available | COMMENT |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 95 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 96 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 97 | 1.0, # Step 2: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 98 | 7.0 / 8.0, # Step 3: 7/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 99 | 6.0 / 8.0, # Step 4: 3/4 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 100 | 5.0 / 8.0, # Step 5: 5/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 101 | 4.0 / 8.0, # Step 6: 1/2 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 102 | 3.0 / 8.0, # Step 7: 3/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 103 | 2.0 / 8.0, # Step 8: 1/4 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 104 | 1.0 / 8.0, # Step 9: 1/8 of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 138 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 139 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 140 | 1.0, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 141 | 1.0, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 142 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 143 | 1.0, # Step 5: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 144 | 0.8, # Step 6: Linear decay starts (80% of max LR) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 145 | 0.6, # Step 7: 60% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 146 | 0.4, # Step 8: 40% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 147 | 0.2, # Step 9: 20% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 204 | 0.2, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 205 | 0.4, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 206 | 0.6, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 207 | 0.8, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 208 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 241 | 0.5, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 242 | 1.0, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 243 | 1.0, # Step 2: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 244 | 1.0, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 245 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 246 | 1.0, # Step 5: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 247 | 1.0, # Step 6: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 248 | 1.0, # Step 7: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 249 | 1.0, # Step 8: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 250 | 1.0, # Step 9: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 284 | 0.2, # Step 0: 50% of max LR (warmup) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 285 | 0.4, # Step 1: 100% of max LR (warmup complete) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 286 | 0.6, # Step 2: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 287 | 0.8, # Step 3: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 288 | 1.0, # Step 4: Stable phase | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 289 | 1.0, # Step 5: We maunally added step of stable phase, to prevent LR from dropping to 0 at last step | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 290 | 0.8, # Step 6: Linear decay starts (80% of max LR) | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 291 | 0.6, # Step 7: 60% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 292 | 0.4, # Step 8: 40% of max LR | CODE |
| LOW⚡ | tests/unit_tests/test_lr_scheduler.py | 293 | 0.2, # Step 9: 20% of max LR | CODE |
| LOW⚡ | scripts/checkpoint_compat_test.py | 228 | # Step 1: Reference run at load_commit (full training from scratch) | COMMENT |
| LOW⚡ | scripts/checkpoint_compat_test.py | 237 | # Step 2: Save run at save_commit (partial training + checkpoint) | COMMENT |
| LOW | scripts/checkpoint_compat_test.py | 253 | # Step 3: Resume run at load_commit (load checkpoint, train to end) | COMMENT |
| LOW | scripts/checkpoint_compat_test.py | 268 | # Step 4: Compare | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_torchft.yaml | 32 | # Step 1: Dynamically compute the matrix based on conditions | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_torchft.yaml | 40 | # Step 2: Use the dynamic matrix in the build-test job | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_rl.yaml | 29 | # Step 1: Dynamically compute the matrix based on conditions | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_rl.yaml | 39 | # Step 2: Use the dynamic matrix in the build-test job | COMMENT |
| LOW⚡ | .github/workflows/integration_test_8gpu_models.yaml | 32 | # Step 1: Dynamically compute the matrix based on conditions | COMMENT |
| 31 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/unit_tests/test_dataloader.py | 165 | CODE | |
| LOW | tests/unit_tests/test_tokenizer.py | 117 | CODE | |
| LOW | tests/unit_tests/test_tokenizer.py | 467 | CODE | |
| LOW | tests/unit_tests/test_tokenizer.py | 489 | CODE | |
| LOW | tests/unit_tests/test_tokenizer.py | 512 | CODE | |
| LOW | tests/unit_tests/test_dataset_checkpointing.py | 35 | CODE | |
| LOW | tests/unit_tests/test_chat_dataset.py | 351 | CODE | |
| LOW | tests/unit_tests/test_chat_dataset.py | 502 | CODE | |
| LOW | tests/unit_tests/test_embedding.py | 110 | CODE | |
| LOW | tests/unit_tests/test_mm_dataset_checkpointing.py | 53 | CODE | |
| LOW | tests/unit_tests/test_loss.py | 287 | CODE | |
| LOW | tests/unit_tests/test_fsdp_moe_sharding.py | 59 | CODE | |
| LOW | tests/integration_tests/run_tests.py | 208 | CODE | |
| LOW | tests/integration_tests/features.py | 14 | CODE | |
| LOW | tests/assets/cc12m_test/pack_test_dataset.py | 13 | CODE | |
| LOW | scripts/download_hf_assets.py | 13 | CODE | |
| LOW | .github/scripts/todo_debt_tracker.py | 120 | CODE | |
| LOW | .github/scripts/todo_debt_tracker.py | 237 | CODE | |
| LOW | .github/scripts/todo_debt_tracker.py | 338 | CODE | |
| LOW | torchtitan/trainer.py | 224 | CODE | |
| LOW | torchtitan/trainer.py | 879 | CODE | |
| LOW | torchtitan/trainer.py | 151 | CODE | |
| LOW | torchtitan/trainer.py | 171 | CODE | |
| LOW | torchtitan/tools/utils.py | 93 | CODE | |
| LOW | torchtitan/distributed/fsdp.py | 81 | CODE | |
| LOW | torchtitan/distributed/activation_checkpoint.py | 31 | CODE | |
| LOW | torchtitan/distributed/activation_checkpoint.py | 72 | CODE | |
| LOW | torchtitan/distributed/parallel_dims.py | 88 | CODE | |
| LOW | torchtitan/distributed/context_parallel.py | 35 | CODE | |
| LOW | torchtitan/distributed/pipeline_parallel.py | 315 | CODE | |
| LOW | torchtitan/distributed/pipeline_parallel.py | 428 | CODE | |
| LOW | torchtitan/config/configurable.py | 162 | CODE | |
| LOW | torchtitan/config/configurable.py | 46 | CODE | |
| LOW | torchtitan/config/configurable.py | 75 | CODE | |
| LOW | torchtitan/config/configurable.py | 49 | CODE | |
| LOW | torchtitan/config/manager.py | 48 | CODE | |
| LOW | …tan/experiments/transformers_modeling_backend/model.py | 477 | CODE | |
| LOW | …tan/experiments/transformers_modeling_backend/model.py | 520 | CODE | |
| LOW | …/experiments/transformers_modeling_backend/pipeline.py | 35 | CODE | |
| LOW | …/experiments/transformers_modeling_backend/pipeline.py | 144 | CODE | |
| LOW | …/experiments/transformers_modeling_backend/pipeline.py | 186 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 815 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 1008 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 426 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 466 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 1168 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 574 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 596 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 701 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/cpu_offload.py | 303 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/cpu_offload.py | 412 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/cudagraph.py | 328 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/cudagraph.py | 466 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/fsdp_patterns.py | 74 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/dynamic_shapes.py | 94 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/jit_backend.py | 18 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 263 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 1439 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 1596 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/ep_overlap_pass.py | 572 | CODE | |
| 65 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/integration_tests/__init__.py | 10 | __all__ = [ | CODE |
| LOW | tests/integration_tests/h100.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/overrides/helion_rope.py | 69 | __all__ = ["HelionComplexRoPE", "HelionCosSinRoPE", "HelionRoPE"] | CODE |
| LOW | torchtitan/overrides/fused_swiglu.py | 68 | __all__ = [ | CODE |
| LOW | torchtitan/distributed/spmd_types.py | 31 | __all__ = [ | CODE |
| LOW | torchtitan/distributed/__init__.py | 9 | __all__ = [ | CODE |
| LOW | torchtitan/distributed/utils.py | 39 | def set_spmd_backend(spmd_backend: str) -> None: | CODE |
| LOW | torchtitan/distributed/utils.py | 291 | def set_batch_invariance(enable: bool) -> None: | CODE |
| LOW | torchtitan/distributed/parallel_dims.py | 22 | __all__ = ["MeshAxisName", "ParallelDims", "SpmdLayout", "unfold_dp_axes"] | CODE |
| LOW | torchtitan/distributed/pipeline_parallel.py | 37 | __all__ = ["pipeline_llm"] | CODE |
| LOW | torchtitan/distributed/deepep/hybridep.py | 543 | __all__ = [ | CODE |
| LOW | torchtitan/distributed/minimal_async_ep/__init__.py | 15 | __all__ = [ | CODE |
| LOW | torchtitan/distributed/minimal_async_ep/api.py | 999 | __all__ = [ | CODE |
| LOW | torchtitan/config/configurable.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/config/__init__.py | 34 | __all__ = [ | CODE |
| LOW | …/experiments/transformers_modeling_backend/__init__.py | 15 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/graph_trainer/custom_codegen.py | 418 | def _setup_custom_codegen(self) -> None: | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 185 | def _set_direction_meta(node: fx.Node, *, is_backward: bool) -> None: | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_overlap_pass.py | 159 | def _set_copy_non_blocking(node: fx.Node, non_blocking: bool) -> None: | CODE |
| LOW | …ents/graph_trainer/tests/test_bitwise_deterministic.py | 70 | def _set_deterministic(seed: int = SEED) -> None: | CODE |
| LOW | …xperiments/graph_trainer/tests/test_sac_peak_memory.py | 31 | def _set_deterministic() -> None: | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_passes.py | 419 | def _setup(self) -> None: | CODE |
| LOW | torchtitan/experiments/graph_trainer/graph_pp/runner.py | 46 | __all__ = [ | CODE |
| LOW | …chtitan/experiments/graph_trainer/graph_pp/__init__.py | 25 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/torchft/__init__.py | 14 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/torchft/optimizer.py | 19 | __all__ = ["TorchFTOptimizersContainer"] | CODE |
| LOW | torchtitan/experiments/torchft/config/__init__.py | 10 | __all__ = [ | CODE |
| LOW | …chtitan/experiments/torchft/tests/integration_tests.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/torchft/diloco/__init__.py | 9 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/forge/__init__.py | 9 | __all__ = ["ForgeEngine"] | CODE |
| LOW | torchtitan/experiments/rl/controller.py | 141 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/renderer.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/__init__.py | 54 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/rl/train.py | 45 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/batch_invariance.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/losses/__init__.py | 10 | __all__ = ["DAPOLoss", "GRPOLoss"] | CODE |
| LOW⚡ | torchtitan/experiments/rl/tests/test_bitwise_parity.py | 86 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/tests/test_bitwise_parity.py | 177 | def _set_generator_determinism(debug) -> None: | CODE |
| LOW | torchtitan/experiments/rl/models/attention.py | 35 | logger = logging.getLogger(__name__) | CODE |
| LOW | …titan/experiments/rl/observability/metrics/__init__.py | 14 | __all__ = [ | CODE |
| LOW | …itan/experiments/rl/observability/metrics/processor.py | 30 | __all__ = [ | CODE |
| LOW | …rchtitan/experiments/rl/observability/metrics/types.py | 17 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/rl/rollout/rollouter.py | 33 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/rollout/__init__.py | 17 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/rl/components/batcher.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/rubrics/__init__.py | 9 | __all__ = ["RewardFn", "Rubric", "RubricOutput"] | CODE |
| LOW | torchtitan/experiments/rl/examples/search_r1/rubric.py | 127 | __all__ = ["RewardExactMatch"] | CODE |
| LOW | torchtitan/experiments/rl/examples/search_r1/env.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | …rchtitan/experiments/rl/examples/search_r1/__init__.py | 15 | __all__ = [ | CODE |
| LOW | …htitan/experiments/rl/examples/alphabet_sort/rubric.py | 116 | __all__ = ["RewardAlphabetSort", "score_sorted_list"] | STRING |
| LOW | …itan/experiments/rl/examples/alphabet_sort/__init__.py | 17 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/rl/actors/generator.py | 58 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/actors/generator.py | 917 | def _set_determinism(debug: DebugConfig) -> None: | CODE |
| LOW | torchtitan/experiments/rl/actors/trainer.py | 45 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/environment/token.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | torchtitan/experiments/rl/environment/__init__.py | 14 | __all__ = [ | CODE |
| LOW | torchtitan/experiments/rl/routing/__init__.py | 23 | __all__ = [ | CODE |
| LOW | …titan/experiments/rl/routing/inter_generator_router.py | 123 | def _set_state(self, h: _GeneratorHandle, state: _GeneratorState) -> None: | CODE |
| LOW | torchtitan/models/llama3/__init__.py | 37 | __all__ = [ | CODE |
| LOW | torchtitan/models/gpt_oss/__init__.py | 47 | __all__ = [ | CODE |
| 32 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/unit_tests/test_set_determinism.py | 46 | # Create a world_mesh mock | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_lr_scheduler.py | 19 | # Create a simple model with parameters | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_lr_scheduler.py | 21 | # Create an optimizer | COMMENT |
| MEDIUM⚡ | tests/unit_tests/test_lr_scheduler.py | 28 | # Create an optimizer container | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 41 | # Create a trainer config with the specified parameters | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 78 | # Create a job config with 10 steps, 2 warmup steps, and linear decay | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 121 | # Create a job config with 10 steps, 2 warmup steps, 3 stable steps, and 5 decay steps | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 163 | # Create a job config with a minimum learning rate | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 187 | # Create a job config where warmup steps > training steps | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 224 | # Create a job config with 10 steps, 2 warmup steps, and no decay phase | COMMENT |
| MEDIUM | tests/unit_tests/test_lr_scheduler.py | 266 | # Create a job config where warmup + decay steps > training steps | COMMENT |
| MEDIUM | tests/unit_tests/test_checkpoint.py | 589 | # Create a fake model with freqs_cis and other parameters | COMMENT |
| MEDIUM | tests/assets/cc12m_test/pack_test_dataset.py | 23 | # Create a TarWriter object to write the dataset to a tar archive | COMMENT |
| MEDIUM⚡ | scripts/loss_compare.py | 319 | # Create the output folder | COMMENT |
| MEDIUM⚡ | scripts/loss_compare.py | 749 | # Create a test case | COMMENT |
| MEDIUM | …ripts/checkpoint_conversion/numerical_tests_example.py | 151 | # Define the set of outputs to test loss for | COMMENT |
| MEDIUM | .github/scripts/update_version.sh | 6 | # Create a variable named __version__ at the end of __init__.py | COMMENT |
| MEDIUM | torchtitan/distributed/activation_checkpoint.py | 7 | # This file provides the util functions to apply activation checkpointing to the model. | COMMENT |
| MEDIUM | torchtitan/distributed/pipeline_parallel.py | 447 | # Create a set of modules to keep for faster lookup | COMMENT |
| MEDIUM | …/experiments/transformers_modeling_backend/pipeline.py | 191 | # Create a set of modules to keep for faster lookup | COMMENT |
| MEDIUM | …chtitan/experiments/graph_trainer/tests/test_passes.py | 386 | # Create a second PG to simulate expert-FSDP. | COMMENT |
| MEDIUM | …experiments/graph_trainer/tests/test_custom_codegen.py | 206 | # Create main module | COMMENT |
| MEDIUM | torchtitan/experiments/torchft/manager.py | 199 | # Create the outer optimizer based on the inner optimizer parameters. | COMMENT |
| MEDIUM | torchtitan/experiments/torchft/diloco/utils.py | 48 | # Create a set of modules to keep for faster lookup | COMMENT |
| MEDIUM | torchtitan/experiments/rl/environment/token.py | 226 | # Create a new list to avoid mutating previous states | COMMENT |
| MEDIUM | torchtitan/models/common/moe.py | 174 | """This class implements token-choice routing. In token-choice top-K routing, each token is | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | torchtitan/distributed/utils.py | 562 | Clip the gradient norm of an iterable of parameters. Gradient norm clipping requires computing the gradient no | STRING |
| HIGH | torchtitan/distributed/parallel_dims.py | 419 | Get a device mesh by dimension name(s), returning None if not enabled. Args: dims: Names of the mes | STRING |
| HIGH | torchtitan/distributed/parallel_dims.py | 482 | Get a device mesh by dimension name(s), raising if not available. Args: dims: Names of the mesh dim | STRING |
| HIGH | torchtitan/distributed/context_parallel.py | 168 | Shard inputs and attention masks across the context parallel mesh. This function distributes input tensors acr | STRING |
| HIGH | torchtitan/distributed/pipeline_parallel.py | 538 | Create pipeline stages based on specified module names for each stage. Also used by Graph PP to split the model int | STRING |
| HIGH | …/experiments/transformers_modeling_backend/pipeline.py | 151 | This API creates pipeline stages based on specified module names for each stage. Some model restrictions inclu | STRING |
| HIGH | …itan/experiments/graph_trainer/graph_pp/split_di_dw.py | 156 | Split a backward graph into input-gradient and weight-gradient graphs. Contract: Input: backward(save | STRING |
| HIGH | torchtitan/experiments/graph_trainer/graph_pp/runner.py | 714 | Register GraphPP action handlers on a runtime PP schedule. Args: schedule (_PipelineScheduleRuntime): Runti | STRING |
| HIGH | …htitan/experiments/graph_trainer/graph_pp/partition.py | 445 | Partition a post-pass GraphTrainer joint graph into GraphPP callables. The caller passes a flat ``minimal_fx_tracer | STRING |
| HIGH | …ments/graph_trainer/graph_pp/split_fsdp_collectives.py | 95 | Split forward FSDP all-gather chains from a forward graph. Contract: unshard(param_shards_and_replicated_para | STRING |
| HIGH | …ments/graph_trainer/graph_pp/split_fsdp_collectives.py | 251 | Split backward FSDP/DDP/HSDP reduce-grad epilogues. Contract: bw_no_fsdp(original_backward_inputs) -> | STRING |
| HIGH | …/experiments/graph_trainer/graph_pp/graph_multiplex.py | 48 | Concatenate backward and forward graphs into one boxed GraphPP callable. Contract: ``OVERLAP_F_B`` schedule a | STRING |
| HIGH | torchtitan/experiments/torchft/diloco/utils.py | 19 | This API creates fragments based on specified module names for each fragment. This method updates the model in | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/unit_tests/test_tp_kv_heads_validation.py | 38 | except Exception: | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 369 | except Exception as e: | CODE |
| LOW⚡ | tests/unit_tests/test_tokenizer.py | 378 | except Exception as e: | CODE |
| LOW⚡ | tests/unit_tests/test_checkpoint.py | 768 | except Exception as e: | CODE |
| LOW | tests/integration_tests/run_tests.py | 261 | except Exception as e: | CODE |
| LOW | tests/integration_tests/run_tests.py | 268 | except Exception as e: | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 294 | log_print(f"Error: Import file does not exist: {import_result}") | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 315 | log_print(f"Error: Output folder '{output_folder}' already exists") | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 729 | log_print("Error: baseline-only mode requires --import-result") | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 733 | log_print("Error: No losses found in baseline") | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 737 | log_print("Error: No losses found in test") | CODE |
| MEDIUM⚡ | scripts/loss_compare.py | 746 | log_print("Error: No losses found in import file") | CODE |
| MEDIUM | scripts/loss_compare.py | 259 | log_print("Error: All settings are identical") | CODE |
| MEDIUM | scripts/loss_compare.py | 272 | log_print(f"Error: --steps must be a positive integer, got: {steps}") | CODE |
| MEDIUM | scripts/loss_compare.py | 277 | log_print("Error: --import-result requires --assert-equal") | CODE |
| LOW | .github/scripts/todo_debt_tracker.py | 45 | except Exception: | CODE |
| LOW | .github/scripts/todo_debt_tracker.py | 116 | except Exception as e: | CODE |
| LOW | .github/scripts/todo_debt_tracker.py | 183 | except Exception: | CODE |
| LOW | .github/scripts/todo_debt_tracker.py | 303 | except Exception as e: | CODE |
| MEDIUM | .github/scripts/todo_debt_tracker.py | 304 | print(f"Error reading {file_path}: {e}", file=sys.stderr) | CODE |
| LOW | torchtitan/__init__.py | 11 | except Exception: | CODE |
| LOW | torchtitan/train.py | 66 | except Exception: | CODE |
| LOW | …tan/experiments/transformers_modeling_backend/model.py | 445 | except Exception as e: | CODE |
| LOW | torchtitan/experiments/graph_trainer/custom_codegen.py | 64 | except Exception: | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 218 | except Exception: | CODE |
| LOW | torchtitan/experiments/graph_trainer/cpu_offload.py | 167 | except Exception: | CODE |
| LOW | torchtitan/experiments/graph_trainer/cpu_offload.py | 179 | except Exception: | CODE |
| LOW | …eriments/graph_trainer/log_activation_memory_policy.py | 73 | except Exception: | CODE |
| LOW | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 221 | except Exception as exc: | CODE |
| LOW | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 241 | except Exception as exc: | CODE |
| LOW | torchtitan/experiments/forge/example_train.py | 440 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/controller.py | 388 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/controller.py | 408 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/controller.py | 414 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/controller.py | 902 | except Exception: | CODE |
| LOW | …itan/experiments/rl/observability/metrics/processor.py | 212 | except Exception: | CODE |
| LOW | …itan/experiments/rl/observability/metrics/processor.py | 223 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/rollout/rollouter.py | 300 | except Exception: | CODE |
| LOW | torchtitan/experiments/rl/examples/search_r1/env.py | 90 | except Exception as exc: | CODE |
| LOW | torchtitan/experiments/rl/actors/generator.py | 1119 | except Exception as exc: | CODE |
| LOW | torchtitan/experiments/rl/actors/generator.py | 1393 | except Exception: | CODE |
| MEDIUM | torchtitan/experiments/rl/scripts/loss_compare.py | 292 | log_print("Error: no losses found in TensorBoard events") | CODE |
| LOW | torchtitan/experiments/rl/environment/token.py | 165 | except Exception: | CODE |
| LOW | torchtitan/observability/structured_logger/README.md | 147 | except Exception: | CODE |
| LOW | torchtitan/components/metrics.py | 434 | except Exception as e: | CODE |
| LOW | torchtitan/hf_datasets/multimodal/utils/video.py | 93 | except Exception as e: | CODE |
| LOW | torchtitan/hf_datasets/multimodal/utils/image.py | 114 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | run_train.sh | 1 | #!/usr/bin/bash | COMMENT |
| LOW | .ci/docker/common/utils.sh | 1 | #!/bin/bash | COMMENT |
| LOW | .ci/docker/common/install_deepep.sh | 1 | #!/bin/bash | COMMENT |
| LOW | tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | tests/unit_tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | tests/unit_tests/observability/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | tests/integration_tests/features.py | 341 | ], | COMMENT |
| LOW | .github/workflows/integration_test_8gpu_rl.yaml | 101 | # the E2E suite can't collide with the generator's distributed init | COMMENT |
| LOW | .github/scripts/run_8xgpu_integration_tests.sh | 1 | #!/bin/bash | COMMENT |
| LOW | torchtitan/tools/utils.py | 121 | return 756e12 | COMMENT |
| LOW | torchtitan/tools/utils.py | 161 | # - #ops: 512 | COMMENT |
| LOW | torchtitan/distributed/utils.py | 181 | torch.backends.cudnn.benchmark = False | COMMENT |
| LOW | torchtitan/distributed/deepep/deepep.py | 81 | # | COMMENT |
| LOW | torchtitan/distributed/deepep/inference_override.py | 41 | ) -> DeepEPTokenDispatcher.Config: | COMMENT |
| LOW | …n/experiments/transformers_modeling_backend/configs.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/experiments/graph_trainer/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | …itan/experiments/graph_trainer/run_train_precompile.sh | 1 | #!/usr/bin/bash | COMMENT |
| LOW | torchtitan/experiments/graph_trainer/inductor_passes.py | 101 | val = node.meta["val"] | COMMENT |
| LOW | torchtitan/experiments/graph_trainer/simple_fsdp.py | 301 | ), | COMMENT |
| LOW | torchtitan/experiments/graph_trainer/tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | …n/experiments/graph_trainer/tests/integration_tests.py | 181 | # Uses the SDPA backend: the default FlexAttention + CP + | COMMENT |
| LOW | …n/experiments/graph_trainer/tests/integration_tests.py | 621 | # ("expected size 2==2, stride 2048==1048576 at dim=0"), i.e. a bad | COMMENT |
| LOW | …titan/experiments/graph_trainer/tests/test_numerics.py | 641 | importlib.util.find_spec("autoparallel"), | COMMENT |
| LOW | torchtitan/experiments/torchft/tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/experiments/rl/controller.py | 561 | max_num_seqs=max_num_seqs, | COMMENT |
| LOW | torchtitan/experiments/rl/tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/experiments/rl/models/attention.py | 141 | ) | COMMENT |
| LOW | torchtitan/experiments/rl/models/vllm_wrapper.py | 301 | # spmd_types parameter init needs the current mesh to materialize | COMMENT |
| LOW | torchtitan/experiments/rl/observability/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/experiments/rl/components/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/experiments/rl/examples/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | …periments/rl/examples/alphabet_sort/config_registry.py | 621 | # FULL_AND_PIECEWISE: decode captured FULL (incl. the expand MoE), prefill breakable. | COMMENT |
| LOW | torchtitan/experiments/rl/actors/generator.py | 821 | engine_kwargs = dict( | COMMENT |
| LOW | torchtitan/experiments/rl/actors/generator.py | 1241 | ) | COMMENT |
| LOW | torchtitan/experiments/rl/scripts/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | …titan/experiments/rl/routing/inter_generator_router.py | 221 | # for now. | COMMENT |
| LOW | torchtitan/models/flux/model/model.py | 81 | # per-token linear params per block (excluding modulation, which | COMMENT |
| LOW | torchtitan/models/common/attention.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/models/common/moe.py | 401 | output (Partial) is redistributed to sp_layout. MoE.forward() | COMMENT |
| LOW | torchtitan/models/common/token_dispatcher.py | 761 | layout feeds the grouped-GEMM expert path directly (no permute). Combine is | COMMENT |
| LOW | torchtitan/observability/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/components/lr_scheduler.py | 221 | COMMENT | |
| LOW | torchtitan/components/loss.py | 861 | # Note: this is not safe if downstream accidentally runs tensor ops after | COMMENT |
| LOW | torchtitan/components/quantization/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/hf_datasets/multimodal/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | torchtitan/ops/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | agent_tooling/numerics_debugging/activation_tracer.py | 81 | on ``input_hashes`` / ``output_hash`` for comparison. | COMMENT |
| LOW | agent_tooling/numerics_debugging/activation_tracer.py | 201 | # Indexing | COMMENT |
| LOW | agent_tooling/numerics_debugging/activation_tracer.py | 561 | record_ids=True, | COMMENT |
| LOW | agent_tooling/numerics_debugging/activation_tracer.py | 641 | # through to the metadata block below. | COMMENT |
| LOW | agent_tooling/numerics_debugging/compare_numerics.py | 61 | stats: dict[str, str] = field(default_factory=dict) | COMMENT |
| LOW | agent_tooling/numerics_debugging/compare_numerics.py | 181 | COMMENT | |
| LOW | agent_tooling/numerics_debugging/compare_numerics.py | 661 | # log_tensor_hashes. Comma-separated lists of floats — we | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/integration_tests/features.py | 0 | key is the config file name and value is a list of overridedefinitions that is used to generate variations of integratio | STRING |
| HIGH | tests/integration_tests/h100.py | 0 | key is the config file name and value is a list of overridedefinitions that is used to generate variations of integratio | STRING |
| HIGH | tests/integration_tests/flux.py | 0 | key is the config file name and value is a list of overridedefinitions that is used to generate variations of integratio | STRING |
| HIGH | …ansformers_modeling_backend/tests/integration_tests.py | 0 | key is the config file name and value is a list of overridedefinitions that is used to generate variations of integratio | STRING |
| HIGH | …chtitan/experiments/torchft/tests/integration_tests.py | 0 | key is the config file name and value is a list of overridedefinitions that is used to generate variations of integratio | STRING |
| HIGH | …periments/transformers_modeling_backend/parallelize.py | 0 | apply tensor parallelism, activation checkpointing, torch.compile, and data parallelism to the qwen3.5 model. note: the | STRING |
| HIGH | …htitan/experiments/graph_trainer/llama3/parallelize.py | 0 | apply tensor parallelism, activation checkpointing, torch.compile, and data parallelism to the qwen3.5 model. note: the | STRING |
| HIGH | torchtitan/models/llama3/parallelize.py | 0 | apply tensor parallelism, activation checkpointing, torch.compile, and data parallelism to the qwen3.5 model. note: the | STRING |
| HIGH | torchtitan/models/qwen3_5/parallelize.py | 0 | apply tensor parallelism, activation checkpointing, torch.compile, and data parallelism to the qwen3.5 model. note: the | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 91 | for placeholder in gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 130 | if n.all_input_nodes[0].op == "placeholder": | CODE |
| LOW | torchtitan/experiments/graph_trainer/fsdp_passes.py | 1120 | if n in visited or n.op in ("placeholder", "get_attr"): | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 312 | or node.op != "placeholder" | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_pass_utils.py | 329 | if node.op != "placeholder" or (val := tensor_meta(node)) is None: | CODE |
| LOW | torchtitan/experiments/graph_trainer/memory_policy.py | 64 | for node in gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | torchtitan/experiments/graph_trainer/inductor_passes.py | 100 | if node.op == "placeholder" and "val" in node.meta: | CODE |
| LOW | torchtitan/experiments/graph_trainer/inductor_passes.py | 272 | if node.op in ("placeholder", "output"): | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 573 | if node.op != "placeholder": | CODE |
| LOW | torchtitan/experiments/graph_trainer/ep_chunk_pass.py | 2313 | for idx, node in enumerate(n for n in gm.graph.nodes if n.op == "placeholder") | CODE |
| LOW⚡ | torchtitan/experiments/graph_trainer/ep_overlap_pass.py | 81 | _GRAPH_BOUNDARY_OPS = {"placeholder", "get_attr"} | CODE |
| LOW | torchtitan/experiments/graph_trainer/debug_utils.py | 34 | if node.op == "placeholder": | CODE |
| LOW | …n/experiments/graph_trainer/tests/test_trace_module.py | 89 | if node.op != "placeholder": | CODE |
| LOW | …n/experiments/graph_trainer/tests/test_trace_module.py | 172 | if node.op == "placeholder" | CODE |
| LOW | …n/experiments/graph_trainer/tests/test_trace_module.py | 431 | if node.op == "placeholder" | CODE |
| LOW | …n/experiments/graph_trainer/tests/test_trace_module.py | 455 | if node.op == "placeholder" | CODE |
| LOW | …n/experiments/graph_trainer/tests/test_trace_module.py | 476 | if node.op == "placeholder" | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 2048 | self.assertEqual(node.args[0].op, "placeholder") | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5421 | if node.op == "placeholder": | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5528 | if node.op == "placeholder": | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5547 | self.assertEqual(node.args[0].op, "placeholder") | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5625 | self.assertEqual(relu_node.args[0].op, "placeholder") | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5724 | if node.op == "placeholder": | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5824 | if node.op == "placeholder": | CODE |
| LOW | …chtitan/experiments/graph_trainer/tests/test_passes.py | 5865 | if node.op == "placeholder": | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_runner.py | 479 | for node in gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_runner.py | 636 | bw_gm.graph.find_nodes(op="placeholder")[0].meta["val"] = bw_fake | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_runner.py | 637 | fw_gm.graph.find_nodes(op="placeholder")[0].meta["val"] = fw_fake | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_runner.py | 652 | placeholders = multiplexed.graph.find_nodes(op="placeholder") | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_runner.py | 696 | fw_gm.graph.find_nodes(op="placeholder")[0].meta["val"] = fw_fake | CODE |
| LOW⚡ | …xperiments/graph_trainer/tests/test_graph_pp_passes.py | 658 | sharded_param = gm.graph.find_nodes(op="placeholder")[0] | CODE |
| LOW | …xperiments/graph_trainer/tests/test_graph_pp_passes.py | 533 | return tuple(node.name for node in gm.graph.find_nodes(op="placeholder")) | CODE |
| LOW | …itan/experiments/graph_trainer/graph_pp/split_di_dw.py | 200 | for placeholder in list(bw_gm.graph.find_nodes(op="placeholder")): | CODE |
| LOW | …itan/experiments/graph_trainer/graph_pp/split_di_dw.py | 215 | placeholders = list(bw_gm.graph.find_nodes(op="placeholder")) | CODE |
| LOW⚡ | …htitan/experiments/graph_trainer/graph_pp/partition.py | 197 | for node in gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | …htitan/experiments/graph_trainer/graph_pp/partition.py | 320 | if mutated_base.op != "placeholder" and mutated_base in backward_nodes: | CODE |
| LOW | …htitan/experiments/graph_trainer/graph_pp/partition.py | 348 | and node.op == "placeholder" | CODE |
| LOW | …htitan/experiments/graph_trainer/graph_pp/partition.py | 475 | placeholders = list(joint.graph.find_nodes(op="placeholder")) | CODE |
| LOW | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 289 | return tuple(node.name for node in gm.graph.find_nodes(op="placeholder")) | CODE |
| LOW | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 322 | return {node for node in node_closure(values) if node.op == "placeholder"} | CODE |
| LOW⚡ | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 386 | if node.op != "placeholder": | CODE |
| LOW⚡ | torchtitan/experiments/graph_trainer/graph_pp/utils.py | 399 | for node in gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | …an/experiments/graph_trainer/graph_pp/graph_builder.py | 384 | placeholders = self.modules.fw.graph.find_nodes(op="placeholder") | CODE |
| LOW | …an/experiments/graph_trainer/graph_pp/graph_builder.py | 750 | if node.op == "placeholder": | CODE |
| LOW | …ments/graph_trainer/graph_pp/split_fsdp_collectives.py | 132 | placeholders = graph.find_nodes(op="placeholder") | CODE |
| LOW | …ments/graph_trainer/graph_pp/split_fsdp_collectives.py | 288 | placeholders = graph.find_nodes(op="placeholder") | CODE |
| LOW | …/experiments/graph_trainer/graph_pp/graph_multiplex.py | 104 | fw_placeholders = multiplexed_gm.graph.find_nodes(op="placeholder") | CODE |
| LOW | …/experiments/graph_trainer/graph_pp/graph_multiplex.py | 109 | for node in bw_gm.graph.find_nodes(op="placeholder"): | CODE |
| LOW | …/experiments/graph_trainer/graph_pp/graph_multiplex.py | 121 | (node for node in multiplexed_gm.graph.nodes if node.op != "placeholder"), | CODE |
| LOW | …/experiments/graph_trainer/graph_pp/graph_multiplex.py | 128 | bw_nodes = dropwhile(lambda node: node.op == "placeholder", bw_nodes) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/unit_tests/test_checkpoint.py | 96 | # Check if this is async_with_pinned_mem mode by looking for async_stager parameter | COMMENT |
| LOW | tests/unit_tests/test_checkpoint.py | 530 | cfg.interval = 10 # Set interval to 10 so step 1 wouldn't normally trigger save | CODE |
| LOW | tests/integration_tests/flux.py | 124 | # Check if we have enough GPUs | COMMENT |
| LOW | tests/assets/cc12m_test/pack_test_dataset.py | 38 | # Write the file and its metadata to the TarWriter | COMMENT |
| LOW⚡ | scripts/loss_compare.py | 313 | # Check if output folder already exists | COMMENT |
| LOW | scripts/loss_compare.py | 683 | # Check if losses were extracted successfully | COMMENT |
| LOW | scripts/loss_compare.py | 1113 | # Check if git working directory is clean before switching commits | COMMENT |
| LOW | torchtitan/config/manager.py | 221 | # Check if we are using tokenizer.model, if so then we need to alert users to redownload the tokenizer | COMMENT |
| LOW | …chtitan/experiments/torchft/tests/integration_tests.py | 105 | # Check if we have enough GPUs | COMMENT |
| LOW | torchtitan/experiments/rl/generate.py | 237 | # Print results | COMMENT |
| LOW | torchtitan/experiments/rl/actors/generator.py | 1007 | # Add the request to the queue; the engine loop will admit + process it. | COMMENT |
| LOW | torchtitan/experiments/rl/actors/trainer.py | 275 | # Check if seq_length passed the max_seq_len | COMMENT |
| LOW | torchtitan/models/flux/validate.py | 139 | # Set model to eval mode | COMMENT |
| LOW | torchtitan/models/flux/model/state_dict_adapter.py | 38 | # Check if safetensors index file exists | COMMENT |
| LOW | torchtitan/components/metrics.py | 219 | # Check if the loss-visible rank is included in LOG_RANK environment variable | COMMENT |
| LOW | torchtitan/components/metrics.py | 386 | # Check if any logging backend is enabled | COMMENT |
| LOW | torchtitan/components/loss.py | 654 | # Check if it's training model or validation mode | COMMENT |
| LOW | torchtitan/components/validate.py | 221 | # Set model to eval mode | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/unit_tests/test_tokenizer.py | 177 | # 2. Compare vocabularies with more comprehensive sampling | COMMENT |
| MEDIUM | tests/unit_tests/test_tokenizer.py | 202 | # Test a random sample of tokens (more comprehensive than just common words) | COMMENT |
| MEDIUM | tests/unit_tests/test_helion_rope.py | 27 | # tests below stay robust if a sibling test (e.g. test_override.py) calls | COMMENT |
| MEDIUM | torchtitan/distributed/utils.py | 99 | # is no robust way to distinguish the two and `full_tensor()` may result in | COMMENT |
| MEDIUM | torchtitan/experiments/rl/routing/strategies.py | 161 | # easy to implement, but not robust for all scenarios. Revisit with an | COMMENT |
| MEDIUM | torchtitan/experiments/rl/routing/strategies.py | 162 | # more robust approach. | COMMENT |
| MEDIUM | torchtitan/models/flux/flux_datasets.py | 227 | # TODO: Add support for robust data loading and error handling. | COMMENT |
| MEDIUM | torchtitan/components/tokenizer.py | 371 | # Process added_tokens_decoder (comprehensive special token definitions) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/loss_compare.py | 444 | log_print(" - To commit: git add -A && git commit -m 'message'") | CODE |
| HIGH⚡ | …ripts/checkpoint_conversion/numerical_tests_qwen3_5.py | 53 | """KL(softmax(b) || softmax(a)) — F.kl_div(log Q, P) computes KL(P || Q).""" | STRING |
| HIGH | agent_tooling/numerics_debugging/compare_numerics.py | 1016 | const hidden = el.dataset.hideByCategory || el.dataset.hideByOpFilter; | CODE |
| HIGH | agent_tooling/numerics_debugging/compare_numerics.py | 1028 | let _opFilterTimer = null; | CODE |
| HIGH | agent_tooling/numerics_debugging/compare_numerics.py | 1037 | let re = null; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …tan/experiments/transformers_modeling_backend/model.py | 788 | CODE | |
| LOW | torchtitan/experiments/graph_trainer/simple_fsdp.py | 258 | CODE | |
| LOW | …ents/graph_trainer/tests/test_bitwise_deterministic.py | 184 | CODE | |
| LOW | …experiments/graph_trainer/tests/_trainer_test_utils.py | 23 | CODE | |
| LOW | torchtitan/models/llama3/model.py | 50 | CODE | |
| LOW | torchtitan/models/gpt_oss/model.py | 157 | CODE | |
| LOW | torchtitan/models/common/decoder.py | 284 | CODE | |
| LOW | torchtitan/models/qwen3_5/model.py | 744 | CODE | |
| LOW | torchtitan/hf_datasets/multimodal/mm_datasets.py | 301 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | torchtitan/experiments/rl/examples/search_r1/README.md | 1 | # Search-R1: multi-turn retrieval-augmented GRPO | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | torchtitan/experiments/rl/actors/generator.py | 634 | # The loop now executes the decision. In this example: STEP. | STRING |