

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Konteks sesi agen kontrol
<a name="agents-session-state"></a>

Untuk kontrol konteks sesi yang lebih besar, Anda dapat memodifikasi [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState)objek di agen Anda. [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState)Objek berisi informasi yang dapat dipertahankan secara bergantian ([https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)permintaan dan tanggapan terpisah). Anda dapat menggunakan informasi ini untuk menyediakan konteks percakapan bagi agen selama percakapan pengguna.

Format umum [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState)objek adalah sebagai berikut.

```
{
    "sessionAttributes": {
        "<attributeName1>": "<attributeValue1>",
        "<attributeName2>": "<attributeValue2>",
        ...
    },
     "conversationHistory": {
          "messages": [{
              "role": "user | assistant",
              "content": [{
                  "text": "string"
              }]
          }],
               },
    "promptSessionAttributes": {
        "<attributeName3>": "<attributeValue3>",
        "<attributeName4>": "<attributeValue4>",
        ...
    },
    "invocationId": "string",
    "returnControlInvocationResults": [
        [ApiResult](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ApiResult.html) or [FunctionResult](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_FunctionResult.html),
        ...
    ],
    "knowledgeBases": [
       {
        "knowledgeBaseId": "string",
        "retrievalConfiguration": {
            "vectorSearchConfiguration": {
                "overrideSearchType": "HYBRID | SEMANTIC",
                "numberOfResults": int,
                "filter": [RetrievalFilter](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html) object
            }
        }
       },
       ...
    ]
}
```

Pilih topik untuk mempelajari lebih lanjut tentang bidang dalam [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_SessionState.html#bedrock-Type-agent-runtime_SessionState)objek.

**Topics**
+ [Atribut sesi sesi dan prompt](#session-state-attributes)
+ [Contoh atribut sesi](#session-attribute-ex)
+ [Contoh atribut sesi cepat](#prompt-session-attribute-ex)
+ [Hasil pemanggilan kelompok aksi](#session-state-return-control)
+ [Konfigurasi pengambilan basis pengetahuan](#session-state-kb)

## Atribut sesi sesi dan prompt
<a name="session-state-attributes"></a>

Amazon Bedrock Agents memungkinkan Anda menentukan jenis atribut kontekstual berikut yang bertahan selama beberapa bagian sesi:
+ **SessionAttributes** — Atribut yang bertahan selama sesi antara [pengguna](advanced-prompts.md#advanced-prompts-terminology) dan agen. Semua [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)permintaan yang dibuat dengan sesi yang sama `sessionId` termasuk dalam sesi yang sama, selama batas waktu sesi (the`idleSessionTTLinSeconds`) belum dilampaui.
+ **ConversationHistory** — Untuk kolaborasi multi-agen, menerima konteks tambahan untuk memproses permintaan waktu berjalan jika `conversationalHistorySharing` diaktifkan untuk agen kolaborator. Secara default, bidang ini secara otomatis dibangun oleh agen pengawas saat memanggil agen kolaborator. Anda dapat menggunakan bidang ini secara opsional untuk memberikan konteks tambahan. Untuk informasi selengkapnya, lihat [Gunakan kolaborasi multi-agen dengan Amazon Bedrock Agents](agents-multi-agent-collaboration.md).
+ **promptSessionAttributes**— Atribut yang bertahan selama satu [putaran](advanced-prompts.md#advanced-prompts-terminology) (satu [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)panggilan). [Anda dapat menggunakan placeholder \$1prompt\$1session\$1attributes\$1 saat Anda mengedit template prompt dasar orkestrasi.](prompt-placeholders.md) Placeholder ini akan diisi saat runtime dengan atribut yang Anda tentukan di bidang. `promptSessionAttributes`

Anda dapat menentukan atribut status sesi pada dua langkah berbeda:
+ Saat Anda menyiapkan grup tindakan dan [menulis fungsi Lambda](agents-lambda.md), sertakan `sessionAttributes` atau `promptSessionAttributes` dalam [peristiwa respons](agents-lambda.md#agents-lambda-response) yang dikembalikan ke Amazon Bedrock.
+ Selama runtime, saat Anda mengirim [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)permintaan, sertakan `sessionState` objek di badan permintaan untuk mengubah atribut status sesi secara dinamis di tengah percakapan.

## Contoh atribut sesi
<a name="session-attribute-ex"></a>

Contoh berikut menggunakan atribut sesi untuk mempersonalisasi pesan ke pengguna Anda.

1. Tulis kode aplikasi Anda untuk meminta pengguna memberikan nama depan mereka dan permintaan yang ingin mereka buat kepada agen dan untuk menyimpan jawaban sebagai variabel *<first\$1name>* dan*<request>*.

1. Tulis kode aplikasi Anda untuk mengirim [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)permintaan dengan badan berikut:

   ```
   {
       "inputText": "<request>",
       "sessionState": {
           "sessionAttributes": {
               "firstName": "<first_name>"
           }
       }
   }
   ```

1. Ketika pengguna menggunakan aplikasi Anda dan memberikan nama depan mereka, kode Anda akan mengirim nama depan sebagai atribut sesi dan agen akan menyimpan nama depan mereka selama [sesi berlangsung](advanced-prompts.md#advanced-prompts-terminology).

1. Karena atribut sesi dikirim dalam [peristiwa input Lambda](agents-lambda.md#agents-lambda-input), Anda dapat merujuk ke atribut sesi ini dalam fungsi Lambda untuk grup tindakan. Misalnya, jika [skema API](agents-api-schema.md) tindakan memerlukan nama depan di badan permintaan, Anda dapat menggunakan atribut `firstName` session saat menulis fungsi Lambda untuk grup tindakan untuk mengisi kolom tersebut secara otomatis saat mengirim permintaan API.

## Contoh atribut sesi cepat
<a name="prompt-session-attribute-ex"></a>

Contoh umum berikut menggunakan atribut sesi prompt untuk menyediakan konteks temporal untuk agen.

1. Tulis kode aplikasi Anda untuk menyimpan permintaan pengguna dalam variabel yang disebut*<request>*.

1. Tulis kode aplikasi Anda untuk mengambil zona waktu di lokasi pengguna jika pengguna menggunakan kata yang menunjukkan waktu relatif (seperti “besok”) di*<request>*, dan simpan dalam variabel yang disebut*<timezone>*.

1. Tulis aplikasi Anda untuk mengirim [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)permintaan dengan badan berikut:

   ```
   {
       "inputText": "<request>",
       "sessionState": {
           "promptSessionAttributes": {
               "timeZone": "<timezone>"
           }
       }
   }
   ```

1. Jika pengguna menggunakan kata yang menunjukkan waktu relatif, kode Anda akan mengirim atribut sesi `timeZone` prompt dan agen akan menyimpannya selama [giliran](advanced-prompts.md#advanced-prompts-terminology).

1. Misalnya, jika pengguna bertanya**I need to book a hotel for tomorrow**, kode Anda mengirimkan zona waktu pengguna ke agen dan agen dapat menentukan tanggal pasti yang dimaksud “besok”.

1. Atribut sesi prompt dapat digunakan pada langkah-langkah berikut.
   + Jika Anda menyertakan [placeholder](prompt-placeholders.md) \$1prompt\$1session\$1attributes\$1 dalam template prompt orkestrasi, prompt orkestrasi ke FM menyertakan atribut sesi prompt.
   + [Atribut sesi prompt dikirim dalam [peristiwa input Lambda](agents-lambda.md#agents-lambda-input) dan dapat digunakan untuk membantu mengisi permintaan API atau dikembalikan dalam respons.](agents-lambda.md#agents-lambda-response)

## Hasil pemanggilan kelompok aksi
<a name="session-state-return-control"></a>

Jika Anda mengonfigurasi grup tindakan untuk [mengembalikan kontrol dalam [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)respons](agents-returncontrol.md), Anda dapat mengirim hasil dari pemanggilan grup tindakan di `sessionState` [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)respons berikutnya dengan menyertakan bidang berikut:
+ `invocationId`— ID ini harus cocok dengan yang `invocationId` dikembalikan dalam [ReturnControlPayload](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ReturnControlPayload.html)objek di `returnControl` bidang [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)respons.
+ `returnControlInvocationResults`— Termasuk hasil yang Anda peroleh dari menjalankan tindakan. Anda dapat mengatur aplikasi Anda untuk meneruskan [ReturnControlPayload](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ReturnControlPayload.html)objek untuk melakukan permintaan API atau memanggil fungsi yang Anda tentukan. Anda kemudian dapat memberikan hasil dari tindakan itu di sini. Setiap anggota `returnControlInvocationResults` daftar adalah salah satu dari yang berikut:
  + [ApiResult](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ApiResult.html)Objek yang berisi operasi API yang diprediksi agen harus dipanggil dalam [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)urutan sebelumnya dan hasil dari pemanggilan tindakan di sistem Anda. Format umumnya adalah sebagai berikut:

    ```
    {
        "actionGroup": "string",
        "agentId" : :string",
        "apiPath": "string",
        "confirmationState" : "CONFIRM | DENY",
        "httpMethod": "string",
        "httpStatusCode": integer,
        "responseBody": {
            "TEXT": {
                "body": "string"
            }
        }
    }
    ```
  + [FunctionResult](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_FunctionResult.html)Objek yang berisi fungsi yang diprediksi agen harus dipanggil dalam [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)urutan sebelumnya dan hasil dari menjalankan tindakan dalam sistem Anda. Format umumnya adalah sebagai berikut:

    ```
    {
        "actionGroup": "string",
        "agentId" : :string",
        "confirmationState" : "CONFIRM | DENY",
        "function": "string",
        "responseBody": {
            "TEXT": {
                "body": "string"
            }
        }
    }
    ```

Hasil yang diberikan dapat digunakan sebagai konteks untuk orkestrasi lebih lanjut, dikirim ke pasca-pemrosesan untuk agen untuk memformat respons, atau digunakan secara langsung dalam respons agen terhadap pengguna.

## Konfigurasi pengambilan basis pengetahuan
<a name="session-state-kb"></a>

Untuk memodifikasi konfigurasi pengambilan basis pengetahuan yang dilampirkan ke agen Anda, sertakan `knowledgeBaseConfigurations` bidang dengan daftar konfigurasi untuk setiap basis pengetahuan yang konfigurasinya ingin Anda tentukan. Tentukan `knowledgeBaseId`. Di `vectorSearchConfiguration` bidang ini, Anda dapat menentukan konfigurasi kueri berikut (untuk informasi selengkapnya tentang konfigurasi ini, lihat[Konfigurasikan dan sesuaikan kueri dan pembuatan respons](kb-test-config.md)):
+ **Jenis pencarian** — Apakah basis pengetahuan hanya mencari embeddings vektor (`SEMANTIC`) atau kedua embed vektor dan teks mentah (). `HYBRID` Gunakan `overrideSearchType` bidang.
+ **Jumlah maksimum hasil yang diambil** - Jumlah maksimum hasil dari pengambilan kueri untuk digunakan dalam respons.
+ **Metadata dan pemfilteran** — Filter yang dapat Anda konfigurasi untuk memfilter hasil berdasarkan atribut metadata dalam file sumber data.