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à.
Richiama un endpoint asincrono
Ottieni inferenze dal modello ospitato sul tuo endpoint asincrono con InvokeEndpointAsync.
Nota
Se non l'hai già fatto, carica i tuoi dati di inferenza (ad esempio, modello di machine learning, dati di esempio) su Amazon S3.
Puoi fornire il payload della richiesta in due modi. Queste opzioni si escludono a vicenda; forniscine esattamente una in una richiesta:
Payload in linea: per payload fino a 128.000 byte, trasmetti i dati direttamente nella richiesta con il parametro.
BodyIn questo modo si evita di caricare il payload su Amazon S3 prima di ogni chiamata.Posizione Amazon S3: per carichi utili più grandi, carica i dati di inferenza su Amazon S3 e passa il relativo URI con il parametro.
InputLocation
Specifica i seguenti campi nella richiesta:
Per
Body, fornisci il payload di inferenza in linea (fino a 128.000 byte). Usa questo oInputLocation, ma non entrambi.Per
InputLocation, specifica la posizione in Amazon S3 dei tuoi dati di inferenza. Usa questo oBody, ma non entrambi.Per
EndpointName, specifica il nome dell'endpoint.(Facoltativo) Per
InvocationTimeoutSeconds, puoi impostare il timeout massimo per le richieste. Puoi impostare questo valore su un massimo di 3600 secondi (un'ora) per richiesta. Se non specifichi questo campo nella richiesta, per impostazione predefinita la richiesta scade a 15 minuti.
L'esempio seguente invia il payload in linea con il Body parametro, il che non richiede prima il caricamento dell'input su Amazon S3.
# Create a low-level client representing Amazon SageMaker Runtime sagemaker_runtime = boto3.client("sagemaker-runtime", region_name=<aws_region>) # Specify the inference payload inline (up to 128,000 bytes) payload =b'{"inputs": "your inference data here"}'# The name of the endpoint. The name must be unique within an Regione AWS in your Account AWS. endpoint_name='<endpoint-name>'# After you deploy a model into production using SageMaker AI hosting # services, your client applications use this API to get inferences # from the model hosted at the specified endpoint. response = sagemaker_runtime.invoke_endpoint_async( EndpointName=endpoint_name, Body=payload, ContentType="application/json", InvocationTimeoutSeconds=3600)
In alternativa, puoi archiviare il payload in Amazon S3 e trasmetterne la posizione con InputLocation il parametro. Se non l'hai già fatto, carica i dati di inferenza su Amazon S3 prima di richiamare l'endpoint.
# Create a low-level client representing Amazon SageMaker Runtime sagemaker_runtime = boto3.client("sagemaker-runtime", region_name=<aws_region>) # Specify the location of the input. Here, a single SVM sample input_location ="s3://bucket-name/test_point_0.libsvm"# The name of the endpoint. The name must be unique within an Regione AWS in your Account AWS. endpoint_name='<endpoint-name>'# After you deploy a model into production using SageMaker AI hosting # services, your client applications use this API to get inferences # from the model hosted at the specified endpoint. response = sagemaker_runtime.invoke_endpoint_async( EndpointName=endpoint_name, InputLocation=input_location, InvocationTimeoutSeconds=3600)
Riceverai una risposta come stringa JSON con l'ID della richiesta e il nome del bucket Amazon S3 che riceverà la risposta alla chiamata API dopo l'elaborazione.