

# Target konektor inferensi
<a name="gateway-target-inference-connector"></a>

Target konektor inferensi menyediakan pengaturan yang telah dikonfigurasi sebelumnya untuk penyedia model yang didukung. Saat Anda menggunakan konektor, gateway secara otomatis menangani operasi, penemuan model, terjemahan ID model, dan penulisan ulang jalur berdasarkan pengetahuan bawaan dari API penyedia, sehingga Anda tidak perlu menentukannya secara manual.

Konektor direkomendasikan saat Anda ingin menambahkan penyedia model yang didukung dengan cepat tanpa mengonfigurasi titik akhir, operasi, atau pemetaan model secara manual.

**Topics**
+ [Konfigurasi target](#gateway-target-inference-connector-config)
+ [Membuat target inferensi konektor](#gateway-target-inference-connector-create)
+ [Memanggil target inferensi konektor](#gateway-target-inference-connector-invoke)
+ [Daftar model yang tersedia](#gateway-target-inference-connector-list-models)
+ [Model-based perutean](#gateway-target-inference-connector-routing)
+ [Streaming](#gateway-target-inference-connector-streaming)
+ [Otorisasi keluar](#gateway-target-inference-connector-auth)

## Konfigurasi target
<a name="gateway-target-inference-connector-config"></a>

Konfigurasi target untuk target konektor inferensi menggunakan struktur berikut:

```
{
    "inference": {
        "connector": {
            "source": {
                "connectorId": "bedrock-mantle"
            }
        }
    }
}
```
+  **ConnectorID** (wajib) — Pengidentifikasi untuk konektor bawaan. Nilai yang didukung adalah `bedrock-mantle`, `openai`, dan `anthropic`.

Setiap konektor menyediakan default bawaan yang setara dengan konfigurasi penyedia yang ditentukan sepenuhnya. Misalnya, `bedrock-mantle` konektor secara otomatis mengkonfigurasi:
+  **Pengupasan awalan ID Model** — Klien dapat menghilangkan awalan penyedia dari ID model (misalnya, gunakan `claude-opus-4-7` sebagai ganti). `anthropic.claude-opus-4-7`
+  **Penulisan ulang jalur** — Jalur permintaan inferensi masuk dipetakan ke jalur API penyedia.
+  **Operasi yang didukung** - Kumpulan operasi inferensi yang diekspos konektor, seperti penyelesaian obrolan dan pesan.

## Membuat target inferensi konektor
<a name="gateway-target-inference-connector-create"></a>

Contoh berikut menunjukkan cara membuat target inferensi menggunakan konektor Bedrock Mantle:

```
aws bedrock-agentcore-control create-gateway-target --cli-input-json '{
    "gatewayIdentifier": "GATEWAY_ID",
    "name": "bedrock-mantle",
    "targetConfiguration": {
        "inference": {
            "connector": {
                "source": {
                    "connectorId": "bedrock-mantle"
                }
            }
        }
    },
    "credentialProviderConfigurations": [
        {"credentialProviderType": "GATEWAY_IAM_ROLE"}
    ]
}'
```

Contoh berikut menunjukkan cara membuat target inferensi menggunakan konektor OpenAI:

```
aws bedrock-agentcore-control create-gateway-target --cli-input-json '{
    "gatewayIdentifier": "GATEWAY_ID",
    "name": "openai",
    "targetConfiguration": {
        "inference": {
            "connector": {
                "source": {
                    "connectorId": "openai"
                }
            }
        }
    },
    "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 "
                }
            }
        }
    ]
}'
```

Contoh berikut menunjukkan cara membuat target inferensi menggunakan konektor Anthropic:

```
aws bedrock-agentcore-control create-gateway-target --cli-input-json '{
    "gatewayIdentifier": "GATEWAY_ID",
    "name": "anthropic",
    "targetConfiguration": {
        "inference": {
            "connector": {
                "source": {
                    "connectorId": "anthropic"
                }
            }
        }
    },
    "credentialProviderConfigurations": [
        {
            "credentialProviderType": "API_KEY",
            "credentialProvider": {
                "apiKeyCredentialProvider": {
                    "providerArn": "arn:aws:bedrock-agentcore:us-west-2:111122223333:token-vault/default/apikeycredentialprovider/anthropic-key",
                    "credentialLocation": "HEADER",
                    "credentialParameterName": "x-api-key"
                }
            }
        }
    ]
}'
```

## Memanggil target inferensi konektor
<a name="gateway-target-inference-connector-invoke"></a>

Untuk memanggil target inferensi, kirim permintaan ke jalur gateway. `/inference` Gateway merutekan setiap permintaan ke target yang benar berdasarkan `model` bidang di badan permintaan. `model`Nilai dapat berupa ID model biasa (misalnya,`gpt-5.5`) atau ID model yang memenuhi syarat target dalam formulir `{targetName}/{modelId}` (misalnya,`openai/gpt-5.5`). Untuk detail tentang bagaimana `model` nilai dicocokkan dengan target, lihat [Model-based perutean](#gateway-target-inference-connector-routing).

Format URL adalah:

```
https://{gatewayId}.gateway.bedrock-agentcore.{region}.amazonaws.com/inference/{path}
```

Ganti `{path}` dengan jalur operasi inferensi (misalnya,, `v1/chat/completions``v1/responses`, atau`v1/messages`).

### Menggunakan OpenAI SDK
<a name="_using_the_openai_sdk"></a>

Atur `/inference/v1` jalur gateway sebagai`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!"}]
)
```

### Menggunakan Anthropic SDK
<a name="_using_the_anthropic_sdk"></a>

Atur `/inference` jalur gateway sebagai`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!"}]
)
```

### Menggunakan awscurl
<a name="_using_awscurl"></a>

```
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!"}]}'
```

## Daftar model yang tersedia
<a name="gateway-target-inference-connector-list-models"></a>

Untuk menemukan model yang tersedia di semua target inferensi, panggil titik akhir model daftar:

```
awscurl --service bedrock-agentcore --region us-west-2 \
    "https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1/models"
```

Responsnya dalam `/v1/models` format OpenAI dengan ID model yang diawali dengan nama target:

```
{
    "data": [
        {"id": "bedrock-mantle/anthropic.claude-opus-4-7", "object": "model", "owned_by": "system"},
        {"id": "openai/gpt-5.5", "object": "model", "owned_by": "openai"},
        {"id": "anthropic/claude-sonnet-4-6", "object": "model", "owned_by": "anthropic"}
    ]
}
```

`owned_by`Bidang menunjukkan penyedia model. Nilai `system` menunjukkan model yang dihosting oleh Amazon Bedrock, sementara `openai` dan `anthropic` menunjukkan model yang dilayani langsung oleh penyedia tersebut.

## Model-based perutean
<a name="gateway-target-inference-connector-routing"></a>

Gateway merutekan permintaan inferensi berdasarkan `model` bidang di badan permintaan:

1.  **Perutean yang memenuhi syarat** - Jika ID model berisi `/` dan awalan cocok dengan nama target, permintaan dirutekan ke target tersebut (misalnya, `openai/gpt-5.5` rute ke target). `openai`

1.  **Perutean yang tidak memenuhi syarat** - Jika ID model tidak berisi a`/`, gateway mencocokkannya dengan semua target yang dikonfigurasi. Pencocokan yang tepat diprioritaskan daripada pola glob. Jika tepat satu target cocok, permintaan diarahkan ke sana.

1.  **Penanganan tabrakan** — Ketika beberapa target cocok dengan model yang sama pada spesifisitas yang sama, gateway default ke target Amazon Bedrock jika salah satu di antara yang cocok. Jika tidak, ia memilih salah satu target yang cocok secara acak pada setiap permintaan, sehingga permintaan untuk model yang sama dapat mendarat di target yang berbeda. Untuk menyematkan permintaan ke target tertentu, kualifikasi model dengan nama target sebagai awalan (misalnya,`bedrock/claude-opus-4-7`).

## Streaming
<a name="gateway-target-inference-connector-streaming"></a>

Streaming mengikuti konvensi OpenAI SSE. Setel `"stream": true` di badan permintaan, dan gateway melewati aliran SSE dari penyedia tanpa transformasi:

```
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="")
```

### Batas aliran respons
<a name="gateway-target-inference-connector-streaming-limits"></a>

**penting**  
AgentCore Gateway tidak menerapkan maksimum tingkat layanan pada durasi aliran respons atau ukuran respons. Jika Anda tidak mengonfigurasi kebijakan batas token pada target gateway Anda, setiap permintaan dapat menghasilkan respons streaming tanpa batas.

Tanpa kebijakan batas token yang dikonfigurasi, respons tak terbatas dapat menyebabkan masalah berikut:
+  **Kelelahan sumber daya gateway** — Gateway menyimpan sumber daya komputasi (memori, slot kumpulan koneksi HTTP, dan CPU untuk evaluasi kebijakan) terbuka selama durasi setiap respons streaming. Aliran bersamaan yang besar dapat menghabiskan sumber daya tugas gateway.
+  **Penguatan biaya pada kredensyal bersama** — Semua pengguna yang merutekan melalui target yang sama berbagi satu set kredensyal penyedia. Satu pengguna yang mengirim `max_tokens` permintaan tinggi dapat menggunakan kuota token per menit (TPM) penyedia untuk semua pengguna target tersebut.
+  **Efek tetangga yang bising** - Requests-per-minute (RPM) membatasi jumlah permintaan tetapi bukan biaya per permintaan. Satu pengguna dapat menghasilkan permintaan biaya maksimum dalam batas RPM, menurunkan kinerja untuk pengguna lain.

Untuk mengurangi risiko ini, konfigurasikan kebijakan batas token pada target gateway Anda. Untuk informasi selengkapnya, lihat [Kebijakan Gateway](gateway-policies.html).

## Otorisasi keluar
<a name="gateway-target-inference-connector-auth"></a>

Target konektor inferensi mendukung jenis otorisasi keluar berikut:
+  **IAM (SiGv4)** — Gunakan `GATEWAY_IAM_ROLE` untuk penyedia yang menerima otentikasi IAM (seperti Amazon Bedrock).
+  **Kunci API** — Gunakan `API_KEY` untuk penyedia yang memerlukan kunci API (seperti OpenAI dan Anthropic). Gateway menyuntikkan kunci API yang disimpan ke dalam permintaan keluar.