From d9b10e3b1c3c52893e0b0c29c9d6d8a8c2f8e1cc Mon Sep 17 00:00:00 2001 From: aoshen02 Date: Tue, 2 Jun 2026 07:06:14 +0000 Subject: [PATCH 01/16] Rename slime references to vime --- .claude/skills/add-dynamic-filter/SKILL.md | 18 +- .../skills/add-eval-dataset-config/SKILL.md | 12 +- .claude/skills/add-reward-function/SKILL.md | 16 +- .claude/skills/add-rollout-function/SKILL.md | 30 ++-- .claude/skills/add-tests-and-ci/SKILL.md | 4 +- .github/ISSUE_TEMPLATE/bug_report.yml | 22 +-- .github/ISSUE_TEMPLATE/config.yml | 8 +- .github/ISSUE_TEMPLATE/question.yml | 24 +-- .github/workflows/pr-test.yml | 162 +++++++++--------- .github/workflows/pr-test.yml.j2 | 44 ++--- .github/workflows/release-docs.yaml | 2 +- CONTRIBUTING.md | 4 +- README.md | 24 +-- README_zh.md | 24 +-- docker/Dockerfile | 4 +- docs/README.md | 4 +- docs/_static/js/lang-toggle.js | 8 +- docs/build.sh | 2 +- docs/build_all.sh | 12 +- docs/conf.py | 22 +-- .../advanced/arch-support-beyond-megatron.md | 10 +- docs/en/advanced/fault-tolerance.md | 8 +- docs/en/advanced/megatron-config.md | 4 +- docs/en/advanced/pd-disaggregation.md | 2 +- docs/en/advanced/reproducibility.md | 6 +- docs/en/advanced/speculative-decoding.md | 4 +- docs/en/advanced/vllm-config.md | 30 ++-- docs/en/developer_guide/ci.md | 8 +- docs/en/developer_guide/debug.md | 12 +- docs/en/developer_guide/trace.md | 10 +- docs/en/examples/qwen3-30B-A3B.md | 8 +- docs/en/examples/qwen3-4B.md | 36 ++-- docs/en/get_started/customization.md | 16 +- docs/en/get_started/qa.md | 6 +- docs/en/get_started/quick_start.md | 68 ++++---- docs/en/get_started/usage.md | 66 +++---- docs/en/index.rst | 6 +- .../advanced/arch-support-beyond-megatron.md | 10 +- docs/zh/advanced/fault-tolerance.md | 4 +- docs/zh/advanced/megatron-config.md | 4 +- docs/zh/advanced/pd-disaggregation.md | 2 +- docs/zh/advanced/reproducibility.md | 6 +- docs/zh/advanced/speculative-decoding.md | 4 +- docs/zh/advanced/vllm-config.md | 30 ++-- docs/zh/developer_guide/ci.md | 8 +- docs/zh/developer_guide/debug.md | 12 +- docs/zh/developer_guide/trace.md | 10 +- docs/zh/examples/qwen3-30B-A3B.md | 8 +- docs/zh/examples/qwen3-4B.md | 38 ++-- docs/zh/get_started/customization.md | 16 +- docs/zh/get_started/qa.md | 6 +- docs/zh/get_started/quick_start.md | 66 +++---- docs/zh/get_started/usage.md | 64 +++---- docs/zh/index.rst | 6 +- examples/README.md | 4 +- examples/fully_async/README.md | 2 +- .../fully_async/run-qwen3-4b-fully_async.sh | 4 +- examples/geo3k_vlm/README.md | 14 +- examples/geo3k_vlm/run_geo3k_qwen35.sh | 10 +- examples/geo3k_vlm/run_geo3k_vlm.sh | 12 +- examples/geo3k_vlm/run_geo3k_vlm_sft.sh | 12 +- examples/geo3k_vlm_multi_turn/README.md | 6 +- .../run_geo3k_vlm_multi_turn.py | 6 +- .../run_geo3k_vlm_multi_turn_grpo_npu.py | 6 +- .../run_geo3k_vlm_multi_turn_ppo_npu.py | 6 +- examples/geo3k_vlm_multi_turn/run_grpo_npu.sh | 4 +- examples/geo3k_vlm_multi_turn/run_ppo_npu.sh | 4 +- examples/multi_agent/README.md | 6 +- .../run-qwen3-30B-A3B-multi-agent.sh | 4 +- .../train_infer_mismatch_helper/README.md | 2 +- .../run-qwen3-4b-mis.sh | 4 +- scripts/run-qwen3-30B-A3B.sh | 4 +- scripts/run-qwen3-4B.sh | 8 +- tests/ci/README.md | 6 +- tests/ci/github_runner/.env.example | 2 +- tests/ci/github_runner/docker-compose.yml | 6 +- tests/plugin_contracts/_shared.py | 4 +- tests/test_moonlight_16B_A3B.py | 4 +- tests/test_moonlight_16B_A3B_r3.py | 4 +- tests/test_quick_start_glm4_9B.py | 4 +- tests/test_qwen2.5_0.5B_async_short.py | 2 +- ...t_qwen2.5_0.5B_debug_rollout_then_train.py | 4 +- tests/test_qwen2.5_0.5B_opd_vllm.py | 2 +- ...test_qwen2.5_0.5B_ppo_critic_only_short.py | 2 +- tests/test_qwen2.5_0.5B_short.py | 2 +- tests/test_qwen2.5_0.5B_vllm_config.py | 2 +- ...st_qwen2.5_0.5B_vllm_config_distributed.py | 2 +- tests/test_qwen3.5_0.8B_gsm8k_async_short.py | 2 +- tests/test_qwen3.5_0.8B_gsm8k_short.py | 2 +- tests/test_qwen3_0.6B_parallel_check.py | 4 +- tests/test_qwen3_30B_A3B.py | 8 +- tests/test_qwen3_30B_A3B_r3.py | 8 +- tests/test_qwen3_4B_ckpt.py | 12 +- tests/test_qwen3_4B_ppo.py | 4 +- tests/test_qwen3_4B_ppo_disaggregate.py | 4 +- tests/test_qwen3_4B_ppo_train_critic_only.py | 4 +- tests/test_vllm_config_mixed_offload.py | 2 +- tests/test_vllm_config_mixed_offload_ft.py | 2 +- .../test_update_weight_from_tensor.py | 6 +- vime/backends/megatron_utils/arguments.py | 2 +- .../megatron_chunked_grad_coalesce_patch.py | 10 +- .../update_weight_from_tensor.py | 10 +- vime/backends/vllm_utils/arguments.py | 2 +- vime/backends/vllm_utils/vllm_engine.py | 6 +- vime/ray/rollout.py | 2 +- vime/utils/__init__.py | 2 +- vime/utils/arguments.py | 22 +-- vime/utils/external_utils/command_utils.py | 16 +- vime/utils/external_utils/typer_utils.py | 6 +- vime/utils/http_utils.py | 6 +- vime/utils/trace_utils.py | 4 +- vime_plugins/rollout_buffer/README.md | 8 +- vime_plugins/rollout_buffer/README_zh.md | 10 +- .../rollout_buffer/rollout_buffer_example.sh | 2 +- 114 files changed, 685 insertions(+), 685 deletions(-) diff --git a/.claude/skills/add-dynamic-filter/SKILL.md b/.claude/skills/add-dynamic-filter/SKILL.md index 46e58e161..27390a9b6 100644 --- a/.claude/skills/add-dynamic-filter/SKILL.md +++ b/.claude/skills/add-dynamic-filter/SKILL.md @@ -1,6 +1,6 @@ --- name: add-dynamic-filter -description: Guide for adding dynamic/filter hooks in slime rollout pipeline. Use when user wants sample-group selection during rollout, buffer filtering before training, or per-sample masking/processing hooks. +description: Guide for adding dynamic/filter hooks in vime rollout pipeline. Use when user wants sample-group selection during rollout, buffer filtering before training, or per-sample masking/processing hooks. --- # Add Dynamic Filter @@ -27,7 +27,7 @@ Use this skill when: ### Step 2: Implement the Function Signature -Dynamic sampling filter (called in `slime/rollout/vllm_rollout.py`): +Dynamic sampling filter (called in `vime/rollout/vllm_rollout.py`): ```python def filter_function(args, samples, **kwargs): @@ -37,12 +37,12 @@ def filter_function(args, samples, **kwargs): Preferred return type: ```python -from slime.rollout.filter_hub.base_types import DynamicFilterOutput +from vime.rollout.filter_hub.base_types import DynamicFilterOutput return DynamicFilterOutput(keep=True, reason=None) ``` -Buffer filter (called in `slime/rollout/data_source.py`): +Buffer filter (called in `vime/rollout/data_source.py`): ```python def buffer_filter(args, rollout_id, buffer, num_samples): @@ -74,7 +74,7 @@ def process_all_samples(args, all_samples, data_source): Example wiring: ```bash ---dynamic-sampling-filter-path slime.rollout.filter_hub.dynamic_sampling_filters.check_reward_nonzero_std +--dynamic-sampling-filter-path vime.rollout.filter_hub.dynamic_sampling_filters.check_reward_nonzero_std --buffer-filter-path .buffer_filter --rollout-sample-filter-path .rollout_sample_filter --rollout-all-samples-process-path .process_all_samples @@ -95,7 +95,7 @@ Example wiring: ## Reference Locations -- Dynamic filter types: `slime/rollout/filter_hub/base_types.py` -- Dynamic filter example: `slime/rollout/filter_hub/dynamic_sampling_filters.py` -- Rollout generation hook points: `slime/rollout/vllm_rollout.py` -- Buffer filter hook point: `slime/rollout/data_source.py` +- Dynamic filter types: `vime/rollout/filter_hub/base_types.py` +- Dynamic filter example: `vime/rollout/filter_hub/dynamic_sampling_filters.py` +- Rollout generation hook points: `vime/rollout/vllm_rollout.py` +- Buffer filter hook point: `vime/rollout/data_source.py` diff --git a/.claude/skills/add-eval-dataset-config/SKILL.md b/.claude/skills/add-eval-dataset-config/SKILL.md index 6ff2463e5..42bf0c930 100644 --- a/.claude/skills/add-eval-dataset-config/SKILL.md +++ b/.claude/skills/add-eval-dataset-config/SKILL.md @@ -1,11 +1,11 @@ --- name: add-eval-dataset-config -description: Guide for adding and validating evaluation dataset configuration in slime. Use when user wants to configure eval datasets via --eval-config or --eval-prompt-data, add per-dataset overrides, or customize evaluation rollout behavior. +description: Guide for adding and validating evaluation dataset configuration in vime. Use when user wants to configure eval datasets via --eval-config or --eval-prompt-data, add per-dataset overrides, or customize evaluation rollout behavior. --- # Add Eval Dataset Config -Configure evaluation datasets in slime with explicit dataset-level overrides and predictable runtime behavior. +Configure evaluation datasets in vime with explicit dataset-level overrides and predictable runtime behavior. ## When to Use @@ -53,7 +53,7 @@ eval: ### Step 3: Understand Override Priority -`slime/utils/eval_config.py` resolves fields in this order: +`vime/utils/eval_config.py` resolves fields in this order: 1. Dataset-level values in `eval.datasets[*]` 2. `eval.defaults` @@ -85,7 +85,7 @@ Use a separate eval function when inference/eval behavior must differ from train ## Reference Locations -- Eval config model: `slime/utils/eval_config.py` -- Eval config resolution: `slime/utils/arguments.py` -- Eval rollout path: `slime/rollout/vllm_rollout.py` +- Eval config model: `vime/utils/eval_config.py` +- Eval config resolution: `vime/utils/arguments.py` +- Eval rollout path: `vime/rollout/vllm_rollout.py` - Customization docs: `docs/en/get_started/customization.md` diff --git a/.claude/skills/add-reward-function/SKILL.md b/.claude/skills/add-reward-function/SKILL.md index f6ba3f9a7..453217747 100644 --- a/.claude/skills/add-reward-function/SKILL.md +++ b/.claude/skills/add-reward-function/SKILL.md @@ -1,11 +1,11 @@ --- name: add-reward-function -description: Guide for adding a custom reward function in slime and wiring it through --custom-rm-path (and optional reward post-processing). Use when user wants new reward logic, remote/service reward integration, or task-specific reward shaping. +description: Guide for adding a custom reward function in vime and wiring it through --custom-rm-path (and optional reward post-processing). Use when user wants new reward logic, remote/service reward integration, or task-specific reward shaping. --- # Add Reward Function -Implement custom reward logic and connect it to slime rollout/training safely. +Implement custom reward logic and connect it to vime rollout/training safely. ## When to Use @@ -24,11 +24,11 @@ Pick one of these: - Single-sample mode (`--group-rm` disabled): custom function gets one `Sample` - Group/batch mode (`--group-rm` enabled): custom function gets `list[Sample]` -`slime.rollout.rm_hub.__init__.py` calls your function via `--custom-rm-path`. +`vime.rollout.rm_hub.__init__.py` calls your function via `--custom-rm-path`. ### Step 2: Create Reward Module -Create `slime/rollout/rm_hub/.py`. +Create `vime/rollout/rm_hub/.py`. Supported signatures: @@ -66,14 +66,14 @@ Wire with: --custom-reward-post-process-path .post_process_rewards ``` -This hook is consumed in `slime/ray/rollout.py`. +This hook is consumed in `vime/ray/rollout.py`. ### Step 5: Wire and Validate Use: ```bash ---custom-rm-path slime.rollout.rm_hub..custom_rm +--custom-rm-path vime.rollout.rm_hub..custom_rm ``` ## Common Mistakes @@ -85,6 +85,6 @@ Use: ## Reference Locations -- Reward dispatch: `slime/rollout/rm_hub/__init__.py` -- Reward post-process hook: `slime/ray/rollout.py` +- Reward dispatch: `vime/rollout/rm_hub/__init__.py` +- Reward post-process hook: `vime/ray/rollout.py` - Customization docs: `docs/en/get_started/customization.md` diff --git a/.claude/skills/add-rollout-function/SKILL.md b/.claude/skills/add-rollout-function/SKILL.md index 39aa2f8ca..a1e72cc3f 100644 --- a/.claude/skills/add-rollout-function/SKILL.md +++ b/.claude/skills/add-rollout-function/SKILL.md @@ -1,18 +1,18 @@ --- name: add-rollout-function -description: Guide for adding a new rollout function in slime and wiring it through --rollout-function-path. Use when user wants to implement custom rollout data generation logic, custom train/eval rollout outputs, or migrate from the default vLLM rollout path. +description: Guide for adding a new rollout function in vime and wiring it through --rollout-function-path. Use when user wants to implement custom rollout data generation logic, custom train/eval rollout outputs, or migrate from the default vLLM rollout path. --- # Add Rollout Function -Implement a custom rollout function and integrate it safely with slime training/eval flow. +Implement a custom rollout function and integrate it safely with vime training/eval flow. ## When to Use Use this skill when: - User asks to add a new rollout task or rollout generation function -- User asks to replace default `slime.rollout.vllm_rollout.generate_rollout` +- User asks to replace default `vime.rollout.vllm_rollout.generate_rollout` - User asks to customize train/eval data generation behavior ## Step-by-Step Guide @@ -21,15 +21,15 @@ Use this skill when: Start from one of these references: -- Async RL-style rollout: `slime/rollout/vllm_rollout.py` -- Simple SFT-style rollout: `slime/rollout/sft_rollout.py` +- Async RL-style rollout: `vime/rollout/vllm_rollout.py` +- Simple SFT-style rollout: `vime/rollout/sft_rollout.py` If the task needs engine-based async generation and rewards, use the vLLM path as base. If the task is file/buffer-driven and simple, use sft path as base. ### Step 2: Create the New Rollout Module -Create a new file, for example: `slime/rollout/.py` +Create a new file, for example: `vime/rollout/.py` Required callable signature: @@ -38,7 +38,7 @@ def generate_rollout(args, rollout_id, data_source, evaluation=False) -> Rollout ... ``` -Return types are defined in `slime/rollout/base_types.py`. +Return types are defined in `vime/rollout/base_types.py`. ### Step 3: Implement Train and Eval Branches Explicitly @@ -48,7 +48,7 @@ Return types are defined in `slime/rollout/base_types.py`. Minimal skeleton: ```python -from slime.rollout.base_types import RolloutFnTrainOutput, RolloutFnEvalOutput +from vime.rollout.base_types import RolloutFnTrainOutput, RolloutFnEvalOutput def generate_rollout(args, rollout_id, data_source, evaluation=False): @@ -83,12 +83,12 @@ If partial rollout or masking logic is involved, keep `loss_mask` semantics cons Set your function path via CLI: ```bash ---rollout-function-path slime.rollout..generate_rollout +--rollout-function-path vime.rollout..generate_rollout ``` The default and signature expectation are documented in: -- `slime/utils/arguments.py` +- `vime/utils/arguments.py` - `docs/en/get_started/customization.md` ## Common Mistakes @@ -100,9 +100,9 @@ The default and signature expectation are documented in: ## Reference Locations -- Default rollout: `slime/rollout/vllm_rollout.py` -- Simple custom example: `slime/rollout/sft_rollout.py` -- Output dataclasses: `slime/rollout/base_types.py` -- Wiring/loading: `slime/ray/rollout.py` -- Argument definition: `slime/utils/arguments.py` +- Default rollout: `vime/rollout/vllm_rollout.py` +- Simple custom example: `vime/rollout/sft_rollout.py` +- Output dataclasses: `vime/rollout/base_types.py` +- Wiring/loading: `vime/ray/rollout.py` +- Argument definition: `vime/utils/arguments.py` - Customization docs: `docs/en/get_started/customization.md` diff --git a/.claude/skills/add-tests-and-ci/SKILL.md b/.claude/skills/add-tests-and-ci/SKILL.md index ac5e514b0..ea880bd23 100644 --- a/.claude/skills/add-tests-and-ci/SKILL.md +++ b/.claude/skills/add-tests-and-ci/SKILL.md @@ -1,11 +1,11 @@ --- name: add-tests-and-ci -description: Guide for adding or updating slime tests and CI wiring. Use when tasks require new test cases, CI registration, test matrix updates, or workflow template changes. +description: Guide for adding or updating vime tests and CI wiring. Use when tasks require new test cases, CI registration, test matrix updates, or workflow template changes. --- # Add Tests and CI -Add reliable tests and integrate them with slime CI flow. +Add reliable tests and integrate them with vime CI flow. ## When to Use diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 31c59343a..f37140fda 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,5 +1,5 @@ name: Bug Report -description: Report a bug to help us improve slime. Please check the docs and existing issues before submitting. +description: Report a bug to help us improve Vime. Please check the docs and existing issues before submitting. title: "[Bug] " labels: ["bug"] body: @@ -8,13 +8,13 @@ body: value: | Thank you for taking the time to report a bug! - > **Note:** slime's open-source collaboration is currently focused on **bug fixes** and **general-purpose RL optimizations**. - > Feature requests are outside our current scope — please see [CONTRIBUTING.md](https://github.com/THUDM/slime/blob/main/CONTRIBUTING.md) for details. + > **Note:** Vime's open-source collaboration is currently focused on **bug fixes** and **general-purpose RL optimizations**. + > Feature requests are outside our current scope — please see [CONTRIBUTING.md](https://github.com/vllm-project/vime/blob/main/CONTRIBUTING.md) for details. Before submitting, please make sure you have: - - [ ] Read the [documentation](https://thudm.github.io/slime/) and [FAQ](https://thudm.github.io/slime/en/get_started/qa.html) - - [ ] Searched [existing issues](https://github.com/THUDM/slime/issues) to avoid duplicates - - [ ] Reproduced the issue with the latest version of slime + - [ ] Read the [documentation](https://vllm-project.github.io/vime/) and [FAQ](https://vllm-project.github.io/vime/en/get_started/qa.html) + - [ ] Searched [existing issues](https://github.com/vllm-project/vime/issues) to avoid duplicates + - [ ] Reproduced the issue with the latest version of Vime - type: textarea id: description @@ -60,9 +60,9 @@ body: attributes: label: Environment description: | - Please provide your environment details. You can run `pip show slime` and `python -c "import torch; print(torch.__version__)"` to get some of this info. + Please provide your environment details. You can run `pip show vime` and `python -c "import torch; print(torch.__version__)"` to get some of this info. value: | - - slime version: + - Vime version: - Python version: - PyTorch version: - CUDA version: @@ -93,11 +93,11 @@ body: attributes: label: Pre-submission Checklist options: - - label: I have read the [CONTRIBUTING.md](https://github.com/THUDM/slime/blob/main/CONTRIBUTING.md) and understand the collaboration scope. + - label: I have read the [CONTRIBUTING.md](https://github.com/vllm-project/vime/blob/main/CONTRIBUTING.md) and understand the collaboration scope. required: true - - label: I have read the [documentation](https://thudm.github.io/slime/) and my issue is not addressed there. + - label: I have read the [documentation](https://vllm-project.github.io/vime/) and my issue is not addressed there. required: true - - label: I have searched for [existing issues](https://github.com/THUDM/slime/issues) and this is not a duplicate. + - label: I have searched for [existing issues](https://github.com/vllm-project/vime/issues) and this is not a duplicate. required: true - label: I have provided a minimal, reproducible example. required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 04d024a2c..94ade3bd8 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,16 +1,16 @@ blank_issues_enabled: false contact_links: - name: Collaboration Scope / 协作范围 - url: https://github.com/THUDM/slime/blob/main/CONTRIBUTING.md + url: https://github.com/vllm-project/vime/blob/main/CONTRIBUTING.md about: | Please read before submitting. We welcome bug reports and general RL optimizations; feature requests are currently outside our scope. 提交前请阅读。我们欢迎 bug 报告和通用 RL 优化,feature request 暂时不在协作范围内。 - name: Documentation - url: https://thudm.github.io/slime/ + url: https://vllm-project.github.io/vime/ about: Please check the documentation before opening an issue. Many common questions are already answered there. - name: Q&A / FAQ - url: https://thudm.github.io/slime/en/get_started/qa.html + url: https://vllm-project.github.io/vime/en/get_started/qa.html about: Check the FAQ — your question might already have an answer. - name: Discussions - url: https://github.com/THUDM/slime/discussions + url: https://github.com/vllm-project/vime/discussions about: For general questions and open-ended conversations, please use GitHub Discussions instead. diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml index a6bd52f97..6c7cd0b0e 100644 --- a/.github/ISSUE_TEMPLATE/question.yml +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -1,5 +1,5 @@ name: Question / Help -description: Ask a question about using slime. Please check the docs and FAQ first. +description: Ask a question about using Vime. Please check the docs and FAQ first. title: "[Question] " labels: ["question"] body: @@ -8,16 +8,16 @@ body: value: | Thank you for reaching out! - > **Note:** slime's open-source collaboration is currently focused on **bug fixes** and **general-purpose RL optimizations**. - > Feature requests are outside our current scope — please see [CONTRIBUTING.md](https://github.com/THUDM/slime/blob/main/CONTRIBUTING.md) for details. + > **Note:** Vime's open-source collaboration is currently focused on **bug fixes** and **general-purpose RL optimizations**. + > Feature requests are outside our current scope — please see [CONTRIBUTING.md](https://github.com/vllm-project/vime/blob/main/CONTRIBUTING.md) for details. Before asking, please make sure you have checked: - - [Quick Start Guide](https://thudm.github.io/slime/en/get_started/quick_start.html) - - [Usage Guide](https://thudm.github.io/slime/en/get_started/usage.html) - - [FAQ](https://thudm.github.io/slime/en/get_started/qa.html) - - [Examples](https://github.com/THUDM/slime/tree/main/examples) + - [Quick Start Guide](https://vllm-project.github.io/vime/en/get_started/quick_start.html) + - [Usage Guide](https://vllm-project.github.io/vime/en/get_started/usage.html) + - [FAQ](https://vllm-project.github.io/vime/en/get_started/qa.html) + - [Examples](https://github.com/vllm-project/vime/tree/main/examples) - Many common questions are already covered in the documentation above. If your question is about general usage or open-ended discussion, consider using [GitHub Discussions](https://github.com/THUDM/slime/discussions) instead. + Many common questions are already covered in the documentation above. If your question is about general usage or open-ended discussion, consider using [GitHub Discussions](https://github.com/vllm-project/vime/discussions) instead. - type: textarea id: question @@ -46,7 +46,7 @@ body: label: Environment (if relevant) description: If your question is related to setup or runtime behavior, please provide your environment details. value: | - - slime version: + - Vime version: - Python version: - PyTorch version: - CUDA version: @@ -64,9 +64,9 @@ body: attributes: label: Pre-submission Checklist options: - - label: I have read the [CONTRIBUTING.md](https://github.com/THUDM/slime/blob/main/CONTRIBUTING.md) and understand the collaboration scope. + - label: I have read the [CONTRIBUTING.md](https://github.com/vllm-project/vime/blob/main/CONTRIBUTING.md) and understand the collaboration scope. required: true - - label: I have read the [documentation](https://thudm.github.io/slime/) and [FAQ](https://thudm.github.io/slime/en/get_started/qa.html) and my question is not answered there. + - label: I have read the [documentation](https://vllm-project.github.io/vime/) and [FAQ](https://vllm-project.github.io/vime/en/get_started/qa.html) and my question is not answered there. required: true - - label: I have searched for [existing issues](https://github.com/THUDM/slime/issues) and my question has not been asked before. + - label: I have searched for [existing issues](https://github.com/vllm-project/vime/issues) and my question has not been asked before. required: true diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index bc8b8e769..c81c38189 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -63,10 +63,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -96,17 +96,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -147,10 +147,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -180,17 +180,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -231,10 +231,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -264,17 +264,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -315,10 +315,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -348,17 +348,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -399,10 +399,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -432,17 +432,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -483,10 +483,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -549,10 +549,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -582,17 +582,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' @@ -707,10 +707,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -737,17 +737,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' diff --git a/.github/workflows/pr-test.yml.j2 b/.github/workflows/pr-test.yml.j2 index adab45a63..17e96fad2 100644 --- a/.github/workflows/pr-test.yml.j2 +++ b/.github/workflows/pr-test.yml.j2 @@ -147,10 +147,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -213,17 +213,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ << config.image if config.image else 'inferactinc/public:vime-vllm-cu129-latest' >> \ bash -lc ' @@ -338,10 +338,10 @@ jobs: env: GITHUB_COMMIT_NAME: ${{ github.sha }}_${{ github.event.pull_request.number || 'non-pr' }} WANDB_API_KEY: ${{ secrets.WANDB_API_KEY }} - SLIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} - SLIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} - SLIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} - SLIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} + VIME_TEST_ENABLE_INFINITE_RUN: ${{ (github.event_name == 'workflow_dispatch' && github.event.inputs.infinite_run) || 'false' }} + VIME_TEST_USE_DEEPEP: ${{ matrix.info.use_deepep || '0' }} + VIME_TEST_USE_FP8_ROLLOUT: ${{ matrix.info.use_fp8_rollout || '0' }} + VIME_TEST_ENABLE_EVAL: ${{ matrix.info.enable_eval || '1' }} steps: - name: Checkout repository @@ -368,17 +368,17 @@ jobs: -e HTTPS_PROXY \ -e GITHUB_COMMIT_NAME \ -e WANDB_API_KEY \ - -e SLIME_TEST_ENABLE_INFINITE_RUN \ - -e SLIME_TEST_USE_DEEPEP \ - -e SLIME_TEST_USE_FP8_ROLLOUT \ - -e SLIME_TEST_ENABLE_EVAL \ + -e VIME_TEST_ENABLE_INFINITE_RUN \ + -e VIME_TEST_USE_DEEPEP \ + -e VIME_TEST_USE_FP8_ROLLOUT \ + -e VIME_TEST_ENABLE_EVAL \ -e TEST_FILE="${{ matrix.info.test_file }}" \ -e TEST_ARGS="${{ matrix.info.test_args || '' }}" \ -e NUM_GPUS="${{ matrix.info.num_gpus }}" \ -v "$GITHUB_WORKSPACE:$GITHUB_WORKSPACE" \ - -v /mnt/nvme0n1/slime_ci:/data/slime_ci \ - -v /mnt/nvme0n1/slime_ci/models:/root/models \ - -v /mnt/nvme0n1/slime_ci/datasets:/root/datasets \ + -v /mnt/nvme0n1/vime_ci:/data/vime_ci \ + -v /mnt/nvme0n1/vime_ci/models:/root/models \ + -v /mnt/nvme0n1/vime_ci/datasets:/root/datasets \ -w "$GITHUB_WORKSPACE" \ inferactinc/public:vime-vllm-cu129-latest \ bash -lc ' diff --git a/.github/workflows/release-docs.yaml b/.github/workflows/release-docs.yaml index 818e8f0e8..36ef99607 100644 --- a/.github/workflows/release-docs.yaml +++ b/.github/workflows/release-docs.yaml @@ -17,7 +17,7 @@ concurrency: jobs: deploy: runs-on: ubuntu-latest - if: github.repository == 'THUDM/slime' + if: github.repository == 'vllm-project/vime' permissions: contents: write steps: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b57654416..9f2d73a15 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -19,7 +19,7 @@ Thank you for your interest in contributing to vime! This document describes our ## About vime -**vime** is a reinforcement learning (RL) post-training framework built on [**vLLM**](https://github.com/vllm-project/vllm) and [**Megatron-LM**](https://github.com/NVIDIA/Megatron-LM) as its core backends. It is derived from [slime](https://github.com/THUDM/slime). +**vime** is a reinforcement learning (RL) post-training framework built on [**vLLM**](https://github.com/vllm-project/vllm) and [**Megatron-LM**](https://github.com/NVIDIA/Megatron-LM) as its core backends. It is derived from [vime](https://github.com/vllm-project/vime). ## Project Principles @@ -242,7 +242,7 @@ By contributing to vime, you agree that your contributions will be licensed unde ## 关于vime -**vime**是以[**vLLM**](https://github.com/vllm-project/vllm)与[**Megatron-LM**](https://github.com/NVIDIA/Megatron-LM)为核心后端的RL后训练框架,源自[slime](https://github.com/THUDM/slime)。 +**vime**是以[**vLLM**](https://github.com/vllm-project/vllm)与[**Megatron-LM**](https://github.com/NVIDIA/Megatron-LM)为核心后端的RL后训练框架,源自[vime](https://github.com/vllm-project/vime)。 ## 项目理念 diff --git a/README.md b/README.md index c33021be9..bc019595f 100644 --- a/README.md +++ b/README.md @@ -2,12 +2,12 @@ [中文版](./README_zh.md) · [Repository](https://github.com/vllm-project/vime) -**Vime** is an LLM post-training framework for RL scaling, built on [slime](https://github.com/THUDM/slime). It keeps slime's training stack and data-generation design while using [**vLLM**](https://github.com/vllm-project/vllm) (with [vllm-router](https://github.com/vllm-project/router)) as the default rollout backend. Vime provides two core capabilities: +**Vime** is an LLM post-training framework for RL scaling. It keeps a high-throughput training stack and flexible data-generation design while using [**vLLM**](https://github.com/vllm-project/vllm) (with [vllm-router](https://github.com/vllm-project/router)) as the default rollout backend. Vime provides two core capabilities: 1. **High-performance training**: Efficient training in various modes by connecting Megatron with vLLM; 2. **Flexible data generation**: Arbitrary training data generation workflows through custom data generation interfaces and server-based engines. -Vime inherits broad model support from slime, including: +Vime supports a broad model set, including: - Qwen series (Qwen3.6, Qwen3.5, Qwen3Next, Qwen3MoE, Qwen3, Qwen2.5); - DeepSeek V3 series (DeepSeek V3, V3.1, DeepSeek R1); @@ -19,7 +19,7 @@ Vime inherits broad model support from slime, including: - [Quick Start](#quick-start) - [Arguments Walkthrough](#arguments-walkthrough) - [Developer Guide](#developer-guide) -- [slime doc](#slime-doc) +- [Vime Docs](#vime-docs) - [FAQ & Acknowledgements](#faq--acknowledgements) ## Architecture Overview @@ -45,10 +45,10 @@ We also provide examples for some use cases not covered in the quick start guide Arguments in Vime are divided into three categories: 1. **Megatron arguments**: Vime reads all arguments in Megatron. You can configure Megatron by passing arguments like `--tensor-model-parallel-size 2`. -2. **vLLM arguments**: vLLM server and engine options are exposed with a `--vllm-` prefix (for example, `--vllm-gpu-memory-utilization`). Router options live under two prefixes: vllm-router's native options are passed with `--router-` (for example, `--router-policy round_robin`, `--router-request-timeout-secs`), while Vime-side orchestration knobs that tell Vime *where* the router lives use `--vllm-router-` (`--vllm-router-ip`, `--vllm-router-port`). See [slime/backends/vllm_utils/arguments.py](slime/backends/vllm_utils/arguments.py) for the full surface. -3. **Framework-specific arguments**: Shared slime/Vime orchestration flags (rollout GPUs, data paths, RL algorithms, etc.). Please refer to [slime/utils/arguments.py](slime/utils/arguments.py). +2. **vLLM arguments**: vLLM server and engine options are exposed with a `--vllm-` prefix (for example, `--vllm-gpu-memory-utilization`). Router options live under two prefixes: vllm-router's native options are passed with `--router-` (for example, `--router-policy round_robin`, `--router-request-timeout-secs`), while Vime-side orchestration knobs that tell Vime *where* the router lives use `--vllm-router-` (`--vllm-router-ip`, `--vllm-router-port`). See [vime/backends/vllm_utils/arguments.py](vime/backends/vllm_utils/arguments.py) for the full surface. +3. **Framework-specific arguments**: Shared Vime orchestration flags (rollout GPUs, data paths, RL algorithms, etc.). Please refer to [vime/utils/arguments.py](vime/utils/arguments.py). -`--rollout-num-gpus-per-engine` sets the tensor parallel size of each vLLM engine. The default rollout entry is `slime.rollout.vllm_rollout.generate_rollout`. +`--rollout-num-gpus-per-engine` sets the tensor parallel size of each vLLM engine. The default rollout entry is `vime.rollout.vllm_rollout.generate_rollout`. For complete usage instructions, please refer to the [Usage Documentation](docs/en/get_started/usage.md). @@ -68,14 +68,14 @@ pre-commit run --all-files --show-diff-on-failure --color=always - For debugging tips, please refer to the [Debugging Guide](docs/en/developer_guide/debug.md) -## slime doc +## Vime Docs -Vime is derived from slime. The following upstream resources and in-repo guides still use the slime naming and remain the reference for shared concepts (Megatron integration, customization, advanced topics): +The following resources cover Vime usage, Megatron integration, customization, and advanced topics: -[![Documentation](https://img.shields.io/badge/slime_docs-latest-brightgreen.svg?style=flat)](https://thudm.github.io/slime/) -[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/THUDM/slime) +[![Documentation](https://img.shields.io/badge/vime_docs-latest-brightgreen.svg?style=flat)](https://vllm-project.github.io/vime/) +[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/vllm-project/vime) -- Upstream repository: [THUDM/slime](https://github.com/THUDM/slime) +- Repository: [vllm-project/vime](https://github.com/vllm-project/vime) - English docs in this repo: [docs/en/](docs/en/) - Chinese docs in this repo: [docs/zh/](docs/zh/) @@ -92,7 +92,7 @@ Citation: title = {Vime: An LLM post-training framework with vLLM for RL Scaling}, year = {2026}, howpublished = {\url{https://github.com/vllm-project/vime}}, - note = {Based on slime. GitHub repository.}, + note = {GitHub repository.}, urldate = {2026-05-25} } ``` diff --git a/README_zh.md b/README_zh.md index 2804a7728..ef8bbb785 100644 --- a/README_zh.md +++ b/README_zh.md @@ -2,12 +2,12 @@ [English](./README.md) · [代码仓库](https://github.com/vllm-project/vime) -**Vime** 是基于 [slime](https://github.com/THUDM/slime) 的 RL scaling 用 LLM post-training 框架。在保留 slime 训练栈与数据生成设计的同时,默认以 [**vLLM**](https://github.com/vllm-project/vllm)(配合 [vllm-router](https://github.com/vllm-project/router))作为 rollout 后端,替代 SGLang。Vime 提供两大核心能力: +**Vime** 是面向 RL scaling 的 LLM post-training 框架。它保留高吞吐训练栈与灵活的数据生成设计,同时默认以 [**vLLM**](https://github.com/vllm-project/vllm)(配合 [vllm-router](https://github.com/vllm-project/router))作为 rollout 后端,替代 SGLang。Vime 提供两大核心能力: 1. **高性能训练**:通过连接 Megatron 与 vLLM,支持各种模式的高效训练; 2. **灵活的数据生成**:通过自定义数据生成接口以及 server based engine,实现任意的训练数据生成流程。 -Vime 继承 slime 的广泛模型支持,包括: +Vime 支持广泛的模型系列,包括: - Qwen 系列(Qwen3.6、Qwen3.5、Qwen3Next、Qwen3MoE、Qwen3、Qwen2.5); - DeepSeek V3 系列(DeepSeek V3、V3.1、DeepSeek R1); @@ -19,7 +19,7 @@ Vime 继承 slime 的广泛模型支持,包括: - [快速开始](#快速开始) - [参数说明](#参数说明) - [开发指南](#开发指南) -- [slime doc](#slime-doc) +- [Vime 文档](#vime-文档) - [常见 Q&A 与致谢](#常见-qa-与致谢) ## 架构总览 @@ -45,10 +45,10 @@ Vime 继承 slime 的广泛模型支持,包括: Vime 的参数分为三类: 1. **Megatron 参数**:Vime 会读取 Megatron 中的全部参数,可通过传入如 `--tensor-model-parallel-size 2` 的方式配置 Megatron; -2. **vLLM 参数**:vLLM server 与 engine 相关选项以 `--vllm-` 为前缀(例如 `--vllm-gpu-memory-utilization`)。路由相关选项分两类前缀:vllm-router 自身的选项以 `--router-` 传入(例如 `--router-policy round_robin`、`--router-request-timeout-secs`),Vime 侧用于告诉 Vime *router 在哪里* 的编排参数则以 `--vllm-router-` 为前缀(`--vllm-router-ip`、`--vllm-router-port`)。完整参数见 [slime/backends/vllm_utils/arguments.py](slime/backends/vllm_utils/arguments.py)。 -3. **框架参数**:与 slime/Vime 编排相关的开关(rollout GPU、数据路径、RL 算法等),见 [slime/utils/arguments.py](slime/utils/arguments.py)。 +2. **vLLM 参数**:vLLM server 与 engine 相关选项以 `--vllm-` 为前缀(例如 `--vllm-gpu-memory-utilization`)。路由相关选项分两类前缀:vllm-router 自身的选项以 `--router-` 传入(例如 `--router-policy round_robin`、`--router-request-timeout-secs`),Vime 侧用于告诉 Vime *router 在哪里* 的编排参数则以 `--vllm-router-` 为前缀(`--vllm-router-ip`、`--vllm-router-port`)。完整参数见 [vime/backends/vllm_utils/arguments.py](vime/backends/vllm_utils/arguments.py)。 +3. **框架参数**:与 Vime 编排相关的开关(rollout GPU、数据路径、RL 算法等),见 [vime/utils/arguments.py](vime/utils/arguments.py)。 -`--rollout-num-gpus-per-engine` 对应每个 vLLM engine 的 tensor parallel size。默认 rollout 入口为 `slime.rollout.vllm_rollout.generate_rollout`。 +`--rollout-num-gpus-per-engine` 对应每个 vLLM engine 的 tensor parallel size。默认 rollout 入口为 `vime.rollout.vllm_rollout.generate_rollout`。 完整使用说明请查阅 [使用文档](docs/zh/get_started/usage.md)。 @@ -68,14 +68,14 @@ Vime 的参数分为三类: - 调试技巧请参考 [debug 指南](docs/zh/developer_guide/debug.md) -## slime doc +## Vime 文档 -Vime 由 slime 衍生而来。以下上游资源与本仓库文档仍沿用 slime 命名,可作为共享概念(Megatron 集成、定制化、高级主题)的参考: +以下资源覆盖 Vime 使用方式、Megatron 集成、定制化与高级主题: -[![Documentation](https://img.shields.io/badge/slime_文档-latest-brightgreen.svg?style=flat)](https://thudm.github.io/slime/) -[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/THUDM/slime) +[![Documentation](https://img.shields.io/badge/vime_文档-latest-brightgreen.svg?style=flat)](https://vllm-project.github.io/vime/) +[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/vllm-project/vime) -- 上游仓库:[THUDM/slime](https://github.com/THUDM/slime) +- 代码仓库:[vllm-project/vime](https://github.com/vllm-project/vime) - 本仓库英文文档:[docs/en/](docs/en/) - 本仓库中文文档:[docs/zh/](docs/zh/) @@ -92,7 +92,7 @@ Vime 由 slime 衍生而来。以下上游资源与本仓库文档仍沿用 slim title = {Vime: An LLM post-training framework with vLLM for RL Scaling}, year = {2026}, howpublished = {\url{https://github.com/vllm-project/vime}}, - note = {Based on slime. GitHub repository.}, + note = {GitHub repository.}, urldate = {2026-05-25} } ``` diff --git a/docker/Dockerfile b/docker/Dockerfile index d145b6a73..775c81ed1 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -83,9 +83,9 @@ RUN NVCC_APPEND_FLAGS="--threads 4" \ RUN git clone https://github.com/NVIDIA/Megatron-LM.git --recursive && \ cd Megatron-LM && git checkout ${MEGATRON_COMMIT} -# torch_memory_saver pinned to a193d9dd (upstream slime #1916). The newer commit +# torch_memory_saver pinned to a193d9dd (upstream vime #1916). The newer commit # ships a multi-CUDA wheel and requires TMS_CUDA_MAJOR at build time; default it -# to the running torch's CUDA major (slime #1924). +# to the running torch's CUDA major (vime #1924). RUN TMS_CUDA_MAJOR="${TMS_CUDA_MAJOR:-$(python -c 'import torch; print(torch.version.cuda.split(".")[0])')}" && \ export TMS_CUDA_MAJOR && \ pip install git+https://github.com/fzyzcjy/torch_memory_saver.git@a193d9dd1b877d33c64a41cfb3db9f867df2d926 --no-cache-dir --force-reinstall diff --git a/docs/README.md b/docs/README.md index 4402f36fe..781a5c262 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ -# slime Documentation +# vime Documentation -We recommend new contributors start from writing documentation, which helps you quickly understand slime codebase. +We recommend new contributors start from writing documentation, which helps you quickly understand vime codebase. Most documentation files are located under the `docs/` folder. ## Docs Workflow diff --git a/docs/_static/js/lang-toggle.js b/docs/_static/js/lang-toggle.js index 39b716b67..99c86fef4 100644 --- a/docs/_static/js/lang-toggle.js +++ b/docs/_static/js/lang-toggle.js @@ -1,6 +1,6 @@ // Inject a language toggle button into the topbar (sphinx-book-theme compatible) (function(){ - const STORAGE_KEY = 'slime-doc-lang'; + const STORAGE_KEY = 'vime-doc-lang'; // Default language EN has no URL prefix; Chinese uses '/zh/' inserted after optional repo root. function detectCurrent(){ const { zhIndex } = analyzePath(); @@ -11,15 +11,15 @@ * Analyze current pathname to figure out repo root + language segment pattern. * Supports patterns: * /en/… (language as first segment) - * /slime/en/… (GitHub Pages project site repo root, language second) - * /slime/ (no lang yet) -> insert /slime/zh/ + * /vime/en/… (GitHub Pages project site repo root, language second) + * /vime/ (no lang yet) -> insert /vime/zh/ * / (no lang) -> insert /zh/ */ function analyzePath(){ const rawParts = window.location.pathname.split('/').filter(Boolean); const parts = rawParts.slice(); let repoRoot = null; - if(parts.length > 0 && (window.location.host.endsWith('github.io') || parts[0] === 'slime')){ + if(parts.length > 0 && (window.location.host.endsWith('github.io') || parts[0] === 'vime')){ repoRoot = parts[0]; } let zhIndex = -1; diff --git a/docs/build.sh b/docs/build.sh index e503a8023..64eb675fc 100755 --- a/docs/build.sh +++ b/docs/build.sh @@ -10,4 +10,4 @@ if [ "$LANG" != "en" ] && [ "$LANG" != "zh" ]; then fi cd $SCRIPT_DIR -SLIME_DOC_LANG=$LANG sphinx-build -b html -D language=$LANG --conf-dir ./ ./$LANG ./build/$LANG \ No newline at end of file +VIME_DOC_LANG=$LANG sphinx-build -b html -D language=$LANG --conf-dir ./ ./$LANG ./build/$LANG diff --git a/docs/build_all.sh b/docs/build_all.sh index ddf74f953..5651a7f1e 100755 --- a/docs/build_all.sh +++ b/docs/build_all.sh @@ -3,9 +3,9 @@ set -euo pipefail SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) cd "$SCRIPT_DIR" -echo "[slime-docs] Building EN..." +echo "[vime-docs] Building EN..." ./build.sh en -echo "[slime-docs] Building ZH..." +echo "[vime-docs] Building ZH..." ./build.sh zh # Create a lightweight root index with auto redirect based on localStorage (done client side) @@ -15,7 +15,7 @@ cat > "$ROOT_INDEX" <<'EOF' - slime docs + vime docs