Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Risoluzione dei problemi di aggiornamento a Python 3.12
Data di decorrenza: 21 gennaio 2026
Panoramica di
A partire dal 21 gennaio 2026, Amazon Braket aggiorna il runtime Python dalla versione 3.10 alla 3.12 per tutte le
In questa sezione:
Messaggi di errore comuni
Errore di mancata corrispondenza della versione di Python dell'SDK
Errore:
RuntimeError: Python version must match between local environment and container. Client is running Python 3.10 locally, but container uses Python 3.12.
Causa: l'SDK Braket ha rilevato che sul notebook è in esecuzione Python 3.10 ma nel contenitore Hybrid Job è in esecuzione Python 3.12.
Soluzione: aggiorna il notebook a Python 3.12 o esegui il pin ai contenitori Python 3.10.
Errore di serializzazione di Cloudpickle
Errore:
TypeError: code() argument 13 must be str, not int
Causa: se la convalida dell'SDK viene ignorata, cloudpickle non riesce a serializzare il codice tra Python 3.10 e 3.12 a causa di una modifica del costruttore in Python 3.12. CodeType
Soluzione: assicurati che il notebook e il contenitore utilizzino la stessa versione di Python.
Notebook gestiti da Braket
Se stai eseguendo un'istanza di Braket Notebook su Python 3.10 e invii lavori ibridi, riscontrerai errori di mancata corrispondenza delle versioni perché i contenitori di lavoro ora utilizzano Python 3.12 per impostazione predefinita.
Sono disponibili due opzioni:
-
[Consigliato] Crea una nuova istanza Notebook con Python 3.12 - vedi Aggiornamento dell'istanza di Braket Notebook
Job Decorator ibrido
Per usare il @hybrid_job decoratore, la versione Python del tuo ambiente deve corrispondere alla versione Python del contenitore.
Opzione 1: usa i contenitori Python 3.12 (consigliato)
Se hai aggiornato il tuo ambiente a Python 3.12, utilizza il tag più recente (comportamento predefinito).
Opzione 2: usa i contenitori Python 3.10
Se devi rimanere su Python 3.10, specifica esplicitamente il image_uri parametro in decorator. @hybrid_job
Tag contenitore Python 3.10:
|
Nome immagine |
Tag |
|---|---|
|
Base |
1.0-cpu-py310-ubuntu22.04 |
|
CUDA-Q |
0.12.0-cpu-py310-0.12.0 |
|
PyTorch |
2.2.0-gpu-py310-cu121-ubuntu20.04 |
|
TensorFlow |
2.14.1-gpu-py310-cu118-ubuntu20.04 |
L'esempio seguente si riferisce alla regione us-west-2.
Immagine completa: URIs
Base: 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-base-jobs:1.0-cpu-py310-ubuntu22.04 CUDA-Q: 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-cudaq-jobs:0.12.0-cpu-py310-0.12.0 PyTorch: 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-pytorch-jobs:2.2.0-gpu-py310-cu121-ubuntu20.04 TensorFlow: 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-tensorflow-jobs:2.14.1-gpu-py310-cu118-ubuntu20.04
Esempio:
from braket.jobs.hybrid_job import hybrid_job from braket.devices import Devices device_arn = Devices.Amazon.SV1 @hybrid_job( device=device_arn, image_uri="292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-base-jobs:1.0-cpu-py310-ubuntu22.04" ) def my_job(): pass
Nota
-
I contenitori Python 3.10 rimarranno disponibili ma non riceveranno aggiornamenti.
Bring-Your-Own-Container (BYOC)
Se il tuo Dockerfile utilizza un'immagine gestita da Braket con il tag più recente, la ricostruzione dopo il 21 gennaio 2026 estrarrà le immagini supportate da Python 3.12.
Per rimanere sulle immagini gestite da Braket supportate da Python 3.10, aggiorna il tuo Dockerfile:
Before (ottiene Python 3.12 dopo l'aggiornamento):
FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-base-jobs:latest FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-cudaq-jobs:latest FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-tensorflow-jobs:latest FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-pytorch-jobs:latest
Dopo (rimane su Python 3.10):
FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-base-jobs:1.0-cpu-py310-ubuntu22.04 FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-cudaq-jobs:0.12.0-cpu-py310-0.12.0 FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-pytorch-jobs:2.2.0-gpu-py310-cu121-ubuntu20.04 FROM 292282985366.dkr.ecr.us-west-2.amazonaws.com/amazon-braket-tensorflow-jobs:2.14.1-gpu-py310-cu118-ubuntu20.04
Aggiornamento dell'istanza di Braket Notebook
Segui questi passaggi per eseguire l'aggiornamento a Python 3.12:
Importante
Prima di eliminare l'istanza del notebook, assicurati di aver scaricato tutti i taccuini e i file che desideri conservare. Questi dati non possono essere recuperati dopo l'eliminazione.
-
Scarica tutti i taccuini creati o modificati su un'unità locale.
-
Arresta l'istanza del notebook.
-
Elimina l'istanza del tuo notebook.
-
Crea una nuova istanza del notebook con un nome diverso.
-
Carica i tuoi taccuini nella nuova istanza.