

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 에이전트를 수동으로 생성 및 구성
<a name="agents-create"></a>

Amazon Bedrock으로 에이전트를 만들려면 다음과 같은 구성 요소를 설정합니다.
+ 에이전트의 구성, 즉 에이전트의 용도와 에이전트가 프롬프트와 응답을 생성하는 데 사용할 파운데이션 모델(FM)을 정의합니다.
+ 다음 중 최소 하나 이상을 지정해야 합니다.
  + 에이전트가 수행하도록 설계된 작업을 정의하는 작업 그룹을 지정합니다.
  + 검색 및 쿼리를 허용하여 에이전트의 생성형 기능을 보강하기 위한 데이터 소스의 지식 기반을 지정합니다.

이름만 있는 최소한의 에이전트를 생성할 수도 있습니다. 에이전트를 [테스트](agents-test.md)하거나 [배포](agents-deploy.md)할 수 있도록 **준비**하려면 최소한 다음 구성 요소를 구성해야 합니다.


****  

| 구성 | 설명 | 
| --- | --- | 
| 에이전트 리소스 역할 | [에이전트에서 API 작업을 직접적으로 호출할 수 있는 권한이 있는 서비스 역할](agents-permissions.md)의 ARN입니다. | 
| 파운데이션 모델(FM) | 에이전트가 오케스트레이션을 수행하도록 간접적으로 호출하는 FM입니다. | 
| 지침 | 에이전트가 수행해야 하는 작업과 에이전트가 사용자와 상호 작용하는 방법을 설명하는 자연어입니다. | 

또한 에이전트에 대해 하나 이상의 작업 그룹 또는 지식 기반을 구성해야 합니다. 작업 그룹 또는 지식 기반이 없는 에이전트를 준비할 경우 FM과 지침, [기본 프롬프트 템플릿](advanced-prompts.md)만을 기반으로 하는 응답이 반환됩니다.

에이전트를 생성하는 방법을 알아보려면 원하는 방법의 탭을 선택하고 다음 단계를 따릅니다.

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

**에이전트를 생성하려면**

1. Amazon Bedrock 콘솔을 사용할 권한이 있는 IAM 자격 증명으로 AWS Management Console에 로그인합니다. 그 다음 [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock)에서 Amazon Bedrock 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **에이전트**를 선택합니다.

1. **에이전트** 섹션에서 **에이전트 생성**을 선택합니다.

1. (선택 사항) 에이전트에 대해 자동으로 생성된 **이름**을 변경하고 필요한 경우 에이전트에 대한 **설명**을 제공합니다.

1. **생성(Create)**을 선택합니다. 에이전트가 만들어지면 새로 만들어진 에이전트의 **에이전트 빌더**로 이동하여 에이전트를 구성할 수 있습니다.

1. 다음 절차를 계속 진행하여 에이전트를 구성하거나 나중에 에이전트 빌더로 돌아갈 수 있습니다.

**에이전트를 구성하는 방법**

1. 아직 에이전트 빌더를 열지 않은 경우 다음 단계를 따릅니다.

   1. Amazon Bedrock 콘솔을 사용할 권한이 있는 IAM 자격 증명으로 AWS Management Console에 로그인합니다. 그 다음 [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock)에서 Amazon Bedrock 콘솔을 엽니다.

   1. 왼쪽 탐색 창에서 **에이전트**를 선택합니다. **에이전트** 섹션에서 에이전트를 선택합니다.

   1. **에이전트 빌더에서 편집**을 선택합니다.

1. **에이전트 세부 정보** 섹션에서 다음 구성을 설정할 수 있습니다.

   1. **에이전트 이름** 또는 **에이전트 설명**을 편집합니다.

   1. **에이전트 리소스 역할**에서 다음 옵션 중 하나를 선택합니다.
      + **새 서비스 역할 생성 및 사용** - Amazon Bedrock이 서비스 역할을 만들고 사용자를 대신하여 필요한 권한을 설정하도록 합니다.
      + **기존 서비스 역할 사용** - 이전에 설정한 [사용자 지정 역할](agents-permissions.md)을 사용합니다.

   1. **모델 선택**에서 오케스트레이션 중에 에이전트가 간접적으로 호출할 FM을 선택합니다.

      기본적으로 에이전트에 최적화된 모델이 표시됩니다. Amazon Bedrock Agents에서 지원하는 모든 모델을 보려면 **Bedrock Agents 최적화**를 선택 취소합니다.  
![\[파운데이션 모델을 사용하여 에이전트를 만들 수 있습니다. 현재 제공되는 일부 모델은 에이전트 아키텍처와 통합하도록 미세 조정된 프롬프트/파서로 최적화되어 있습니다. 제공되는 모든 모델에 점차적으로 최적화를 제공할 예정입니다.\]](http://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/agents/agents-optimized-model-selection.png)

   1. **에이전트를 위한 지침**에서, 해야 할 일과 사용자와 상호 작용하는 방법을 설명하는 세부 정보를 에이전트에 입력합니다. 지침은 [오케스트레이션 프롬프트 템플릿](prompt-placeholders.md#placeholders-orchestration)의 \$1instructions\$1 자리 표시자를 대체합니다. 다음은 지침의 예제입니다.

      ```
      You are an office assistant in an insurance agency. You are friendly and polite. You help with managing insurance claims and coordinating pending paperwork.
      ```

   1. **추가 설정**을 확장하면 다음 구성을 수정할 수 있습니다.
      + **코드 인터프리터** - (선택 사항) 에이전트가 코드 작성, 실행, 테스트, 문제 해결과 관련된 작업을 처리할 수 있도록 할 것인지 여부를 선택합니다. 자세한 내용은 [코드 해석을 사용하여 코드 생성, 실행, 테스트](agents-code-interpretation.md)을 참조하세요.
      + **사용자 입력** - (선택 사항) 정보가 충분하지 않은 경우 에이전트가 사용자에게 추가 정보를 요청하도록 허용할 것인지 여부를 선택합니다. 자세한 내용은 [사용자에게 정보를 요청하도록 에이전트 구성](agents-user-input.md)을 참조하세요.
      + **KMS 키 선택** - (선택 사항) 기본적으로 AWS는 AWS 관리형 키로 에이전트 리소스를 암호화합니다. 자체 고객 관리형 키로 에이전트를 암호화하려면 KMS 키 선택 섹션에서 **암호화 설정 사용자 지정(고급)**을 선택합니다. 새 키를 만들려면 **AWS KMS KMS 키 생성**을 선택하고 이 창을 새로 고침합니다. 기존 키를 사용하려면 **AWS KMS KMS 키 선택**에서 해당 키를 선택합니다.
      + **유휴 세션 제한 시간** - 기본적으로 사용자가 Amazon Bedrock 에이전트와의 세션에서 30분 동안 응답하지 않은 경우 에이전트는 더 이상 대화 기록을 유지하지 않습니다. 대화 기록은 상호작용을 재개하고 대화에서 컨텍스트로 응답을 보강하는 데 사용됩니다. 이 기본 시간 길이를 변경하려면 **세션 제한 시간** 필드에 숫자를 입력하고 시간 단위를 선택합니다.

   1. **IAM 권한** 섹션의 **에이전트 리소스 역할**에서 [서비스 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role)을 선택합니다. Amazon Bedrock이 사용자를 대신하여 서비스 역할을 만들도록 하려면 **새 서비스 역할 생성 및 사용**을 선택합니다. 이전에 만든 [사용자 지정 역할](agents-permissions.md)을 사용하려면 **기존 서비스 역할 사용**을 선택합니다.
**참고**  
Amazon Bedrock이 사용자를 위해 생성하는 서비스 역할은 미리 보기로 제공 중인 기능에 대해서는 권한을 지원하지 않습니다. 이러한 기능을 사용하려면 [서비스 역할에 알맞은 권한을 부여해야 합니다](agents-permissions.md).

   1. (선택 사항) 기본적으로 AWS는 AWS 관리형 키를 사용하여 에이전트 리소스를 암호화합니다. 자체 고객 관리형 키로 에이전트를 암호화하려면 **KMS 키 선택** 섹션에서 **암호화 설정 사용자 지정(고급)**을 선택합니다. 새 키를 만들려면 **AWS KMS KMS 키 생성**을 선택하고 이 창을 새로 고침합니다. 기존 키를 사용하려면 **AWS KMS KMS 키 선택**에서 해당 키를 선택합니다.

   1. (선택 사항) 이 에이전트에 태그를 연결하려면 **태그 - 선택 사항** 섹션에서 **새 태그 추가**를 선택하고 키-값 페어를 제공합니다.

   1. 에이전트 구성 설정을 완료한 뒤 **다음**을 선택합니다.

1. **작업 그룹** 섹션에서 **추가**를 선택하여 에이전트에 작업 그룹을 추가할 수 있습니다. 작업 그룹 설정에 대한 자세한 내용은 [작업 그룹을 사용하여 에이전트가 수행할 작업 정의](agents-action-create.md) 섹션을 참조하세요. 에이전트에 작업 그룹을 추가하는 방법은 [Amazon Bedrock에서 에이전트에 작업 그룹 추가](agents-action-add.md) 섹션을 참조하세요.

1. **지식 기반** 섹션에서 **추가**를 선택하여 지식 그룹을 에이전트에 연결할 수 있습니다. 지식 기반 설정에 대한 자세한 내용은 [Amazon Bedrock Knowledge Bases를 사용하여 데이터 검색 및 AI 응답 생성](knowledge-base.md) 섹션을 참조하세요. 지식 기반을 에이전트에 연결하는 방법은 [지식 기반을 사용하여 에이전트에 대한 응답 생성 강화](agents-kb-add.md) 섹션을 참조하세요.

1. **가드레일 세부 정보** 섹션에서 **편집**을 선택하여 에이전트에 가드레일을 연결하면 유해한 콘텐츠를 차단하고 필터링할 수 있습니다. **가드레일 선택**의 드롭다운 메뉴에서 사용할 가드레일을 선택한 다음 **가드레일 버전**에서 어떤 버전을 사용할지 선택합니다. **보기**를 선택하여 가드레일 설정을 확인할 수 있습니다. 자세한 내용은 [Amazon Bedrock Guardrails를 사용하여 유해한 콘텐츠 감지 및 필터링](guardrails.md) 섹션을 참조하세요.

1. **오케스트레이션 전략** 섹션에서 **편집**을 선택하여 에이전트의 오케스트레이션을 사용자 지정할 수 있습니다. 에이전트에 사용할 수 있는 오케스트레이션 전략에 대한 자세한 내용은 [에이전트 오케스트레이션 전략 사용자 지정](orch-strategy.md) 섹션을 참조하세요.

1. **다중 에이전트 협업** 섹션에서 **편집**을 선택하여 다중 에이전트 협업 팀을 구성할 수 있습니다. 다중 에이전트 협업에 대한 자세한 내용은 [Amazon Bedrock Agents에서 다중 에이전트 협업 사용](agents-multi-agent-collaboration.md) 섹션을 참조하세요.

1. 에이전트 구성을 마친 후 다음 옵션 중 하나를 선택합니다.
   + **에이전트 빌더**를 계속 사용하려면 **저장**을 선택합니다. 그런 다음 에이전트를 **준비**하여 테스트 창에서 업데이트된 구성으로 에이전트를 테스트할 수 있습니다. 에이전트를 테스트하는 방법을 알아보려면 [에이전트 동작 테스트 및 문제 해결](agents-test.md) 섹션을 참조하세요.
   + **에이전트 세부 정보** 페이지로 돌아가려면 **저장 및 종료**를 선택합니다.

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

에이전트를 만들려면 [Agents for Amazon Bedrock 빌드 타임 엔드포인트](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt)를 사용하여 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgent.html) 요청(요청 및 응답 형식과 필드 세부 정보는 링크 참조)을 보냅니다.

[코드 예시 보기](bedrock-agent_example_bedrock-agent_CreateAgent_section.md)

에이전트를 [테스트](agents-test.md)하거나 [배포](agents-deploy.md)할 수 있도록 준비하려면 최소한 다음 필드를 포함해야 합니다(원하는 경우 이러한 구성을 건너뛰고 나중에 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateAgent.html) 요청을 보내 구성할 수 있습니다).


****  

| 필드 | 사용 사례 | 
| --- | --- | 
| agentResourceRoleArn | 에이전트에서 API 작업을 직접적으로 호출할 수 있는 권한이 있는 서비스 역할의 ARN을 지정합니다. | 
| foundationModel | 에이전트가 오케스트레이션할 파운데이션 모델(FM)을 지정합니다. | 
| instruction | 에이전트에게 어떤 작업을 수행해야 하는지 알려주는 지침을 제공합니다. 오케스트레이션 프롬프트 템플릿의 \$1instructions\$1 자리 표시자에서 사용됩니다. | 

다음 필드는 선택 사항입니다.


****  

| 필드 | 사용 사례 | 
| --- | --- | 
| 설명 | 에이전트가 수행하는 작업을 설명합니다. | 
| idleSessionTTLInSeconds | 에이전트가 세션을 종료하고 저장된 정보를 삭제하는 데 걸리는 시간입니다. | 
| customerEncryptionKeyArn | 에이전트 리소스를 암호화하는 KMS 키의 ARN입니다. | 
| 태그 | 에이전트에 [태그](tagging.md)를 연결합니다. | 
| promptOverrideConfiguration | 오케스트레이션의 각 단계에서 FM으로 전송되는 [프롬프트를 사용자 지정](advanced-prompts.md)합니다. | 
| guardrailConfiguration | 에이전트에 [가드레일](guardrails.md)을 추가합니다. 가드레일의 ID 또는 ARN과 사용할 버전을 지정합니다. | 
| clientToken | API 요청이 한 번만 완료되도록 합니다. 자세한 내용은 [Ensuring idempotency](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html)를 참조하세요. | 
| cachingState | 에이전트에 대한 입력의 프롬프트 캐싱을 활성화합니다. 자세한 내용은 [더 빠른 모델 추론을 위한 프롬프트 캐싱](prompt-caching.md) 섹션을 참조하세요. | 
| reasoning\$1config | 모델이 결론에 도달한 방법을 설명하도록 모델 추론을 활성화합니다. additionalModelRequestFields 필드 내부를 사용합니다. 출력 토큰의 하위 집합인 모델 추론에 사용되는 budget\$1tokens의 수를 지정해야 합니다. 자세한 내용은 [모델 추론을 사용하여 모델 응답 강화](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-reasoning.html)를 참조하세요. | 

응답은 새로 생성된 에이전트에 대한 세부 정보가 포함된 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_Agent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_Agent.html) 객체를 반환합니다. 에이전트를 만들지 못한 경우 응답의 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_Agent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_Agent.html) 객체는 `failureReasons` 목록과 문제 해결을 위한 `recommendedActions` 목록을 반환합니다.

```
    def create_agent(self, agent_name, foundation_model, role_arn, instruction):
        """
        Creates an agent that orchestrates interactions between foundation models,
        data sources, software applications, user conversations, and APIs to carry
        out tasks to help customers.

        :param agent_name: A name for the agent.
        :param foundation_model: The foundation model to be used for orchestration by the agent.
        :param role_arn: The ARN of the IAM role with permissions needed by the agent.
        :param instruction: Instructions that tell the agent what it should do and how it should
                            interact with users.
        :return: The response from Amazon Bedrock Agents if successful, otherwise raises an exception.
        """
        try:
            response = self.client.create_agent(
                agentName=agent_name,
                foundationModel=foundation_model,
                agentResourceRoleArn=role_arn,
                instruction=instruction,
            )
        except ClientError as e:
            logger.error(f"Error: Couldn't create agent. Here's why: {e}")
            raise
        else:
            return response["agent"]
```

자세한 내용은 [Amazon Bedrock Agents 시작](bedrock-agent_example_bedrock-agent_Hello_section.md) 섹션을 참조하세요.

------