GETTING STARTED
Kore.ai XO Platform
Virtual Assistants Overview
Natural Language Processing (NLP)
Concepts and Terminology
Quick Start Guide
Accessing the Platform
Navigating the Kore.ai XO Platform
Building a Virtual Assistant
Help & Learning Resources
Release Notes
Current Version
Recent Updates
Previous Versions
CONCEPTS
Design
Storyboard
Overview
FAQs
Conversation Designer
Overview
Dialog Tasks
Mock Scenes
Dialog Tasks
Overview
Navigate Dialog Tasks
Build Dialog Tasks
Node Types
Overview
Intent Node
Dialog Node
Dynamic Intent Node
GenAI Node
GenAI Prompt
Entity Node
Form Node
Confirmation Node
Message Nodes
Logic Node
Bot Action Node
Service Node
Webhook Node
Script Node
Process Node
Agent Transfer
Node Connections
Node Connections Setup
Sub-Intent Scoping
Entity Types
Entity Rules
User Prompts or Messages
Voice Call Properties
Knowledge AI
Introduction
Knowledge Graph
Introduction
Terminology
Build a Knowledge Graph
Manage FAQs
Knowledge Extraction
Import or Export Knowledge Graph
Prepare Data for Import
Importing Knowledge Graph
Exporting Knowledge Graph
Auto-Generate Knowledge Graph
Knowledge Graph Analysis
Answer from Documents
Alert Tasks
Small Talk
Digital Skills
Overview
Digital Forms
Digital Views
Introduction
Widgets
Panels
Session and Context Variables
Context Object
Intent Discovery
Train
NLP Optimization
ML Engine
Overview
Model Validation
FM Engine
KG Engine
Traits Engine
Ranking and Resolver
Training Validations
NLP Configurations
NLP Guidelines
LLM and Generative AI
Introduction
LLM Integration
Kore.ai XO GPT Module
Prompts & Requests Library
Co-Pilot Features
Dynamic Conversations Features
Intelligence
Introduction
Event Handlers
Contextual Memory
Contextual Intents
Interruption Management
Multi-intent Detection
Amending Entities
Default Conversations
Conversation Driven Dialog Builder
Sentinment Management
Tone Analysis
Default Standard Responses
Ignore Words & Field Memory
Test & Debug
Overview
Talk to Bot
Utterance Testing
Batch Testing
Conversation Testing
Conversation Testing Overview
Create a Test Suite
Test Editor
Test Case Assertion
Test Case Execution Summary
Glossary
Health and Monitoring
NLP Health
Flow Health
Integrations
Actions
Actions Overview
Asana
Configure
Templates
Azure OpenAI
Configure
Templates
BambooHR
Configure
Templates
Bitly
Configure
Templates
Confluence
Configure
Templates
DHL
Configure
Templates
Freshdesk
Configure
Templates
Freshservice
Configure
Templates
Google Maps
Configure
Templates
Here
Configure
Templates
HubSpot
Configure
Templates
JIRA
Configure
Templates
Microsoft Graph
Configure
Templates
Open AI
Configure
Templates
Salesforce
Configure
Templates
ServiceNow
Configure
Templates
Stripe
Configure
Templates
Shopify
Configure
Templates
Twilio
Configure
Templates
Zendesk
Configure
Templates
Agents
Agent Transfer Overview
Custom (BotKit)
Drift
Genesys
Intercom
NiceInContact
NiceInContact(User Hub)
Salesforce
ServiceNow
Configure Tokyo and Lower versions
Configure Utah and Higher versions
Unblu
External NLU Adapters
Overview
Dialogflow Engine
Test and Debug
Deploy
Channels
Publishing
Versioning
Analyze
Introduction
Dashboard Filters
Overview Dashboard
Conversations Dashboard
Users Dashboard
Performance Dashboard
Custom Dashboards
Introduction
Custom Meta Tags
Create Custom Dashboard
Create Custom Dashboard Filters
LLM and Generative AI Logs
NLP Insights
Task Execution Logs
Conversations History
Conversation Flows
Conversation Insights
Feedback Analytics
Usage Metrics
Containment Metrics
Universal Bots
Introduction
Universal Bot Definition
Universal Bot Creation
Training a Universal Bot
Universal Bot Customizations
Enabling Languages
Store
Manage Assistant
Team Collaboration
Plan & Usage
Overview
Usage Plans
Templates
Support Plans
Invoices
Authorization
Conversation Sessions
Multilingual Virtual Assistants
Get Started
Supported Components & Features
Manage Languages
Manage Translation Services
Multiingual Virtual Assistant Behavior
Feedback Survey
Masking PII Details
Variables
Collections
IVR Settings
General Settings
Assistant Management
Manage Namespace
Data
Overview
Data Table
Table Views
App Definitions
Data as Service
HOW TOs
Build a Travel Planning Assistant
Travel Assistant Overview
Create a Travel Virtual Assistant
Design Conversation Skills
Create an ‘Update Booking’ Task
Create a Change Flight Task
Build a Knowledge Graph
Schedule a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Train the Assistant
Use Traits
Use Patterns
Manage Context Switching
Deploy the Assistant
Use Bot Functions
Use Content Variables
Use Global Variables
Use Web SDK
Build a Banking Assistant
Design Conversation Skills
Create a Sample Banking Assistant
Create a Transfer Funds Task
Create a Update Balance Task
Create a Knowledge Graph
Set Up a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Add Data to Data Tables
Update Data in Data Tables
Add Data from Digital Forms
Train the Assistant
Composite Entities
Use Traits
Use Patterns for Intents & Entities
Manage Context Switching
Deploy the Assistant
Configure an Agent Transfer
Use Assistant Functions
Use Content Variables
Use Global Variables
Intent Scoping using Group Node
Analyze the Assistant
Create a Custom Dashboard
Use Custom Meta Tags in Filters
Migrate External Bots
Google Dialogflow Bot
APIs & SDKs
API Reference
API Introduction
Rate Limits
API List
koreUtil Libraries
SDK Reference
SDK Introduction
Web SDK
How the Web SDK Works
SDK Security
SDK Registration
Web Socket Connect and RTM
Tutorials
Widget SDK Tutorial
Web SDK Tutorial
BotKit SDK
BotKit SDK Deployment Guide
Installing the BotKit SDK
Using the BotKit SDK
SDK Events
SDK Functions
Tutorials
BotKit - Blue Prism
BotKit - Flight Search Sample VA
BotKit - Agent Transfer
  1. Docs
  2. Virtual Assistants
  3. Builder
  4. Dialog Task
  5. 노드 그룹화하기

노드 그룹화하기

노드 그룹화는 노드 그룹을 정의하고 대화 캔버스에서 같은 노드를 나타내는 데 주로 사용됩니다. 참고로 대화 흐름의 일부가 아닙니다. 그룹 노드는 후속 조치, 다이그레션(digression), 엔티티 값 수정을 통해 사용자 경험을 개선하기 위해 사용할 수 있습니다. 사용 사례 예제는 여기를 참조하세요.

추가

그룹 노드를 대화 작업에 추가하려면 다음 단계를 수행하세요.

  1. 그룹 노드를 추가하려는 대화 작업을 엽니다.
  2. 노드를 그룹화합니다. 노드 그룹화하는 단계의 경우, 여기를 참조하세요.
  3. 그룹 이름을 변경, 설정 또는 삭제할 수 있습니다.
  4. 그룹이 생성된 후에는 그룹에서 특정 노드를 추가하거나 제거할 수 없습니다.
    • 추가한 모든 노드는 그룹 외부에 추가됩니다.
    • 삭제한 모든 노드는 전체 대화에서 삭제됩니다.
    • 그룹을 삭제하더라도 대화에서 그룹 내의 노드는 삭제되지 않습니다.

노드 설정

그룹 노드 기능에는 다음이 포함됩니다.

  • 의도 범위 지정 – 사용자가 그룹의 노드에서 대기 중일 때 사용할 수 있는 하위 의도를 정의하는 기능입니다.
  • 하위 의도 학습 – 하위 의도를 학습시키는 기능입니다.
  • 하위 의도 속성 – 하위 의도의 동작을 정의하는 기능입니다.

사용 사례의 예시의 경우 의도 범위를 지정하기 위한 단계별 지침은 여기를 참조하세요.

의도 범위 지정

그룹 노드를 사용하면 사용자가 그룹 내의 노드 중 하나에 있을 동안 사용자 발화에서 식별하여 실행 가능한 하위 의도의 범위를 지정할 수 있습니다.

  1. 의도의 범위를 지정하려는 그룹 위로 마우스를 올리고 설정(톱니바퀴) 아이콘을 클릭합니다.
  2. 그룹 노드 창에서 의도 추가를 선택하여 이 그룹의 범위의 일부가 되어야 하는 컨텐츠를 추가합니다.
  3. 의도 추가 창에서 이 그룹 노드의 하위 의도로 범위를 지정할 의도를 선택합니다. 이것은 대화가 이 노드 그룹의 어떤 노드에 있을 때 사용자가 요청할 수 있는 의도입니다. 예: 목적지 엔티티를 묻는 메시지가 표시되면 “XYZ 도시의 날씨는 어떻습니까“를 묻거나 여행 날짜를 묻는 메시지가 표시되면 “비행 시간”을 묻습니다.
  4. 의도 생성 버튼을 사용하여 새 하위 의도를 추가할 수 있습니다.
  5. 추가된 후에는 학습시킬 수 있고 동작 속성을 설정 및/또는 범위가 지정된 의도를 삭제할 수 있습니다.

의도 학습

각 하위 의도가 추가된 후에는 이 그룹 내에서 인식되도록 학습시킬 수 있습니다. 이를 통해 그룹의 컨텍스트에서 하위 의도를 식별할 수 있습니다.

  1. 그룹 설정 페이지에서 학습시키려는 하위 의도를 선택합니다.
  2. 다음을 통해 하위 의도를 학습시킬 수 있습니다.
    • 기계 학습 – 이 하위 의도를 식별해야 하는 사용자 발화를 추가합니다. NER 접근 방법을 사용하여 발화에서 엔티티에 주석을 추가할 수도 있습니다.
    • 패턴 – 사용자 발화에서 이 하위 의도와 관련된 패턴을 식별합니다.
    • 규칙 – 의도를 트리거하는 의도 식별 규칙을 정의합니다.
  3. 의도 사전 조건을 설정할 수도 있습니다. 즉, 정의된 사전 조건을 의도 감지 시 컨텍스트에서 사용할 수 있는 경우에만 하위 의도가 식별됩니다. 이러한 사전 조건은 인스턴스 수준으로 여겨지며 구성 요소 수준 사전 조건보다 우선합니다.

의도 속성

이행 섹션을 사용하여 특정 하위 의도가 사용자 입력에서 식별될 때 조치를 정의합니다. 여기에는 다음 속성이 포함됩니다.

  • 컨텍스트 변수 – 이 하위 의도를 식별할 때 업데이트할 세션 또는 컨텍스트 변수를 정의하도록 키-값 쌍을 설정합니다. 값을 재설정하려면 “null” 키워드를 사용해야 하며 공백은 플랫폼에서 무시됩니다.
  • 메시지 – 선택적으로 이 하위 의도를 식별했을 때 사용자에게 표시할 메시지를 정의합니다. 다른 응답과 마찬가지로 메시지를 일반 텍스트, JavaScript 형식으로 정의하고 지정하고 해당되는 경우 음성 통화 속성을 설정할 수 있습니다.
  • 컨텍스트 출력 – 이 의도가 식별될 때 설정할 텍스트 태그를 정의합니다. 의도 이름은 항상 시스템의 출력 컨텍스트로 설정됩니다. 값을 재설정하려면 “null” 키워드를 사용해야 하며 공백은 플랫폼에서 무시됩니다.
  • 전환 흐름 – 이 하위 의도를 실행한 후, 대화 재개 방법을 정의하려면 이 옵션을 사용합니다. 다음 두 가지 동작을 정의할 수 있습니다.
    • 노드로 이동 – 대화는 여기서 선택된 노드에서 재개됩니다.
    • 대화 재개 – 대화는 이 의도가 식별된 노드에서 재개됩니다.

     

구현

다음은 그룹 내 하위 의도 동작의 변경 사항입니다

  • 식별된 모든 하위 의도의 경우, 식별된 하위 의도 세부 정보를 포함하는 개체 배열이 있는 컨텍스트 개체는 맨 위에 있는 최신 항목으로 업데이트 됩니다. 다음 정보가 캡처됩니다.
    • 하위 의도의 이름.
    • 하위 의도와 함께 식별된 엔티티.
    • 해당되는 경우 하위 의도가 속한 그룹의 이름.
    • 하위 의도가 식별된 노드의 이름.
      "identifiedSubIntents": [
        {
          "intent": "Change Destination",
          "entities": {
            "destcity": "Delhi"
          },
          "groupName": "Entity Group",
          "identifiedAt": "to_date"
        },
        {
          "intent": "Weather Report",
          "groupName": "Entity Group",
          "identifiedAt": "destcity"
        }
      ]
  • 사용자 발화에서 식별된 하위 노드가 그룹 범위에 있고 모든 입력 전제 조건이 충족되고 전환 흐름이 해당 노드로 향하는 경우 의도가 실행됩니다.
  • 하위 의도의 실행은 다음을 수반합니다.
    • 정의된 매핑에 따른 컨텍스트 변수 업데이트
    • 정의된 매핑에 따른 출력 컨텍스트 설정
    • 해당되는 경우 메시지를 사용자에게 표시
  • 현재 대화 실행은 정의된 전환 흐름에 따라 계속되어야 합니다
    • 지정된 노드로 이동하거나
    • 하위 의도가 식별된 지점에서 재개합니다.

노드 그룹화하기

노드 그룹화는 노드 그룹을 정의하고 대화 캔버스에서 같은 노드를 나타내는 데 주로 사용됩니다. 참고로 대화 흐름의 일부가 아닙니다. 그룹 노드는 후속 조치, 다이그레션(digression), 엔티티 값 수정을 통해 사용자 경험을 개선하기 위해 사용할 수 있습니다. 사용 사례 예제는 여기를 참조하세요.

추가

그룹 노드를 대화 작업에 추가하려면 다음 단계를 수행하세요.

  1. 그룹 노드를 추가하려는 대화 작업을 엽니다.
  2. 노드를 그룹화합니다. 노드 그룹화하는 단계의 경우, 여기를 참조하세요.
  3. 그룹 이름을 변경, 설정 또는 삭제할 수 있습니다.
  4. 그룹이 생성된 후에는 그룹에서 특정 노드를 추가하거나 제거할 수 없습니다.
    • 추가한 모든 노드는 그룹 외부에 추가됩니다.
    • 삭제한 모든 노드는 전체 대화에서 삭제됩니다.
    • 그룹을 삭제하더라도 대화에서 그룹 내의 노드는 삭제되지 않습니다.

노드 설정

그룹 노드 기능에는 다음이 포함됩니다.

  • 의도 범위 지정 – 사용자가 그룹의 노드에서 대기 중일 때 사용할 수 있는 하위 의도를 정의하는 기능입니다.
  • 하위 의도 학습 – 하위 의도를 학습시키는 기능입니다.
  • 하위 의도 속성 – 하위 의도의 동작을 정의하는 기능입니다.

사용 사례의 예시의 경우 의도 범위를 지정하기 위한 단계별 지침은 여기를 참조하세요.

의도 범위 지정

그룹 노드를 사용하면 사용자가 그룹 내의 노드 중 하나에 있을 동안 사용자 발화에서 식별하여 실행 가능한 하위 의도의 범위를 지정할 수 있습니다.

  1. 의도의 범위를 지정하려는 그룹 위로 마우스를 올리고 설정(톱니바퀴) 아이콘을 클릭합니다.
  2. 그룹 노드 창에서 의도 추가를 선택하여 이 그룹의 범위의 일부가 되어야 하는 컨텐츠를 추가합니다.
  3. 의도 추가 창에서 이 그룹 노드의 하위 의도로 범위를 지정할 의도를 선택합니다. 이것은 대화가 이 노드 그룹의 어떤 노드에 있을 때 사용자가 요청할 수 있는 의도입니다. 예: 목적지 엔티티를 묻는 메시지가 표시되면 “XYZ 도시의 날씨는 어떻습니까“를 묻거나 여행 날짜를 묻는 메시지가 표시되면 “비행 시간”을 묻습니다.
  4. 의도 생성 버튼을 사용하여 새 하위 의도를 추가할 수 있습니다.
  5. 추가된 후에는 학습시킬 수 있고 동작 속성을 설정 및/또는 범위가 지정된 의도를 삭제할 수 있습니다.

의도 학습

각 하위 의도가 추가된 후에는 이 그룹 내에서 인식되도록 학습시킬 수 있습니다. 이를 통해 그룹의 컨텍스트에서 하위 의도를 식별할 수 있습니다.

  1. 그룹 설정 페이지에서 학습시키려는 하위 의도를 선택합니다.
  2. 다음을 통해 하위 의도를 학습시킬 수 있습니다.
    • 기계 학습 – 이 하위 의도를 식별해야 하는 사용자 발화를 추가합니다. NER 접근 방법을 사용하여 발화에서 엔티티에 주석을 추가할 수도 있습니다.
    • 패턴 – 사용자 발화에서 이 하위 의도와 관련된 패턴을 식별합니다.
    • 규칙 – 의도를 트리거하는 의도 식별 규칙을 정의합니다.
  3. 의도 사전 조건을 설정할 수도 있습니다. 즉, 정의된 사전 조건을 의도 감지 시 컨텍스트에서 사용할 수 있는 경우에만 하위 의도가 식별됩니다. 이러한 사전 조건은 인스턴스 수준으로 여겨지며 구성 요소 수준 사전 조건보다 우선합니다.

의도 속성

이행 섹션을 사용하여 특정 하위 의도가 사용자 입력에서 식별될 때 조치를 정의합니다. 여기에는 다음 속성이 포함됩니다.

  • 컨텍스트 변수 – 이 하위 의도를 식별할 때 업데이트할 세션 또는 컨텍스트 변수를 정의하도록 키-값 쌍을 설정합니다. 값을 재설정하려면 “null” 키워드를 사용해야 하며 공백은 플랫폼에서 무시됩니다.
  • 메시지 – 선택적으로 이 하위 의도를 식별했을 때 사용자에게 표시할 메시지를 정의합니다. 다른 응답과 마찬가지로 메시지를 일반 텍스트, JavaScript 형식으로 정의하고 지정하고 해당되는 경우 음성 통화 속성을 설정할 수 있습니다.
  • 컨텍스트 출력 – 이 의도가 식별될 때 설정할 텍스트 태그를 정의합니다. 의도 이름은 항상 시스템의 출력 컨텍스트로 설정됩니다. 값을 재설정하려면 “null” 키워드를 사용해야 하며 공백은 플랫폼에서 무시됩니다.
  • 전환 흐름 – 이 하위 의도를 실행한 후, 대화 재개 방법을 정의하려면 이 옵션을 사용합니다. 다음 두 가지 동작을 정의할 수 있습니다.
    • 노드로 이동 – 대화는 여기서 선택된 노드에서 재개됩니다.
    • 대화 재개 – 대화는 이 의도가 식별된 노드에서 재개됩니다.

     

구현

다음은 그룹 내 하위 의도 동작의 변경 사항입니다

  • 식별된 모든 하위 의도의 경우, 식별된 하위 의도 세부 정보를 포함하는 개체 배열이 있는 컨텍스트 개체는 맨 위에 있는 최신 항목으로 업데이트 됩니다. 다음 정보가 캡처됩니다.
    • 하위 의도의 이름.
    • 하위 의도와 함께 식별된 엔티티.
    • 해당되는 경우 하위 의도가 속한 그룹의 이름.
    • 하위 의도가 식별된 노드의 이름.
      "identifiedSubIntents": [
        {
          "intent": "Change Destination",
          "entities": {
            "destcity": "Delhi"
          },
          "groupName": "Entity Group",
          "identifiedAt": "to_date"
        },
        {
          "intent": "Weather Report",
          "groupName": "Entity Group",
          "identifiedAt": "destcity"
        }
      ]
  • 사용자 발화에서 식별된 하위 노드가 그룹 범위에 있고 모든 입력 전제 조건이 충족되고 전환 흐름이 해당 노드로 향하는 경우 의도가 실행됩니다.
  • 하위 의도의 실행은 다음을 수반합니다.
    • 정의된 매핑에 따른 컨텍스트 변수 업데이트
    • 정의된 매핑에 따른 출력 컨텍스트 설정
    • 해당되는 경우 메시지를 사용자에게 표시
  • 현재 대화 실행은 정의된 전환 흐름에 따라 계속되어야 합니다
    • 지정된 노드로 이동하거나
    • 하위 의도가 식별된 지점에서 재개합니다.
메뉴