A Python package for advanced data classification.
Reason this release was yanked:
Buggy
Project description
Clarion 🚀
A lightweight, cloud-deployed web API for serving machine learning classification models.
The Mission
This project serves as the practical application for the "Cloud Computing for Data Science" diploma curriculum. Its goal is to take a trained machine learning model and make it accessible to the world through a simple, robust API.
This project picks up where the AutoCleanSE project leaves off. We will use the clean data produced by AutoCleanSE to train a model, and then we will build the infrastructure to deploy and serve that model in the cloud.
Core Features (The Roadmap)
- API Framework: A simple web server using Flask or FastAPI to define prediction endpoints.
- Cloud Storage Integration: Ability to connect to S3-compatible object storage (like MinIO or AWS S3) to retrieve assets.
- Model Serving: Load a serialized ML model (e.g., a
.pklfile) and use it to make live predictions. - Cloud Deployment: The entire application will be packaged and deployed to a cloud provider (e.g., as an AWS Lambda function).
- Containerization: The application will be containerized using Docker/Podman for portability.
Current Status
We have successfully established programmatic access to a local, S3-compatible MinIO server using boto3. This proves our ability to interact with cloud storage, which is the foundational first step.
Local Setup for Cloud Simulation
This project uses MinIO to simulate AWS S3 locally. This allows for rapid, offline development.
Running the Local MinIO Server
# First, ensure the MinIO container exists. If not, create it.
# This command runs the server in the background.
podman run -d -p 9000:9000 -p 9001:9001 --name minio-server -v ~/minio-data:/data -e "MINIO_ROOT_USER=admin" -e "MINIO_ROOT_PASSWORD=password" minio/minio server /data --console-address ":9001"
# To start the server for a new work session:
podman start minio-server
# To stop the server:
podman stop minio-server
Usage
The current test script demonstrates how to connect to the MinIO server.
# cloud_test.py
import boto3
# --- Configuration ---
access_key = "admin"
secret_key = "password"
endpoint_url = "http://127.0.0.1:9000"
# ---
s3_client = boto3.client(
's3',
endpoint_url=endpoint_url,
aws_access_key_id=access_key,
aws_secret_access_key=secret_key
)
response = s3_client.list_buckets()
print("Successfully connected. Found buckets:")
for bucket in response['Buckets']:
print(f"- {bucket['Name']}")
License
Distributed under the MIT License.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file clarion-0.1.0.tar.gz.
File metadata
- Download URL: clarion-0.1.0.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2c90b33ab16f85fa6893f19c774b18d31c25378750dcfe0a4bd036aea99057ce
|
|
| MD5 |
cf5bcc115d8e394f1547d5322beab681
|
|
| BLAKE2b-256 |
63bb08f12309aeea89f89ef2f283a8a8ca07e289bb825b41ec5c965193ec521e
|
File details
Details for the file clarion-0.1.0-py3-none-any.whl.
File metadata
- Download URL: clarion-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5eb960ad3abf8245efc406c6c3da465aab240b5cca952fbf6aa9158465d1b8c3
|
|
| MD5 |
fe6d362d4d4c6e04f5b6b5b6529bc9db
|
|
| BLAKE2b-256 |
0730d00dbd9e11faac0ad84f628aadaa899a69aa01dca99b560c0f6f65e2d921
|