Risoluzione dei problemi dell'istanza del servizio watsonx.ai Runtime
Copy link to section
Seguire questi suggerimenti per risolvere i problemi comuni che si possono incontrare quando si lavora con l'istanza del servizio watsonx.ai Runtime.
Istanza di runtime watsonx.ai non attiva
Copy link to section
Sintomi
Dopo aver tentato di inviare una richiesta di inferenza a un foundation model facendo clic sul pulsante Genera nel Prompt Lab, viene visualizzato il seguente messaggio di errore:
'code': 'no_associated_service_instance_error',
'message': 'WML instance {instance_id} status is not active, current status: Inactive'
Cause possibili
L'associazione tra il progetto watsonx.ai e la relativa istanza del servizio watsonx.ai Runtime è stata persa.
Soluzioni possibili
Ricreare o aggiornare l'associazione tra il progetto watsonx.ai e la relativa istanza del servizio watsonx.ai Runtime. Per eseguire tale operazione, completa la procedura riportata di seguito:
Dal menu principale, espandere Progetti e fare clic su Visualizza tutti i progetti.
Fare clic sul progetto watsonx.ai
Dalla scheda Gestione, fare clic su Servizi e integrazioni.
Se l'istanza del servizio watsonx.ai Runtime appropriato è elencata, dissociarla temporaneamente selezionando l'istanza e facendo clic su Rimuovi. Confermare la rimozione.
Fare clic su Associa servizio.
Scegliere l'istanza di servizio watsonx.ai Runtime appropriata dall'elenco e fare clic su Associa.
Risoluzione dei problemi di AutoAI
Copy link to section
Seguite questi suggerimenti per risolvere i problemi più comuni che si possono incontrare quando si lavora con AutoAI.
L'esecuzione di un esperimento AutoAI sulle serie temporali con la previsione di anomalie fallisce
Copy link to section
La funzione di previsione delle anomalie nei risultati di un esperimento di serie temporali non è più supportata. Se si tenta di eseguire un esperimento esistente, si verificano errori per la mancanza di librerie di runtime. Ad esempio, potrebbe essere visualizzato questo errore:
The selected environment seems to be invalid: Could not retrieve environment. CAMS error: Missing or invalid asset id
Questo comportamento è previsto in quanto i tempi di esecuzione per la previsione delle anomalie non sono supportati. Non esiste una soluzione per questo problema.
Il notebook di inferenza AutoAI per un esperimento RAG supera i limiti del modello
Copy link to section
A volte, quando si esegue un notebook di inferenza generato per un esperimento AutoAI RAG, si può ottenere questo errore:
MissingValue: No "model_limits" provided. Reason: Model <model-nam> limits cannot be found in the model details.
L'errore indica che mancano i limiti dei token per l'inferenza del foundation model utilizzato per l'esperimento. Per risolvere il problema, trovare la funzione 'default_inference_function e sostituire 'get_max_input_tokens con i token massimi per il modello. Ad esempio:
È possibile trovare il valore massimo del token per il modello nella tabella dei modelli di fondazione supportati disponibili con watsonx.ai
L'addestramento di un esperimento AutoAI fallisce con le credenziali dell'ID del servizio
Copy link to section
Se si sta addestrando un esperimento AutoAI utilizzando la chiave API per il serviceID, addestramento potrebbe fallire con questo errore:
User specified in query parameters does not match user from token.
Copy to clipboardCopiato negli appunti
Un modo per risolvere questo problema è eseguire l'esperimento con le proprie credenziali utente. Se si desidera eseguire l'esperimento con le credenziali del servizio, seguire questi passaggi per aggiornare i ruoli e i criteri per l'ID del servizio.
Creare un nuovo serviceID o aggiornare l'ID esistente con il seguente criterio di accesso:
Tutti i servizi di gestione degli account IAM con i ruoli di revisore di chiavi API, creatore di chiavi API utente, visualizzatore, operatore ed editor. Idealmente è meglio se creano una nuova chiave apikey per questo ServiceId.
La nuova politica sarà la seguente:
Eseguire nuovamente il training con le credenziali per il serviceID aggiornato.
La richiesta di predizione per il modello di serie temporali AutoAI può andare in time out con troppe nuove osservazioni
Copy link to section
Una richiesta di predizione può andare in time out per un modello di serie temporali AutoAI distribuito se sono passate troppe nuove osservazioni. Per risolvere il problema, effettuare una delle seguenti
operazioni:
Ridurre il numero di nuove osservazioni.
Estendere i dati di addestramento utilizzati per l'esperimento aggiungendo nuove osservazioni. Quindi, rieseguire l'esperimento AutoAI sulle serie temporali con i dati di formazione aggiornati.
Membri di classe insufficienti nei dati di addestramento per l'esperimento AutoAI
Copy link to section
I dati di addestramento per un esperimento AutoAI devono avere almeno 4 membri per ogni classe. Se i tuoi dati di formazione non hanno un numero sufficiente di membri in una classe, riscontrerai questo errore:
ERROR: ingesting data Message id: AC10011E. Message: Each class must have at least 4 members. The following classes have too few members: ['T'].
Per risolvere il problema, aggiornare i dati di addestramento per rimuovere la classe o aggiungere più membri.
Impossibile aprire asset da Cloud Pak for Data che richiedono watsonx.ai
Copy link to section
Se si lavora nel contesto Cloud Pak for Data, non è possibile aprire risorse che richiedono un contesto di prodotto diverso, come watsonx.ai. Ad esempio, se si crea un esperimento AutoAI per un modello RAG utilizzando watsonx.ai, non è possibile aprire tale risorsa quando ci si trova nel contesto Cloud Pak for Data. Nel caso degli esperimenti AutoAI, è possibile visualizzare il tipo di formazione dall'elenco delle risorse. È possibile aprire esperimenti con il tipo 'apprendimento automatico, ma non con il tipo 'Generazione aumentata dal recupero.
Risoluzione dei problemi delle distribuzioni
Copy link to section
Seguire questi suggerimenti per risolvere i problemi comuni che si possono incontrare quando si lavora con le distribuzioni di watsonx.ai Runtime.
Le distribuzioni batch che utilizzano volumi di dati di grandi dimensioni come input potrebbero non riuscire
Copy link to section
Se si sta calcolando il punteggio di un lavoro batch che utilizza grandi volumi di dati come origine di input, il lavoro potrebbe non riuscire a causa delle impostazioni di timeout interne. Un sintomo di questo problema potrebbe essere un messaggio di errore simile al seguente esempio:
Incorrect input data: Flight returned internal error, with message: CDICO9999E: Internal error occurred: Snowflake sQL logged error: JDBC driver internal error: Timeout waiting for the download of #chunk49(Total chunks: 186) retry=0.
Copy to clipboardCopiato negli appunti
Se il timeout si verifica quando si calcola il punteggio della distribuzione batch, è necessario configurare la limitazione del timeout a livello di query dell'origine dati per gestire i job di lunga durata.
Le informazioni di timeout a livello di query per le origini dati sono le seguenti:
Informazioni sul limite di tempo a livello di query per le origini dati
Origine dati
Limitazione del tempo a livello di query
Limite di tempo predefinito
Modifica limite di tempo predefinito
Apache Cassandra
Vero
10 secondi
Impostare i parametri read_timeout_in_ms e write_timeout_in_ms nel file di configurazione di Apache Cassandra o nell' URL della connessione di Apache Cassandra per modificare il limite di tempo predefinito.
Cloud Object Storage
N
N/D
N/D
Db2
Vero
N/D
Impostare il parametro QueryTimeout per specificare la quantità di tempo (in secondi) per cui un client attende il completamento dell'esecuzione di una query prima che un client tenti di annullare l'esecuzione e restituire il controllo all'applicazione.
Hive via Execution Engine for Hadoop
Vero
60 minuti (3600 secondi)
Impostare la proprietà hive.session.query.timeout nell' URL di connessione per modificare il limite di tempo predefinito.
Microsoft SQL Server
Vero
30 secondi
Impostare l'opzione di configurazione del server QUERY_TIMEOUT per modificare il limite di tempo predefinito.
MongoDB
Vero
30 secondi
Impostare il parametro maxTimeMS nelle opzioni della query per modificare il limite di tempo predefinito.
MySQL
Vero
0 secondi (nessun limite di tempo predefinito)
Impostare la proprietà timeout nell' URL di connessione o nelle proprietà del driver JDBC per specificare un limite di tempo per la query.
Oracle
Vero
30 secondi
Impostare il parametro QUERY_TIMEOUT nel programma di controllo Oracle JDBC per specificare la quantità massima di tempo per cui una query può essere eseguita prima di essere automaticamente annullata.
PostgreSQL
N
N/D
Impostare la proprietà queryTimeout per specificare la quantità massima di tempo che una query può eseguire. Il valore predefinito della proprietà queryTimeout è 0.
Snowflake
Vero
6 ore
Impostare il parametro queryTimeout per modificare il limite di tempo predefinito.
Per evitare che le distribuzioni batch non vengano eseguite correttamente, partizionare il dataset o diminuirne la dimensione.
Sicurezza per i caricamenti di file
Copy link to section
I file caricati tramite watsonx.ai Studio o watsonx.ai Runtime UI non vengono convalidati o scansionati per individuare contenuti potenzialmente dannosi. Si consiglia di eseguire il software di sicurezza, ad esempio un'applicazione antivirus, su tutti i file prima del caricamento per garantire la sicurezza dei contenuti.
Le distribuzioni con specifiche software limitate non riescono dopo un aggiornamento
Copy link to section
Se si esegue l'aggiornamento a una versione più recente di IBM Cloud Pak for Data e si distribuisce un'applicazione R Shiny creata utilizzando specifiche software limitate in modalità FIPS, la distribuzione non riesce.
Ad esempio, le distribuzioni che utilizzano le specifiche software 'shiny-r3.6 e 'shiny-r4.2 non funzionano dopo l'aggiornamento da IBM Cloud Pak for Data versione 4.7.0 a 4.8.4 o successiva. Potresti ricevere il messaggio di erroreError 502 - Bad Gateway .
Per evitare che la distribuzione fallisca, aggiorna la specifica ristretta per la risorsa distribuita per utilizzare la specifica software più recente. Per ulteriori informazioni, vedere Gestione di specifiche o framework software obsoleti. Puoi anche eliminare la distribuzione dell'applicazione se non ti serve più.
La creazione di un lavoro per un flusso SPSS Modeler in uno spazio di distribuzione non riesce
Copy link to section
Durante il processo di configurazione di un lavoro batch per il flusso SPSS Modeler in uno spazio di distribuzione, la mappatura automatica delle risorse di dati con la rispettiva connessione potrebbe fallire.
Per risolvere l'errore di mappatura automatica delle risorse di dati e delle connessioni, procedere come segue:
Fare clic su Crea per salvare i progressi e uscire dalla finestra di dialogo Configurazione nuovo lavoro.
Nello spazio di distribuzione, fare clic sulla scheda Lavori e selezionare il lavoro di flusso SPSS Modeler per esaminare i dettagli del lavoro.
Nella pagina dei dettagli del lavoro, clicca sull'icona Modifica per aggiornare manualmente la mappatura delle risorse dati e delle connessioni.
Dopo aver aggiornato la mappatura degli asset di dati e delle connessioni, è possibile riprendere il processo di configurazione delle impostazioni del lavoro nella finestra di dialogo Nuovo lavoro. Per ulteriori informazioni, consultare la sezione Creazione di lavori di distribuzione per i flussi di SPSS Modeler
La distribuzione di un foundation model personalizzato da uno spazio di distribuzione non riesce
Copy link to section
Quando si crea un'installazione client per un foundation model personalizzato dallo spazio di distribuzione, l'installazione client potrebbe fallire per diversi motivi. Seguire questi suggerimenti per risolvere i problemi comuni che si possono incontrare quando si distribuiscono i modelli di fondazione personalizzati da uno spazio di distribuzione.
Caso 1: Il valore del parametro non è compreso nell'intervallo
Quando si crea un'installazione client per un foundation model personalizzato dallo spazio di distribuzione, è necessario assicurarsi che i valori dei parametri del modello di base rientrino nell'intervallo specificato. Per ulteriori informazioni, vedere Proprietà e parametri dei modelli di fondazione personalizzati. Se si inserisce un valore che non rientra nell'intervallo specificato, si potrebbe verificare un errore.
Ad esempio, il valore del parametro 'max_new_tokens deve essere inferiore a 'max_sequence_length. Quando si aggiornano i valori dei parametri del modello di base, se si inserisce un valore per 'max_new_tokens maggiore o uguale al valore di 'max_sequence_length (2048), si potrebbe verificare un errore.
L'immagine seguente mostra un esempio di messaggio di errore: Value must be an integer between 20 and 1000000000000000 and be greater than 'Max New Tokens'.
Se i valori predefiniti per i parametri del modello danno luogo a un errore, contattare l'amministratore per modificare il registro del modello nel CR watsonxaiifm.
Caso 2: Tipo di dati non supportato
È necessario assicurarsi di selezionare un tipo di dati supportato dal foundation model personalizzato. Quando si aggiornano i valori dei parametri del modello di base, se si aggiorna il tipo di dati per il modello distribuito con un tipo di dati non supportato, la distribuzione potrebbe fallire.
Ad esempio, il modello " LLaMA-Pro-8B-Instruct-GPTQ supporta solo il tipo di dati " float16. Se si distribuisce il modello 'LLaMA-Pro-8B-Instruct-GPTQ con 'float16 'Enum, quindi si aggiorna il parametro 'Enum da 'float16 a 'bfloat16, la distribuzione fallisce.
Se il tipo di dati selezionato per il foundation model personalizzato dà luogo a un errore, è possibile sovrascrivere il tipo di dati per il foundation model personalizzato durante la creazione dell'installazione client o contattare l'amministratore per modificare il registro del modello in watsonxaiifm CR.
Caso 3: Valore del parametro troppo grande
Se si immette un valore molto grande per i parametri 'max_sequence_length e 'max_new_token, si potrebbe verificare un errore. Ad esempio, se si imposta il valore di 'max_sequence_length come '1000000000000000, viene visualizzato il seguente messaggio di errore:
Impossibile distribuire il foundation model personalizzato. L'operazione non è riuscita a causa di 'max_batch_weight (19596417433) non abbastanza grande per (prefill) max_sequence_length (1000000000000000)'. Ritentare l'operazione. Se il problema persiste, contattare l'assistenza IBM.
È necessario assicurarsi di inserire un valore per il parametro che sia inferiore al valore definito nel file di configurazione del modello (config.json).
Caso 4: il file " model.safetensors viene salvato con librerie non supportate
Se il file 'model.safetensors per il foundation model personalizzato utilizza un formato di dati non supportato nell'intestazione dei metadati, la distribuzione potrebbe fallire.
Ad esempio, se si importa l' foundation model e personalizzato di OccamRazor/mpt-7b-storywriter-4bit-128g da Hugging Face nel proprio spazio di distribuzione e si crea una distribuzione online, la distribuzione potrebbe non riuscire. Questo perché il file 'model.safetensors per il modello 'OccamRazor/mpt-7b-storywriter-4bit-128g viene salvato con 'save_pretrained, che è una libreria non supportata. Potrebbe essere visualizzato il seguente messaggio di errore:
L'operazione è fallita perché l'oggetto 'NoneType' non ha l'attributo 'get'.
È necessario assicurarsi che il foundation model personalizzato sia salvato con la libreria " transformers supportata.
Caso 5: L'implementazione di un modello Llama 3.1 fallisce
Se la distribuzione del modello Llama 3.1 non riesce, provate a modificare il contenuto del file 'config.json ' del vostro modello:
Individuare la voce " eos_token_id.
Cambia il valore della voce da un array a un intero.
Quindi provare a distribuire nuovamente il modello.
I modelli di fondazione distribuiti su richiesta non possono essere distribuiti in uno spazio di distribuzione
Copy link to section
È possibile distribuire solo un'istanza di un foundation model deploy-on-demand in uno spazio di distribuzione. Se il modello selezionato è già distribuito, lo spazio di distribuzione in cui è distribuito il modello viene disattivato.
Se sono necessarie più risorse per il modello, è possibile aggiungere più copie della risorsa modello distribuita scalando la distribuzione.
La conversione di un modello da LightGBM a ONNX non riesce
Copy link to section
Se si utilizza una funzione obiettivo non supportata per convertire i modelli LightGBM in formato ONNX, la distribuzione potrebbe fallire. Ad esempio, se si utilizza una funzione obiettivo non supportata nella definizione di lightgbm.Booster, si potrebbero avere problemi con la conversione.
Per risolvere questo problema, assicurarsi di utilizzare una funzione obiettivo supportata quando si convertono i modelli LightGBM in ONNX.
Il seguente esempio di codice mostra come sostituire la funzione obiettivo non supportata nella definizione di lightgbm.Booster con una funzione compatibile con convert_lightgbm.
L'implementazione di un agente come servizio di intelligenza artificiale fallisce
Copy link to section
Quando si crea un agente nel Laboratorio agenti con tutte le opzioni dello strumento attivate (compreso l'Indice vettoriale) e lo si salva come blocco note di distribuzione contenente un servizio AI, la creazione della distribuzione non riesce.
Potrebbe essere visualizzato il seguente messaggio di errore:
Creazione dell'installazione client non riuscita. Errore: 400.
Il problema si verifica quando la chiave API utilizzata nel blocco note proviene da un account diverso che non dispone di una credenziale dell'attività. La chiave API deve provenire dallo stesso account del progetto.
Per risolvere il problema, assicurarsi che la chiave API utilizzata nel blocco note provenga dallo stesso account del progetto. Se la chiave API proviene da un account diverso, creare una nuova chiave API dall'account corretto e aggiornare il blocco note di conseguenza.
L'esecuzione di un lavoro di distribuzione non riesce a causa delle credenziali dell'attività rimosse
Copy link to section
Per una maggiore sicurezza, sono necessarie credenziali di attività per creare distribuzioni ed eseguire lavori. Se si esegue un lavoro di distribuzione dopo aver rimosso le credenziali dell'attività, lo stato della distribuzione o del lavoro rimane in uno stato intermedio a causa dell'indisponibilità del token API necessario per aggiornare lo stato del lavoro nel servizio lavori della piattaforma.
Di conseguenza, il pod runtime non sarà in grado di generare un token utente, facendo sì che il lavoro rimanga nello stato " running " (in attesa di risoluzione) a tempo indeterminato.
Per risolvere questo problema, è necessario ricreare le credenziali dell'attività precedentemente rimosse ed eliminare la distribuzione o il lavoro esistente che rimane in uno stato intermedio.