Skip to content

expose TransferQueue utils#4

Merged
0oshowero0 merged 1 commit into
TransferQueue:mainfrom
zhabuye:main
Sep 25, 2025
Merged

expose TransferQueue utils#4
0oshowero0 merged 1 commit into
TransferQueue:mainfrom
zhabuye:main

Conversation

@zhabuye

@zhabuye zhabuye commented Sep 24, 2025

Copy link
Copy Markdown

What does this PR do?

As per title.

Checklist Before Starting

  • Search for similar PRs. Paste at least one query link here: ...
  • Format the PR title as [{modules}] {type}: {description} (This will be checked by the CI)
    • {modules} include fsdp, megatron, sglang, vllm, rollout, trainer, ci, training_utils, recipe, hardware, deployment, ray, worker, single_controller, misc, perf, model, algo, env, tool, ckpt, doc, data
    • If this PR involves multiple modules, separate them with , like [megatron, fsdp, doc]
    • {type} is in feat, fix, refactor, chore, test
    • If this PR breaks any API (CLI arguments, config, function signature, etc.), add [BREAKING] to the beginning of the title.
    • Example: [BREAKING][fsdp, megatron] feat: dynamic batching

Test

For changes that can not be tested by CI (e.g., algorithm implementation, new model support), validate by experiment(s) and show results like training curve plots, evaluation results, etc.

API and Usage Example

Demonstrate how the API changes if any, and provide usage example(s) if possible.

# Add code snippet or script demonstrating how to use this

Design & Code Changes

Demonstrate the high-level design if this PR is complex, and list the specific changes.

Checklist Before Submitting

Important

Please check all the following items before requesting a review, otherwise the reviewer might deprioritize this PR for review.

@0oshowero0
0oshowero0 requested a review from Copilot September 24, 2025 09:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR exposes TransferQueue utilities by adding four new utility modules to the experimental transfer queue package. The utilities include enums and role definitions, ZeroMQ message handling, serialization with msgpack/pickle for PyTorch tensors and TensorDict objects, and a package initialization file.

Key changes:

  • Adds core utilities for transfer queue roles and production status enums
  • Implements ZeroMQ utilities for distributed messaging and communication
  • Provides advanced serialization utilities for PyTorch tensors and TensorDict objects

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
verl/experimental/transfer_queue/utils/init.py Package initialization with copyright headers
verl/experimental/transfer_queue/utils/utils.py Core enums, Ray placement group utilities, and tensor field extraction
verl/experimental/transfer_queue/utils/zmq_utils.py ZeroMQ message types, server info, and socket creation utilities
verl/experimental/transfer_queue/utils/serial_utils.py Msgpack encoder/decoder for PyTorch tensors and TensorDict serialization

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread verl/experimental/transfer_queue/utils/utils.py
request_type: ZMQRequestType,
sender_id: str,
body: dict[str, Any],
receiver_id: Optional[str | None] = None,

Copilot AI Sep 24, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The type annotation Optional[str | None] is redundant. Optional[str] already includes None, so this should be simplified to Optional[str].

Suggested change
receiver_id: Optional[str | None] = None,
receiver_id: Optional[str] = None,

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If not used now, we can delete this file

@0oshowero0
0oshowero0 merged commit 7bf946a into TransferQueue:main Sep 25, 2025
0oshowero0 pushed a commit that referenced this pull request Sep 28, 2025
ji-huazhong added a commit that referenced this pull request Nov 18, 2025
…oller

* Support storage unit in TransferQueue

* Fix importance error

* Support controller in TransferQueue (#2)

* Support controller in TransferQueue

* Fix import

* Fix comments

---------

Co-authored-by: liuximeng <13073314+liuximeng18772102439@user.noreply.gitee.com>

* expose TransferQueueClient (#3)

* Add copyright and license information

Added copyright and licensing information to the controller.py file.

* update client docstring (#5)

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* merge TransferQueue utils (#4)

* [fix] Fix n_sample related problems (#8)

* update client docstring

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* fix n_sample related problems

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

---------

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* expose TransferQueue client/controller UT (#6)

* Add metadata.py and test_simple_storage_unit.py (#9)

* Add metadata.py and test_simple_storage_unit.py

* Add copyright and license information to test_simple_storage_unit.py

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Han Zhenyu 韩振宇 <o0shower0o@outlook.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add reorder function to BatchMeta (#13)

Co-authored-by: liuximeng <13073314+liuximeng18772102439@user.noreply.gitee.com>

* [recipe, data] feat: TransferQueue - Support managing multiple data partitions for Train/Val/Test in controller (#45)

Co-authored-by: liuximeng <13073314+liuximeng18772102439@user.noreply.gitee.com>

* delete TQ source codes

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* update docs

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* update performance

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

* fix

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>

---------

Signed-off-by: 0oshowero0 <o0shower0o@outlook.com>
Co-authored-by: FightingZhen <295632982@qq.com>
Co-authored-by: Han Zhenyu 韩振宇 <o0shower0o@outlook.com>
Co-authored-by: LLLLxmmm <130739718+LLLLxmmm@users.noreply.github.com>
Co-authored-by: liuximeng <13073314+liuximeng18772102439@user.noreply.gitee.com>
Co-authored-by: Han Zhenyu 韩振宇 <hanzy19@tsinghua.org.cn>
Co-authored-by: zhabuye <74179177+zhabuye@users.noreply.github.com>
Co-authored-by: Jianjun Zhong <87791082+jianjunzhong@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.

3 participants