Sulie bietet hochmoderne Basismodelle für Zeitreihenvorhersagen und ermöglicht genaue Zero-Shot-Vorhersagen mit minimalem Setup. Unsere transformatorbasierten Modelle automatisieren den Prozess und machen manuelle Schulungen und komplexe Konfigurationen überflüssig.
Dokumentation · Fehler melden · Treten Sie unserem Slack bei · Twitter
Um mit der Verwendung des Sulie SDK zu beginnen, benötigen Sie einen API-Schlüssel, der über das Sulie Dashboard generiert werden kann:
Wenn Ihr API-Schlüssel bereit ist, können Sie mit der Prognose beginnen.
Um das Sulie SDK zu installieren, führen Sie einfach Folgendes aus:
pip install sulie==1.0.6
Initialisieren Sie nach der Installation das SDK mit Ihrem API-Schlüssel, um mit der Prognose mit Mimosa zu beginnen:
from sulie import Sulie
# Initialize the Sulie client
client = Sulie ( api_key = "YOUR_API_KEY" )
Generieren Sie mithilfe der Zero-Shot-Inferenzfunktionen von Mimosa genaue Zeitreihenprognosen. Dieser Ansatz ist ideal, wenn Sie schnelle und zuverlässige Vorhersagen benötigen, ohne das Modell trainieren zu müssen.
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 )
Das Forecast
Objekt enthält drei Listen: low
, median
und high
, die unterschiedlichen Sicherheitsniveaus der Vorhersagen entsprechen. Diese helfen Ihnen, die Bandbreite möglicher Ergebnisse zu verstehen, von konservativ bis optimistisch.
Sie können die Prognosen auch direkt visualisieren, indem Sie die Plot-Funktion aufrufen:
forecast . plot ()
Dadurch wird schnell ein Diagramm mit den Prognosebereichen erstellt, sodass Trends und Schwankungen in den Ergebnissen leicht erkannt werden können. Perfekt für eine schnelle, klare Analyse.
Name | Beschreibung | Standard |
---|---|---|
dataset | Ein Dataset oder pd.DataFrame der Zeitreihendaten enthält. | Erforderlich |
target | Spaltenname für die Prognosevariable. | Erforderlich |
group_by | Spaltenname, nach dem Daten gruppiert werden sollen (z. B. verschiedene Standorte). | None |
date | Name der Zeitstempelspalte. | None |
frequency | Häufigkeit der Zeitreihe (z. B. H für stündlich). | None |
horizon | Zeitschritte zur Vorhersage im Voraus. | 24 |
num_samples | Anzahl probabilistischer Prognosestichproben. | 100 |
Mit der automatischen Feinabstimmung können Sie Mimosa für einzigartige Datensätze und Geschäftsfälle optimieren. Der Feinabstimmungsprozess nutzt den gewichteten Quantilverlust (WQL) zur Bewertung und gewährleistet so eine hohe Genauigkeit.
# 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 } " )
Name | Beschreibung | Standard |
---|---|---|
dataset | Ein Dataset oder pd.DataFrame mit Zeitreihendaten. | Erforderlich |
target | Zielgröße für die Optimierung. | Erforderlich |
group_by | Name der Spalte, nach der die DataFrame-Reihe gruppiert werden soll. | None |
description | Beschreibung des Feinabstimmungsauftrags. | None |
Sobald die Feinabstimmung abgeschlossen ist, wird das Modell automatisch bereitgestellt und steht für Prognosen zur Verfügung.
Mit der Dataset-API von Sulie können Sie Ihre Datensätze verwalten und versionieren und sie für teamübergreifende Prognosen und Feinabstimmungen zugänglich machen.
# 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 } " )
Notiz
Datensätze sind eine optionale Funktion. Um Prognosen zu erstellen oder sogar ein Basismodell zu verfeinern, können Sie auch einen Pandas DataFrame
an die Funktionen forecast
und fine_tune
übergeben.
Mit list_custom_models
oder get_model
können fein abgestimmte Modelle für neue Prognosen ausgewählt werden.
# 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 )