Awesome
<div align="center"> <h1 align="center">MLE-Agent: Your intelligent companion for seamless AI engineering and research.</h1> <img alt="kaia-llama" height="200px" src="assets/kaia_llama.webp"> <a href="https://trendshift.io/repositories/11658" target="_blank"><img src="https://trendshift.io/api/badge/repositories/11658" alt="MLSysOps%2FMLE-agent | Trendshift" style="width: 250px; height: 200px;" width="250" height="200px"/></a> <p align="center">:love_letter: Fathers' love for Kaia :love_letter:</p><a href="https://discord.gg/d9vcY7PA8Z"><img src="https://img.shields.io/badge/Discord-Join%20Us-purple?logo=discord&logoColor=white&style=flat" alt="Join our Discord community"></a>
π Docs | π Report Issues | π Join us on <a href="https://discord.gg/d9vcY7PA8Z" target="_blank">Discord</a>
</div>Overview
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.
https://github.com/user-attachments/assets/dac7be90-c662-4d0d-8d3a-2bc4df9cffb9
Milestones
- :rocket: 09/24/2024: Release the
0.4.2
with enhancedAuto-Kaggle
mode to complete an end-to-end competition with minimal effort. - :rocket: 09/10/2024: Release the
0.4.0
with new CLIs likeMLE report
,MLE kaggle
,MLE integration
and many new models likeMistral
. - :rocket: 07/25/2024: Release the
0.3.0
with huge refactoring, many integrations, etc. (v0.3.0) - :rocket: 07/11/2024: Release the
0.2.0
with multiple agents interaction (v0.2.0) - π¨βπΌ 07/03/2024: Kaia is born
- :rocket: 06/01/2024: Release the first rule-based version of MLE agent (v0.1.0)
Get started
Installation
pip install mle-agent -U
# or from source
git clone git@github.com:MLSysOps/MLE-agent.git
pip install -e .
Usage
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
Use cases
π§ͺ Prototype an ML Baseline
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
:bar_chart: Generate Work Report
MLE agent can help you summarize your weekly report, including development progress, communication notes, reference, and to-do lists.
Mode 1: Web Application to Generate Report from GitHub
cd <project name>
mle report
Then, you can visit http://localhost:3000/ to generate your report locally.
Mode 2: CLI Tool to Generate Report from Local Git Repository
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.
:trophy: Start with Kaggle Competition
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.
Roadmap
The following is a list of the tasks we plan to do, welcome to propose something new!
<details> <summary><b> :hammer: General Features</b></summary>- 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
- Ollama LLama3
- OpenAI GPTs
- Anthropic Claude 3.5 Sonnet
- CLI Application
- Web UI
- Discord
- 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
Contributing
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.
Support and Community
- Discord community. If you have any questions, please ask in the Discord community.
Star History
License
Check MIT License file for more information.