forked from NVIDIA-NeMo/RL
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyrefly.toml
More file actions
285 lines (282 loc) · 13.6 KB
/
Copy pathpyrefly.toml
File metadata and controls
285 lines (282 loc) · 13.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
python-version = "3.13.13"
replace-imports-with-any = [
"nemo_automodel.*",
"pynvml.*",
"hydra._internal.*",
"hydra.core.override_parser.*",
"datasets.*",
"transformers.*",
"tensorrt_llm.*",
"vllm.*",
"dynamo.*",
"math_verify.*",
"sympy.*",
"torchdata.*",
"torchaudio.*",
"torchcodec.*",
"nemo.*",
"megatron.*",
"ray.*",
"numpy.*",
"sphinx.*",
"docutils.*",
"zstandard.*",
]
project-includes = [
# TODO: enable these once we have 100 correctness
#"nemo_rl/**/*.py",
#"examples/**/*.py",
#"docs/*.py",
#"tools/**/*.py",
# Generate the list of errors per file
# uv run --group dev pyrefly check $(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py') --output-format json | jq -r --slurpfile all_files <(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py' | jq -R -s 'split("\n")[:-1]') --arg pwd "$(pwd)/" '(.errors | group_by(.path) | map({(.[0].path | sub($pwd; "")): length}) | add // {}) as $error_counts | $all_files[0][] | . as $file | "\($error_counts[$file] // 0)\t\($file)"' | sort -n
# Generate list of files with 0 errors
# uv run --group dev pyrefly check $(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py') --output-format json | jq -r --slurpfile all_files <(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py' | jq -R -s 'split("\n")[:-1]') --arg pwd "$(pwd)/" '(.errors | group_by(.path) | map({(.[0].path | sub($pwd; "")): length}) | add // {}) as $error_counts | $all_files[0][] | . as $file | if ($error_counts[$file] // 0) == 0 then $file else empty end'
# uv run --group dev pyrefly check $(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py') --output-format json | jq -r --slurpfile all_files <(git ls-files 'nemo_rl/**/*.py' 'examples/**/*.py' 'docs/*.py' 'tools/**/*.py' | jq -R -s 'split("\n")[:-1]') --arg pwd "$(pwd)/" '(.errors | group_by(.path) | map({(.[0].path | sub($pwd; "")): length}) | add // {}) as $error_counts | $all_files[0][] | . as $file | if ($error_counts[$file] // 0) == 0 then " \"\($file)\"," else empty end'
"docs/conf.py",
"docs/helpers.py",
"examples/converters/convert_dcp_to_hf.py",
"examples/converters/convert_lora_to_hf.py",
"examples/converters/convert_megatron_to_hf.py",
"examples/converters/convert_megatron_to_hf_gpu.py",
"examples/custom_dataloader/custom_dataloader.py",
"examples/custom_parallel/custom_parallel.py",
"examples/custom_parallel/llama_nemotron_super_49b_custom_plan.py",
"examples/modelopt/export_quantized_to_hf.py",
"examples/nemo_gym/nemotron-3-super-omni/prepare_circle_count_mopd_data.py",
"nemo_rl/algorithms/__init__.py",
"nemo_rl/algorithms/advantage_estimator.py",
"nemo_rl/algorithms/async_utils/__init__.py",
"nemo_rl/algorithms/async_utils/interfaces.py",
"nemo_rl/algorithms/async_utils/replay_buffer.py",
"nemo_rl/algorithms/async_utils/staleness_sampler.py",
"nemo_rl/algorithms/async_utils/trajectory_collector.py",
"nemo_rl/algorithms/logits_sampling_utils.py",
"nemo_rl/algorithms/loss/__init__.py",
"nemo_rl/algorithms/loss/interfaces.py",
"nemo_rl/algorithms/loss/utils.py",
"nemo_rl/algorithms/metric_utils.py",
"nemo_rl/algorithms/opd.py",
"nemo_rl/algorithms/reward_functions.py",
"nemo_rl/algorithms/single_controller.py",
"nemo_rl/algorithms/single_controller_utils/__init__.py",
"nemo_rl/algorithms/single_controller_utils/config.py",
"nemo_rl/algorithms/single_controller_utils/setup.py",
"nemo_rl/algorithms/single_controller_utils/utils.py",
"nemo_rl/algorithms/utils.py",
"nemo_rl/algorithms/x_token/__init__.py",
"nemo_rl/algorithms/x_token/utils.py",
"nemo_rl/data/__init__.py",
"nemo_rl/data/chat_templates.py",
"nemo_rl/data/collate_fn.py",
"nemo_rl/data/dataloader.py",
"nemo_rl/data/datasets/__init__.py",
"nemo_rl/data/datasets/eval_datasets/__init__.py",
"nemo_rl/data/datasets/eval_datasets/daily_omni.py",
"nemo_rl/data/datasets/eval_datasets/gpqa.py",
"nemo_rl/data/datasets/eval_datasets/local_math_dataset.py",
"nemo_rl/data/datasets/eval_datasets/math.py",
"nemo_rl/data/datasets/eval_datasets/mmau.py",
"nemo_rl/data/datasets/eval_datasets/mmlu.py",
"nemo_rl/data/datasets/eval_datasets/mmlu_pro.py",
"nemo_rl/data/datasets/preference_datasets/__init__.py",
"nemo_rl/data/datasets/preference_datasets/binary_preference_dataset.py",
"nemo_rl/data/datasets/preference_datasets/helpsteer3.py",
"nemo_rl/data/datasets/preference_datasets/preference_dataset.py",
"nemo_rl/data/datasets/preference_datasets/tulu3.py",
"nemo_rl/data/datasets/processed_dataset.py",
"nemo_rl/data/datasets/raw_dataset.py",
"nemo_rl/data/datasets/response_datasets/__init__.py",
"nemo_rl/data/datasets/response_datasets/aime.py",
"nemo_rl/data/datasets/response_datasets/arrow_text_dataset.py",
"nemo_rl/data/datasets/response_datasets/clevr.py",
"nemo_rl/data/datasets/response_datasets/dapo_math.py",
"nemo_rl/data/datasets/response_datasets/deepscaler.py",
"nemo_rl/data/datasets/response_datasets/geometry3k.py",
"nemo_rl/data/datasets/response_datasets/gsm8k.py",
"nemo_rl/data/datasets/response_datasets/helpsteer3.py",
"nemo_rl/data/datasets/response_datasets/mmpr_tiny.py",
"nemo_rl/data/datasets/response_datasets/nemogym_dataset.py",
"nemo_rl/data/datasets/response_datasets/nemotron_cascade2_sft.py",
"nemo_rl/data/datasets/response_datasets/numinamath.py",
"nemo_rl/data/datasets/response_datasets/oai_format_dataset.py",
"nemo_rl/data/datasets/response_datasets/oasst.py",
"nemo_rl/data/datasets/response_datasets/openmathinstruct2.py",
"nemo_rl/data/datasets/response_datasets/openr1_math.py",
"nemo_rl/data/datasets/response_datasets/refcoco.py",
"nemo_rl/data/datasets/response_datasets/response_dataset.py",
"nemo_rl/data/datasets/response_datasets/squad.py",
"nemo_rl/data/datasets/response_datasets/tulu3.py",
"nemo_rl/data/datasets/utils.py",
"nemo_rl/data/interfaces.py",
"nemo_rl/data/multimodal_utils.py",
"nemo_rl/data/packing/__init__.py",
"nemo_rl/data/processors.py",
"nemo_rl/data_plane/__init__.py",
"nemo_rl/data_plane/adapters/__init__.py",
"nemo_rl/data_plane/adapters/noop.py",
"nemo_rl/data_plane/adapters/transfer_queue.py",
"nemo_rl/data_plane/adapters/transfer_queue_env.py",
"nemo_rl/data_plane/codec.py",
"nemo_rl/data_plane/column_io.py",
"nemo_rl/data_plane/factory.py",
"nemo_rl/data_plane/interfaces.py",
"nemo_rl/data_plane/observability.py",
"nemo_rl/data_plane/preshard.py",
"nemo_rl/data_plane/schema.py",
"nemo_rl/data_plane/worker_mixin.py",
"nemo_rl/distributed/__init__.py",
"nemo_rl/distributed/collectives.py",
"nemo_rl/distributed/named_sharding.py",
"nemo_rl/distributed/numa_utils.py",
"nemo_rl/distributed/ray_actor_environment_registry.py",
"nemo_rl/distributed/virtual_cluster.py",
"nemo_rl/distributed/worker_group_utils.py",
"nemo_rl/environments/__init__.py",
"nemo_rl/environments/code_jaccard_environment.py",
"nemo_rl/environments/games/sliding_puzzle.py",
"nemo_rl/environments/interfaces.py",
"nemo_rl/environments/math_environment.py",
"nemo_rl/environments/metrics.py",
"nemo_rl/environments/nemo_gym_video.py",
"nemo_rl/environments/nemotron_utils.py",
"nemo_rl/environments/rewards.py",
"nemo_rl/environments/utils.py",
"nemo_rl/environments/vlm_environment.py",
"nemo_rl/evals/__init__.py",
"nemo_rl/evals/answer_parsing.py",
"nemo_rl/experience/__init__.py",
"nemo_rl/experience/failures.py",
"nemo_rl/experience/interfaces.py",
"nemo_rl/experience/metric_utils.py",
"nemo_rl/experience/payload.py",
"nemo_rl/experience/rollout_manager.py",
"nemo_rl/experience/rollouts.py",
"nemo_rl/modelopt/__init__.py",
"nemo_rl/modelopt/models/__init__.py",
"nemo_rl/modelopt/models/generation/__init__.py",
"nemo_rl/modelopt/models/generation/vllm_modelopt.py",
"nemo_rl/modelopt/models/generation/vllm_quant_worker.py",
"nemo_rl/modelopt/models/policy/__init__.py",
"nemo_rl/modelopt/models/policy/workers/__init__.py",
"nemo_rl/modelopt/models/policy/workers/dtensor_quant_policy_worker.py",
"nemo_rl/modelopt/models/policy/workers/dtensor_quant_policy_worker_v2.py",
"nemo_rl/modelopt/registry.py",
"nemo_rl/models/__init__.py",
"nemo_rl/models/automodel/__init__.py",
"nemo_rl/models/dtensor/__init__.py",
"nemo_rl/models/dtensor/parallelize.py",
"nemo_rl/models/generation/__init__.py",
"nemo_rl/models/generation/constants.py",
"nemo_rl/models/generation/fleet_health.py",
"nemo_rl/models/generation/dynamo/__init__.py",
"nemo_rl/models/generation/dynamo/arguments.py",
"nemo_rl/models/generation/dynamo/config.py",
"nemo_rl/models/generation/dynamo/dynamo_generation.py",
"nemo_rl/models/generation/dynamo/dynamo_worker.py",
"nemo_rl/models/generation/dynamo/http_client.py",
"nemo_rl/models/generation/dynamo/managed_runtime.py",
"nemo_rl/models/generation/dynamo/metrics.py",
"nemo_rl/models/generation/dynamo/refit.py",
"nemo_rl/models/generation/dynamo/token_wrapper.py",
"nemo_rl/models/generation/dynamo/validate_dynamo_vllm_args.py",
"nemo_rl/models/generation/dynamo/venv.py",
"nemo_rl/models/generation/dynamo/worker_pool.py",
"nemo_rl/models/generation/interfaces.py",
"nemo_rl/models/generation/generation_router.py",
"nemo_rl/models/generation/megatron/__init__.py",
"nemo_rl/models/generation/megatron/config.py",
"nemo_rl/models/generation/megatron/utils.py",
"nemo_rl/models/generation/openai_server_utils.py",
"nemo_rl/models/generation/sglang/config.py",
"nemo_rl/models/generation/sglang/utils/http_utils.py",
"nemo_rl/models/generation/sglang/utils/ip_port_utils.py",
"nemo_rl/models/generation/sglang/utils/patches.py",
"nemo_rl/models/generation/sglang/utils/ray_utils.py",
"nemo_rl/models/generation/trtllm/__init__.py",
"nemo_rl/models/generation/trtllm/config.py",
"nemo_rl/models/generation/trtllm/trtllm_generation.py",
"nemo_rl/models/generation/trtllm/trtllm_http_server.py",
"nemo_rl/models/generation/vllm/__init__.py",
"nemo_rl/models/generation/vllm/checkpoint_engine.py",
"nemo_rl/models/generation/vllm/collective_rpc.py",
"nemo_rl/models/generation/vllm/config.py",
"nemo_rl/models/generation/vllm/patches.py",
"nemo_rl/models/generation/vllm/quantization/fp8_train_utils.py",
"nemo_rl/models/generation/vllm/quantization/mxfp8_utils.py",
"nemo_rl/models/generation/vllm/reasoning_parsers/nano_v3_reasoning_parser.py",
"nemo_rl/models/generation/vllm/refit_layout.py",
"nemo_rl/models/generation/vllm/refit_loader.py",
"nemo_rl/models/generation/vllm/utils.py",
"nemo_rl/models/generation/vllm/video_utils.py",
"nemo_rl/models/generation/vllm/vllm_backend.py",
"nemo_rl/models/generation/vllm/vllm_sparse_delta.py",
"nemo_rl/models/generation/vllm/vllm_sparse_refit.py",
"nemo_rl/models/generation/vllm/worker_utils.py",
"nemo_rl/models/huggingface/__init__.py",
"nemo_rl/models/megatron/__init__.py",
"nemo_rl/models/megatron/draft/__init__.py",
"nemo_rl/models/megatron/memory_saver.py",
"nemo_rl/models/policy/__init__.py",
"nemo_rl/models/policy/interfaces.py",
"nemo_rl/models/policy/utils.py",
"nemo_rl/models/policy/workers/__init__.py",
"nemo_rl/models/policy/workers/megatron_remote_sparse_refit.py",
"nemo_rl/models/policy/workers/checkpoint_engine.py",
"nemo_rl/models/policy/workers/patches.py",
"nemo_rl/models/value/__init__.py",
"nemo_rl/models/value/config.py",
"nemo_rl/models/value/workers/__init__.py",
"nemo_rl/utils/__init__.py",
"nemo_rl/utils/checkpoint_engines/__init__.py",
"nemo_rl/utils/checkpoint_engines/base.py",
"nemo_rl/utils/checkpoint_engines/nixl.py",
"nemo_rl/utils/checkpoint.py",
"nemo_rl/utils/config.py",
"nemo_rl/utils/fastokens.py",
"nemo_rl/utils/grad_norm.py",
"nemo_rl/utils/multimodal_payload_metrics.py",
"nemo_rl/utils/native_checkpoint.py",
"nemo_rl/utils/nsys.py",
"nemo_rl/utils/nvml.py",
"nemo_rl/utils/packed_tensor.py",
"nemo_rl/utils/prefetch_venvs.py",
"nemo_rl/utils/r3_trace.py",
"nemo_rl/utils/routed_experts_codec.py",
"nemo_rl/utils/timer.py",
"nemo_rl/utils/venvs.py",
"nemo_rl/utils/weight_transfer_http.py",
"nemo_rl/utils/weight_transfer_sparse_codec.py",
"nemo_rl/utils/weight_transfer_stream.py",
"nemo_rl/utils/weight_transfer_zmq.py",
"nemo_rl/weight_sync/__init__.py",
"nemo_rl/weight_sync/checkpoint_engine_config.py",
"nemo_rl/weight_sync/checkpoint_engine_weight_synchronizer.py",
"nemo_rl/weight_sync/collective_weight_synchronizer.py",
"nemo_rl/weight_sync/factory.py",
"nemo_rl/weight_sync/http_weight_synchronizer.py",
"nemo_rl/weight_sync/interfaces.py",
"nemo_rl/weight_sync/ipc_weight_synchronizer.py",
"nemo_rl/weight_sync/megatron_weight_synchronizer.py",
"nemo_rl/weight_sync/vllm_remote_sparse_weight_synchronizer.py",
"nemo_rl/weight_sync/nccl_reshard_utils.py",
"nemo_rl/weight_sync/nccl_reshard_weight_synchronizer.py",
"nemo_rl/weight_sync/xferdtensor.py",
"nemo_rl/weight_sync/xferdtensor_python.py",
"tools/external_gym_vllm/vllm_pool_lb.py",
"tools/external_gym_vllm/serve_vllm_on_ray.py",
"tools/model_diagnostics/1.max_model_len_respected.py",
"tools/model_diagnostics/2.long_generation_decode_vs_prefill.py",
"tools/model_diagnostics/3.check_and_reinit_hf_model_embeddings_untrained.py",
"tools/model_diagnostics/4.vllm_precision_compilation_test.py",
"tools/model_diagnostics/5.prefix_caching_nan.py",
"tools/model_diagnostics/6.vllm_routed_experts_completeness.py",
"tools/refit_bandwidth_calculator.py",
"tools/x_token/__init__.py",
"tools/x_token/reapply_exact_map.py",
"tools/x_token/sort_and_cut_projection_matrix.py",
"tools/x_token/utils.py",
]
# Disable TypedDict mutation errors since TypedDict objects are regular dicts at runtime
[errors]
missing-attribute = false