채팅 데이터의 감정 분석

감정 분석은 상담사와 최종 사용자 간의 대화 중에 메시지를 분석하여 감정적 의도를 판단하는 기능입니다. 대화 프로필을 만들거나 수정할 때 사용 설정할 수 있습니다. 기존 대화 프로필을 수정하는 경우 대화 프로필이 업데이트된 후에만 대화의 효과를 볼 수 있습니다. 또한 Agent Assist 콘솔을 사용하여 대화 프로필을 만들 때 감정 분석을 사용 설정할 수도 있습니다.

  1. MessageAnalysisConfig에서 enableSentimentAnalysistrue로 설정합니다.
  2. 이 기능이 사용 설정된 ConversationProfile을 사용하여 createConversation 요청을 전송합니다.
  3. 감정 결과는 AnalyzeContentResponse.message.sentimentAnalysis로 반환됩니다.
  4. Agent Assist에서 Cloud Pub/Sub 통합을 사용 설정한 경우 감정 결과도 NewMessagePayload에 표시됩니다.

감정 분석 결과 해석

감정은 응답에 반환되는 측정항목인 scoremagnitude 값으로 표현됩니다. 감정 score의 범위는 -1.0(부정적)에서 1.0 (긍정적)까지이며 텍스트의 전반적인 정서 성향을 나타냅니다. magnitude 값은 주어진 텍스트 내에서 전반적인 감정 강도(긍정적 및 부정적 모두)를 나타내며 0.0부터 +inf까지입니다. 이러한 측정항목을 해석하는 방법에 대한 자세한 내용은 Natural Language 감정 분석 문서를 참고하세요.

다음은 Natural Language API 데모 기능의 감정 분석 출력의 두 가지 예입니다. 데모를 사용하여 샘플 텍스트에 대한 감정 분석을 테스트하려면 텍스트 상자에 텍스트를 붙여넣고 분석을 클릭한 다음 감정 탭을 선택합니다.

예 1

문자: '기분이 좋지 않아.'

반환된 score은 -0.9이고 magnitude은 0.9입니다. 이는 감정 강도가 낮음에서 중간 정도인 매우 강한 부정적 감정 기울기를 나타냅니다.

예 2

텍스트: 'Google Cloud는 Google의 클라우드 서비스입니다.'

scoremagnitude의 반환 값은 모두 0입니다. 즉, 텍스트에 감정이나 감정의 강도가 표시되지 않습니다.

예시 3

텍스트: '결과에 매우 화가 나고 실망했습니다. 반면에 우리 팀이 매우 열심히 일하고 전문적인 태도를 보여준 점은 기쁩니다."

예 1과 달리 이 텍스트에는 두 개의 문장이 포함되어 있습니다. 출력에는 전체 문서 측정항목과 각 개별 문장의 측정항목이 포함됩니다. 전체 문서 값은 한 문장이 아닌 두 문장을 합친 측정항목을 나타냅니다. 각 개별 문장도 해당 magnitudescore 값과 함께 나열됩니다.

전체 문서에 대해 반환된 감정 score은 0이고 magnitude은 1.6입니다. 문장이 여러 개인 문서에서 score가 0이면 감정적으로 완전히 중립적이거나 텍스트의 여러 지점에서 긍정적 감정 성향과 부정적 감정 성향이 서로 상쇄되었음을 의미할 수 있습니다. 진정으로 중립적인 감정을 가진 텍스트의 magnitude도 0과 같거나 0에 가깝습니다. 이 경우 상대적으로 높은 magnitude 값 1.6은 두 문장의 감정이 진정으로 중립적이지 않고 혼합되어 있음을 의미합니다 (예: 텍스트의 여러 지점에서 화가 나거나 실망하거나 기쁨). 각 문장의 score 값을 살펴보면 하나는 매우 긍정적 (0.8)이고 다른 하나는 매우 부정적 (-0.8)이므로 전체 문서의 score가 0으로 평균화되었습니다.