에이전트 설계

이 페이지에서는 비즈니스 목표를 충족하는 고품질 에이전트 설계를 위한 안내를 제공합니다.

에이전트를 제작하기 전에

이 섹션에서는 에이전트 제작을 시작하기 전에 고려해야 할 정보를 제공합니다.

목표

에이전트의 전반적인 목표를 고려합니다.

  • 비즈니스에서 달성하고자 하는 바는 무엇인가요?
  • 사용자가 에이전트에서 기대하는 것은 무엇인가요?
  • 사용자가 에이전트와 얼마나 자주 상호작용하나요?

플랫폼

사용자가 에이전트에 액세스하는 방법을 고려합니다. 콘텐츠를 만들기 전에 Dialogflow에서 지원되는 플랫폼을 검토합니다. 지원할 플랫폼을 선택할 때 그에 따라 적절히 콘텐츠를 준비합니다. Dialogflow의 플랫폼 통합 중 일부는 이미지, 링크, 추천 검색어 칩과 같은 요소를 포함할 수 있는 리치 메시지를 지원합니다.

반복적으로 에이전트 제작

에이전트가 크거나 복잡하다면 먼저 최상위 요청만 처리하는 대화를 만듭니다. 기본적인 구조가 완성되면 대화 경로를 반복 실행하면서 사용자가 선택할 수 있는 가능한 모든 경로를 감안했는지 확인하세요.

사전 제작된 에이전트

Dialogflow는 처음 시작하는 데 도움이 되도록 사전 제작된 에이전트를 제공합니다. 사전 제작된 에이전트는 호텔 예약, 내비게이션, 온라인 쇼핑과 같은 일반적인 사용 사례를 다룹니다. 이러한 에이전트에는 가장 일반적인 사용자 쿼리를 처리하기 위한 인텐트와 개체가 함께 제공됩니다. 내 비즈니스와 관련된 응답을 추가하면 유용한 에이전트를 신속하게 만들 수 있습니다.

시스템 개체

사용자가 요청을 할 때 사용자가 말한 내용에는 파싱해야 할 중요한 정보가 있습니다. Dialogflow에서 이러한 정보를 개체라고 합니다. 특히 Dialogflow가 제공하는 사전 제작된 개체인 시스템 개체는 가장 인기 있는 정보 유형을 처리합니다.

스몰 토크

대화를 개발할 때 주제를 벗어난 요청을 처리하는 방법을 고려할 수 있습니다. Dialogflow는 스몰 토크라고 하는 선택적인 기능을 제공합니다. 이 기능을 사용 설정하면 에이전트는 보편적인 대화, 감정적인 반응, 에이전트 자체에 대한 질문에 응답합니다. 모든 스몰 토크 응답은 맞춤설정을 통해 브랜드의 성격(친근함, 사무적, 또는 그 중간)을 반영하는 경험을 보장할 수 있습니다.

에이전트 설계 권장사항

이 섹션에서는 견고하고 정확하고 유능하고 유용한 에이전트를 위한 권장사항 목록을 제공합니다.

시작 인사와 끝 인사

권장사항 세부정보
환영 인텐트는 브랜딩을 염두에 두고 사용자가 에이전트의 기능을 알 수 있도록 해야 합니다. 에이전트의 환영 인텐트는 사용자에게 에이전트가 도움을 줄 수 있는 작업을 2~3개 알리고 이러한 기능을 사용하는 방법에 대한 간략한 설명(필요한 경우)을 제공해야 합니다.
에이전트에 성공적인 상호작용이 끝났을 때 사용할 적절한 종료 메시지가 있어야 합니다. 사용자가 에이전트에서 작업을 완료하면 에이전트는 트랜잭션/작업을 요약하고 '다음에 또 만나요' 등의 말을 해야 합니다.

머신러닝과 학습

권장사항 세부정보
인텐트에는 최소 10개의 학습 문구가 있어야 합니다. 각 인텐트에 필요한 실제 학습 문구의 수는 에이전트의 복잡성에 따라 결정되지만 10개는 적절한 최소 기준입니다. 인텐트에 매개변수가 많을수록 머신러닝 모델을 학습시키기 위한 문구도 더 많이 제공해야 합니다.
학습 문구는 다양해야 합니다. 문구가 폭넓은 요청을 포괄하도록 질문, 명령, 동사의 변형, 보통명사의 동의어를 포함하세요.
주석은 일관적이어야 합니다.
  • 학습 문구를 검토하여 강조표시된 주석이 올바른 객체를 가리키는지 확인하세요.
  • 일부 경우에서 주석 처리되고 다른 경우에는 주석 처리되지 않는 텍스트가 학습 문구에 있으면 안 됩니다.
  • 주석으로 선택되는 텍스트의 범위에는 개체와 일치시키는 데 필요한 텍스트가 모두 포함되어야 하며 그 이상 포함되면 안 됩니다.
  • 여러 학습 문구에서 주석 처리된 텍스트에는 학습 문구의 비슷한 부분이 포함되는지 확인합니다. 예를 들어 '오전 6시에 알람 울리기'라는 학습 문구가 있고 여기서 '오전 6시'가 @sys.date로 주석 처리되어 있다고 가정해 보겠습니다. 다른 학습 문구 '오전 7시에 깨우기'가 있는 경우 '오전 7시'를 주석 처리해야 하며, '오전 7시에'를 주석 처리해서는 안 됩니다.
커스텀 개발자 개체는 광범위한 예 범위를 포괄해야 합니다. 개체는 항목의 목록입니다. 머신러닝이 문법적 형식을 알아서 처리하지만 가능한 모든 항목을 포함해야 합니다. 또한 동의어 정의 옵션을 선택하고 몇 가지 변형을 포함하세요.
ML을 사용 중지하는 인텐트의 수를 최소화합니다. ML이 사용 중지된 인텐트의 학습 문구는 에이전트 학습 시 사용되지 않습니다. ML이 사용 설정된 다른 인텐트에 사용자 쿼리와 약간의 유사함이 있는 경우 ML이 사용 중지된 인텐트의 학습 문구와 매우 비슷한 사용자 쿼리를 잘못된 인텐트와 일치시킬 수 있습니다. 거짓양성 관련 문제가 있는 경우 ML을 사용 중지하지 말고 ML 분류 임계값을 높이세요.
학습 데이터가 소량인 에이전트에서 ML 분류 임계값을 높게 설정하지 마세요. 임계값이 높고 학습 데이터가 많지 않은 경우 학습 문구와 100% 일치에 근접한 사용자 쿼리만 인텐트 일치가 됩니다. 높은 임계값을 사용하려면 학습 데이터를 많이 제공해야 합니다.
에이전트에 대체 인텐트가 있어야 합니다. 대체 인텐트가 없으면 일치하지 않는 사용자 쿼리는 빈 응답으로 이어집니다.
에이전트는 제외 예를 제공해야 합니다. 제외 예는 학습 문구와 약간 비슷한 사용자 쿼리가 의도하지 않게 인텐트와 일치되지 않도록 합니다.
거의 모든 항목과 일치하는 개체를 정의하지 마세요. 이 경우 ML의 성능과 품질이 저하됩니다. 모든 학습 문구의 거의 모든 항목이 가능한 일치 항목으로 평가되기 때문입니다. 대신 @sys.any를 사용하는 방법을 고려하세요. 마찬가지로, 복합 개체는 동의어로 하나의 @sys.any를 포함해서는 안 됩니다.
필러 단어 또는 무의미한 텍스트로 구성된 개체를 정의하지 마세요. 필러 단어와 무의미한 텍스트의 예에는 '흠', '가만 있자', '저기요' 등이 포함됩니다. 다양성을 위해 이와 같은 개체를 사용하려고 시도하는 경우 ML의 성능만 저하됩니다. Dialogflow는 이미 데이터를 보강하여 이와 같은 다양성을 처리합니다. 개체가 아닌 학습 문구에 이와 같은 문구를 추가해야 합니다.
학습 문구의 주석 처리된 텍스트에는 다양성이 있어야 합니다. 예를 들어 학습 문구에서 @sys.time 시스템 개체로 파싱되어야 하는 시간 값을 제공하는 경우 모든 학습 문구에 동일한 시간을 제공해서는 안 됩니다. 학습 문구에는 '오전 7시', '오후 8시', '9시'와 같이 다양한 시간 예제가 있어야 합니다.
매개변수가 많은 인텐트는 학습 문구도 많아야 합니다. 원칙적으로 매개변수보다 학습 문구의 수가 최소 3배 더 많고 학습 문구의 수가 10개 이상이 되도록 하세요.
각 매개변수는 많은 학습 문구에 사용되어야 합니다. 원칙적으로 각 매개변수는 5개 이상의 학습 문구에 사용되어야 합니다.
예시 모드의 학습 문구에는 개체 참조가 포함되면 안 됩니다. 이는 지원 중단된 템플릿 모드용으로 예약됩니다.
하나의 학습 문구에 여러 개의 @sys.any 개체를 사용하지 않도록 하세요. 하나의 학습 문구에 두 개의 연속된 @sys.any 또는 총 3개의 @sys.any 개체가 포함되면 안 됩니다. Dialogflow에서 이를 구분하지 못할 수 있습니다.
다른 인텐트에 비슷한 학습 문구를 사용하지 마세요. 서로 다른 인텐트에 비슷한 학습 문구가 포함되면 안 됩니다. 포함될 경우 Dialogflow에서 이러한 문구를 인식하는 방법을 학습하지 못하게 되기 때문입니다.
자동 맞춤법 교정을 사용 설정합니다. 텍스트 입력을 사용하는 경우 자동 맞춤법 교정을 사용 설정해야 합니다.
복합 개체를 중첩하지 마세요. 복합 개체에서 두 개 이상의 중첩 수준을 사용하지 마세요. 각 중첩 수준마다 품질이 크게 저하됩니다.
학습 문구에 특수문자를 사용하지 마세요. 학습 문구에서 {, _, #, [와 같은 특수문자는 무시됩니다. 그림 이모티콘은 예외이며 정상적으로 작동합니다.

유용한 인텐트 기능

권장사항 세부정보
에이전트는 컨텍스트 요청을 지원해야 합니다. 예를 들어 에이전트가 날씨 관련 요청을 처리하고, 사용자가 '샌프란시스코의 날씨'를 묻는 경우 '내일은 어때?'와 같은 추가 요청도 지원하도록 컨텍스트를 추가해야 합니다.
에이전트에 예, 아니요, 취소, 다음, 뒤로 등에 대응하는 후속 조치가 있어야 합니다. 후속 조치 인텐트는 일반적인 응답에 대응하는 데 사용됩니다. 후속 조치 인텐트를 추가하려면 인텐트로 마우스를 가져간 다음 후속 조치 추가를 클릭하세요.
인텐트에 하나 이상의 텍스트 응답이 있어야 합니다. 응답 섹션은 인텐트 페이지 맨 아래에 있습니다. 변형을 추가하면 여러 가지 응답 중에서 선택되므로 같은 응답이 반복되는 것을 줄일 수 있습니다.
에이전트는 사용자 요청을 처리하기 위해 필요한 모든 정보를 수집해야 합니다. 필요한 매개변수를 필수 항목으로 설정하는 방법을 고려하세요. 에이전트는 필요한 정보를 얻을 때까지 계속 사용자에게 요청합니다. 이것을 슬롯 채우기라고 합니다.
주문 확인과 같이 필요한 경우 응답에서 정보를 반복해야 합니다. 사용자가 주문 또는 정보 변경 등을 요청하면 에이전트는 확인을 위해 현재 상황을 반복해서 말해야 합니다. 이러한 확인 응답을 만들 때는 반복되는 개체 및 매개변수의 가능한 모든 조합을 포함해야 합니다.

대화 복구

권장사항 세부정보
에이전트는 대화의 각 단계에서 도움이 되는 복구 프롬프트를 제공해야 합니다. 예를 들어 첫 프롬프트가 '원하시는 색상이 무엇인가요?'이고 사용자가 '정글 앵무새'라고 답했다면 대체/후속 조치 인텐트는 '죄송하지만 무슨 색상이라고 하셨나요?'와 같이 질문을 바꾸어 말해야 합니다.
에이전트의 기본 대체 인텐트에 맞춤설정된 브랜드에 맞는 응답이 있어야 합니다. 사용자가 인텐트와 일치하지 않는 내용을 말하는 경우 기본 대체 인텐트가 일치됩니다. 대체 인텐트는 브랜드의 성격을 반영하여 맞춤설정되어야 하며 사용자에게 유효한 요청을 하도록 안내하는 정보를 제공해야 합니다.
맞춤설정된 fulfillment의 경우 사용자가 정보를 반복하도록 허용하는 인텐트가 에이전트에 있어야 합니다. 하나의 인텐트가 '다시 말 해', '반복해', '다시 재생해'와 같은 요청을 처리할 수 있습니다. 이는 후속 조치 인텐트일 수 있습니다.

개성

권장사항 세부정보
에이전트 응답의 스타일과 어조가 브랜드와 어울리고 에이전트 전반에서 일관적이어야 합니다. 사용자는 에이전트와 대화하는 과정에서 하나의 인격체와 대화하는 느낌을 받아야 합니다. 선택한 특성과 성격이 모든 응답에 반영되었는지 확인하세요.
에이전트는 문화, 성별, 종교적 신념, 신체나 정신적 능력, 연령에 주의해야 합니다. 고정 관념은 농담이라 해도 사용자에게 모욕감을 줄 수 있으며 이 경우 사용자는 에이전트를 다시 찾지 않게 될 가능성이 높습니다.

테스트

권장사항 세부정보
개발에 관여하지 않은 사람을 통해 앱을 철저히 테스트하세요. 에이전트에 익숙하지 않은 사람이 앱을 사용하도록 하면 대화가 얼마나 자연스럽게 진행되는지에 대한 의견을 얻을 수 있습니다. 정확성, 긴 정지 상태, 대화 경로 누락, 진행 속도, 서툰 전환 등을 유의하여 살펴보도록 하세요.
지원하려는 모든 플랫폼에서 앱을 테스트하세요. 하나 이상의 플랫폼에서 에이전트를 사용할 수 있는 경우 모든 플랫폼에서 리치 메시지 및 응답이 예상한 대로 나타나는지 확인하세요.

추가 대화 설계 가이드

Actions on Google팀이 제공하는 대화 설계 가이드를 참조하세요.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Dialogflow 문서
도움이 필요하시나요? 지원 페이지를 방문하세요.