View a markdown version of this page

연습 1: 템플릿에서 챗봇 생성 - Amazon Lex

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

연습 1: 템플릿에서 챗봇 생성

이 연습에서는 첫 번째 Amazon Lex V2 챗봇을 생성하고 Amazon Lex V2 콘솔에서 테스트합니다. 이 연습에서는 전자 상거래에 대한 실용적인 실제 사용 사례를 보여주는 OrderFlowers 템플릿을 사용합니다.

OrderFlowers 봇 예제

OrderFlowers 템플릿을 사용하여 꽃 주문 요청을 처리할 수 있는 Amazon Lex V2 챗봇을 생성합니다. 이 예제는 기업이 지능형 챗봇을 사용하여 주문 접수를 자동화하는 방법을 보여줍니다. 구조에 대한 자세한 내용은 Amazon Lex V2 핵심 개념 단원을 참조하세요.

  • 의도 - 봇에는 다음과 같은 하나의 주요 의도가 포함됩니다.

    • OrderFlowers - 꽃 유형, 픽업 날짜 및 픽업 시간을 수집하여 꽃 주문 요청을 처리합니다.

  • 슬롯 유형 - 봇은 일반적인 데이터 형식을 자동으로 인식하고 처리하는 기본 제공 슬롯 유형을 사용합니다.

    • AMAZON.Date - "tomorrow", "next Friday" 또는 "March 15th"와 같은 날짜를 인식합니다.

    • AMAZON.Time - "오후 2시", "정오" 또는 "지난 3분기"와 같은 시간을 인식합니다.

    • FlowerTypes (사용자 지정) - "roses", "tulips", "lilies"와 같은 특정 꽃 품종

  • 슬롯 - 봇이 꽃 주문을 이행하려면 OrderFlowers 의도에 다음 정보가 필요합니다.

    • FlowerType (FlowerTypes 사용자 지정 유형) - 주문할 꽃의 유형입니다.

    • PickupDate (AMAZON.Date 유형) - 꽃을 픽업해야 하는 경우

    • PickupTime (AMAZON.Time 유형) - 꽃을 픽업할 시간

  • 샘플 표현 - 다음 샘플 표현은 사용자가 꽃 주문을 요청할 수 있는 자연스러운 방법을 보여줍니다.

    • "I would like to pick up flowers"

    • “꽃을 주문하고 싶어요.”

    • “픽업을 위해 꽃을 받을 수 있나요?”

    • “꽃을 구입해야 합니다.”

  • 프롬프트 – 봇이 의도를 식별한 후에는 다음 프롬프트를 사용하여 슬롯을 채웁니다.

    • FlowerType 슬롯에 대한 프롬프트 – "어떤 꽃을 주문하고 싶으세요?"

    • PickupDate 슬롯에 대한 프롬프트 – "언제 {FlowerType}를 픽업하고 싶으세요?"

    • PickupTime 슬롯에 대한 프롬프트 – "{FlowerType}의 픽업 시간은 언제인가요?"

    • 확인 설명문 – "네, {FlowerType}을 {PickupDate} 날 {PickupTime}에 픽업할 수 있도록 준비할게요. 괜찮으신가요?"

봇 생성

Amazon Lex V2 봇을 만들려면(콘솔)
  1. AWS Management Console에 로그인하여 https://console.aws.amazon.com/lex/에서 Amazon Lex 콘솔을 엽니다.

  2. 봇 생성을 선택합니다.

  3. 생성 방법으로는 예제로 시작을 선택합니다.

  4. 예제 봇 섹션의 목록에서 OrderFlowers를 선택합니다.

  5. 봇 구성 섹션에서 봇의 이름과 선택적 설명을 입력합니다. 이름은 계정에서 고유해야 합니다.

  6. 권한 섹션에서 기본 Amazon Lex 권한을 사용하여 새 역할 생성을 선택합니다. 그러면 Amazon Lex V2가 봇을 실행하는 데 필요한 권한이 있는 AWS Identity and Access Management(IAM) 역할이 생성됩니다.

  7. COPPA(Children's Online Privacy Protection Act, 어린이 온라인 사생활 보호법) 섹션에서 적합한 응답을 선택하세요.

  8. 세션 타임아웃 및 고급 설정 섹션의 기본값은 그대로 두십시오.

  9. 다음을 선택합니다. Amazon Lex V2에서 봇을 생성합니다.

봇에 언어 추가

봇을 만든 후에는 봇에서 지원하는 하나 이상의 언어를 추가해야 합니다. 언어에는 봇이 사용자와 대화하는 데 사용하는 의도, 슬롯 유형, 슬롯이 포함됩니다.

봇에 언어를 추가하려면
  1. 언어 섹션에서 지원되는 언어를 선택하고 설명을 추가합니다.

  2. 음성 상호작용 및 의도 분류 신뢰도 점수 임계값 필드는 기본값 그대로 둡니다.

  3. 완료를 선택하여 봇에 언어를 추가합니다.

봇 테스트

완료를 선택하면 콘솔에서 의도 편집기가 열립니다. 의도 편집기를 사용하여 봇이 사용한 의도를 검사할 수 있습니다. 봇 검사를 마치면 테스트할 수 있습니다.

OrderFlowers 봇을 테스트하려면
  1. 페이지 상단에서 빌드를 선택합니다. 봇이 빌드될 때까지 기다리세요.

  2. 빌드가 완료되면 테스트를 선택하여 테스트 창을 엽니다.

  3. 봇 테스트. “꽃을 픽업하고 싶습니다.”와 같은 샘플 발화 중 하나로 대화를 시작하세요.

NLU를 활성화하여 이해 개선

이제 챗봇이 작동 중이므로 Assisted NLU로 챗봇을 개선하여 의도 인식 및 슬롯 해결을 개선해 보겠습니다. Assisted NLU는 대규모 언어 모델(LLMs)을 사용하여 사용자 요청이 훈련 예제와 다른 구문을 사용하는 경우에도 사용자 요청을 더 잘 이해합니다.

Assisted NLU를 활성화하려면
  1. Amazon Lex V2 콘솔에서 봇의 설정으로 이동합니다.

  2. 왼쪽 탐색 창에서 봇 설정을 선택합니다.

  3. 지원되는 NLU에서 활성화를 선택합니다.

  4. 저장을 선택하여 변경 사항을 적용합니다.

  5. 봇을 다시 빌드하여 Assisted NLU 개선 사항을 적용합니다.

개선 테스트: 테스트 콘솔에서 이러한 변형을 시도하여 Assisted NLU가 다양한 구문을 처리하는 방법을 확인합니다.

  • “일부 장미를 구매하고 싶어요”( OrderFlowers 의도를 트리거하고 FlowerType을 캡처해야 함)

  • “내일 꽃을 배달받을 수 있나요?” ( OrderFlowers 의도를 트리거하고 PickupDate를 캡처해야 함)

  • “오후 3시에 픽업하려면 튜립이 필요합니다.”( OrderFlowers 의도를 트리거하고 FlowerType 및 PickupTime을 캡처해야 함)

챗봇이 이러한 자연 변형을 명시적 샘플 발화로 추가하지 않고도 어떻게 이해할 수 있는지 확인합니다. 이는 AI를 사용하여 자연어 이해를 개선하는 Assisted NLU로 구동됩니다.

다음 단계

템플릿을 사용하여 첫 번째 봇을 만들었으니 콘솔을 사용하여 자신만의 봇을 만들 수 있습니다. 사용자 지정 봇을 만드는 방법에 대한 지침 및 봇 만들기에 대한 자세한 내용은 Amazon Lex V2 봇 작업 단원을 참조하세요.