Sulie oferece modelos básicos de última geração para previsão de séries temporais, permitindo previsões precisas e zero-shot com configuração mínima. Nossos modelos baseados em transformadores automatizam o processo, eliminando a necessidade de treinamento manual e configurações complexas.
Documentação · Reportar bug · Junte-se ao nosso Slack · Twitter
Para começar a usar o SDK Sulie, você precisará de uma chave de API, que pode ser gerada no Painel Sulie :
Com sua chave de API pronta, você está pronto para iniciar a previsão.
Para instalar o Sulie SDK, basta executar:
pip install sulie==1.0.6
Após a instalação, inicialize o SDK usando sua chave de API para iniciar a previsão com o Mimosa:
from sulie import Sulie
# Initialize the Sulie client
client = Sulie ( api_key = "YOUR_API_KEY" )
Gere previsões precisas de séries temporais usando os recursos de inferência zero-shot do Mimosa. Essa abordagem é ideal quando você precisa de previsões rápidas e confiáveis sem treinar o modelo.
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 )
O objeto Forecast
inclui três listas: low
, median
e high
, correspondendo a diferentes níveis de certeza nas previsões. Isso ajuda você a compreender a gama de resultados possíveis, do conservador ao otimista.
Você também pode visualizar as previsões diretamente chamando a função plot:
forecast . plot ()
Isso gera rapidamente um gráfico mostrando os intervalos de previsão, facilitando a identificação de tendências e variabilidade nos resultados. Perfeito para uma análise rápida e clara.
Nome | Descrição | Padrão |
---|---|---|
dataset | Um Dataset ou pd.DataFrame contendo dados de série temporal. | Obrigatório |
target | Nome da coluna da variável de previsão. | Obrigatório |
group_by | Nome da coluna para agrupar dados (por exemplo, locais diferentes). | None |
date | Nome da coluna do carimbo de data/hora. | None |
frequency | Frequência da série temporal (por exemplo, H para horária). | None |
horizon | Etapas de tempo para prever o futuro. | 24 |
num_samples | Número de amostras de previsão probabilística. | 100 |
Com o ajuste fino automático, você pode otimizar o Mimosa para conjuntos de dados e casos de negócios exclusivos. O processo de ajuste fino utiliza Perda Quantílica Ponderada (WQL) para avaliação, garantindo alta precisão.
# 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 } " )
Nome | Descrição | Padrão |
---|---|---|
dataset | Um Dataset ou pd.DataFrame com dados de série temporal. | Obrigatório |
target | Variável de destino para otimização. | Obrigatório |
group_by | Nome da coluna pela qual agrupar a série DataFrame. | None |
description | Descrição do trabalho de ajuste fino. | None |
Após a conclusão do ajuste fino, o modelo é implantado automaticamente e fica disponível para previsão.
A API Dataset da Sulie permite gerenciar e versionar seus conjuntos de dados, tornando-os acessíveis para previsão e ajuste fino entre equipes.
# 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 } " )
Observação
Os conjuntos de dados são um recurso opcional. Para fazer previsões ou até mesmo ajustar um modelo básico, você também pode passar um DataFrame
do Pandas para as funções de forecast
e fine_tune
.
Modelos ajustados podem ser selecionados para novas previsões usando 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 )