-
Notifications
You must be signed in to change notification settings - Fork 12
Add get_training_input to storage_utils #438
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
mkolodner-sc
left a comment
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.
Thanks Kyle! Did a pass here and left some comments/questions
|
|
||
|
|
||
| def get_training_input( | ||
| split: Union[Literal["train", "val", "test"], str], |
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.
Is this sufficient? What if we want "all" nodes (i.e. dataset.node_ids)
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.
That wouldn't be "training"input" would it? We can add another function to do that in the future (get_all_nodes?)
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.
It could be for the random negative loader for link prediction training, which would need some dataset.node_ids or equivalent.
We can add another function to do that in the future (get_all_nodes?)
We wouldn't need a whole different function, we could just specify some 'all' split and if its that we use _dataset.node_ids.
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.
Hmmmm, I do think that the tuple[Tensor, Tensor, Tensor | None] is important for the ABLP.
I guess I could rename this to get_ablp_input or something? Would that ameliorate your concerns?
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.
Discussed offline, renaming will be fine here for this function, and in a follow-up we will refactor the get_node_ids_on_rank utility so that it can be used to split, making it extendable for the SNC use case, and can be called in this function to reduce the duplicity. Can we add a TODO here in the meantime?
python/tests/unit/distributed/graph_store/storage_utils_test.py
Outdated
Show resolved
Hide resolved
python/tests/unit/distributed/graph_store/storage_utils_test.py
Outdated
Show resolved
Hide resolved
|
|
||
|
|
||
| def get_training_input( | ||
| split: Union[Literal["train", "val", "test"], str], |
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.
It could be for the random negative loader for link prediction training, which would need some dataset.node_ids or equivalent.
We can add another function to do that in the future (get_all_nodes?)
We wouldn't need a whole different function, we could just specify some 'all' split and if its that we use _dataset.node_ids.
python/tests/unit/distributed/graph_store/storage_utils_test.py
Outdated
Show resolved
Hide resolved
python/tests/unit/distributed/graph_store/storage_utils_test.py
Outdated
Show resolved
Hide resolved
mkolodner-sc
left a comment
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.
Thanks Kyle for the work!
Scope of work done
Add server-side util so we can remotely fetch the training input.
Since this is kind of a big PR not adding the client-side equivalent in this one :P
Again this is server-side code, and it's really meant to be called by users.
Where is the documentation for this feature?: N/A
Did you add automated tests or write a test plan?
Updated Changelog.md? NO
Ready for code review?: NO