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à.
Obiettivi dei fornitori di inferenze
Gli obiettivi dei provider di inferenze offrono un controllo esplicito sull'endpoint, sulle mappature dei modelli e sulle operazioni di un fornitore di modelli. Utilizza una configurazione del provider quando devi personalizzare i modelli disponibili, impostare limiti di token per modello, configurare la riscrittura dei percorsi o connetterti a un provider che non dispone di un connettore integrato.
Argomenti
Configurazione di destinazione
La configurazione di destinazione per un target di provider di inferenze utilizza la seguente struttura:
{ "inference": { "provider": { "endpoint": "https://api.openai.com", "operations": [ { "path": "/v1/chat/completions", "models": [ {"model": "gpt-5.5"}, {"model": "gpt-5.4"}, {"model": "gpt-5.4-mini"} ] }, { "path": "/v1/responses", "models": [ {"model": "gpt-5.5"}, {"model": "gpt-5.4"} ] } ] } } }
-
endpoint (obbligatorio): l'URL HTTPS del fornitore del modello.
-
modelMapping (opzionale) — Configurazione di conversione dell'ID del modello.
-
providerPrefix (opzionale): configura il modo in cui i client possono omettere il prefisso del provider dagli ID del modello. Se omesso, non viene applicata alcuna conversione del prefisso e i clienti devono utilizzare gli ID di modello completi del provider.
-
strip (opzionale): quando
true, i client possono utilizzare gli ID del modello senza il prefisso del provider (ad esempio,claude-opus-4-7anziché).anthropic.claude-opus-4-7L’impostazione predefinita èfalse. -
separator (opzionale) — Il carattere separatore tra il prefisso del provider e il nome del modello (ad esempio,).
.
-
-
-
operations (opzionale) — Un elenco di configurazioni operative che mappano i percorsi delle richieste ai modelli supportati:
-
path (obbligatorio) — Il percorso di richiesta per questa operazione (ad esempio,
/v1/chat/completions). -
providerPath (opzionale) — Il percorso a cui inoltrare il provider se è diverso dal percorso della richiesta.
-
models (opzionale) — I modelli supportati per questa operazione. Ogni voce include un campo modello (obbligatorio) contenente un ID del modello o un modello globoso (ad esempio,
anthropic.claude-opus-*).
-
Creazione di un target di inferenza del provider
L'esempio seguente crea un target di inferenza OpenAI utilizzando una configurazione del provider:
aws bedrock-agentcore-control create-gateway-target --cli-input-json '{ "gatewayIdentifier": "GATEWAY_ID", "name": "openai", "targetConfiguration": { "inference": { "provider": { "endpoint": "https://api.openai.com", "operations": [ { "path": "/v1/chat/completions", "models": [ {"model": "gpt-5.5"}, {"model": "gpt-5.4"}, {"model": "gpt-5.4-mini"} ] }, { "path": "/v1/responses", "models": [ {"model": "gpt-5.5"}, {"model": "gpt-5.4"} ] } ] } } }, "credentialProviderConfigurations": [ { "credentialProviderType": "API_KEY", "credentialProvider": { "apiKeyCredentialProvider": { "providerArn": "arn:aws:bedrock-agentcore:us-west-2:111122223333:token-vault/default/apikeycredentialprovider/openai-key", "credentialLocation": "HEADER", "credentialParameterName": "Authorization", "credentialPrefix": "Bearer " } } } ] }'
L'esempio seguente crea un target di inferenza Bedrock con configurazione esplicita del provider e mappatura del modello. La modelMapping configurazione con providerPrefix consente ai client di utilizzare nomi di modello brevi (likeclaude-opus-4-7) mentre il gateway li traduce in nomi con prefisso del provider (like): anthropic.claude-opus-4-7
aws bedrock-agentcore-control create-gateway-target --cli-input-json '{ "gatewayIdentifier": "GATEWAY_ID", "name": "bedrock", "targetConfiguration": { "inference": { "provider": { "endpoint": "https://bedrock-mantle.us-east-1.api.aws", "modelMapping": { "providerPrefix": {"strip": true, "separator": "."} }, "operations": [ { "path": "/v1/chat/completions", "models": [ {"model": "anthropic.claude-opus-*"}, {"model": "anthropic.claude-sonnet-*"}, {"model": "openai.gpt-oss-*"} ] }, { "path": "/v1/messages", "providerPath": "/anthropic/v1/messages", "models": [ {"model": "anthropic.claude-opus-*"}, {"model": "anthropic.claude-sonnet-*"} ] } ] } } }, "credentialProviderConfigurations": [ {"credentialProviderType": "GATEWAY_IAM_ROLE"} ] }'
Richiamo di un target di inferenza del provider
Per richiamare un target di inferenza, invia le richieste al percorso del gateway. /inference Il gateway indirizza ogni richiesta alla destinazione corretta in base al model campo nel corpo della richiesta. Il model valore può essere un semplice ID modello (ad esempiogpt-5.5) o un ID di modello qualificato per la destinazione nel modulo {targetName}/{modelId} (ad esempioopenai/gpt-5.5). Per dettagli su come il model valore viene abbinato a un obiettivo, vedi Model-based routing.
Il formato dell'URL è:
https://{gatewayId}.gateway.bedrock-agentcore.{region}.amazonaws.com/inference/{path}
Sostituisci {path} con il percorso dell'operazione di inferenza (ad esempiov1/chat/completions,v1/responses, ov1/messages).
Utilizzo dell'SDK OpenAI
Imposta il /inference/v1 percorso del gateway come: base_url
from openai import OpenAI client = OpenAI( base_url="https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1", api_key="<gateway-auth-token>" ) response = client.chat.completions.create( model="gpt-5.5", messages=[{"role": "user", "content": "Hello!"}] )
Utilizzo dell'SDK Anthropic
Imposta il /inference percorso del gateway come: base_url
import anthropic client = anthropic.Anthropic( base_url="https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference", api_key="<gateway-auth-token>" ) response = client.messages.create( model="claude-sonnet-4-6", max_tokens=1024, messages=[{"role": "user", "content": "Hello!"}] )
Usare awscurl
awscurl --service bedrock-agentcore --region us-west-2 -X POST \ "https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1/chat/completions" \ -H "Content-Type: application/json" \ -d '{"model": "gpt-5.5", "messages": [{"role": "user", "content": "Hello!"}]}'
Routing di modelli qualificato
Quando più destinazioni servono lo stesso modello, prefiggi l'ID del modello con il nome della destinazione da indirizzare a un provider specifico:
# Route explicitly to the "bedrock" target response = client.chat.completions.create( model="bedrock/claude-opus-4-7", messages=[{"role": "user", "content": "Hello!"}] )
Model-based routing
Il gateway indirizza le richieste di inferenza in base al model campo nel corpo della richiesta:
-
Routing qualificato: se l'ID del modello contiene un
/e il prefisso corrisponde a un nome di destinazione, la richiesta viene indirizzata a tale destinazione (ad esempio, leopenai/gpt-5.5rotte verso la destinazione).openai -
Routing non qualificato: se l'ID del modello non contiene un
/, il gateway lo confronta con tutti i target configurati. Una corrispondenza esatta ha la priorità rispetto ai pattern globulari. Se esattamente un obiettivo corrisponde, la richiesta viene indirizzata ad esso. -
Gestione delle collisioni: quando più obiettivi corrispondono allo stesso modello con la stessa specificità, il gateway utilizza per impostazione predefinita il target Amazon Bedrock se uno è tra quelli corrispondenti. Altrimenti, distribuisce le richieste tra i target corrispondenti in ordine round robin. Per aggiungere le richieste a un target specifico, qualifica il modello con il nome del target come prefisso (ad esempio,).
bedrock/claude-opus-4-7
Per personalizzare o sovrascrivere il target a cui viene indirizzato un modello, puoi riscrivere il model campo in un intercettore di richieste. Per ulteriori informazioni, consulta Personalizzare il routing del modello con un intercettore di richieste.
Streaming
Lo streaming segue la convenzione OpenAI SSE. Impostato "stream": true nel corpo della richiesta, il gateway passa attraverso il flusso SSE dal provider senza trasformazione:
stream = client.chat.completions.create( model="gpt-5.5", messages=[{"role": "user", "content": "Write a story."}], stream=True ) for chunk in stream: print(chunk.choices[0].delta.content, end="")
Autorizzazione in uscita
Le destinazioni dei provider di inferenze supportano i seguenti tipi di autorizzazione in uscita:
-
IAM (SIGv4): utilizzato
GATEWAY_IAM_ROLEper i provider che accettano l'autenticazione IAM (come Amazon Bedrock). -
Chiave API: utilizzata
API_KEYper i provider che richiedono una chiave API (come OpenAI e Anthropic). Il gateway inserisce la chiave API memorizzata nelle richieste in uscita.