Decision Optimization utilizza le API asincrone diwatsonx.ai Runtime per consentire l'esecuzione di lavori in parallelo.
Per risolvere un problema, è possibile creare un nuovo lavoro dalla distribuzione del modello e associarvi i dati. Vedere passi di distribuzione e l' esempio di API REST. La distribuzione di un modello non ti viene addebitata. Solo la risoluzione di un modello con alcuni dati viene caricata, in base alla durata.
Per risolvere più di un lavoro per volta, specificare più di un nodo quando si crea la propria distribuzione. Ad esempio in questo REST API esempio, incrementa il numero dei nodi modificando il valore della proprietà dei nodi: "nodes" : 1
.
POD (nodi)
Quando viene creato e inviato un lavoro, il modo in cui viene gestito dipende dalla configurazione corrente e dai lavori in esecuzione per l'istanza watsonx.ai Runtime. Questo processo viene mostrato nel seguente diagramma.
- Il nuovo lavoro viene inviato in coda.
- Se un POD viene avviato ma è inattivo (non esegue un lavoro), inizia immediatamente l'elaborazione di questo lavoro.
- In caso contrario, se non viene raggiunto il numero massimo di nodi, viene avviato un nuovo POD. (L'avvio di un POD può richiedere alcuni secondi). Il job viene quindi assegnato a questo nuovo POD per l'elaborazione.
- Altrimenti, il lavoro attende nella coda fino a quando uno dei POD in esecuzione non termina e può riprendere il lavoro in attesa.
La configurazione dei POD di ogni dimensione è la seguente:
Definizione | Nome | Descrizione |
---|---|---|
2 vCPU e 8 GB | S | Piccolo |
4 vCPU e 16 GB | M | Medio |
8 vCPU e 32 GB | L | Grande |
16 vCPU e 64 GB | Portale XL | Molto grande |
Per tutte le configurazioni, 1 vCPU e 512 MB sono riservati per uso interno.
Oltre al tempo di risoluzione, il prezzo dipende dalla dimensione selezionata attraverso un moltiplicatore.
Nella configurazione di installazione, è anche possibile impostare il numero massimo di nodi da utilizzare.
I POD idle vengono fermati automaticamente dopo qualche timeout. Se un nuovo lavoro viene inoltrato quando nessun POD è attivo, il riavvio del POD richiede del tempo (circa 30 secondi).
Prezzi basati sul tempo di esecuzione (CUH)
Viene addebitato solo il tempo di risoluzione del lavoro: il tempo di inattività dei POD non viene addebitato.
A seconda delle dimensioni del POD utilizzato, viene utilizzato un moltiplicatore diverso per calcolare il numero di unità di capacità oraria (CUH) utilizzate.
Esempio di API REST
Per la procedura completa di distribuzione di un modello e i collegamenti alla documentazione Swagger, vedere Esempio di API REST.
Python esempio di API
Oltre alle API REST, con il modello 'watsonx.ai Tempo di esecuzione viene fornita un'API 'Python che consente di creare, distribuire e utilizzare facilmente un modello 'Decision Optimization da un modello 'Python 'notebook.
Per ulteriori informazioni, vedere Esempio di clientPython.
Un 'esempio " notebook che descrive e documenta tutti i passaggi è disponibile dal 'Hub delle risorse.