-
-
Notifications
You must be signed in to change notification settings - Fork 11.4k
[V1][Metrics][Plugin] Add plugin support for custom StatLoggerBase implementations
#22456
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
Conversation
|
👋 Hi! Thank you for contributing to the vLLM project. 💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels. Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging. To run CI, PR reviewers can either: Add 🚀 |
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 introduces a plugin system for custom StatLoggerBase implementations, which is a great addition for enhancing observability. The implementation is generally well-done, including tests and documentation updates. However, I've found a critical issue in the plugin loading logic that could lead to an engine crash if a plugin is not a class. Additionally, there's an inconsistency in the documentation regarding the plugin's entry point type. My feedback aims to address these issues to improve the robustness and clarity of this new feature.
20733a4 to
0d423ed
Compare
|
This pull request has merge conflicts that must be resolved before it can be |
0d423ed to
beeeec7
Compare
|
Hi @njhill, thanks! Updated — let me know if this aligns well. |
beeeec7 to
f10d313
Compare
42dc8b5 to
01ae8e1
Compare
|
Documentation preview: https://vllm--22456.org.readthedocs.build/en/22456/ |
ada4a9e to
c69098a
Compare
njhill
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 @ptovam, looks great. I just have one comment.
…plementations Signed-off-by: tovam <[email protected]>
Signed-off-by: tovam <[email protected]>
c69098a to
56074a1
Compare
njhill
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 @ptovam
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]> Signed-off-by: Alberto Perdomo <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]> Signed-off-by: xuebwang-amd <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]> Signed-off-by: xuebwang-amd <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]> Signed-off-by: 0xrushi <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]> Signed-off-by: 0xrushi <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]>
…implementations (vllm-project#22456) Signed-off-by: tovam <[email protected]>
Purpose
✨ Add Support for Custom Stat Logger Plugins
This PR introduces support for registering custom
StatLoggerBaseimplementations through Pythonentry-points, using the plugin groupvllm.stat_logger_plugins.This allows users to inject custom metric loggers into the vLLM runtime without modifying internal code.
🔧 What’s New
vllm.stat_logger_pluginsStatLoggerBase.📍 Example: Registering a Custom Logger
In your package’s
pyproject.tomlorsetup.py, declare:Test Plan
To validate the plugin mechanism, a dummy stat logger plugin was implemented and tested using the following commands:
Test Result
All tests passed
(Optional) Documentation Update
Updated
docs/design/plugin_system.mdto document the new plugin type:vllm.stat_logger_pluginsas a supported plugin groupEssential Elements of an Effective PR Description Checklist
supported_models.mdandexamplesfor a new model.