

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

# Tambahkan grup tindakan ke agen Anda di Amazon Bedrock
<a name="agents-action-add"></a>

Setelah menyiapkan OpenAPI skema dan fungsi Lambda untuk grup tindakan Anda, Anda dapat membuat grup tindakan. Pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

**catatan**  
Jika Anda menggunakan AnthropicClaude 3.5 Sonnet, pastikan bahwa nama alat Anda yang akan berupa bentuk `httpVerb__actionGroupName__apiName` mengikuti format `^[a-zA-Z0-9_-]{1,64}$` nama alat Anthropic. Anda actionGroupName dan APiname tidak boleh mengandung garis bawah ganda. `'__'`

------
#### [ Console ]

Saat [membuat agen](agents-create.md), Anda dapat menambahkan grup tindakan ke draf kerja.

Setelah agen dibuat, Anda dapat menambahkan grup tindakan ke dalamnya dengan melakukan langkah-langkah berikut:

**Untuk menambahkan grup aksi ke agen**

1. Masuk ke Konsol Manajemen AWS dengan identitas IAM yang memiliki izin untuk menggunakan konsol Amazon Bedrock. Kemudian, buka konsol Amazon Bedrock di [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock).

1. Pilih **Agen** dari panel navigasi kiri. Kemudian, pilih agen di bagian **Agen**.

1. Pilih **Edit di Pembangun Agen**.

1. Di bagian **Grup tindakan**, pilih **Tambah**.

1. (Opsional) Di bagian **Detail grup tindakan**, ubah **Nama** yang dibuat secara otomatis dan berikan **Deskripsi** opsional untuk grup tindakan Anda.

1. Di bagian **Jenis grup tindakan**, pilih salah satu metode berikut untuk menentukan parameter yang dapat diperoleh agen dari pengguna untuk membantu melakukan tindakan:

   1. **Tentukan dengan detail fungsi** — Tentukan parameter yang akan diperoleh agen Anda dari pengguna untuk melakukan tindakan. Untuk informasi selengkapnya tentang menambahkan fungsi, lihat[Menentukan detail fungsi untuk grup tindakan agen Anda di Amazon Bedrock](agents-action-function.md).

   1. **Tentukan dengan skema API** — Tentukan operasi API yang dapat dijalankan agen dan parameternya. Gunakan skema OpenAPI yang Anda buat atau gunakan editor teks konsol untuk membuat skema. Untuk informasi selengkapnya tentang menyiapkan skema OpenAPI, lihat [Tentukan OpenAPI skema untuk grup tindakan agen Anda di Amazon Bedrock](agents-api-schema.md)

1. Di bagian **Pemanggilan grup Tindakan**, Anda mengatur apa yang dilakukan agen setelah memprediksi API atau fungsi yang harus dipanggil dan menerima parameter yang dibutuhkannya. Pilih salah satu opsi berikut:
   + **Buat fungsi Lambda baru dengan cepat — *direkomendasikan — Biarkan*** Amazon Bedrock membuat fungsi Lambda dasar untuk agen Anda yang nantinya dapat Anda modifikasi untuk kasus AWS Lambda penggunaan Anda. Agen akan meneruskan API atau fungsi yang diprediksi dan parameter, berdasarkan sesi, ke fungsi Lambda.
   + **Pilih fungsi Lambda yang ada — Pilih fungsi** [Lambda yang Anda buat sebelumnya AWS Lambda dan versi fungsi](agents-lambda.md) yang akan digunakan. Agen akan meneruskan API atau fungsi yang diprediksi dan parameter, berdasarkan sesi, ke fungsi Lambda.
**catatan**  
Untuk mengizinkan prinsipal layanan Amazon Bedrock mengakses fungsi Lambda[, lampirkan kebijakan berbasis sumber daya ke fungsi Lambda untuk](agents-permissions.md#agents-permissions-lambda) mengizinkan prinsipal layanan Amazon Bedrock mengakses fungsi Lambda.
   + **Kontrol pengembalian** - Daripada meneruskan parameter untuk API atau fungsi yang diprediksi ke fungsi Lambda, agen mengembalikan kontrol ke aplikasi Anda dengan meneruskan tindakan yang diprediksi harus dipanggil, selain parameter dan informasi untuk tindakan yang ditentukan dari sesi, dalam respons. [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) Untuk informasi selengkapnya, lihat [Kembalikan kontrol ke pengembang agen dengan mengirimkan informasi yang diperoleh sebagai tanggapan InvokeAgent](agents-returncontrol.md).

1. Bergantung pada pilihan Anda untuk **tipe grup Action**, Anda akan melihat salah satu bagian berikut:
   + Jika Anda memilih **Tentukan dengan detail fungsi**, Anda akan memiliki bagian **fungsi grup Tindakan**. Lakukan hal berikut untuk menentukan fungsi:

     1. Berikan **Nama** dan **Deskripsi** opsional (tetapi disarankan).

     1. Untuk meminta konfirmasi dari pengguna sebelum fungsi dipanggil, pilih **Diaktifkan**. Meminta konfirmasi sebelum menjalankan fungsi dapat melindungi aplikasi Anda dari mengambil tindakan karena suntikan cepat berbahaya.

     1. Di subbagian **Parameter**, pilih **Tambah parameter**. Tentukan bidang berikut:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/agents-action-add.html)

     1. Untuk menambahkan parameter lain, pilih **Tambah parameter**.

     1. Untuk mengedit bidang dalam parameter, pilih bidang dan edit seperlunya.

     1. Untuk menghapus parameter, pilih ikon hapus (![\[Trapezoid-shaped diagram showing data flow from source to destination through AWS Transfer Family.\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/images/icons/trash.png)) di baris yang berisi parameter.

     **Jika Anda lebih memilih untuk mendefinisikan fungsi dengan menggunakan objek JSON, pilih **editor JSON** bukan Table.** Format objek JSON adalah sebagai berikut (setiap kunci dalam `parameters` objek adalah nama parameter yang Anda berikan):

     ```
     {
         "name": "string",
         "description": "string",
         "parameters": [
             {
                 "name": "string",
                 "description": "string",
                 "required": "True" | "False",
                 "type": "string" | "number" | "integer" | "boolean" | "array"
             }
         ]
     }
     ```

     Untuk menambahkan fungsi lain ke grup tindakan Anda dengan menentukan set parameter lain, pilih **Tambahkan fungsi grup tindakan**.
   + Jika memilih **skema Define with API**, Anda akan memiliki bagian **skema grup Action** dengan opsi berikut:
     + Untuk menggunakan skema OpenAPI yang sebelumnya Anda siapkan dengan deskripsi, struktur, dan parameter API untuk grup tindakan, pilih **Pilih skema API** dan berikan tautan ke URI Amazon S3 skema.
     + Untuk menentukan skema OpenAPI dengan editor skema in-line, pilih **Define** via in-line schema editor. Skema sampel muncul yang dapat Anda edit.

       1. **Pilih format untuk skema dengan menggunakan menu dropdown di sebelah Format.**

       1. **Untuk mengimpor skema yang ada dari S3 untuk diedit, pilih **skema Impor**, berikan URI S3, dan pilih Impor.**

       1. Untuk mengembalikan skema ke skema sampel asli, pilih **Reset** dan kemudian konfirmasikan pesan yang muncul dengan memilih **Reset** lagi.

1. Setelah selesai membuat grup tindakan, pilih **Tambah**. Jika Anda menetapkan skema API, spanduk sukses hijau akan muncul jika tidak ada masalah. Jika ada masalah memvalidasi skema, spanduk merah muncul. Anda memiliki opsi berikut:
   + Gulir skema untuk melihat baris di mana ada kesalahan atau peringatan tentang pemformatan. X menunjukkan kesalahan pemformatan, sementara tanda seru menunjukkan peringatan tentang pemformatan.
   + Pilih **Lihat detail** di spanduk merah untuk melihat daftar kesalahan tentang konten skema API.

1. Pastikan untuk **Mempersiapkan** untuk menerapkan perubahan yang telah Anda buat pada agen sebelum mengujinya.

------
#### [ API ]

Untuk membuat grup tindakan, kirim [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgentActionGroup.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgentActionGroup.html)permintaan dengan titik akhir waktu [pembuatan Agen untuk Amazon Bedrock.](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt) Anda harus menyediakan skema [fungsi atau skema](agents-action-function.md) [OpenAPI](agents-api-schema.md).

Daftar berikut menjelaskan bidang dalam permintaan:
+ Bidang berikut diperlukan:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/agents-action-add.html)
+ Untuk menentukan parameter untuk grup tindakan, Anda harus menentukan salah satu bidang berikut (Anda tidak dapat menentukan keduanya).  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/agents-action-add.html)

  Berikut ini menunjukkan format umum dari `functionSchema` dan`apiSchema`:
  + Setiap item dalam `functionSchema` array adalah [FunctionSchema](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_FunctionSchema.html)objek. Untuk setiap fungsi, tentukan yang berikut ini: 
    + Berikan `name` dan opsional (tetapi disarankan)`description`.
    + Secara opsional, tentukan `requireConfirmation` bidang `ENABLED` untuk meminta konfirmasi dari pengguna sebelum fungsi dipanggil. Meminta konfirmasi sebelum menjalankan fungsi dapat melindungi aplikasi Anda dari mengambil tindakan karena suntikan cepat berbahaya.
    + Dalam `parameters` objek, setiap kunci adalah nama parameter, dipetakan ke detail tentang hal itu dalam sebuah [ParameterDetail](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ParameterDetail.html)objek.

    Format umum `functionSchema` adalah sebagai berikut:

    ```
    "functionSchema": [
        {
            "name": "string",
            "description": "string",
            "requireConfirmation": ENABLED | DISABLED,
            "parameters": {
                "<string>": {
                    "type": "string" | number | integer | boolean | array,
                    "description": "string",
                    "required": boolean
                },
                ... // up to 5 parameters
            }
        },
        ... // up to 11 functions
    ]
    ```
  + [APISchema](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_APISchema.html)Bisa dalam salah satu format berikut:

    1. Untuk format berikut, Anda dapat langsung menempelkan OpenAPI skema berformat JSON atau YAML sebagai nilainya.

       ```
       "apiSchema": {
           "payload": "string"
       }
       ```

    1. Untuk format berikut, tentukan nama bucket Amazon S3 dan kunci objek tempat OpenAPI skema disimpan.

       ```
       "apiSchema": {
           "s3": {
               "s3BucketName": "string",
               "s3ObjectKey": "string"
           }
       }
       ```
+ Untuk mengonfigurasi cara grup tindakan menangani pemanggilan grup tindakan setelah memunculkan parameter dari pengguna, Anda harus menentukan salah satu bidang berikut dalam bidang tersebut. `actionGroupExecutor`  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/agents-action-add.html)
+ Bidang berikut adalah opsional:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/bedrock/latest/userguide/agents-action-add.html)

  ```
      def create_agent_action_group(
              self, name, description, agent_id, agent_version, function_arn, api_schema
      ):
          """
          Creates an action group for an agent. An action group defines a set of actions that an
          agent should carry out for the customer.
  
          :param name: The name to give the action group.
          :param description: The description of the action group.
          :param agent_id: The unique identifier of the agent for which to create the action group.
          :param agent_version: The version of the agent for which to create the action group.
          :param function_arn: The ARN of the Lambda function containing the business logic that is
                               carried out upon invoking the action.
          :param api_schema: Contains the OpenAPI schema for the action group.
          :return: Details about the action group that was created.
          """
          try:
              response = self.client.create_agent_action_group(
                  actionGroupName=name,
                  description=description,
                  agentId=agent_id,
                  agentVersion=agent_version,
                  actionGroupExecutor={"lambda": function_arn},
                  apiSchema={"payload": api_schema},
              )
              agent_action_group = response["agentActionGroup"]
          except ClientError as e:
              logger.error(f"Error: Couldn't create agent action group. Here's why: {e}")
              raise
          else:
              return agent_action_group
  ```

  Lihat informasi yang lebih lengkap di [Halo Agen Bedrock Amazon](bedrock-agent_example_bedrock-agent_Hello_section.md).

------