Construye Pipelines ML en Python
El SDK oficial de Python para CorePlexML. Entrena modelos, despliega endpoints y gestiona todo tu ciclo de vida de ML de forma programática.
pip install coreplexmlFuncional en 60 segundos
Instala el SDK, autentícate con tu clave API y comienza a construir.
# Instalar desde PyPI
$ pip install coreplexml
# Requisitos
# Python 3.9+
# requests >= 2.28from coreplexml import CorePlexMLClient
client = CorePlexMLClient(
base_url="https://your-instance.coreplexml.io",
api_key="sk_your_api_key"
)De extremo a extremo en un script
Desde la carga de datos hasta predicciones en producción — un flujo de trabajo de ML completo en un único archivo Python.
from coreplexml import CorePlexMLClient
client = CorePlexMLClient(base_url="https://api.coreplexml.io", api_key="sk_xxx")
# Crear un proyecto
project = client.projects.create(name="Churn Prediction", description="Q1 2026 model")
# Subir datos de entrenamiento
dataset = client.datasets.upload(
project_id=project["id"],
file_path="customers.csv",
name="Customer Data"
)
# Entrenar con AutoML
experiment = client.experiments.create(
project_id=project["id"],
dataset_version_id=dataset["dataset_version_id"],
target_column="churn",
problem_type="classification"
)
# Esperar a que termine el entrenamiento
result = client.experiments.wait(experiment["id"])
print(f"Mejor modelo: {result['best_model_id']}")
# Desplegar a producción
deployment = client.deployments.create(
project_id=project["id"],
model_id=result["best_model_id"],
name="churn-prod",
stage="production"
)
# Realizar predicciones
prediction = client.deployments.predict(
deployment_id=deployment["id"],
inputs={"age": 35, "tenure": 24, "monthly_charges": 65.50}
)
print(f"Probabilidad de abandono: {prediction['probability']:.2%}")Un cliente, 13 módulos
Accede a todos los recursos de CorePlexML mediante métodos intuitivos con espacio de nombres — desde entrenamiento AutoML hasta pruebas A/B y alertas.
Projects
Crea y gestiona espacios de trabajo. Organiza conjuntos de datos, experimentos y despliegues bajo un único proyecto.
projects = client.projects.list()
project = client.projects.create(name="My Project")Datasets
Sube archivos CSV, gestiona versiones de conjuntos de datos y obtén metadatos de columnas para tus datos de entrenamiento.
dataset = client.datasets.upload(project_id, "data.csv", name="Training Data")
versions = client.datasets.versions(dataset_id)Experiments (AutoML)
Lanza ejecuciones de entrenamiento AutoML con selección automática de algoritmos y ajuste de hiperparámetros.
exp = client.experiments.create(project_id, dataset_version_id, target_column="target")
result = client.experiments.wait(exp["id"], timeout=3600)Deployments (MLOps)
Despliega modelos a endpoints de producción con lanzamientos canary, pruebas A/B y monitoreo en tiempo real.
dep = client.deployments.create(project_id, model_id, name="prod", stage="production")
pred = client.deployments.predict(dep["id"], inputs={...})Privacy Suite
Detecta y transforma PII en 72+ tipos. Perfiles integrados de HIPAA, GDPR, PCI-DSS y CCPA.
policy = client.privacy.create_policy(project_id, name="HIPAA", profile="hipaa")
session = client.privacy.create_session(policy_id, dataset_id)
client.privacy.detect(session["id"])SynthGen
Genera datos sintéticos seguros para la privacidad con los motores CTGAN, CopulaGAN y TVAE.
model = client.synthgen.create_model(project_id, dataset_version_id, model_type="ctgan")
synthetic = client.synthgen.generate(model["id"], num_rows=10000)Batch Predictions
Ejecuta predicciones sobre conjuntos de datos completos de forma asíncrona. Sube un CSV, inicia un trabajo por lotes y descarga los resultados cuando estén listos.
job = client.predictions.create(deployment_id, file_path="batch.csv")
result = client.predictions.wait(job["id"])
client.predictions.download(job["id"], "output.csv")Streaming Predictions
Streaming WebSocket en tiempo real para el progreso de inferencia por lotes y resultados de predicción en vivo.
for row in client.streaming.predict(deployment_id, data):
print(row["prediction"], row["confidence"])Model Registry
Versionado semántico, transiciones de etapa (dev → staging → prod), fichas de modelo y rastreo de linaje.
ver = client.registry.create_version(project_id, model_id, version="1.2.0")
client.registry.transition_stage(ver["id"], stage="production")Reports
Genera reportes PDF sobre rendimiento del modelo, importancia de características, análisis de drift y resúmenes de despliegue.
report = client.reports.generate(project_id, kind="performance")
result = client.reports.wait(report["id"])
client.reports.download(report["id"], "report.pdf")A/B Testing
Crea experimentos entre variantes de modelos con divisiones de tráfico configurables y análisis estadístico.
test = client.ab_tests.create(project_id, model_a, model_b, split=50)
results = client.ab_tests.get_results(test["id"])Alerts
Configura reglas de alerta de monitoreo con notificaciones multicanal: Slack, correo electrónico y webhooks.
rule = client.alerts.create_rule(deployment_id, metric="drift_psi", threshold=0.2)
client.alerts.add_channel(rule["id"], channel_type="slack")Admin
Administración de la plataforma: gestiona usuarios, revisa configuraciones del sistema y monitorea el estado de la plataforma.
users = client.admin.list_users(page=1, per_page=50)
settings = client.admin.manage_settings(gpu_enabled=True)Todo lo que necesitas, nada que no
El SDK refleja cada endpoint de la API en una interfaz limpia y pythónica — con valores predeterminados inteligentes para que puedas avanzar rápido.
- CRUD completo para todos los recursos de la plataforma en 13 módulos
- Espera bloqueante con polling para operaciones asíncronas (entrenamiento, generación de reportes)
- Manejo de errores tipado (AuthenticationError, NotFoundError, ValidationError, APIError)
- Tiempos de espera configurables y lógica de reintentos
- Soporte de carga de archivos (CSV, Excel, JSON, XML)
- Predicciones por lotes y streaming (REST + WebSocket)
- Generación y descarga de reportes (7 tipos de reportes)
- Registro de modelos con versionado semántico y gestión de etapas
- Pruebas A/B con análisis de significancia estadística
- Configuración de alertas multicanal (Slack, correo electrónico, webhooks)
- Integración de Privacy Suite y SynthGen
- Operaciones de administración para gestión de usuarios y plataforma
Excepciones tipadas, diagnósticos claros
Cada tipo de error es una excepción distinta con contexto accionable. No más conjeturas a partir de códigos HTTP crudos.
from coreplexml import CorePlexMLClient
from coreplexml.exceptions import (
AuthenticationError,
NotFoundError,
ValidationError,
APIError,
)
client = CorePlexMLClient(base_url="https://api.coreplexml.io", api_key="sk_xxx")
try:
experiment = client.experiments.create(
project_id="proj_abc",
dataset_version_id="dsv_123",
target_column="revenue"
)
except AuthenticationError:
print("Clave API inválida o expirada")
except NotFoundError as e:
print(f"Recurso no encontrado: {e.resource_id}")
except ValidationError as e:
print(f"Parámetros inválidos: {e.errors}")
except APIError as e:
print(f"HTTP {e.status_code}: {e.message}")Empieza a construir con el SDK
hoy
Obtén tu clave API, instala el paquete y despliega tu primer modelo en minutos.