Skip to content

Conversation

@pointerhacker
Copy link

What does this PR do?

This PR addresses an issue where the GRPOTrainer fails to initialize when used with vLLM due to a hardcoded port for the TCPStore, which can lead to conflicts if the port is already in use. When the trainer attempts to establish a connection with vLLM, the process can fail if the default port is occupied by another service.

To resolve this, I have introduced a new argument, vllm_group_port, to the GRPOTrainer. This parameter allows users to specify a custom port for the TCPStore during initialization, thus preventing connection failures caused by port conflicts. This change provides greater flexibility and robustness for users setting up distributed environments with GRPOTrainer and vLLM.

Fixes #4538

Before submitting

  • This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
  • Did you read the contributor guideline,
    Pull Request section?
  • Was this discussed/approved via a GitHub issue? Please add a link
    to it if that's the case.
  • Did you make sure to update the documentation with your changes?
  • Did you write any new necessary tests?

Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

@pointerhacker
Copy link
Author

@qgallouedec Can you help me review the code?

@qgallouedec
Copy link
Member

thanks! can you add the same feature for RLOO and OnlineDPO as well 🙏

also, please apply the style (make precommit)

@pointerhacker
Copy link
Author

@qgallouedec You're welcome. I have finished the revisions. Could you please merge them?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TCPStore Issues in GRPOTrainer+vLLM

2 participants