Sulie propose des modèles de base de pointe pour la prévision de séries chronologiques, permettant des prévisions précises et sans tir avec une configuration minimale. Nos modèles basés sur des transformateurs automatisent le processus, éliminant ainsi le besoin de formation manuelle et de configurations complexes.
Documentation · Signaler un bug · Rejoignez notre Slack · Twitter
Pour commencer à utiliser le SDK Sulie, vous aurez besoin d'une clé API, qui peut être générée à partir du tableau de bord Sulie :
Une fois votre clé API prête, vous êtes prêt à commencer les prévisions.
Pour installer le SDK Sulie, exécutez simplement :
pip install sulie==1.0.6
Après l'installation, initialisez le SDK à l'aide de votre clé API pour démarrer les prévisions avec Mimosa :
from sulie import Sulie
# Initialize the Sulie client
client = Sulie ( api_key = "YOUR_API_KEY" )
Générez des prévisions de séries chronologiques précises à l'aide des capacités d'inférence zéro-shot de Mimosa. Cette approche est idéale lorsque vous avez besoin de prédictions rapides et fiables sans entraîner le modèle.
import pandas as pd
# Example time series data
df = pd . DataFrame ({
'timestamp' : pd . date_range ( start = '2023-01-01' , periods = 1000 , freq = 'H' ),
'demand' : [ ... ], # Demand data
'location' : [ 'Plant A' , ...] # Data for different locations
})
# Forecast demand for each location over the next 24 hours
forecast = client . forecast (
dataset = df ,
target = 'demand' ,
group_by = 'location' ,
date = 'timestamp' ,
frequency = 'H' ,
horizon = 24 , # Predict 24 hours ahead
num_samples = 100 # Generate probabilistic forecasts
)
print ( forecast )
L'objet Forecast
comprend trois listes : low
, median
et high
, correspondant à différents niveaux de certitude dans les prédictions. Ceux-ci vous aident à comprendre l’éventail des résultats possibles, du conservateur à l’optimiste.
Vous pouvez également visualiser les prévisions directement en appelant la fonction plot :
forecast . plot ()
Cela génère rapidement un graphique montrant les plages de prévisions, permettant ainsi de repérer facilement les tendances et la variabilité des résultats. Parfait pour une analyse rapide et claire.
Nom | Description | Défaut |
---|---|---|
dataset | Un Dataset ou pd.DataFrame contenant des données de séries chronologiques. | Requis |
target | Nom de colonne pour la variable de prévision. | Requis |
group_by | Nom de la colonne selon laquelle regrouper les données (par exemple, différents emplacements). | None |
date | Nom de la colonne d’horodatage. | None |
frequency | Fréquence de la série chronologique (par exemple, H pour horaire). | None |
horizon | Pas de temps pour prévoir à l’avance. | 24 |
num_samples | Nombre d'échantillons de prévisions probabilistes. | 100 |
Grâce au réglage automatique, vous pouvez optimiser Mimosa pour des ensembles de données et des analyses de rentabilisation uniques. Le processus de réglage fin utilise la perte quantile pondérée (WQL) pour l'évaluation, garantissant ainsi une grande précision.
# Fine-tune Mimosa on custom dataset
fine_tune_job = client . fine_tune (
dataset = df ,
target = "demand" ,
description = "Fine-tune for Plant A demand prediction"
)
# Check the fine-tuning job status
print ( f"Job status: { fine_tune_job . status } " )
Nom | Description | Défaut |
---|---|---|
dataset | Un Dataset ou pd.DataFrame avec des données de séries chronologiques. | Requis |
target | Variable cible pour l'optimisation. | Requis |
group_by | Nom de la colonne par laquelle regrouper la série DataFrame. | None |
description | Description du travail de mise au point. | None |
Une fois le réglage fin terminé, le modèle est automatiquement déployé et disponible pour les prévisions.
L'API Dataset de Sulie vous permet de gérer et de versionner vos ensembles de données, les rendant accessibles pour les prévisions et les ajustements entre les équipes.
# Upload a dataset to Sulie
dataset = client . upload_dataset (
name = "product-sales-data-v1" ,
df = df ,
mode = "append" # Choose 'append' or 'overwrite'
)
# List available datasets
datasets = client . list_datasets ()
print ( f"Available datasets: { datasets } " )
Note
Les ensembles de données sont une fonctionnalité facultative. Pour faire des prévisions ou même affiner un modèle de base, vous pouvez également transmettre un Pandas DataFrame
aux fonctions forecast
et fine_tune
.
Des modèles affinés peuvent être sélectionnés pour de nouvelles prévisions à l'aide list_custom_models
ou get_model
.
# List custom and fine-tuned models
custom_models = client . list_custom_models ()
# Select and forecast with a fine-tuned model
model_name = custom_models [ 0 ]. name
custom_model = client . get_model ( model_name )
# Forecast using the selected model
forecast_custom = custom_model . forecast (
dataset = df ,
target = 'demand' ,
group_by = 'location' ,
date = 'timestamp' ,
frequency = 'H' ,
horizon = 24 ,
num_samples = 50
)
print ( forecast_custom )