쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Amazon Bedrock에서 에이전트의 작업 그룹에 대한 OpenAPI 스키마 정의

포커스 모드
Amazon Bedrock에서 에이전트의 작업 그룹에 대한 OpenAPI 스키마 정의 - Amazon Bedrock

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

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

Amazon Bedrock에서 작업 그룹을 만들 때 에이전트가 사용자로부터 간접 호출해야 하는 파라미터를 정의해야 합니다. 에이전트가 이러한 파라미터를 사용하여 간접 호출할 수 있는 API 작업을 정의할 수도 있습니다. API 작업을 정의하려면 JSON 또는 YAML 형식으로 OpenAPI 스키마를 만듭니다. OpenAPI 스키마 파일을 만들고 이를 Amazon Simple Storage Service(Amazon S3)에 업로드할 수 있습니다. 또는 콘솔에서 OpenAPI 텍스트 편집기를 사용하여 스키마를 검증할 수 있습니다. 에이전트를 만든 후 에이전트에 작업 그룹을 추가하거나 기존 작업 그룹을 편집할 때 텍스트 편집기를 사용할 수 있습니다. 자세한 내용은 에이전트 수정 섹션을 참조하세요.

에이전트는 간접 호출이 필요한 API 작업 및 API 요청을 수행하는 데 필요한 파라미터를 결정할 때 스키마를 사용합니다. 이러한 세부 정보는 작업을 수행하기 위해 정의한 Lambda 함수를 통해 전송되거나 에이전트 간접 호출의 응답으로 반환됩니다.

API 스키마에 대한 자세한 내용은 다음 리소스를 참조하세요.

다음은 작업 그룹에 대한 OpenAPI 스키마의 일반적인 형식입니다.

{ "openapi": "3.0.0", "paths": { "/path": { "method": { "description": "string", "operationId": "string", "parameters": [ ... ], "requestBody": { ... }, "responses": { ... }, "x-requireConfirmation": ENABLED | DISABLED } } } }

다음 목록은 OpenAPI 스키마의 필드에 대해 설명합니다.

  • openapi – (필수) 사용 중인 OpenAPI의 버전입니다. 작업 그룹이 작동하려면 이 값이 "3.0.0"이어야 합니다.

  • paths - (필수) 개별 엔드포인트에 대한 상대 경로를 포함합니다. 각 경로는 슬래시(/)로 시작해야 합니다.

  • method - (필수) 사용할 메서드를 정의합니다.

  • x-requireConfirmation – (선택 사항) 작업을 간접 호출하기 전에 사용자 확인이 필요한지 여부를 지정합니다. 작업을 호출하기 전에 사용자에게 확인을 요청하려면 이 필드를 활성화합니다. 작업을 간접 호출하기 전에 확인을 요청하면 애플리케이션이 악성 프롬프트 인젝션으로 인한 조치를 취하는 일이 없도록 보호할 수 있습니다. 기본적으로 사용자 확인은 이 필드가 지정되지 않은 경우 DISABLED입니다.

최소한 각 메서드에는 다음 필드가 필요합니다.

  • description - API 작업에 대한 설명입니다. 이 필드를 사용하여 에이전트에게 이 API 작업을 언제 직접적으로 호출해야 하는지, 어떤 작업을 수행해야 하는지 알려줍니다.

  • operationId - 함수 이름과 같이 API에서 작업을 식별하는 고유한 문자열입니다. 이 필드는 Anthropic Claude 3.5 Sonnet, Meta Llama 등과 같은 모든 새 toolUse 지원 모델에 필요한 필드입니다. 제공하는 식별자(Id)가 모든 작업에서 고유한지, 하이픈 또는 밑줄만 구분자로 사용하고 간단한 영숫자 패턴을 따르는지 확인합니다.

  • responses - 에이전트가 API 응답에서 반환하는 속성을 포함합니다. 에이전트는 응답 속성을 사용하여 프롬프트를 구성하고, API 직접 호출 결과를 정확하게 처리하고, 작업을 수행하기 위한 올바른 단계 세트를 결정합니다. 에이전트는 한 작업의 응답 값을 오케스트레이션의 후속 단계에 대한 입력으로 사용할 수 있습니다.

다음 두 객체의 필드는 에이전트가 작업 그룹을 효과적으로 활용할 수 있도록 자세한 정보를 제공합니다. 각 필드에 대해 required 필드 값이 필수인 경우 true로 설정하고 선택 사항인 경우 false로 설정합니다.

  • parameters - 요청에 포함할 수 있는 파라미터에 대한 정보가 들어 있습니다.

  • requestBody - 요청 본문의 작업에 대한 필드를 포함합니다. GETDELETE 메서드에 이 필드를 포함하지 않습니다.

구조에 대해 자세히 알아보려면 다음 탭 중에서 선택하세요.

responses
"responses": { "200": { "content": { "<media type>": { "schema": { "properties": { "<property>": { "type": "string", "description": "string" }, ... } } } }, }, ... }

responses 객체의 각 키는 응답의 상태를 설명하는 응답 코드입니다. 응답 코드는 응답에 대한 다음 정보가 포함된 객체에 매핑됩니다.

  • content - (각 응답에서 필수) 응답 내용.

  • <media type> - 응답 본문의 형식. 자세한 내용은 Swagger 웹사이트의 Media types를 참조하세요.

  • schema - (각 미디어 유형에서 필수) 응답 본문의 데이터 유형과 해당 필드를 정의합니다.

  • properties - (스키마에 items가 있는 경우 필수) 에이전트는 스키마에 정의한 속성을 사용하여 작업을 수행하기 위해 최종 사용자에게 반환하는 데 필요한 정보를 결정합니다. 각 속성에는 다음 필드가 포함됩니다.

    • type - (각 속성에서 필수) 응답 필드의 데이터 유형.

    • description - (선택 사항) 속성의 설명. 에이전트는 이 정보를 사용하여 최종 사용자에게 반환하는 데 필요한 정보를 결정할 수 있습니다.

parameters
"parameters": [ { "name": "string", "description": "string", "required": boolean, "schema": { ... } }, ... ]

에이전트는 다음 필드를 사용하여 작업 그룹의 요구 사항을 수행하기 위해 최종 사용자로부터 어떤 정보를 가져와야 하는지 결정합니다.

  • name - (필수) 파라미터의 이름.

  • description - (필수) 파라미터의 설명. 이 필드를 사용하면 에이전트가 에이전트 사용자로부터 이 파라미터를 이끌어내는 방법을 이해하거나 이전 작업 또는 에이전트에 대한 사용자의 요청에서 해당 파라미터 값이 이미 있는지 확인하는 데 도움이 됩니다.

  • required - (선택 사항) API 요청에 파라미터가 필요한지 여부. 이 필드를 사용하여 에이전트에게 이 파라미터가 모든 간접 호출에 필요한지 아니면 선택 사항인지 알려줄 수 있습니다.

  • schema - (선택 사항) 입력 및 출력 데이터 유형의 정의. 자세한 내용은 Swagger 웹사이트의 Data Models (Schemas)를 참조하세요.

requestBody

다음은 requestBody 필드의 일반적인 구조입니다.

"requestBody": { "required": boolean, "content": { "<media type>": { "schema": { "properties": { "<property>": { "type": "string", "description": "string" }, ... } } } } }

다음 목록에 각 필드가 설명되어 있습니다.

  • required - (선택 사항) API 요청에 요청 본문이 필요한지 여부.

  • content - (필수) 요청 본문의 내용.

  • <media type> - (선택 사항) 요청 본문의 형식. 자세한 내용은 Swagger 웹사이트의 Media types를 참조하세요.

  • schema - (선택 사항) 요청 본문과 해당 필드의 데이터 유형을 정의합니다.

  • properties - (선택 사항) 에이전트는 스키마에 정의한 속성을 사용하여 API 요청을 위해 최종 사용자로부터 어떤 정보를 가져와야 하는지 결정합니다. 각 속성에는 다음 필드가 포함됩니다.

    • type - (선택 사항) 요청 필드의 데이터 유형.

    • description - (선택 사항) 속성의 설명. 에이전트는 이 정보를 사용하여 최종 사용자에게 반환하는 데 필요한 정보를 결정할 수 있습니다.

"responses": { "200": { "content": { "<media type>": { "schema": { "properties": { "<property>": { "type": "string", "description": "string" }, ... } } } }, }, ... }

responses 객체의 각 키는 응답의 상태를 설명하는 응답 코드입니다. 응답 코드는 응답에 대한 다음 정보가 포함된 객체에 매핑됩니다.

  • content - (각 응답에서 필수) 응답 내용.

  • <media type> - 응답 본문의 형식. 자세한 내용은 Swagger 웹사이트의 Media types를 참조하세요.

  • schema - (각 미디어 유형에서 필수) 응답 본문의 데이터 유형과 해당 필드를 정의합니다.

  • properties - (스키마에 items가 있는 경우 필수) 에이전트는 스키마에 정의한 속성을 사용하여 작업을 수행하기 위해 최종 사용자에게 반환하는 데 필요한 정보를 결정합니다. 각 속성에는 다음 필드가 포함됩니다.

    • type - (각 속성에서 필수) 응답 필드의 데이터 유형.

    • description - (선택 사항) 속성의 설명. 에이전트는 이 정보를 사용하여 최종 사용자에게 반환하는 데 필요한 정보를 결정할 수 있습니다.

작업 그룹을 만드는 동안 이전에 만든 OpenAPI 스키마를 추가하는 방법을 알아보려면 Amazon Bedrock에서 에이전트에 작업 그룹 추가 섹션을 참조하세요.

API 스키마 예제

다음 예제에서는 지정된 위치의 날씨를 섭씨로 가져오는 YAML 형식의 간단한 OpenAPI 스키마를 제공합니다.

openapi: 3.0.0 info: title: GetWeather API version: 1.0.0 description: gets weather paths: /getWeather/{location}/: get: summary: gets weather in Celsius description: gets weather in Celsius operationId: getWeather parameters: - name: location in: path description: location name required: true schema: type: string responses: "200": description: weather in Celsius content: application/json: schema: type: string

다음 예제 API 스키마는 보험 청구 처리에 도움이 되는 API 작업 그룹을 정의합니다. 세 가지 API는 다음과 같이 정의됩니다.

  • getAllOpenClaims - 에이전트는 description 필드를 사용하여 미해결 청구 목록이 필요한 경우 이 API 작업을 직접적으로 호출해야 한다고 결정할 수 있습니다. responsesproperties는 ID와 보험 계약자 및 청구 상태를 반환하도록 지정합니다. 에이전트는 이 정보를 에이전트 사용자에게 반환하거나 응답의 일부 또는 전체를 후속 API 직접 호출에 대한 입력으로 사용합니다.

  • identifyMissingDocuments - 에이전트는 description 필드를 사용하여 보험 청구 시 누락된 문서를 식별해야 하는 경우 이 API 작업을 직접적으로 호출해야 한다고 결정할 수 있습니다. name, description, required 필드는 에이전트가 고객으로부터 미해결 청구의 고유 식별자를 얻어야 한다고 알려줍니다. responsesproperties는 미해결 보험 청구의 ID를 반환하도록 지정합니다. 에이전트는 이 정보를 최종 사용자에게 반환하거나 응답의 일부 또는 전체를 후속 API 직접 호출에 대한 입력으로 사용합니다.

  • sendReminders - 에이전트는 description 필드를 사용하여 고객에게 알림을 보내야 하는 경우 이 API 작업을 직접적으로 호출해야 한다고 결정할 수 있습니다. 예를 들어 미해결 청구 건에 대해 보류 중인 문서에 대한 알림을 보내야 할 수 있습니다. requestBodyproperties는 에이전트에게 청구 ID와 보류 중인 문서를 찾아야 한다고 알립니다. responsesproperties는 알림의 ID와 상태를 반환하도록 지정합니다. 에이전트는 이 정보를 최종 사용자에게 반환하거나 응답의 일부 또는 전체를 후속 API 직접 호출에 대한 입력으로 사용합니다.

{ "openapi": "3.0.0", "info": { "title": "Insurance Claims Automation API", "version": "1.0.0", "description": "APIs for managing insurance claims by pulling a list of open claims, identifying outstanding paperwork for each claim, and sending reminders to policy holders." }, "paths": { "/claims": { "get": { "summary": "Get a list of all open claims", "description": "Get the list of all open insurance claims. Return all the open claimIds.", "operationId": "getAllOpenClaims", "responses": { "200": { "description": "Gets the list of all open insurance claims for policy holders", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "claimId": { "type": "string", "description": "Unique ID of the claim." }, "policyHolderId": { "type": "string", "description": "Unique ID of the policy holder who has filed the claim." }, "claimStatus": { "type": "string", "description": "The status of the claim. Claim can be in Open or Closed state" } } } } } } } } } }, "/claims/{claimId}/identify-missing-documents": { "get": { "summary": "Identify missing documents for a specific claim", "description": "Get the list of pending documents that need to be uploaded by policy holder before the claim can be processed. The API takes in only one claim id and returns the list of documents that are pending to be uploaded by policy holder for that claim. This API should be called for each claim id", "operationId": "identifyMissingDocuments", "parameters": [{ "name": "claimId", "in": "path", "description": "Unique ID of the open insurance claim", "required": true, "schema": { "type": "string" } }], "responses": { "200": { "description": "List of documents that are pending to be uploaded by policy holder for insurance claim", "content": { "application/json": { "schema": { "type": "object", "properties": { "pendingDocuments": { "type": "string", "description": "The list of pending documents for the claim." } } } } } } } } }, "/send-reminders": { "post": { "summary": "API to send reminder to the customer about pending documents for open claim", "description": "Send reminder to the customer about pending documents for open claim. The API takes in only one claim id and its pending documents at a time, sends the reminder and returns the tracking details for the reminder. This API should be called for each claim id you want to send reminders for.", "operationId": "sendReminders", "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "claimId": { "type": "string", "description": "Unique ID of open claims to send reminders for." }, "pendingDocuments": { "type": "string", "description": "The list of pending documents for the claim." } }, "required": [ "claimId", "pendingDocuments" ] } } } }, "responses": { "200": { "description": "Reminders sent successfully", "content": { "application/json": { "schema": { "type": "object", "properties": { "sendReminderTrackingId": { "type": "string", "description": "Unique Id to track the status of the send reminder Call" }, "sendReminderStatus": { "type": "string", "description": "Status of send reminder notifications" } } } } } }, "400": { "description": "Bad request. One or more required fields are missing or invalid." } } } } } }

OpenAPI 스키마의 자세한 예는 OpenAPI 웹 사이트의 예제 API 설명을 참조하세요.

이 페이지에서

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.