NLU 전문가 피드백 루프

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기12분
  • 시스템이 지속적으로 학습하고 사용자 입력을 더 잘 예측할 수 있도록 채팅 로그 발언에 대한 가상 에이전트 피드백을 제공합니다.

    요약 사용량

    전문가 피드백 루프는 인스턴스에서 데이터를 가져와 피드백을 위해 사용자에게 제공합니다. 이 데이터는 사용자의 가상 에이전트(VA) 채팅 로그에서 가져오며 해당 로그의 발언을 포함합니다. nlu_admin 역할을 사용하여 다음으로 이동합니다. 모두 > NLU 워크벤치 > 전문가 피드백 루프 그리고 발언이 의도에 대해 옳은지(일치) 또는 잘못되었는지(불일치)를 확인하여 모델의 각 발화를 표시합니다. 이 피드백은 모델이 모델 성능을 지속적으로 개선하는 데 도움이 됩니다.

    설치

    전문가 피드백 루프는 에서 사용할 수 있는 ServiceNow® StoreNLU 워크벤치 - 고급 기능 앱의 일부입니다.

    전문가 피드백 루프를 사용하려면 인스턴스에서 - 고급 기능(sn_nlu_workbench) 플러그인이 NLU 워크벤치 활성화되어 있어야 합니다. 자세한 내용은 NLU 워크벤치 활성화 섹션을 참조하십시오NLU 워크벤치 설치 - 고급 기능.

    전문가 피드백 루프는 VA 채팅 로그의 데이터에 의존하기 때문에 Glide 가상 에이전트(com.glide.cs.chatbot) 플러그인도 활성 상태인지 확인합니다. 가상 에이전트 활성화의 내용을 참조하십시오.

    인스턴스 간 전문가 피드백 루프 데이터 임포트

    임포트를 시작하기 전에 인스턴스의 데이터에 액세스할 수 있고 피드백을 진행하기에 충분한 데이터가 있는지 확인하십시오.

    하위 프로덕션 인스턴스에서 작업하는 경우, 프로덕션 인스턴스의 open_nlu_predict_intent_feedback 테이블에서 하위 프로덕션 인스턴스로 피드백 데이터를 임포트해야 합니다. 임포트하는 방법에 대한 지침은 다른 ServiceNow 인스턴스에서 임포트를 참조하십시오.

    다음은 피드백 루프 발언을 수용하는 모델의 시스템 동작 NLU 과 관련된 몇 가지 데이터 시나리오입니다.
    • 모델을 다른 인스턴스로 이동해도 피드백 데이터는 유지됩니다.
    • 인스턴스를 업그레이드하면 피드백 데이터가 유지됩니다.
    • 인스턴스를 복제하면 데이터가 유지되지 않으므로 위에서 언급한 절차에 따라 복제된 인스턴스로 데이터를 임포트해야 합니다.

    피드백 컨텍스트 및 액세스

    전문가 피드백 루프는 선택한 발화의 하위 집합에 대해 제공하는 피드백을 통해 VA에 배포된 모델을 개선할 NLU 수 있는 메커니즘을 제공합니다. 각 발언에 대해 예측된 의도를 확인하거나 발화가 속한 올바른 의도를 제공해야 합니다. 이 피드백이 완료되면 데이터를 사용하여 모델 성능을 조정하고, 그 결과 더 많은 최종 사용자 데이터를 수집하기 위해 다시 배포할 수 있는 개선된 모델이 생성됩니다. 이는 시스템이 지속적으로 데이터를 수집하고, 사용자가 제공한 피드백에서 학습하고, 해당 피드백을 사용하여 모델을 더욱 개선할 수 있도록 NLU 하는 반복 주기입니다.

    시스템은 30일마다 한 번씩 VA 채팅 로그에서 전문가 피드백 루프로 최대 300개의 발화 샘플을 끌어옵니다. 발화는 로그의 모든 발화를 얼마나 잘 나타내는지에 따라 피드백을 위해 선택됩니다. VA 채팅 로그에서 샘플링된 모든 발화에는 시스템에서 선택한 예측 의도가 있습니다.

    시스템 속성의 설정을 조정하여 VA 채팅 로그에서 끌어올 발언 수를 설정할 수도 있습니다 glide.mlpredictor.option.nlu.activeLearning.label_candidate_table.max_response_size .

    VA 채팅 로그에서 발언을 끌어오는 프로세스에 대한 자세한 내용은 아래의 요청 시 추가 VA 피드백 데이터 구매 및 활성 학습 작업 사용 섹션에서 확인할 수 있습니다.

    발화를 검토하면서 각 발화가 예측된 의도에 속하는지 아니면 다른 의도로 이동해야 하는지 결정합니다. 올바른 의도를 모르는 경우 추가 검토를 위해 다시 방문하도록 발화를 표시할 수 있습니다. 100개 이상의 발언에 피드백을 표시하면 시스템은 표시된 모든 발화를 사용하여 모델을 조정하고 개선합니다.

    VA 채팅 로그 발언 검토

    이제 루프에 있으므로 다음 이미지에서 VA 모델의 의도를 지원하는 발화 목록을 NLU 볼 수 있습니다. 목록의 각 페이지에는 페이지당 약 20개의 발화가 표시됩니다. 목표는 각 발화를 검토하고 관계 상태를 지정된 VA 의도에 표시하는 것입니다. 각 발언을 NLU_Match, 불일치 또는 불확실 값으로 표시합니다.

    발화를 NLU_Match 로 표시하면 해당 발화에 대한 NLU 예측에 동의하는 것입니다. 발언을 불일치 로 표시하면 발화가 다른 의도에 속한다는 의미이며, 불일치를 선택하면 의도 드롭다운이 나타나 올바른 의도를 선택할 수 있습니다. 어떤 의도가 올바른지 확실하지 않은 경우 확실하지 않음으로 표시할 수 있습니다.

    NLU_Match 값 또는 불일치 값으로 표시되고 저장된 발화는 완료된 검토 섹션으로 이동됩니다. 불확실 값으로 표시되고 저장된 발화는 추가 검토 필요 섹션으로 이동됩니다.

    다음은 발화 검토를 완료하는 데 사용하는 기본 단계에 대한 시나리오입니다.
    1. Export Feedback Loop(피드백 루프 내보내기) 화면 상단에 있는 Expert Feedback Loop(전문가 피드백 루프 )에서 프롬프트에 대해 검토할 모델을 선택합니다. 이 기능 내에서는 어떤 모델을 선택하든 상관없는데, 이러한 모델은 주로 리뷰에 표시하는 발화를 수용하는 역할을 하기 때문입니다. 따라서 이 예시 시나리오에서는 5개의 의도와 각 의도 내에 많은 발언이 있는 IT 모델 모델을 선택하기로 결정합니다. 다음 이미지와 같이 예측된 의도의 이름 옆에 검토해야 하는 발화 수가 표시됩니다. 이러한 모델의 의도는 화면의 예측 의도 열에 나열됩니다. 예측된 의도에서 발언을 검토하고 표시할 수 있지만 의도가 처음 나타나는 순서대로 연속적으로 검토를 완료하는 것이 더 좋습니다. 예를 들어, ad_password_change 의도로 시작한 다음 다른 예측 의도로 계속 진행합니다.
    2. ad_password_change 의도를 클릭하여 검토를 위해 할 일 섹션에 해당 발언을 로드하도록 합니다.
    3. 의도에서 15개의 발언을 검토합니다. 이 시나리오에서는 AD 암호를 변경하고 싶습니다 발언을 ad_password_change 의도와 일치하는 것으로 올바르게 표시하여 시작했습니다.
    4. 피드백 저장을 클릭합니다.
      결과: 표시한 발화를 화면의 완료 섹션으로 이동합니다. 동시에 할 일 발화의 개수는 15에서 14로 떨어지고 완료 섹션의 개수는 0에서 1로 증가합니다. 또한 다른 발화를 불확실 값으로 표시하고 해당 변경 내용을 저장한 경우 추가 검토 필요 섹션의 발화 수도 0에서 1로 증가합니다.
      주:
      어떤 의도가 발언과 가장 일치하는지 모르는 경우 Unsure 값으로 표시합니다. 이 작업을 수행하면 발언이 추가 검토 필요 섹션으로 이동하여, 의도와 일치하거나 불일치하기 쉬울 수 있는 다른 발화를 할 일 섹션에서 표시할 시간을 제공합니다. 언제든지 추가 검토 필요 섹션으로 돌아가 특정 의도로 고정하기 어려운 발화를 표시할 수 있습니다.
    5. 1-4단계를 반복하여 예측 의도 열의 나머지 의도 사이를 이동합니다.
    그림 1. VA 의도와 일치하거나 일치하지 않는 발언으로 표시
    검토 중에 발언을 표시할 수 있도록 예측 의도를 선택합니다.

    ad_password_change 의도의 발언은 의도 내에 암호라는 단어가 포함된 발언이 하나 이상 있기 때문에 예측 의도와 일치하는 것으로 쉽게 표시할 수 있습니다.

    예측된 의도의 발언 검토를 마치고 피드백 저장을 클릭하면 화면이 새로 고쳐지고 모델에서 다음으로 예측된 의도가 강조 표시됩니다.

    값별로 그룹화된 발화를 보려면 필터 표시를 클릭하고 프롬프트에서 옵션 중 하나를 선택합니다. 값은 모두, NLU_Match불확실입니다.

    카드 뷰 옵션을 사용하여 발화 검토

    전문가 피드백 루프 발화는 지금까지 위에서 본 많은 이미지와 같이 기본적으로 목록 뷰의 할 일 섹션에 표시됩니다. 그러나 카드 내에 프레임으로 구성된 각 발언을 표시하는 다른 뷰를 선택할 수도 있습니다. 이 옵션을 선택하면 각 발화가 5명씩 그룹으로 페이지에 나타납니다. 목록 뷰 내에서 카드 아이콘을 클릭합니다.

    카드 뷰를 활성화하는 방법

    결과: 카드 뷰가 목록 뷰를 대체합니다. 발화 카드 페이지의 양쪽에 있는 왼쪽 및 오른쪽 화살표를 확인합니다. 오른쪽 화살표를 클릭하면 페이지가 다음 5장의 카드 세트로 전환됩니다. 왼쪽 화살표를 클릭하면 페이지가 이전 5장의 카드 세트로 바뀝니다. 카드 뷰 대신 목록 뷰로 다시 전환하려면 아래 이미지의 오른쪽 상단에 표시된 대로 목록 아이콘을 클릭합니다.

    목록 뷰로 다시 전환하는 방법

    발언 값 변경

    발언을 표시한 후 선택한 값에 대한 생각이 바뀌면 불일치 를 클릭하고 다른 의도를 선택하여 문제를 해결할 수 있습니다. 피드백 저장을 클릭하여 변경 내용을 저장합니다.

    저장되지 않은 피드백

    발언 표시 세션을 마치고 로그아웃했지만 변경 내용을 저장하지 않은 경우 프롬프트 표시에서 저장되지 않은 변경 내용을 선택합니다. 이 작업은 피드백을 제공했지만 아직 저장하지 않은 모든 발화를 표시합니다.

    요청 시 추가 VA 피드백 데이터 확보

    전문가 피드백 루프에서 사용할 VA 채팅 로그에서 더 많은 데이터를 얻으려면 다음 단계를 수행하십시오.
    1. nlu_admin 역할을 사용하여 다음으로 이동합니다. 모두 > 시스템 정의 > 예약된 작업 > 활성 학습.
    2. Active Learning(활성 학습)을 클릭합니다.

      활성 학습 작업 열기

    3. 지금 실행을 클릭합니다.

      "지금 실행" 버튼을 클릭하여 활성 학습 작업을 시작하십시오.

    4. 다음 4가지 NLU 시스템 속성에서 값을 늘리거나 설정합니다.
    • glide.mlpredictor.option.nlu.activeLearning.va_chat_logs.max_row_limit - 3000
    • glide.mlpredictor.option.nlu.activeLearning.label_candidate_table.max_data_size - 10000
    • glide.mlpredictor.option.nlu.activeLearning.label_table.max_data_size - 10000
    • glide.mlpredictor.option.nlu.activeLearning.label_candidate_table.max_response_size-300

    다른 NLU 속성의 컨텍스트 내에서 이러한 속성이 작동하는 방식을 보려면 다음 문서를 참조하십시오 NLU 워크벤치 속성.

    분류되지 않은 발언 검토

    VA 채팅 로그에서 전문가 피드백 루프로 피드되는 과정에서 시스템은 VA 의도에 속하지 않는 인스턴스의 모든 발언을 수집하여 목록에 표시합니다. 화면 상단의 프롬프트에 대한 전문가 피드백 루프에서 분류되지 않음을 선택하면 이러한 발화에 액세스할 수 있습니다.

    화면을 새로 고치면 이러한 발화가 화면의 분류되지 않은 발화 섹션에 있는 화 열에 표시됩니다.
    중요사항:
    시스템에서 이러한 발화에 연결된 의도가 없음을 제안하기 때문에 이 발화 집합에 대한 피드백을 제공하는 것이 매우 중요합니다. 이러한 연결 부족을 확인하거나 이러한 발화를 기존 의도와 연결하면 모델이 올바르게 학습하는 데 도움이 됩니다.
    다음은 분류되지 않은 발언을 의도에 연결하는 데 사용하는 단계입니다.
    1. 발언 열의 목록에서 발언을 선택합니다.
    2. 수정된 의도 열의 프롬프트에서 발언에 가장 적합하다고 생각되는 의도와 해당 모델을 검색하여 선택합니다.
    예를 들어 이 연결에 적합한 페어링은 아래 이미지와 같이 발언 열의 ESPP를 거래할 수 있습니까? 발언과 수정된 의도 열의 401kBenefitsInquiry 의도입니다.
    주:
    수정된 의도 열을 사용하면 인스턴스의 모든 모델에서 모든 의도를 검색하고 사용할 수 있습니다.
    그림 2. 범주화되지 않은 발언을 의도 및 해당 모델과 페어링
    분류되지 않은 발언의 수는 전문가 피드백 루프의 일일 피드로 끌어오는 가상 에이전트 채팅 로그에 따라 달라집니다.

    위의 이미지와 관련하여 다음과 같이 분류되지 않은 발화 페이지의 작동 방식을 설명하는 데 도움이 되는 몇 가지 항목을 살펴보겠습니다. 할 일 섹션은 의도에 연결되어야 하는 발화를 수집합니다. 이 특별한 날에 우리는 그러한 발언이 120번이나 있는 것을 봅니다. 아직 아무 작업도 수행하지 않았기 때문에 화면의 완료 섹션에는 발화가 없습니다.

    또한 화면 맨 오른쪽에 세로 막대가 있어 위아래로 스크롤하여 발화 목록을 탐색할 수 있습니다. 이 스크롤 화면 하단에는 왼쪽과 오른쪽을 가리키는 화살표가 있어 해당 날짜의 전체 발화 목록의 다음 또는 이전 페이지로 이동할 수 있습니다.

    연결을 만들기 위한 작업을 수행할 때는 시스템이 작업을 인식하고 변경 내용을 자동으로 저장하기 때문에 일반적으로 기본적으로 활성화되어 있는 피드백 저장 버튼이 비활성화됩니다.

    전문가 피드백 모델 조정 단계의 루프 데이터

    전문가 피드백 루프의 모델 조정 버튼은 항상 활성화되어 있으며, 이를 통해 전문가 피드백 루프 완료 탭에서 모델과 해당 테스트 세트로 발화를 이동할 수 있습니다. 모델을 조정하거나 다시 조정해야 할 때마다 nlu_admin 역할을 사용하여 이 버튼을 클릭합니다.

    모델을 조정하면 게시하기 전에 모델이 최적화됩니다.

    전문가 피드백 루프에서 발화를 검토한 후 피드백 데이터의 일부를 모델의 기본 테스트 세트로 푸시할 수 있습니다. 그런 다음 이러한 발화는 모델의 테스트 발화 탭에 직접 추가됩니다. 이렇게 하면 실제 최종 사용자 발언으로 테스트 세트를 지속적으로 유지관리하고 업데이트할 수 있습니다. 시스템은 테스트 발언의 소스를 추적하여 전문가 피드백 루프 또는 다른 소스에서 온 것인지 여부를 파악합니다.

    100개 이상의 발화를 표시하고 저장하기 전에 모델 조정 버튼을 클릭하면 아래 이미지의 텍스트에 참조된 대로 100개의 발화 피드백 목표를 통과했을 때 모델 성능의 품질이 향상됨을 상기시키기 위해 화면이 새로 고쳐집니다.

    모델을 개선하려면 언제든지 "모델 조정" 버튼을 클릭하지만 먼저 100개 이상의 발화로 구성된 목표를 설정하는 것이 조정 결과를 가장 잘 보여줍니다.

    피드백 데이터를 계속 표시하고 저장하면 아래의 진행률 표시줄 이미지에서 검토된 발화(녹색)와 아직 검토할 수 있는 발화(흰색)의 비율을 볼 수 있습니다.

    진행률 표시줄에는 검토된 발화 수와 검토할 수 있는 발화가 표시됩니다.

    아래의 모델 조정 이미지에서 모델 교육 세트와 모델 테스트 세트에 대한 기본 60/40 백분율 분할을 볼 수 있습니다. 필요한 경우 두 상자(%) 상자 각각에서 선택한 숫자를 선택하여 이러한 기본값을 조정할 수 있습니다. 백분율 분할이 만족스러우면 조정 버튼을 클릭하여 선택한 백분율 값에 따라 모델을 조정합니다.
    주:
    피드백 보기 캐럿을 클릭하면 전문가 피드백 루프 화면으로 이동하여 피드백 발화를 계속 검토, 표시 및 저장할 수 있습니다.

    조정 단추를 클릭하기 전에 백분율 분할 값을 설정하십시오.

    활성 학습 작업 사용

    배치 작업 또는 배치 스케줄링이라고도 하는 예약된 작업은 특정 시간에 또는 반복 일정에 따라 수행되는 자동화된 작업 조각입니다. 많은 작업이 일정에 따라 실행되지만 여기서는 예로 Active Learning 작업에 집중하고 있습니다.

    다음은 활성 학습 작업을 사용할 때 수행할 수 있는 세 가지 작업입니다.
    • 활성 학습 작업이 실행되도록 설정할 반복 빈도 간격을 변경합니다.
    • 활성 학습 작업에 대해 다음 예약된 실행이 언제 설정되는지 확인합니다.
    • 필요할 때마다(요청 시) 활성 학습 작업을 실행합니다.
    다음은 시작하는 데 사용할 수 있는 몇 가지 단계입니다.
    1. nlu_admin 역할을 사용하여 모두 필드로 이동하여 sysauto_script.list를 입력하고 키보드의 Return 키를 누릅니다. 화면이 새로 고쳐지고 예약된 작업이 모두 나열된 일정 페이지가 표시됩니다.
      일정 페이지.
    2. 일정 페이지에서 활성 학습을 클릭합니다. 아래 이미지와 같이 활성 학습 작업에 대한 기록이 나타납니다.
      달력 열기
    3. 활성 학습 기록에서 다음 필드를 구성합니다.
      • 실행 필드에서 작업에 대한 8개의 반복 간격 옵션 중 하나를 선택합니다. 옵션은 매일, 매주, 매월, 주기적으로, 일,요청 시, 비즈니스 달력:항목 시작비즈니스 달력:항목 종료입니다.
      • 반복 간격 필드에 활성 학습 작업의 현재와 다음 반복 간격 사이에 원하는 일 수를 입력합니다.
      • 시작 필드에서 달력 아이콘을 클릭하고 다음 활성 학습 작업 간격의 날짜와 시간을 선택합니다.
      • 업데이트 버튼을 클릭하여 구성을 저장하거나 지금 실행 버튼을 클릭하여 활성 학습 작업 실행을 시작합니다.
      • 다음 활성 학습 작업이 실행되는 시기를 확인하려면 모두 필드로 이동하여 sys_trigger.list를 입력한 다음 키보드의 Return 키를 누릅니다. 일정 페이지가 나타납니다. Active Learning(활성 학습)을 클릭합니다. 일정 항목/활성 학습 기록이 나타나고 다음 활성 학습 작업 실행에 대한 날짜 및 시간으로 다음 동작 필드가 채워집니다.
        활성 학습 기록
    의 활성 학습 작업에 대한 NLU자세한 내용은 지원 포털의 KB 문서 KB1633901에서 찾을 수 있습니다.