ML Assistant for Competitive Machine Learning
Project description
AutoGluon Assistant
AutoGluon Assistant (AG-A) provides users a simple interface where they can input their data, describe their problem, and receive a highly accurate and competitive ML solution — without writing any code. By leveraging the state-of-the-art AutoML capabilities of AutoGluon and integrating them with a Large Language Model (LLM), AG-A automates the entire data science pipeline. AG-A takes AutoGluon’s automation from three lines of code to zero, enabling users to solve new supervised learning tabular problems using only natural language descriptions.
Setup
Installing from source:
# create a conda env
conda create -n aga python=3.10
conda activate aga
# clone repositories
git clone https://github.com/autogluon/autogluon-assistant.git
cd autogluon-assistant && pip install -e "." && cd ..
or simply:
pip install autogluon.assistant
Beta Features
AG-A now supports automatic feature generation as part of its beta features. To enable these features, please install the beta version dependencies using the following command:
pip install -r requirements.txt
API Keys
Configuring LLMs
AG-A supports using both AWS Bedrock and OpenAI as LLM model providers. You will need to set up API keys for the respective provider you choose. By default, AG-A uses AWS Bedrock for its language models.
AWS Bedrock Setup
AG-A integrates with AWS Bedrock by default. To use AWS Bedrock, you will need to configure your AWS credentials and region settings:
export AWS_DEFAULT_REGION="<your-region>"
export AWS_ACCESS_KEY_ID="<your-access-key>"
export AWS_SECRET_ACCESS_KEY="<your-secret-key>"
Ensure you have an active AWS account and appropriate permissions set up for using Bedrock models. You can manage your AWS credentials through the AWS Management Console. See Bedrock supported AWS regions
OpenAI Setup
To use OpenAI, you'll need to set your OpenAI API key as an environment variable:
export OPENAI_API_KEY="sk-..."
You can sign up for an OpenAI account here and manage your API keys here.
Important: Free-tier OpenAI accounts may be subject to rate limits, which could affect AG-A's performance. We recommend using a paid OpenAI API key for seamless functionality.
Usage
We support two ways of using AutoGluon Assistant: WebUI and CLI.
Web UI
AutoGluon Assistant Web UI allows users to leverage the capabilities of AG-A through an intuitive web interface.
The web UI enables users to upload datasets, configure AG-A runs with customized settings, preview data, monitor execution progress, view and download results, and supports secure, isolated sessions for concurrent users.
To run the AG-A Web UI:
aga ui
# OR
# Launch Web-UI on specific port e.g. 8888
aga ui --port 8888
AG-A Web UI should now be accessible in your web browser at http://localhost:8501
or the specified port.
CLI
Before launching AG-A CLI, prepare your data files in the following structure:
└── data # Data files directory
├── train.[ext] # Training dataset (required)
├── test.[ext] # Test dataset (required)
└── description.txt # Dataset and task description (recommended)
Note:
- The training and test files can be in any tabular data format (e.g., csv, parquet, xlsx)
- While there are no strict naming requirements, we recommend using clear, descriptive filenames
- The description file is optional but recommended for better model selection and optimization. It can include:
- Dataset description
- Problem context
- Evaluation metrics
- Any other relevant information
Now you can launch the AutoGluon Assistant run using the following command:
aga run [NAME_OF_DATA_DIR] --presets [PRESET_QUALITY]
# e.g. aga run ./toy_data --presets best_quality
We support three presets, including medium_quality
, high_quality
and best_quality
. We use best_quality
as a default setting.
After the run is complete, model predictions on test dataset are saved into the aga-output-<timestamp>.csv
file. It will be formatted according to optional sample_submission.csv
file if provided.
Overriding Configs
You can override specific settings in the YAML configuration defined in the config folder using
the config_overrides
parameter with format "key1=value1, key2.nested=value2"
from the command line.
Here are some example commands on using configuration overrides:
aga run toy_data --config_overrides "feature_transformers.enabled_models=None, time_limit=3600"
# OR
aga run toy_data --config_overrides "feature_transformers.enabled_models=None" --config_overrides "time_limit=3600"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file autogluon_assistant-0.0.1.dev20241119.tar.gz
.
File metadata
- Download URL: autogluon_assistant-0.0.1.dev20241119.tar.gz
- Upload date:
- Size: 1.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7d1220b317c4ab3c8938a5c680b02457605bf575d4820058afbefcd3eb7c0b3 |
|
MD5 | e4df461c4211d4e56cd6d2c784f93b7b |
|
BLAKE2b-256 | 01810e833c7f9df1bd09fc867f2b1878f3f46bbaa2f1c6b6b76bb795e381cb74 |
Provenance
The following attestation bundles were made for autogluon_assistant-0.0.1.dev20241119.tar.gz
:
Publisher:
nightly_release.yml
on autogluon/autogluon-assistant
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
autogluon_assistant-0.0.1.dev20241119.tar.gz
- Subject digest:
e7d1220b317c4ab3c8938a5c680b02457605bf575d4820058afbefcd3eb7c0b3
- Sigstore transparency entry: 149914866
- Sigstore integration time:
- Predicate type:
File details
Details for the file autogluon.assistant-0.0.1.dev20241119-py3-none-any.whl
.
File metadata
- Download URL: autogluon.assistant-0.0.1.dev20241119-py3-none-any.whl
- Upload date:
- Size: 1.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d684f97cd3fec41235537264815ed7b127374bac065d82819ac6f3a0924f1de6 |
|
MD5 | 6da577659c429ef43fa9bdca434a08fe |
|
BLAKE2b-256 | 69012af7427444dc7624a3f703f4816f0e75a41d8f487784d41dbf98c7acc4c8 |
Provenance
The following attestation bundles were made for autogluon.assistant-0.0.1.dev20241119-py3-none-any.whl
:
Publisher:
nightly_release.yml
on autogluon/autogluon-assistant
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
autogluon_assistant-0.0.1.dev20241119-py3-none-any.whl
- Subject digest:
d684f97cd3fec41235537264815ed7b127374bac065d82819ac6f3a0924f1de6
- Sigstore transparency entry: 149914873
- Sigstore integration time:
- Predicate type: