Skip to content

Add MLFlow monitor#179

Merged
hiyuchang merged 4 commits intoagentscope-ai:mainfrom
pan-x-c:feature/mlflow
Aug 12, 2025
Merged

Add MLFlow monitor#179
hiyuchang merged 4 commits intoagentscope-ai:mainfrom
pan-x-c:feature/mlflow

Conversation

@pan-x-c
Copy link
Collaborator

@pan-x-c pan-x-c commented Aug 11, 2025

Description

As the title says

Checklist

Please check the following items before code is ready to be reviewed.

  • Code has passed all tests
  • Docstrings have been added/updated in Google Style
  • Documentation has been updated
  • Code is ready for review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Summary of Changes

Hello @pan-x-c, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

I've implemented the core functionality to integrate MLflow as a monitoring solution, allowing for robust experiment tracking and management. This includes adding a dedicated MLflow monitor class, enhancing the configuration system to support flattening nested settings for better logging, and making monitor argument handling more flexible. These changes significantly improve the ability to track and reproduce machine learning experiments.

Highlights

  • MLflow Integration: I've introduced a new MlflowMonitor class that integrates with MLflow for experiment tracking. This allows for logging run parameters, metrics, and managing the ML lifecycle directly through MLflow, enhancing reproducibility and visibility of experiments.
  • Configuration Flattening Utility: I've added a flatten method to the Config class. This utility converts the nested configuration object into a flat dictionary with dot-separated keys, which is essential for logging comprehensive configuration parameters to MLflow in a structured way.
  • Improved Monitor Configuration: I've refined the monitor configuration handling. The monitor_args field in MonitorConfig is now optional, and the system will automatically apply default arguments for a chosen monitor type if none are explicitly provided. This improves flexibility and reduces boilerplate for monitor setup.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a 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 adds support for MLFlow as a monitoring tool. The changes include a new MlflowMonitor class, updates to the configuration handling to support monitor-specific arguments, and a new flatten method on the config object to facilitate logging parameters. My review focuses on improving the implementation of the new monitor classes for robustness and maintainability. I've suggested refactoring the environment variable setup in WandbMonitor, fixing a potential bug in MlflowMonitor's authentication setup, making the log_table implementation more explicit, and removing dead code.

@pan-x-c
Copy link
Collaborator Author

pan-x-c commented Aug 11, 2025

/unittest-all

Copy link
Collaborator

@hiyuchang hiyuchang left a comment

Choose a reason for hiding this comment

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

lgtm

@hiyuchang hiyuchang merged commit 15e120f into agentscope-ai:main Aug 12, 2025
1 check passed
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.

2 participants

Comments