EasyR1: An Efficient, Scalable, Multi-Modality RL Training Framework based on veRL
This report summarizes scanner evidence for hiyouga/EasyR1, a Python project with 5,186 GitHub stars. SynthScan examined 15,042 lines of code across 120 source files, recording 245 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 19.1 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 156 finding(s).
Are imports declared and package/API names verified? 41 finding(s).
Are wrappers, guards, and repeated structures necessary? 112 finding(s).
Which changes need focused human review? 245 finding(s).
Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 245 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | setup.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/check_license.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/test_model_merger.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/test_dataset.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/test_dataproto.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/test_checkpoint.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | tests/test_dynamic_batch.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/protocol.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/model_utils.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/seqlen_balancing.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/torch_functional.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/py_functional.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/ulysses.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/vllm_utils.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/dataset.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/tokenizer.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/flops_counter.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/torch_dtypes.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/fsdp_utils.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/checkpoint/fsdp_checkpoint_manager.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/checkpoint/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/checkpoint/checkpoint_manager.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/logger/gen_logger.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/logger/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/utils/logger/logger.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/models/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/models/monkey_patch.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/models/transformers/flash_attention_utils.py | 1 | # Copyright 2024 The Fairseq Authors and the HuggingFace Inc. team | COMMENT |
| LOW | verl/models/transformers/qwen2_vl.py | 1 | # Copyright 2024 The Qwen team, Alibaba Group and the HuggingFace Inc. team | COMMENT |
| LOW | verl/models/transformers/qwen3_vl.py | 1 | # Copyright 2024 The Qwen team, Alibaba Group and the HuggingFace Inc. team | COMMENT |
| LOW | verl/models/transformers/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/config.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/fsdp_workers.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/sharding_manager/fsdp_vllm.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/sharding_manager/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/sharding_manager/fsdp_ulysses.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/sharding_manager/base.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/rollout/config.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/rollout/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/rollout/vllm_rollout_spmd.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/rollout/base.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/reward/config.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/reward/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/reward/function.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/critic/dp_critic.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/critic/config.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/critic/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/critic/base.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/actor/config.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/actor/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/actor/dp_actor.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/workers/actor/base.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/single_controller/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/single_controller/ray/__init__.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/single_controller/ray/base.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/single_controller/base/worker.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| LOW | verl/single_controller/base/worker_group.py | 1 | # Copyright 2024 Bytedance Ltd. and/or its affiliates | COMMENT |
| 15 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_model_merger.py | 30 | def test_save_pretrained_preserves_checkpoint_generation_config(tmp_path, monkeypatch): | CODE |
| LOW | tests/test_model_merger.py | 56 | def test_save_pretrained_without_checkpoint_generation_config(tmp_path, monkeypatch): | CODE |
| LOW | tests/test_dataproto.py | 66 | def test_tensor_dict_constructor(): | CODE |
| LOW | tests/test_dataproto.py | 166 | def test_data_proto_save_load(): | CODE |
| LOW | tests/test_checkpoint.py | 43 | def test_remove_obsolete_ckpt(save_checkpoint_path): | CODE |
| LOW | verl/utils/seqlen_balancing.py | 153 | def get_seqlen_balanced_partitions(seqlen_list: list[int], k_partitions: int, equal_size: bool) -> list[list[int]]: | CODE |
| LOW | verl/utils/seqlen_balancing.py | 172 | def _check_and_sort_partitions(partitions): | CODE |
| LOW | verl/utils/torch_functional.py | 39 | def log_probs_from_logits_flash_attn(logits: torch.Tensor, labels: torch.Tensor) -> torch.Tensor: | CODE |
| LOW | verl/utils/torch_functional.py | 191 | def get_constant_schedule_with_warmup( | CODE |
| LOW | verl/utils/torch_functional.py | 207 | def get_cosine_schedule_with_warmup( | CODE |
| LOW | verl/utils/py_functional.py | 67 | def is_transformers_version_greater_than(content: str): | CODE |
| LOW⚡ | verl/utils/ulysses.py | 31 | def set_ulysses_sequence_parallel_group(group: dist.ProcessGroup): | CODE |
| LOW⚡ | verl/utils/ulysses.py | 39 | def get_ulysses_sequence_parallel_group() -> Optional[dist.ProcessGroup]: | CODE |
| LOW⚡ | verl/utils/ulysses.py | 47 | def get_ulysses_sequence_parallel_world_size(group: ProcessGroup = None) -> int: | CODE |
| LOW⚡ | verl/utils/ulysses.py | 55 | def get_ulysses_sequence_parallel_rank(group: ProcessGroup = None) -> int: | CODE |
| LOW | verl/utils/ulysses.py | 294 | def ulysses_pad_and_slice_inputs( | CODE |
| LOW | verl/utils/checkpoint/checkpoint_manager.py | 111 | def get_checkpoint_tracker_filename(root_path: str) -> str: | CODE |
| LOW | verl/models/transformers/flash_attention_utils.py | 62 | def _custom_flash_attention_forward( | CODE |
| LOW | verl/workers/fsdp_workers.py | 503 | def _process_multi_modal_inputs(self, data: DataProto): | CODE |
| LOW | verl/workers/sharding_manager/fsdp_vllm.py | 167 | def load_vllm_and_sync_weights(self): | CODE |
| LOW | verl/workers/sharding_manager/fsdp_vllm.py | 220 | def _drain_vllm_encoder_cache(self): | CODE |
| LOW | verl/workers/rollout/vllm_rollout_spmd.py | 54 | def _process_multi_modal_data( | CODE |
| LOW | verl/workers/reward/function.py | 49 | def compute_reward_sequential(self, data: DataProto) -> Tuple[torch.Tensor, dict[str, list[float]]]: | CODE |
| LOW | verl/single_controller/ray/base.py | 54 | def sort_placement_group_by_node_ip(pgs: list[PlacementGroup]) -> list[PlacementGroup]: | CODE |
| LOW | verl/single_controller/ray/base.py | 244 | def _init_with_detached_workers(self, worker_names: list[str]) -> None: | CODE |
| LOW | verl/single_controller/ray/base.py | 414 | def _bind_workers_method_to_parent(cls, key, user_defined_cls): | CODE |
| LOW | verl/single_controller/ray/base.py | 453 | def create_colocated_worker_cls(class_dict: dict[str, RayClassWithInitArgs]): | CODE |
| LOW | verl/single_controller/base/worker.py | 59 | def get_availale_master_addr_port(self) -> Tuple[str, str]: | CODE |
| LOW | verl/single_controller/base/worker.py | 195 | def execute_with_func_generator(self, func, *args, **kwargs): | CODE |
| LOW | verl/single_controller/base/worker_group.py | 113 | def _block_until_all_workers_alive(self) -> None: | CODE |
| LOW | verl/single_controller/base/worker_group.py | 121 | def start_worker_aliveness_check(self, every_n_seconds=1) -> None: | CODE |
| LOW | verl/single_controller/base/decorator.py | 48 | def _split_args_kwargs_data_proto(chunks: int, *args, **kwargs): | CODE |
| LOW | verl/single_controller/base/decorator.py | 76 | def _concat_data_proto_or_future(outputs: list[DataProto]) -> DataProto: | CODE |
| LOW⚡ | verl/single_controller/base/decorator.py | 106 | def dispatch_dp_compute_data_proto(worker_group: "WorkerGroup", *args, **kwargs): | CODE |
| LOW⚡ | verl/single_controller/base/decorator.py | 111 | def dispatch_dp_compute_data_proto_with_func(worker_group: "WorkerGroup", *args, **kwargs): | CODE |
| LOW⚡ | verl/single_controller/base/decorator.py | 118 | def collect_dp_compute_data_proto(worker_group: "WorkerGroup", outputs: list[DataProto]) -> DataProto: | CODE |
| LOW⚡ | verl/single_controller/base/decorator.py | 126 | def get_predefined_dispatch_fn(dispatch_mode: Dispatch): | CODE |
| LOW | verl/single_controller/base/decorator.py | 156 | def get_predefined_execute_fn(execute_mode: Execute): | CODE |
| LOW | verl/single_controller/base/register_center/ray.py | 27 | def create_worker_group_register_center(name, info): | CODE |
| LOW | verl/trainer/metrics.py | 116 | def compute_throughout_metrics(batch: DataProto, timing_raw: dict[str, float], num_gpus: int) -> dict[str, Any]: | CODE |
| LOW | verl/trainer/ray_trainer.py | 109 | def _check_resource_available(self): | CODE |
| LOW | verl/trainer/ray_trainer.py | 374 | def _maybe_log_val_generations( | CODE |
| LOW | verl/trainer/core_algos.py | 126 | def compute_gae_advantage_return( | CODE |
| LOW | verl/trainer/core_algos.py | 176 | def compute_grpo_outcome_advantage( | CODE |
| LOW | verl/trainer/core_algos.py | 220 | def compute_grpo_passk_outcome_advantage( | CODE |
| LOW | verl/trainer/core_algos.py | 269 | def compute_rloo_outcome_advantage( | CODE |
| LOW | verl/trainer/core_algos.py | 312 | def compute_reinforce_plus_plus_outcome_advantage( | CODE |
| LOW | verl/trainer/core_algos.py | 345 | def compute_remax_outcome_advantage( | CODE |
| LOW | examples/android_gui_cookbook/play_agent.py | 64 | def calculate_next_button_position(self) -> Tuple[int, int]: | CODE |
| LOW | examples/android_gui_cookbook/collect_data.py | 88 | def calculate_next_button_position(self) -> Tuple[int, int]: | CODE |
| LOW | scripts/model_merger.py | 48 | def save_pretrained_with_generation_config( | CODE |
| LOW | scripts/model_merger.py | 61 | def merge_lora_into_base_and_save( | CODE |
| LOW | scripts/model_merger.py | 104 | def upload_model_to_huggingface(local_path: str, remote_path: str): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/utils/flops_counter.py | 21 | CODE | |
| LOW | verl/utils/checkpoint/__init__.py | 15 | CODE | |
| LOW | verl/utils/checkpoint/__init__.py | 15 | CODE | |
| LOW | verl/utils/checkpoint/__init__.py | 15 | CODE | |
| LOW | verl/utils/logger/__init__.py | 16 | CODE | |
| LOW | verl/models/transformers/qwen2_vl.py | 21 | CODE | |
| LOW | verl/models/transformers/qwen2_vl.py | 21 | CODE | |
| LOW | verl/models/transformers/qwen2_vl.py | 27 | CODE | |
| LOW | verl/models/transformers/qwen3_vl.py | 21 | CODE | |
| LOW | verl/models/transformers/qwen3_vl.py | 21 | CODE | |
| LOW | verl/models/transformers/qwen3_vl.py | 27 | CODE | |
| LOW | verl/workers/config.py | 20 | CODE | |
| LOW | verl/workers/config.py | 20 | CODE | |
| LOW | verl/workers/config.py | 20 | CODE | |
| LOW | verl/workers/config.py | 20 | CODE | |
| LOW | verl/workers/sharding_manager/__init__.py | 16 | CODE | |
| LOW | verl/workers/sharding_manager/__init__.py | 17 | CODE | |
| LOW | verl/workers/sharding_manager/__init__.py | 18 | CODE | |
| LOW | verl/workers/rollout/__init__.py | 16 | CODE | |
| LOW | verl/workers/rollout/__init__.py | 17 | CODE | |
| LOW | verl/workers/reward/__init__.py | 15 | CODE | |
| LOW | verl/workers/reward/__init__.py | 16 | CODE | |
| LOW | verl/workers/critic/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/workers/actor/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/ray/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/ray/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/ray/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/ray/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/base/decorator.py | 26 | CODE | |
| LOW | verl/single_controller/base/__init__.py | 15 | CODE | |
| LOW | verl/single_controller/base/__init__.py | 16 | CODE | |
| LOW | verl/single_controller/base/__init__.py | 16 | CODE | |
| LOW | verl/single_controller/base/__init__.py | 16 | CODE | |
| LOW | verl/trainer/core_algos.py | 34 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | verl/protocol.py | 41 | except Exception: | CODE |
| HIGH | verl/workers/sharding_manager/fsdp_vllm.py | 243 | except Exception: | CODE |
| HIGH | verl/workers/sharding_manager/fsdp_vllm.py | 260 | except Exception: | CODE |
| HIGH | verl/workers/critic/dp_critic.py | 39 | except ImportError: | CODE |
| HIGH | verl/workers/actor/dp_actor.py | 41 | except ImportError: | CODE |
| HIGH | examples/reward_function/r1v.py | 39 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/protocol.py | 41 | except Exception: | CODE |
| LOW | verl/utils/py_functional.py | 62 | except Exception: | CODE |
| LOW | verl/utils/checkpoint/checkpoint_manager.py | 87 | except Exception as e: | CODE |
| LOW | verl/utils/checkpoint/checkpoint_manager.py | 168 | except Exception as e: | CODE |
| LOW | verl/workers/fsdp_workers.py | 189 | except Exception: | CODE |
| LOW | verl/workers/sharding_manager/fsdp_vllm.py | 243 | except Exception: | CODE |
| LOW | verl/workers/sharding_manager/fsdp_vllm.py | 260 | except Exception: | CODE |
| LOW | verl/workers/reward/function.py | 122 | except Exception as e: | CODE |
| LOW | verl/single_controller/ray/base.py | 423 | except Exception: | CODE |
| LOW | verl/single_controller/ray/base.py | 443 | except Exception: | CODE |
| LOW | verl/single_controller/base/worker_group.py | 142 | except Exception: | CODE |
| LOW | verl/single_controller/base/worker_group.py | 177 | except Exception: | CODE |
| LOW | verl/single_controller/base/worker_group.py | 193 | except Exception: | CODE |
| LOW | examples/reward_function/r1v.py | 39 | except Exception: | CODE |
| LOW | examples/android_gui_cookbook/adb_controller.py | 102 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/adb_controller.py | 123 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/adb_controller.py | 141 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/play_agent.py | 109 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/play_agent.py | 154 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/vlm_client.py | 70 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/vlm_client.py | 105 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/collect_data.py | 131 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/collect_data.py | 374 | except Exception as e: | CODE |
| LOW | examples/android_gui_cookbook/collect_data.py | 440 | except Exception as e: | CODE |
| LOW | scripts/model_merger.py | 188 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/protocol.py | 45 | __all__ = ["DataProto", "union_tensor_dict"] | CODE |
| LOW | verl/utils/checkpoint/__init__.py | 18 | __all__ = ["CHECKPOINT_TRACKER", "find_latest_ckpt", "remove_obsolete_ckpt"] | CODE |
| LOW | verl/utils/logger/__init__.py | 19 | __all__ = ["Tracker"] | CODE |
| LOW | verl/workers/config.py | 26 | __all__ = [ | CODE |
| LOW | verl/workers/sharding_manager/__init__.py | 21 | __all__ = ["BaseShardingManager", "FSDPUlyssesShardingManager", "FSDPVLLMShardingManager"] | CODE |
| LOW | verl/workers/rollout/__init__.py | 20 | __all__ = ["RolloutConfig", "vLLMRollout"] | CODE |
| LOW | verl/workers/rollout/base.py | 20 | __all__ = ["BaseRollout"] | CODE |
| LOW | verl/workers/reward/__init__.py | 19 | __all__ = ["AutoRewardManager", "RewardConfig"] | CODE |
| LOW | verl/workers/critic/dp_critic.py | 43 | __all__ = ["DataParallelPPOCritic"] | CODE |
| LOW | verl/workers/critic/__init__.py | 18 | __all__ = ["CriticConfig"] | CODE |
| LOW | verl/workers/critic/base.py | 27 | __all__ = ["BasePPOCritic"] | CODE |
| LOW | verl/workers/actor/__init__.py | 18 | __all__ = [ | CODE |
| LOW | verl/workers/actor/dp_actor.py | 45 | __all__ = ["DataParallelPPOActor"] | CODE |
| LOW | verl/workers/actor/base.py | 27 | __all__ = ["BasePPOActor"] | CODE |
| LOW | verl/single_controller/ray/__init__.py | 18 | __all__ = ["RayClassWithInitArgs", "RayResourcePool", "RayWorkerGroup", "create_colocated_worker_cls"] | CODE |
| LOW | verl/single_controller/ray/base.py | 34 | __all__ = ["Worker"] | CODE |
| LOW | verl/single_controller/base/__init__.py | 19 | __all__ = ["ClassWithInitArgs", "ResourcePool", "Worker", "WorkerGroup"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/utils/model_utils.py | 38 | CODE | |
| LOW | verl/utils/torch_functional.py | 154 | CODE | |
| LOW | verl/utils/torch_functional.py | 318 | CODE | |
| LOW | verl/utils/dataset.py | 157 | CODE | |
| LOW | verl/utils/dataset.py | 222 | CODE | |
| LOW | verl/utils/flops_counter.py | 24 | CODE | |
| LOW | verl/utils/fsdp_utils.py | 138 | CODE | |
| LOW | verl/utils/fsdp_utils.py | 154 | CODE | |
| LOW | verl/models/transformers/qwen2_vl.py | 30 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 503 | CODE | |
| LOW | verl/workers/actor/dp_actor.py | 219 | CODE | |
| LOW | verl/single_controller/ray/base.py | 249 | CODE | |
| LOW | verl/trainer/ray_trainer.py | 561 | CODE | |
| LOW | examples/android_gui_cookbook/collect_data.py | 382 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/protocol.py | 680 | CODE | |
| LOW | verl/utils/torch_functional.py | 259 | CODE | |
| LOW | verl/utils/dataset.py | 97 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 601 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 630 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 662 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 695 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 717 | CODE | |
| LOW | verl/workers/fsdp_workers.py | 763 | CODE | |
| LOW | verl/single_controller/ray/base.py | 49 | CODE | |
| LOW | verl/single_controller/base/worker.py | 202 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | verl/trainer/ray_trainer.py | 406 | repeat_times = self.config.worker.rollout.val_override_config.get("n", 1) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 13 | ### Check our new open-source project —<br>🐧 [PenguinHarness](https://github.com/Prism-Shadow/penguin-harness): Local-fi | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | verl/utils/logger/gen_logger.py | 68 | # Create a new table with same columns and existing data | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | verl/trainer/ray_trainer.py | 93 | # For Megatron backend, we recommend using max_colocate_count>1 that can utilize different WorkerGroup for d | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | verl/utils/logger/logger.py | 131 | self.writer.add_hparams(hparam_dict=config_dict, metric_dict={"placeholder": 0}) | CODE |