MLE-Agent is designed as a pairing LLM agent for machine learning engineers and researchers. It is featured by:
- π€ Autonomous Baseline: Automatically builds ML/AI baselines and solutions based on your requirements.
- π End-to-end ML Task: Participates in Kaggle competitions and completes tasks independently.
- π Arxiv and Papers with Code Integration: Access best practices and state-of-the-art methods.
- π Smart Debugging: Ensures high-quality code through automatic debugger-coder interactions.
- π File System Integration: Organizes your project structure efficiently.
- π§° Comprehensive Tools Integration: Includes AI/ML functions and MLOps tools for a seamless workflow.
- β Interactive CLI Chat: Enhances your projects with an easy-to-use chat interface.
- π§ Smart Advisor: Provides personalized suggestions and recommendations for your ML/AI project.
- π Weekly Report: Automatically generates detailed summaries of your weekly works.
mle_v030.mp4
- π 09/24/2024: Release the
0.4.2
with enhancedAuto-Kaggle
mode to complete an end-to-end competition with minimal effort. - π 09/10/2024: Release the
0.4.0
with new CLIs likeMLE report
,MLE kaggle
,MLE integration
and many new models likeMistral
. - π 07/25/2024: Release the
0.3.0
with huge refactoring, many integrations, etc. (v0.3.0) - π 07/11/2024: Release the
0.2.0
with multiple agents interaction (v0.2.0) - π¨βπΌ 07/03/2024: Kaia is born
- π 06/01/2024: Release the first rule-based version of MLE agent (v0.1.0)
pip install mle-agent -U
# or from source
git clone git@github.com:MLSysOps/MLE-agent.git
pip install -e .
mle new <project name>
And a project directory will be created under the current path, you need to start the project under the project directory.
cd <project name>
mle start
You can also start an interactive chat in the terminal under the project directory:
mle chat
MLE agent can help you prototype an ML baseline with the given requirements, and test the model on the local machine. The requirements can be vague, such as "I want to predict the stock price based on the historical data".
cd <project name>
mle start
MLE agent can help you summarize your weekly report, including development progress, communication notes, reference, and to-do lists.
cd <project name>
mle report
Then, you can visit http://localhost:3000/ to generate your report locally.
cd <project name>
mle report-local --email=<git email> --start-date=YYYY-MM-DD --end-date=YYYY-MM-DD <path_to_git_repo>
--start-date
and--end-date
are optional parameters. If omitted, the command will generate a report for the default date range of the last 7 days.- Replace
<git email>
with your Git email and<path_to_git_repo>
with the path to your local Git repository.
MLE agent can participate in Kaggle competitions and finish coding and debugging from data preparation to model training independently. Here is the basic command to start a Kaggle competition:
cd <project name>
mle kaggle
Or you can let the agents finish the Kaggle task without human interaction if you have the dataset and submission file ready:
cd <project name>
mle kaggle --auto \
--datasets "<path_to_dataset1>,<path_to_dataset2>,..." \
--description "<description_file_path_or_text>" \
--submission "<submission_file_path>" \
--sub_example "<submission_example_file_path>" \
--comp_id "<competition_id>"
Please make sure you have joined the competition before running the command. For more details, see the MLE-Agent Tutorials.
The following is a list of the tasks we plan to do, welcome to propose something new!
π¨ General Features
- Understand users' requirements to create an end-to-end AI project
- Suggest the SOTA data science solutions by using the web search
- Plan the ML engineering tasks with human interaction
- Execute the code on the local machine/cloud, debug and fix the errors
- Leverage the built-in functions to complete ML engineering tasks
- Interactive chat: A human-in-the-loop mode to help improve the existing ML projects
- Kaggle mode: to finish a Kaggle task without humans
- Summary and reflect the whole ML/AI pipeline
- Integration with Cloud data and testing and debugging platforms
- Local RAG support to make personal ML/AI coding assistant
- Function zoo: generate AI/ML functions and save them for future usage
β More LLMs and Serving Tools
- Ollama LLama3
- OpenAI GPTs
- Anthropic Claude 3.5 Sonnet
π Better user experience
- CLI Application
- Web UI
- Discord
𧩠Functions and Integrations
- Local file system
- Local code exectutor
- Arxiv.org search
- Papers with Code search
- General keyword search
- Hugging Face
- SkyPilot cloud deployment
- Snowflake data
- AWS S3 data
- Databricks data catalog
- Wandb experiment monitoring
- MLflow management
- DBT data transform
We welcome contributions from the community. We are looking for contributors to help us with the following tasks:
- Benchmark and Evaluate the agent
- Add more features to the agent
- Improve the documentation
- Write tests
Please check the CONTRIBUTING.md file if you want to contribute.
- Discord community. If you have any questions, please ask in the Discord community.
Check MIT License file for more information.