-
Notifications
You must be signed in to change notification settings - Fork 3k
[WIP] add rl support for veomni backend #4882
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request adds support for the veomni backend for RL training. It introduces new configuration files for veomni actor, critic, reference policy, and reward models, along with a main PPO trainer configuration. The changes also update the worker selection logic to handle the veomni strategy.
My review has identified a few critical issues in the new configuration files that would lead to runtime errors. Specifically, a misconfigured legacy worker flag, a non-portable model path, and a placeholder value that needs to be replaced. There is also a minor redundancy in one of the configuration files. Addressing these points will improve the correctness and usability of the new veomni backend configuration.
|
|
||
| # whether to use legacy worker implementation | ||
| # mode: "auto", "enable", or "disable" | ||
| use_legacy_worker_impl: auto |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The use_legacy_worker_impl is set to auto, but the veomni backend requires the new worker implementation. With the auto setting, the application will raise a NotImplementedError for the actor worker or a ValueError for the critic worker. To ensure the veomni backend functions correctly, this value must be set to disable.
use_legacy_worker_impl: disable| nnodes: 0 | ||
|
|
||
| model: | ||
| path: ~/models/FsfairX-LLaMA3-RM-v0.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The model path ~/models/FsfairX-LLaMA3-RM-v0.1 uses a tilde (~) to refer to the user's home directory. This is not portable and will cause errors in environments like Docker containers or when run by different users. Please use a placeholder or a more robust path resolution mechanism, such as an environment variable, to make the configuration more robust and reproducible.
path: <path_to_FsfairX-LLaMA3-RM-v0.1_model>|
|
||
| rollout: | ||
| _target_: verl.workers.config.RolloutConfig | ||
| name: ??? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| # before the current forward computation. | ||
| forward_prefetch: true | ||
|
|
||
| strategy: veomni |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this PR do?
Checklist Before Starting
[{modules}] {type}: {description}(This will be checked by the CI){modules}includefsdp,megatron,sglang,vllm,rollout,trainer,ci,training_utils,recipe,hardware,deployment,ray,worker,single_controller,misc,perf,model,algo,env,tool,ckpt,doc,data,cfg,reward,like[megatron, fsdp, doc]{type}is infeat,fix,refactor,chore,test[BREAKING]to the beginning of the title.[BREAKING][fsdp, megatron] feat: dynamic batchingTest
API and Usage Example
# Add code snippet or script demonstrating how to use thisDesign & Code Changes
Checklist Before Submitting
Important
Please check all the following items before requesting a review, otherwise the reviewer might deprioritize this PR for review.
pre-commit install && pre-commit run --all-files --show-diff-on-failure --color=alwaysci-requestchannel in theverlSlack workspace. (If not accessible, please try the Feishu group (飞书群).)recipesubmodule, please also update the reference to the submodule commit viagit submodule update --remoteorcd recipe && git pull origin main.