쿠키 기본 설정 선택

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

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

Amazon Nova에서 도구 사용(함수 호출)

포커스 모드
Amazon Nova에서 도구 사용(함수 호출) - Amazon Nova

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

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

도구는 API 호출 또는 코드 함수와 같은 외부 기능을 Amazon Nova에 제공하는 방법입니다. 이 섹션에서는 Amazon Nova 모델로 작업할 때 도구를 정의하고 도구와 통합하는 방법을 다룹니다.

도구 사용에는 세 가지 상위 단계가 포함됩니다.

  • 사용자 쿼리 - 각 도구의 기능과 입력 요구 사항을 설명하는 JSON 스키마를 제공하여 Amazon Nova가 사용할 수 있는 도구를 정의합니다.

  • 도구 선택 - 사용자가 메시지를 보내면 Amazon Nova는 이를 분석하여 도구를 사용하여 응답을 생성해야 하는지 여부를 결정합니다. 이를 Auto 도구 선택이라고 합니다. 자세한 내용은 도구 선택을 참조하세요. Amazon Nova가 적합한 도구를 식별하면 "도구 호출"하고 도구 이름과 사용할 파라미터를 반환합니다.

    개발자는 모델의 요청에 따라 도구를 실행할 책임이 있습니다. 즉, 도구의 기능을 호출하고 모델에서 제공하는 입력 파라미터를 처리하는 코드를 작성해야 합니다.

    참고

    모든 LLM 응답과 마찬가지로 Amazon Nova가 도구 호출을 할루시화할 수 있습니다. 도구가 존재하고 입력의 형식이 올바르게 지정되었으며 적절한 권한이 이미 있는지 확인하는 것은 개발자인 사용자의 책임입니다.

  • 결과 반환 - 도구를 실행한 후 결과를 구조화된 형식으로 Amazon Nova에 다시 전송해야 합니다. 유효한 형식에는 JSON 또는 텍스트와 이미지 조합이 포함됩니다. 이를 통해 Amazon Nova는 도구의 출력을 사용자에 대한 최종 응답에 통합할 수 있습니다.

    도구 실행 중에 오류가 있는 경우 Amazon Nova에 대한 도구 응답에서 이를 표시하여 Amazon Nova가 그에 따라 응답을 조정할 수 있도록 할 수 있습니다.

계산기 도구의 간단한 예를 생각해 보세요.

User query

도구 호출 워크플로의 첫 번째 단계는 수학 수식 - 10회 5의 결과에 대한 Amazon Nova에 대한 사용자 쿼리입니다. 이 쿼리는 계산기를 나타내는 도구 사양과 함께 Amazon Nova에 프롬프트로 전송됩니다.

user_query = "10*5" messages = [{ "role": "user", "content": [{"text": user_query}] }] tool_config = { "tools": [ { "toolSpec": { "name": "calculator", # Name of the tool "description": "A calculator tool that can execute a math equation", # Concise description of the tool "inputSchema": { "json": { "type": "object", "properties": { "equation": { # The name of the parameter "type": "string", # parameter type: string/int/etc "description": "The full equation to evaluate" # Helpful description of the parameter } }, "required": [ # List of all required parameters "equation" ] } } } } ] }
Tool selection

Amazon Nova는 사용자 프롬프트와 함께 도구의 컨텍스트를 사용하여 사용할 필수 도구와 필요한 구성을 결정합니다. 이는 API 응답의 일부로 반환됩니다.

{ "toolUse": { "toolUseId": "tooluse_u7XTryCSReawd9lXwljzHQ", "name": "calculator", "input": { "equation": "10*5" } } }

애플리케이션은 도구를 실행하고 결과를 저장하는 역할을 합니다.

def calculator(equation: str): return eval(equation) tool_result = calculator("10*5")
Return results

도구 결과를 Amazon Nova에 반환하기 위해 도구 결과가 새 API 요청에 포함됩니다. 도구 사용 ID는 이전 응답에서 Amazon Nova에서 반환된 ID와 일치합니다.

{ "toolResult": { "toolUseId": "tooluse_u7XTryCSReawd9lXwljzHQ", "content": [ { "json": { "result": "50" } } ], "status": "success" } }
  • Amazon Nova는 초기 사용자 쿼리, 도구 사용 및 도구 결과를 포함한 메시지의 전체 컨텍스트를 사용하여 사용자에 대한 최종 응답을 결정합니다. 이 경우 Amazon Nova는 사용자에게 "10회 5가 50"이라고 응답합니다.

도구 호출 워크플로의 첫 번째 단계는 수학 수식 - 10회 5의 결과에 대한 Amazon Nova에 대한 사용자 쿼리입니다. 이 쿼리는 계산기를 나타내는 도구 사양과 함께 Amazon Nova에 프롬프트로 전송됩니다.

user_query = "10*5" messages = [{ "role": "user", "content": [{"text": user_query}] }] tool_config = { "tools": [ { "toolSpec": { "name": "calculator", # Name of the tool "description": "A calculator tool that can execute a math equation", # Concise description of the tool "inputSchema": { "json": { "type": "object", "properties": { "equation": { # The name of the parameter "type": "string", # parameter type: string/int/etc "description": "The full equation to evaluate" # Helpful description of the parameter } }, "required": [ # List of all required parameters "equation" ] } } } } ] }

Amazon Nova는 Invoke 및 Converse API 모두에서 도구를 사용할 수 있도록 허용하지만 전체 기능 범위를 위해 Converse API를 사용하는 것이 좋으며 앞으로이 API와 함께 예제를 사용할 예정입니다.

추가 참조

이 페이지에서

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