-
Notifications
You must be signed in to change notification settings - Fork 1.1k
[AINode] Append model management IT #16938
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
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #16938 +/- ##
============================================
+ Coverage 39.18% 39.20% +0.01%
Complexity 212 212
============================================
Files 5048 5050 +2
Lines 335053 335124 +71
Branches 42707 42720 +13
============================================
+ Hits 131303 131369 +66
- Misses 203750 203755 +5 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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.
Pull request overview
This PR adds integration tests for AINode model management and refines the model registration workflow, particularly for user-defined Transformers models.
Key Changes:
- Enhanced error handling for Transformers model registration with explicit exception propagation
- Refactored model storage to remove private field prefix (
_transformers_registered→transformers_registered) - Added comprehensive integration tests for user-defined model lifecycle (register, inference/forecast, drop)
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| ainode.thrift | Reordered TRegisterModelReq parameters (modelId before uri) for better API consistency |
| model_storage.py | Improved exception handling in model registration; refactored field naming; enhanced thread safety in registration flow |
| model_info.py | Removed private field prefix for transformers_registered; updated Chronos2 config reference |
| model_manager.py | Added generic exception handler for model registration; removed _refresh() call from show_models for performance |
| AINodeTestUtils.java | Added reusable data preparation methods for tree and table dialects |
| AINodeModelManageIT.java | Added comprehensive integration tests for user-defined model management in both dialects |
| AINodeForecastIT.java | Refactored to use shared data preparation utility; made forecastTableFunctionTest static for reuse |
| AINodeCallInferenceIT.java | Refactored to use shared data preparation utility; made callInferenceTest static for reuse |
| AINodeWrapper.java | Updated CACHE_BUILT_IN_MODEL_PATH to use more general directory path |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
integration-test/src/test/java/org/apache/iotdb/ainode/it/AINodeModelManageIT.java
Outdated
Show resolved
Hide resolved
|
LGTM! |
…deModelManageIT.java Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
LGTM! |
|



To verify the model management framework, we append corresponding correctness and error handling CI in this PR, employing the Chronos2 model as example.