KR102660276B1 - 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법 - Google Patents

거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법 Download PDF

Info

Publication number
KR102660276B1
KR102660276B1 KR1020230135346A KR20230135346A KR102660276B1 KR 102660276 B1 KR102660276 B1 KR 102660276B1 KR 1020230135346 A KR1020230135346 A KR 1020230135346A KR 20230135346 A KR20230135346 A KR 20230135346A KR 102660276 B1 KR102660276 B1 KR 102660276B1
Authority
KR
South Korea
Prior art keywords
chatbot
chatbot service
reliability
learning
service device
Prior art date
Application number
KR1020230135346A
Other languages
English (en)
Inventor
김준철
김세훈
고석태
백영상
Original Assignee
주식회사 마인즈앤컴퍼니
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 마인즈앤컴퍼니 filed Critical 주식회사 마인즈앤컴퍼니
Priority to KR1020230135346A priority Critical patent/KR102660276B1/ko
Application granted granted Critical
Publication of KR102660276B1 publication Critical patent/KR102660276B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0281Customer communication at a business location, e.g. providing product or service information, consulting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/50Business processes related to the communications industry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Tourism & Hospitality (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Primary Health Care (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법에 관한 것으로서, 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치는 챗봇 서비스를 이용하는 사용자 단말장치로부터 질의 내용을 수신하는 통신 인터페이스부, 및 대화의 맥락 내에서 시나리오가 변환되는 지점에 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 기수신한 질의 내용에서 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 사용자 단말장치로 질의 내용에 대한 답변을 제공하는 제어부를 포함할 수 있다.

Description

거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법{Apparatus for Job Performance Chatbot Service Using LLM and Driving Method Thereof}
본 발명은 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법에 관한 것으로서, 더 상세하게는 거대 언어 모델(LLM)을 활용해 챗봇의 발화를 자연스럽게 (생성)하고, 또 고객 발화 파악이나 챗봇 수행 방향에 대해 높은 정확도를 가지며, 대화의 시나리오가 변환되었을 때 관리를 용이하게 하기 위해 대화가 변환되는 지점에 적은 데이터의 추가나 해당 특성을 나타내는 토큰(token)을 추가하는, 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법에 관한 것이다.
챗봇(chatbot)은 대화형 인공지능(AI)의 한 종류로서 메신저에서 사용자와 소통하는 소프트웨어 형태의 (로)봇을 말한다. 단순히 정해진 규칙에 맞춰서 메시지를 입력하면 발화를 출력하는 단순한 챗봇에서부터 상대방의 발화를 분석하여 인공지능에 가까운 발화를 내놓는 챗봇까지 다양한 챗봇들이 있다. 본래, 메시지를 규칙 기반으로 송출해주는 정도에 지나지 않았으나, 2016년에 있었던 구글 딥마인드 챌린지 매치와 알파고의 등장 이후 챗봇에도 AI 기술을 접목시키려는 시도가 활발하게 이루어지고 있다. 또한 기업에서도 큰 관심을 보여 각종 은행, 보험회사 등의 상담 챗봇 등이 다수 등장하였다. 2022년 ChatGPT의 등장으로 단순한 소통 목적이 아닌 검색 엔진까지 넘보는 기술로까지 발전했다. 발전된 형태의 챗봇은 봇이 아닌 진짜 인공지능에 가까워지기 때문이다.
종래에는 인공지능, 자연어 처리 및 챗봇 등과 관련하여 NLU 모듈, 정책(Policy) 모듈, NLG 모듈, 그리고 ChatLLM 등이 잘 알려져 있다. NLU 모듈은 고객의 발화를 파악하기 위해 정규표현식, 형태소 분석과 같은 단어 매칭이 베이스가 되는 룰(rule)을 기반으로 하거나 Bert(Bidirectional Encoder Representations from Transformers) 베이스 AI 모델을 활용하는 경우가 있다. 룰 베이스 모듈과 같은 경우에는 명확한 기준이 있어 통제 가능한 시스템을 만들 수 있지만 수많은 자연어를 모든 룰로 처리하기에 한계가 있다. Bert 베이스 모델의 경우에는 LLM과 비교하여 작은 모델을 사용함으로 인해 개선할 수 있는 방향이 명확하다.
또한 Policy 모듈은 어떤 발화를 만들어야 하는지에 대한 방향을 제시하는 모듈로 룰 베이스로 인해 이전 고객 발화와 현재 상태를 바탕으로 조건에 따라 적합한 방향을 제시하거나 강화학습 AI 모델을 활용하는 경우가 있다. 룰 베이스의 경우에 통제 가능하지만 모든 조건식을 시나리오가 바뀔 때마다 직접 코드로 수정해야 한다는 단점이 있으며 강화학습 기반의 AI 모델은 높은 성능을 보이지만 대화 길이가 길어졌을 때 정확도가 낮아지는 문제가 있다.
NLG 모듈과 관련하여 기존의 챗봇은 Policy가 정해지면 그와 매칭되는 n개의 후보군 중 하나를 출력하는 시스템으로 구성된다. 이는 대화 진행과 독립적으로 진행되기 때문에 자연스러운 문장을 생성하는 것이 불가능한 점이 있다.
ChatLLM은 자연스러운 발화가 가능하지만 단계별 모델이 예측한 행위에 대해 신뢰도를 측정할 수 없어 환각 현상이나 잘못된 정보를 전달하는 경우가 발생한다.
한편 기존의 챗봇은 구조적 측면, 언어모델적 측면 및 챗봇 제어 측면에서 많은 문제점을 가진다. 구조적 측면에서 볼 때 기존의 업무수행 챗봇은 고객발화 이해(NLU), 필요 사항 확인 및 추적(DST), 챗봇 응답 정책 결정(Policy), 자연어 응답 생성(NLG)의 4단계로 이루어져 관리 측면에서 높은 비용이 발생하는 문제가 있다. 또한 언어모델적 측면에서 보면 NLU의 경우 작은 모델을 활용해 넓은 자연어를 처리하는 과정에서 정확도가 높지 않으며, 사전에 고객에게 전달되는 발화의 후보가 정해져 있어 범위를 벗어나는 대응이 힘들고 자연스러운 발화를 만들기 어려운 문제가 있다. 챗봇 제어 측면에서 볼 때 기존의 챗봇 제어를 위해 신뢰도를 계산하는 방식은 Bert 기반의 모델이 있으나 이를 활용하는 경우에 낮은 정확도로 인한 모델의 신뢰도를 납득하기 어렵고, 각 단계별로 Bert 모델을 활용하여 신뢰도를 평가하는 경우에 다양한 모델을 학습하고 관리하여야 하며 이에 대한 다양한 데이터셋 및 모델의 유지 보수가 복잡하며, 이러한 이유로 기존의 챗봇 시스템은 정확성이 낮고 이로 인한 신뢰도의 타당성이 부족하며 자연스러운 발화 생성에서 한계를 가지고 있으며 관리에 대한 비효율성이 존재하는 문제가 있다.
종래의 기술을 활용하기 위해서는 개별 모델을 위한 추가적인 데이터 확보 및 모델 학습이 필수적이며 이는 비용과 밀접한 관련이 있으므로 데이터 및 모델 구축 비용이 발생한다. 초거대 모델과 비교하였을 때 다양한 문장을 이해하는 측면에서 부족한 성능을 가지며 이는 학습된 데이터의 양과 모델 무게(weight)가 상대적으로 적어 자연어를 이해하는 역량이 초거대 모델과 비교하였을 때 상대적으로 낮아 정확성이 떨어진다. 이외에도 서비스가 바뀌거나 시나리오가 변경되는 경우 추가 각각의 모델을 시나리오에 맞추어 개발하기 위해 추가 코드 구현 및 테스트가 필수적이므로 유지보수 비용이 발생하며, 잘못된 생성 결과로 인해 윤리적으로 문제가 되거나 사실이 아닌 정보를 생성하는 경우가 발생할 가능성이 높다.
한국등록특허공보 제10-1972904호(2019.04.22) 한국등록특허공보 제10-2102287호(2020.04.13) 한국공개특허공보 제10-2022-0041702호(2022.04.01)
본 발명이 해결하고자 하는 과제는, 가령 LLM 등의 초거대 언어 모델을 활용해 챗봇의 발화를 자연스럽게 (생성)하고, 또 고객 발화 파악이나 챗봇 수행 방향에 대해 높은 정확도를 가지며, 대화의 시나리오가 변환되었을 때 관리를 용이하게 하기 위해 대화가 변환되는 지점에 적은 데이터의 추가나 해당 특성을 나타내는 토큰을 추가하려는 데 그 목적이 있다.
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기의 과제를 달성하기 위한 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치는, 챗봇 서비스를 이용하는 사용자 단말장치로부터 질의 내용을 수신하는 통신 인터페이스부, 및 대화의 맥락 내에서 시나리오가 변환되는 지점에 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 상기 수신한 질의 내용에서 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 상기 사용자 단말장치로 상기 질의 내용에 대한 답변을 제공하는 제어부를 포함한다.
상기 제어부는 상기 학습 데이터의 학습시 기취득한 데이터의 대화 이력을 바탕으로 상기 시나리오에서 유의미한 분기를 나타내는 위치에 상기 정보와 관련하여 추가되는 각각의 지정 토큰(token)을 처리할 수 있다.
상기 제어부는, 상기 수신한 질의 내용에서 각 단계별 업무를 수행하기 위해 상기 지정 토큰을 이용해 생성되는 프롬프트(prompt)를 이용하여 각 단계별로 어떤 상황인지 판단할 수 있다.
상기 제어부는, 상기 수신한 질의 내용에서 상기 지정 토큰이 나온 시점에서 상기 지정 토큰의 제1 신뢰도를 측정해 상기 측정한 제1 신뢰도를 근거로 사용자의 의도를 파악할 수 있다.
상기 제어부는, 상기 측정한 제1 신뢰도가 지정 조건을 만족할 때, 챗봇 행동 및 발화와 관련한 제2 신뢰도를 측정해 측정 결과를 근거로 상기 답변을 제공할 수 있다.
또한 상기의 과제를 달성하기 위한 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치의 구동방법은, 통신 인터페이스부가 챗봇 서비스를 이용하는 사용자 단말장치로부터 질의 내용을 수신하는 단계, 및 제어부가 대화의 맥락 내에서 시나리오가 변환되는 지점에 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 상기 수신한 질의 내용에서 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 상기 사용자 단말장치로 상기 질의 내용에 대한 답변을 제공하는 단계를 포함한다.
상기 학습 데이터를 학습하는 단계는, 상기 학습 데이터의 학습시 기취득한 데이터의 대화 이력을 바탕으로 상기 시나리오에서 유의미한 분기를 나타내는 위치에 상기 정보와 관련하여 추가되는 각각의 지정 토큰을 처리할 수 있다.
상기 어떤 상황인지 판단하는 단계는, 상기 수신한 질의 내용에서 각 단계별 업무를 수행하기 위해 상기 지정 토큰을 이용해 생성되는 프롬프트를 이용하여 각 단계별로 어떤 상황인지 판단할 수 있다.
상기 답변을 제공하는 단계는, 상기 수신한 질의 내용에서 상기 지정 토큰이 나온 시점에서 상기 지정 토큰의 제1 신뢰도를 측정해 상기 측정한 제1 신뢰도를 근거로 사용자의 의도를 파악할 수 있다.
상기 답변을 제공하는 단계는, 상기 측정한 제1 신뢰도가 지정 조건을 만족할 때, 챗봇 행동 및 발화와 관련한 제2 신뢰도를 측정해 측정 결과를 근거로 상기 답변을 제공할 수 있다.
본 발명의 실시예에 따르면 안정성이 중요한 챗봇 시스템을 구축할 때 관련 응용 분야에 활용되어 높은 정확도, 자연스러운 발화와 함께 안정성을 높일 수 있을 것이다.
좀더 구체적으로 본 발명의 실시예는 초거대 언어모델의 디코더(Decoder)에서 단계별 신뢰도를 측정할 수 있다는 것을 나타내며 이는 발화의 안정성 문제나 윤리적 문제로 LLM을 도입하는 것에 제한이 있는 도메인 내에서 구축에 도움이 될 것이다.
또한 본 발명의 실시예는 자연스러운 문장을 생성할 수 있는 LLM을 기반으로 챗봇을 구축함으로써 자연스러운 발화를 생성하는 챗봇을 만들 수 있다.
나아가 본 발명의 실시예는 단일 모델로 인해 유지보수 및 서비스에 친화적인 시스템을 만들 수 있어 개발인력과 관리인력 사이에 자연스러운 업무 환경 조성이 가능할 수 있다.
도 1은 본 발명의 실시예에 따른 업무수행 챗봇 서비스 시스템을 나타내는 도면이다.
도 2는 도 1의 업무수행 챗봇 서비스장치의 세부구조를 예시한 블록다이어그램이다.
도 3은 도 2의 업무수행 챗봇 서비스의 세부구조를 예시한 블록다이어그램이다.
도 4는 신뢰도 점수의 추출 과정을 설명하기 위한 도면이다.
도 5 및 도 6은 각 단계별 신뢰도 기반 의사결정 과정을 설명하기 위한 도면이다.
도 7은 도 1의 업무수행 챗봇 서비스장치의 구동과정을 나타내는 흐름도이다.
이하에서 설명할 본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 명확하게 설명하기 위하여 제공되는 것이고, 본 발명의 범위가 하기 실시예에 의해 한정되는 것은 아니며, 하기 실시예는 여러가지 다른 형태로 변형될 수 있다.
본 명세서에서 사용된 용어는 특정 실시예를 설명하기 위하여 사용되며, 본 발명을 제한하기 위한 것이 아니다. 본 명세서에서 사용되는 단수 형태의 용어는 문맥상 다른 경우를 분명히 지적하는 것이 아니라면, 복수의 형태를 포함할 수 있다. 또한, 본 명세서에서 사용되는 "포함한다(comprise)" 및/또는 "포함하는 (comprising)"이라는 용어는 언급한 형상, 단계, 숫자, 동작, 부재, 요소 및/또는 이들 그룹의 존재를 특정하는 것이며, 하나 이상의 다른 형상, 단계, 숫자, 동작, 부재, 요소 및/또는 이들 그룹의 존재 또는 부가를 배제하는 것이 아니다. 또한, 본 명세서에서 사용된 "연결"이라는 용어는 어떤 부재들이 직접적으로 연결된 것을 의미할 뿐만 아니라, 부재들 사이에 다른 부재가 더 개재되어 간접적으로 연결된 것까지 포함하는 개념이다.
아울러, 본원 명세서에서 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다. 본 명세서에서 사용된 용어 "및/또는"은 해당 열거된 항목 중 어느 하나 및 하나 이상의 모든 조합을 포함한다. 또한, 본원 명세서에서 사용되는 "약", "실질적으로" 등의 정도의 용어는 고유한 제조 및 물질 허용 오차를 감안하여, 그 수치나 정도의 범주 또는 이에 근접한 의미로 사용되고, 본원의 이해를 돕기 위해 제공된 정확하거나 절대적인 수치가 언급된 개시 내용을 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다.
이하 첨부된 도면들을 참조하여 본 발명의 실시예들에 대해 상세히 설명한다. 첨부된 도면에 도시된 영역이나 파트들의 사이즈나 두께는 명세서의 명확성 및 설명의 편의성을 위해 다소 과장되어 있을 수 있다. 상세한 설명 전체에 걸쳐 동일한 참조번호는 동일한 구성요소를 나타낸다.
도 1은 본 발명의 실시예에 따른 업무수행 챗봇 서비스 시스템을 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 업무수행 챗봇 서비스 시스템(90)은 가령 자체 제어 기능이 있는 업무수행 LLM 챗봇 시스템으로서, 사용자 단말장치(100), 통신망(110), 업무수행 챗봇 서비스장치(120) 및 서드파티장치(130)의 일부 또는 전부를 포함한다.
여기서, "일부 또는 전부를 포함한다"는 것은 서드파티장치(130)와 같은 일부 구성요소가 생략되어 업무수행 챗봇 서비스 시스템(90)이 구성되거나, 서드파티장치(130)를 구성하는 구성요소의 일부 또는 전부가 업무수행 챗봇 서비스장치(120)에 통합되어 구성될 수 있는 것 등을 의미하는 것으로서, 발명의 충분한 이해를 돕기 위하여 전부 포함하는 것으로 설명한다.
사용자 단말장치(100)는 도 1의 통신망(110)을 경유하여 업무수행 챗봇 서비스장치(120)에 접속하여 메신저 기반의 인공지능 챗봇 서비스를 이용할 수 있다. 물론 도 1의 업무수행 챗봇 서비스장치(120)는 포털 서비스를 제공할 수 있으며, 여행이나 숙박 등 특수 목적을 갖는 서비스를 제공할 수도 있다. 기존에는 챗봇 서비스를 이용해 단순히 질문하고 그에 대한 답변을 제공받았다면 본 발명의 실시예에서는 포털 등과 같이 검색창에 키워드를 입력하는 것이 아니라 문장 형태의 자연어 처리를 통해 다양한 서비스를 제공받을 수 있다.
물론 이의 과정에서 사용자 단말장치(100)는 업무수행 챗봇 서비스장치(120)에서 모델행위 즉 인공지능 프로그램, 더 정확하게는 특정 목적을 위해 프로그래밍된 모델 행위의 타당성을 사전에 검증함으로써 윤리적 문제나 시나리오상 잘못된 답변에 대한 안정성이 확보된 서비스를 제공받을 수 있다. 또한, 기계적인 응답을 탈피해 보다 풍부하고 자연스러운 답변을 제공받을 수 있다. 챗봇 서비스의 특성상 사용자 단말장치(100)의 사용자와 AI 챗봇 사이에 채팅 방식으로 대화가 이루어지므로 AI 챗봇이 사용자의 질의시 의도를 정확히 파악하는 것이 무엇보다 중요하여 사용자 단말장치(100)의 사용자는 자신의 질의 내용의 의도가 파악된 자연스러운 답변을 제공받는다고 볼 수 있다.
사용자 단말장치(100)는 도 1의 업무수행 챗봇 서비스장치(120)의 서비스를 이용하기 위하여 데스크탑컴퓨터나 랩탑컴퓨터 등 PC 기반의 단말장치를 이용해 웹 (web) 서비스를 이용할 수 있으며, 또 스마트폰이나 태블릿PC, 그리고 사용자들이 손목에 착용하는 웨어러블장치 등 모바일 기반의 단말장치를 이용해 어플리케이션 즉 앱(app.) 서비스를 이용할 수 있다. 물론 이외에도 유무선 통신 환경에서 인터넷이 가능한 스마트TV 등을 더 포함할 수 있다. 뿐만 아니라, 본 발명의 실시예에서는 챗봇 서비스를 텍스트 기반이 아니라 음성 기반으로 제공받는 것도 얼마든지 가능하므로 인공지능 스피커 등을 더 포함할 수도 있다.
통신망(110)은 다양한 형태로 구성될 수 있다. 통신망(110)은 유무선 통신망을 모두 포함할 수 있다. 가령 통신망(110)으로서 유무선 인터넷망이 이용되거나 연동될 수 있다. 여기서 유선망은 케이블망이나 공중 전화망(PSTN)과 같은 인터넷망을 포함하는 것이고, 무선 통신망은 CDMA, WCDMA, GSM, EPC(Evolved Packet Core), LTE(Long Term Evolution), 와이브로(Wibro) 망 등을 포함하는 의미이다. 물론 본 발명의 실시예에 따른 통신망(110)은 이에 한정되는 것이 아니며, 향후 구현될 차세대 이동 통신 시스템의 접속망으로서 가령 클라우드 컴퓨팅 환경하의 클라우드 컴퓨팅망, 5G망, 6G 등에 사용될 수 있다. 가령, 통신망(110)이 유선 통신망인 경우 통신망 내의 액세스포인트는 전화국의 교환국 등에 접속할 수 있지만, 무선 통신망인 경우에는 통신사에서 운용하는 SGSN 또는 GGSN(Gateway GPRS Support Node)에 접속하여 데이터를 처리하거나, BTS(Base Transceiver Station), NodeB, e-NodeB 등의 다양한 중계기에 접속하여 데이터를 처리할 수 있다.
통신망(110)은 액세스포인트를 포함할 수도 있다. 액세스포인트는 건물 내에 많이 설치되는 펨토(femto) 또는 피코(pico) 기지국과 같은 소형 기지국을 포함할 수 있다. 여기서, 펨토 또는 피코 기지국은 소형 기지국의 분류상 도 1의 사용자 단말장치(100)나 서드파티장치(130) 등을 최대 몇 대까지 접속할 수 있느냐에 따라 구분될 수 있다. 물론 통신망(110)은 사용자 단말장치(100)나 서드파티장치(130) 등과 지그비 및 와이파이(Wi-Fi) 등의 근거리 통신을 수행하기 위한 근거리 통신 모듈을 포함할 수 있다. 액세스포인트는 무선통신을 위하여 TCP/IP 혹은 RTSP(Real-Time Streaming Protocol)를 이용할 수 있다. 여기서, 근거리 통신은 와이파이 이외에 블루투스, 지그비, 적외선(IrDA), UHF(Ultra High Frequency) 및 VHF(Very High Frequency)와 같은 RF(Radio Frequency) 및 초광대역 통신(UWB) 등의 다양한 규격으로 수행될 수 있다. 이에 따라 액세스포인트는 데이터 패킷의 위치를 추출하고, 추출된 위치에 대한 최상의 통신 경로를 지정하며, 지정된 통신 경로를 따라 데이터 패킷을 다음 장치, 예컨대 업무수행 챗봇 서비스장치(120)로 전달할 수 있다. 액세스포인트는 일반적인 네트워크 환경에서 여러 회선을 공유할 수 있으며, 예컨대 라우터(router), 리피터(repeater) 및 중계기 등이 포함될 수 있다.
업무수행 챗봇 서비스장치(120)는 가령 클라우드 서버 등을 포함할 수 있으며, DB(120a)에 연동하여 동작할 수 있다. 업무수행 챗봇 서비스장치(120)는 자체 제어 기능(예: 고객의 질의에 대한 의도 파악, 고객 질의에 챗봇이 답변할 때 윤리적인 문제 등은 없는지 자체적으로 신뢰도 판단 등)이 있는 가령 LLM과 같은 지정 언어모델 기반으로 챗봇 서비스를 통해 업무를 수행할 수 있다. 여기서, 챗봇 서비스는 메신저 기반으로 인공지능 기술을 접목하여 서비스를 제공할 수 있으며, 사용자 단말장치(100)의 사용자가 AI 챗봇과의 대화시 사용자의 의도를 정확히 파악하여 그에 따른 답변을 제공할 수 있으며, 또 사용자와의 대화시 모델행위의 타당성을 사전에 검증하여 윤리적인 문제나 시나리오상 잘못된 답변에 대한 안정성을 확보할 수 있게 된다. 이를 위하여 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)는 대화와 관련한 데이터(예: 채팅 데이터 등)를 취득하여 해당 데이터를 분석해 대화의 맥락 내에서 시나리오상에서 분기되는 지점에 또는 대화의 시나리오가 변환되었을 때 그 변환되는 지점에 적은 데이터의 추가와 해당 특성을 나타내는 특수 토큰을 추가하여 이에 대한 다시 말해 적은 데이터나 특수 토큰이 삽입된 형태의 학습 데이터를 학습한 후 이를 근거로 챗봇 서비스를 제공할 수 있다. 여기서, 토큰은 설명 데이터라 볼 수도 있다.
예를 들어, 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)는 LLM과 같은 초거대 모델을 활용하여 자연스러운 발화를 생성할 수 있다. 또 자연어를 이해하는 역량이 높은 초거대 모델의 활용으로 고객 발화 파악이나 챗봇 수행방향에 대해 높은 정확성을 가질 수 있다. 대화의 시나리오가 변환되었을 때에도 변환되는 지점에 적은 데이터의 추가와 해당 특성을 나타내는 특수 토큰을 추가함으로써 관리에 용이할 수 있다. 특수 토큰을 활용하여 고객 의도파악이나 챗봇 수행방향에 대해 신뢰도를 측정하여 윤리적인 문제나 사실을 기반으로 하지 않는 경우를 필터링할 수 있다. 가령 특수 토큰을 포함한 데이터셋 즉 학습 데이터를 초거대 모델에 학습시켜 시나리오의 각 단계별로 어떤 상황인지 파악을 할 수 있게 되는 것이다. 업무수행 챗봇 서비스장치(120)는 이의 과정에서 시나리오의 각 단계별 업무를 수행하기 위한 특수 토큰을 고려한 프롬프트를 생성해 이용할 수 있으며, 프롬프트를 통해 LLM과 같은 인공지능 모델에서 (사용자가) 원하는 결과를 출력해 줄 명령어를 제공할 수 있는 것이다. 본 발명의 실시예에서는 이러한 프롬프트가 특수 토큰을 근거로 자동 생성되어 활용될 수 있다.
<표 1>은 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)의 주요 특징을 기존의 챗봇과 비교하여 일목 요연하게 잘 보여주고 있다.
<표 1>에서 볼 수 있는 바와 같이 업무수행 챗봇 서비스장치(120)에 탑재되는 AI 챗봇은 각 단계(task)별로 특수 토큰의 모델을 사용하고, 또 예측값에 대한 신뢰도 파악이 가능하며, 단계의 구분으로 안정적인 성능을 제공할 수 있다. 예를 들어 본 발명의 실시예에 따른 AI 챗봇은 "강이 보이는 호텔이면 좋을 것 같아요"의 고객 발화에 대하여 "고객의 발화와 대화이력을 바탕으로 고객의 의도를 파악해 주세요"와 같은 프롬프트를 생성할 수 있으며, 그 생성한 프롬프트 즉 명령어에 근거하여 "고객님의 의도는 <필수정보전달>로 위치는 강 주변을 원하십니다"와 같은 예측을 수행할 수 있다. 또한 챗봇 발화와 관련해서도 "적절한 응답은 <부족한정보요청>으로 보입니다. 네 고객님 강이 보이는 호텔을 찾으려는데 금액구간을 알려주시면 좋은 제안을 드릴 수 있습니다. 금액은 어떻게 생각하시나요?"와 같은 예측을 수행할 수 있다. 자세한 내용은 이후에 좀더 다루기로 한다.
서드파티장치(130)는 업무수행 챗봇 서비스장치(120)의 서비스를 관리하는 관리자의 컴퓨터 등을 포함할 수 있으며, 또는 업무수행 챗봇 서비스장치(120)에서 본 발명의 실시예에 따른 서비스를 제공할 수 있도록 프로그램을 개발하여 개발된 프로그램을 탑재하는 프로그램 개발사나 개발자의 서버나 컴퓨터 등을 포함할 수 있다. 예를 들어, 프로그램 개발자로서의 서드파티장치(130)는 자체적으로 구비하는 서버 등에 LLM을 탑재한 후 이를 통해 도 1의 업무수행 챗봇 서비스장치(120)의 AI 챗봇이 학습하기 위한 학습 데이터를 생성해 제공할 수 있다. 물론 여기서의 학습 데이터는 본 발명의 실시예에 따른 특수 토큰을 포함한 데이터셋이라 볼 수 있다. 이러한 특수 토큰을 포함한 데이터셋을 생성해 제공하거나, 해당 데이터를 학습한 학습 모델을 생성해 업무수행 챗봇 서비스장치(120)에 탑재시키는 것도 얼마든지 가능할 수 있다.
다만, 본 발명의 실시예에서는 업무수행 챗봇 서비스장치(120)에서 서비스를 제공하는 업체의 경우에도 내부적으로 프로그램 개발자들을 보유하고 있으므로, 외부에서 학습을 위한 특수 토큰을 포함한 데이터셋을 생성해 제공하거나 학습 모델을 탑재하기보다는 업무수행 챗봇 서비스장치(120)에 LLM 등을 탑재해 내부 개발자들이 이를 활용해 학습 데이터를 생성하고, 그 생성한 학습 데이터를 학습한 상태에서 챗봇 서비스를 제공하는 것이 바람직할 수 있다.
상기의 구성 결과, 본 발명의 실시예는 초거대 모델의 사전 학습된 지식을 바탕으로 보다 정확한 성능이 가능하고, 챗봇 발화의 신뢰성을 바탕으로 자체 제어 기능을 가질 수 있다. ChatGPT에서 보여진 자연스러운 발화를 업무수행 챗봇에 접목하여 보다 고객 친화적인 서비스로 확대할 수 있다. 단일 모델 통합으로 관리 효율성이 증가할 수 있다. 본 발명의 실시예는 기존의 대화 시스템의 발화 후보군에서 출력하는 방법과 대비하여 자연스러운 발화를 생성할 수 있으며 특수토큰을 추가함으로써 신뢰도를 평가하고 제어하는 기능이 추가될 수 있다. 챗봇은 초거대 모델의 사전 지식을 활용하므로 높은 정확도와 제어기능을 가지며 데이터 및 모델이 추가될 필요성이 없어지므로 개발과 유지보수 관점에서 시간과 비용을 절감할 수 있다. 이러한 효과로 인해 더 빠르게 구축하고 관리가 용이한 목적 지향형 대화 시스템을 제공할 수 있으며, 특히 안정성이 중요한 도메인에 LLM을 활용한 챗봇 도입에 큰 도움을 줄 수 있다.
상기한 내용 이외에도 도 1의 사용자 단말장치(100), 통신망(110), 업무수행 챗봇 서비스장치(120) 및 서드파티장치(130)와 관련한 내용은 이후에도 계속해서 다루어질 수 있으므로, 자세한 내용은 그 내용들로 대신하고자 한다.
도 2는 도 1의 업무수행 챗봇 서비스장치의 세부구조를 예시한 블록다이어그램이고, 도 3은 도 2의 업무수행 챗봇 서비스의 세부구조를 예시한 블록다이어그램이며, 도 4는 신뢰도 점수의 추출 과정을 설명하기 위한 도면이다. 또한, 도 5 및 도 6은 각 단계별 신뢰도 기반 의사결정 과정을 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)는 가령 자체 제어 기능이 있는 업무수행 LLM 챗봇 서비스를 제공하는 장치로서, 통신 인터페이스부(200), 제어부(210), 업무수행 챗봇 서비스부(220) 및 저장부(230)의 일부 또는 전부를 포함한다.
여기서, "일부 또는 전부를 포함한다"는 것은 저장부(230)와 같은 일부 구성요소가 생략되어 업무수행 챗봇 서비스장치(120)가 구성되거나 업무수행 챗봇 서비스부(220)와 같은 일부 구성요소가 제어부(210)와 같은 다른 구성요소에 통합되어 구성될 수 있는 것 등을 의미하는 것으로서, 발명의 충분한 이해를 돕기 위하여 전부 포함하는 것으로 설명한다.
통신 인터페이스부(200)는 도 1의 서드파티장치(130)와 통신하여 특수 토큰을 포함하는 데이터셋을 제공받아 이를 가령 DB(120a)에 체계적으로 분류하여 저장한 후 해당 데이터를 학습하도록 동작할 수 있다. 통신 인터페이스부(200)는 다시 말해 서드파티장치(130)와 통신하여 본 발명의 실시예에 따른 서비스를 제공하기 위한 데이터 구축 또는 시스템 구축 동작을 수행할 수 있다.
또한 통신 인터페이스부(200)는 데이터 구축 또는 시스템 구축 동작이 완료되면, 도 1의 사용자 단말장치(100)와 통신하여 업무수행을 위한 챗봇 서비스를 제공할 수 있다. 사용자 단말장치(100)에서 챗봇 서비스를 요청하여 채팅창이나 검색창에서 질의 내용(혹은 검색어 등)을 전송하는 경우 통신 인터페이스부(200)는 질의 내용과 관련한 데이터를 제어부(210)에 제공할 수 있다. 물론 질의 내용은 텍스트 기반 이외에도 이미지 등도 함께 제공될 수 있을 것이다. 나아가, 음성 명령어도 얼마든지 가능할 수 있다.
통신 인터페이스부(200)는 도 1의 사용자 단말장치(100)나 서드파티장치(130)와 통신하는 과정에서 변/복조, 먹싱/디먹싱, 인코딩/디코딩, 또 해상도를 변환하는 스케일링 등의 동작을 수행할 수 있으며, 이는 당업자에게 자명하므로 더 이상의 설명은 생략하도록 한다. 통신 인터페이스부(200)는 제어부(210)의 요청에 따라 인트라넷과 같은 사내망을 통해 도 1의 DB(120a)에 접속하여 데이터를 저장하거나 저장된 데이터를 가져오는 등의 동작을 수행할 수도 있다.
제어부(210)는 가령 CPU, MPU, GPU 등의 프로세서를 포함할 수 있으며, 도 2의 통신 인터페이스부(200), 업무수행 챗봇 서비스부(220) 및 저장부(230)의 전반적인 제어 동작을 수행할 수 있다. 제어부(210)는 도 1의 서드파티장치(130)와 연계하여 가령 대화의 시나리오가 변환되었을 때 그 변환되는 지점에 추가되는 적은 데이터와 해당 특성을 나타내기 위해 추가된 특수 토큰을 포함하는 데이터셋을 생성하기 위한 동작을 수행할 수 있으며, 생성된 데이터셋 즉 학습 데이터를 도 1의 DB(120a)에 저장시키거나 도 2의 저장부(230)에 임시 저장시킨 후 업무수행 챗봇 서비스부(220)에 탑재된 AI 챗봇의 학습 동작을 수행할 수 있다. 이와 같이 제어부(210)는 본 발명의 실시예에 따른 서비스를 제공하기 위해 업무수행 챗봇 서비스부(220)와 연계하여 동작할 수 있다.
또한 제어부(210)는 데이터 구축 동작이 완료되면 도 1의 사용자 단말장치(100)로 챗봇 서비스를 제공할 수 있다. 도 1의 사용자 단말장치(100)로부터 질의와 관련한 질의 데이터가 수신되면 이를 저장부(230)에 임시 저장한 후 불러내어 업무수행 챗봇 서비스부(220)에 제공할 수 있다. 그리고 제어부(210)는 업무수행 챗봇 서비스부(220)에서 제공하는 답변을 도 1의 사용자 단말장치(100)로 제공하도록 통신 인터페이스부(200)의 통신을 제어할 수 있다. 여기서, 제공되는 답변은 고객의 질의와 관련한 의도가 정확히 파악된 답변에 해당할 수 있으며, 또 챗봇 발화시 윤리적 문제나 사실 왜곡 등의 문제가 발생하지 않도록 모델행위의 타당성이 판단된 즉 검증된 여과된 답변이 제공된다고 볼 수 있다.
업무수행 챗봇 서비스부(220)는 본 발명의 실시예에 따른 자체 제어 기능이 있는 LLM 기반의 업무수행 챗봇 서비스를 제공할 수 있다. 물론 이를 위하여 LLM 등의 지정된 언어 모델을 탑재할 수 있으며, 이외에도 본 발명의 실시예에 따른 자체 제어 기능부 등을 포함할 수도 있다. 업무수행 챗봇 서비스부(220)는 다양한 구성을 가질 수 있지만, 도 3에 도시된 바와 같이, 학습부(300), 추론부(310)를 포함하여 구성될 수 있다. 물로 이외에도 학습부(300)나 추론부(310)를 제어하는 제어 기능을 수행하는 소프트웨어 형태의 매니저(manager) 등을 더 포함할 수도 있다. 이러한 매니저의 기능은 도 2의 제어부(210)가 대신할 수도 있을 것이다. 학습부(300) 및 추론부(310)는 소프트웨어모듈, 하드웨어모듈 또는 그 조합에 의해 구성될 수 있으므로, 본 발명의 실시예에서는 어느 하나의 형태에 특별히 한정하지는 않을 것이다.
학습부(300)는 도 3에서 볼 수 있는 바와 같이 특수토큰 처리부(301)와 LLM 학습부(302)를 포함할 수 있다. LLM 학습부(302)는 특수 토큰이 추가된 데이터를 학습한다. LLM 학습부(302)는 특수 토큰을 포함한 데이터셋을 초거대 모델에 학습시켜 고객 의도 파악와 챗봇 발화 파악의 각 단계별로 어떤 상황인지 파악할 수 있는 모델을 구축한다. 모델은 어텐션(Attention)의 디코더가 포함된 모델이 사용될 수 있으며, 인코더-디코더 기반 모델(Encoder-Decoder based Mode), 디코더 기반 모델(Decoder based Model)이 이에 포함될 수 있다.
특수토큰 처리부(301)는 고객 의도 파악와 챗봇 발화 파악의 단계별 모델행위의 특성을 나타내는 하나 이상의 특수 토큰을 추가하여 데이터를 재구성한다. 특수 토큰은 초거대 모델의 프롬프트 내에 들어가거나 모델 예측 토큰에 추가되어 활용될 수 있다. 특수 토큰의 기능별 구분은 고객 의도 파악, 챗봇 발화 파악 등 명확히 구분할 수 있는 위치에 추가한다. 다시 말해 특수토큰 처리부(301)는 (대화의) 맥락 내에서 시나리오상에서 분기되는 지점에 특수 토큰을 적절하게 추가하여 고객 의도 파악와 챗봇 발화 파악의 단계별로 어떤 상황인지 나타내는 정보가 담긴 데이터셋으로 전처리한다. 각 특수토큰은 대화 이력을 바탕으로 시나리오에서 유의미한 분기를 나타내는 위치에 추가될 수 있다.
특수 토큰 처리부(301)는 챗봇의 시나리오의 단계별 구조화 및 특수 토큰 추가 동작을 수행할 수 있다. 대화이력과 고객발화를 바탕으로 고객 의도를 파악할 수 있다. 고객에게 필요한 의도 파악을 나타내는 특수 토큰의 종류는 <필수정보전달>, <취소>, <변경요청>, 선택>, <가능범위질의>, <상품기반질의>, <자주하는질의>, <최종선택> 등이 포함될 수 있다. 특수 토큰을 활용한 고객의도파악 프롬프트 구성을 예시하면, 프롬프트는 "고객의 발화와 대화이력을 바탕으로 고객의 의도를 파악해주세요 <고객발화> 강이 보이는 호텔이면 좋을 것 같아요"와 같은 구성을 가질 수 있다. 타깃(target)은 "고객님의 의도는 <필수정보전달>로 위치는 강 주변을 원하십니다."와 같은 형태로 이루어질 수 있다.
특수 토큰 처리부(301)는 고객발화, DB 결과 및 대화이력을 바탕으로 모델의 적절한 행동 및 발화 생성을 위한 챗봇 행동 및 발화와 관련한 동작을 수행할 수 있다. 챗봇의 다음 행동을 나타내는 특수 토큰은 <부족한정보요청>, <취소>, <변경>, <가능범위답변>, <상품기반답변>, <자주하는질의답변>, <제안성공> 등이 포함될 수 있다. 특수 토큰을 활용한 챗봇 행동 및 발화 프롬프트의 구성을 예시하면, 프롬프트는 "고객의 의도와 검색결과, 대화이력을 바탕으로 적절한 챗봇 발화를 생성해 주세요 고객의도> <상품기반질문> 검색결과> 상품은 한국호텔 위치는 서초구 시설은 수영장, 조식이 있습니다. 고객발화> 그러면 그 호텔에서 유용한 시설은 뭐가 있나요"와 같은 구성을 가질 수 있다. 이에 대한 타깃은 "고객에게 적합한 답변은 상품기반질문에 대한 답변으로 <상품기반답변> 중 유용한 시설 관련 답변으로 수영장, 조식이 있습니다..."와 같은 형태로 이루어질 수 있다.
도 3의 추론부(310)는 고객의도파악 프롬프트생성부(혹은 제1 프롬프트생성부)(311), LLM 추론부(312), 제1 신뢰도 추출부(313), 제1 신뢰도기반 의사결정부(314), 챗봇행동 및 발화 프롬프트생성부(혹은 제2 프롬프트생성부(315), 제2 신뢰도 추출부(316) 및 제2 신뢰도기반 의사결정부(317)의 일부 또는 전부를 포함한다. 여기서, "일부 또는 전부를 포함한다"는 것은 앞서서의 의미와 크게 다르지 않으므로 그 내용들로 대신하고자 한다.
프롬프트생성부(311, 315)는 특수 토큰을 고려하여 각 단계(Task)에 맞는 프롬프트를 생성한다. 즉 각각의 단계(Task)별 업무를 수행하기 위해 특수 토큰을 고려한 프롬프트를 생성한다. 여기서 프롬프트는 원하는 결과를 얻어내기 위해 LLM 등에 입력하는 명령어라 볼 수 있다. 단계에 맞는 프롬프트는 고객의도와 챗봇행동 및 발화를 포함할 수 있다. 고객의도분류를 예시해 보면, 고객발화, 대화이력의 경우 "고객의 발화와 대화이력을 바탕으로 고객의 의도를 파악해 주세요 대화이력> [대화이력] 고객발화> [고객발화] 등의 형태를 가질 수 있다. 반면 챗봇행동 및 발화를 예시해 보면 고객의도, 고객발화, 대화이력, 검색 결과의 경우 "고객의 의도와 고객발화, 검색결과, 대화이력을 바탕으로 적절한 챗봇 발화를 생성해 주세요 고객의도> [고객의도] 검색결과> [검색결과] 대화이력> [대화이력] 고객발화> [고객발화]와 같은 형태의 프롬프트를 생성할 수 있다.
LLM 추론부(312)는 가령 NLU, Policy, NLG 등을 포함하며 초거대 모델의 추론을 진행하여 일반적인 발화 및 특수 토큰을 생성할 수 있다. 또한 추가된 특수 토큰에 대한 모델의 예측값을 츨력할 수 있다. 다시 말해 LLM 추론부(312)는 학습된 모델을 바탕으로 발화에 해당하는 일반적인 토큰과 특정 단계를 나타내는 특수 토큰을 생성할 수 있다.
신뢰도 추출부(313, 316)는 모델이 예측한 즉 LLM 추론부(312)에서 예측한 특수 토큰을 각각의 특수 토큰들의 로짓(Logit) 값을 토대로 해당 행위의 신뢰도를 계산한다. 신뢰도 추출부(313, 316)는 사전에 정의된 특수 토큰들의 Softmax값을 바탕으로 모델이 예측한 특수 토큰별 신뢰도를 추출한다. 각 토큰이 가지는 로짓값을 바탕으로 해당 특수 토큰의 신뢰도를 계산할 수 있다. 예를 들어 특수 토큰별 최종 확률 분포는 <필수정보전달>: 0.91, <변경>: 0.08, <취소>: 0.004, <가능범위질의>: 0.003의 값을 가질 수 있다. 신뢰도 추출부(313, 316)는 Softmax, Avg 등 신뢰도 연산식(혹은 연산 알고리즘)을 적용할 수 있으며, 도 4에서는 Softmax 신뢰도 연산식을 보여주고 있다.
(신뢰도기반) 의사결정부(314, 317) 또는 제어부(혹은 관리부)(210)는 신뢰도 추출부(313, 316)에서 제공하는 해당 행위의 신뢰도를 받아 출력의 형태로 출력할지 반려할지를 판단할 수 있다. Task별, 토큰별로 분리하여 적용이 가능할 수 있다. 신뢰도를 바탕으로 하는 의사결정은 신뢰도를 바탕으로 임계치(혹은 기준값)를 선택할 수 있으며 이를 통해 세분화된 초거대 모델 제어가 가능할 수 있다. 고객의도 파악, 챗봇행동 및 발화의 단계별 제어를 예시해 보면, 고객의도파악의 경우 고객 발화에 대한 명확한 인식이 중요하므로 신뢰도를 높은 임계치인 0.9로 설정하여 제어할 수 있다. 또한 챗봇행동 및 발화의 경우 비교적 엄격하지 않으므로 0.8을 신뢰도의 임계치로 하여 발화를 제어할 수 있다. 각 특수토큰별 제어를 예시해 보면 특수 토큰마다 신뢰도의 임계치를 달리하여 제어가 가능하다. <필수정보전달>의 경우에는 확실한 예측값일 때만 추출하도록 0.9 임계값으로 제어가 가능하며, <자주하는질의>의 경우 예측 불가능한 질의가 많이 나오는 경우에서는 낮은 임계치 0.7로 적용이 가능할 수 있다. 물론 각각의 임계치 설정은 시스템 설계자의 의도 등에 따라 다양하게 설정될 수 있을 것이다.
도 5 및 도 6에서는 고객의도 파악, 챗봇행동 및 발화의 각 단계별(Task1, Task 2) 프롬프트 생성, 추론, 신뢰도 추출 및 신뢰도 의사결정 과정을 잘 보여주고 있다. 도 5는 고객의 질의가 "인당 10만원 이하로 강이 보이는 호텔을 찾고 있어요"에 해당하는 경우이다. 고객의도를 파악하기 위한 과정이라 볼 수 있다. 이의 경우 프롬프트 생성, 추론 및 신뢰도 추출은 통해 <필수정보전달>로 예측한 모델행동의 신뢰도가 95.67%에 이르는 것을 확인할 수 있다. 따라서 임계치를 0.9로 설정하여 고객의도파악 Task의 기준으로 설정함으로써 그에 따라 모델행동을 허용하거나 반려할 수 있다. 다시 말해, 고객의 질의에 대한 답변을 제공할 때 답변의 타당성을 검증하여 그에 따라 답변을 제공할 수 있는 것이다.
도 5에서와 같이 고객의 의도와 관련하여 모델행동이 허용된 경우 이어 도 6에서와 같이 챗봇행동 및 발화와 관련한 신뢰도 측정이 이루어질 수 있다. 도 6에서와 같이 "그러면 그 호텔에서 유용한 시설은 뭐가 있어요?" 고객은 <상품기반질문>의 의도로 보입니다와 같은 입력에 대하여 다시 프롬프트 생성과 추론, 그리고 신뢰도 추출은 통해 <상품기반답변>으로 예측한 모델행동의 신뢰도는 88.12%로 측정될 수 있다. <상품기반답변>에 대한 신뢰도의 임계치를 0.8로 설정하여 고객의도파악 Task의 기준으로 설정함으로써 그에 따른 모델행동 허용에 따라 답변을 제공할 수 있다.
한편 도 2의 저장부(230)는 제어부(210)의 제어하에 처리되는 다양한 유형의 데이터나 정보를 임시 저장할 수 있다. 여기서, 데이터나 정보는 업계에서 혼용되므로 그 용어의 개념에 특별히 한정하지는 않을 것이다. 가령 저장부(230)는 도 1의 사용자 단말장치(100)의 질의 내용과 관련한 질의 데이터가 제공되는 경우 이를 임시 저장한 후 업무수행 챗봇 서비스부(220)에 제공할 수 있다.
상기한 내용 이외에도 도 2의 통신 인터페이스부(200), 제어부(210), 업무수행 챗봇 서비스부(220) 및 저장부(230)는 다양한 동작을 수행할 수 있으며, 기타 자세한 내용은 앞서 충분히 설명하였으므로 그 내용들로 대신하고자 한다.
본 발명의 실시예에 따른 도 2의 통신 인터페이스부(200), 제어부(210), 업무수행 챗봇 서비스부(220) 및 저장부(230)는 서로 물리적으로 분리된 하드웨어 모듈로 구성되지만, 각 모듈은 내부에 상기의 동작을 수행하기 위한 소프트웨어를 저장하고 이를 실행할 수 있을 것이다. 다만, 해당 소프트웨어는 소프트웨어 모듈의 집합이고, 각 모듈은 하드웨어로 형성되는 것이 얼마든지 가능하므로 소프트웨어니 하드웨어니 하는 구성에 특별히 한정하지 않을 것이다. 예를 들어 저장부(230)는 하드웨어인 스토리지(storage) 또는 메모리(memory)일 수 있다. 하지만, 소프트웨어적으로 정보를 저장(repository)하는 것도 얼마든지 가능하므로 위의 내용에 특별히 한정하지는 않을 것이다.
한편, 본 발명의 다른 실시예로서 제어부(210)는 CPU 및 메모리를 포함할 수 있으며, 원칩화하여 형성될 수 있다. CPU는 제어회로, 연산부(ALU), 명령어해석부 및 레지스트리 등을 포함하며, 메모리는 램을 포함할 수 있다. 제어회로는 제어동작을, 그리고 연산부는 2진비트 정보의 연산 동작을, 그리고 명령어해석부는 인터프리터나 컴파일러 등을 포함하여 고급언어를 기계어로, 또 기계어를 고급언어로 변환하는 동작을 수행할 수 있으며, 레지스트리는 소프트웨어적인 데이터 저장에 관여할 수 있다. 상기의 구성에 따라, 가령 도 1의 업무수행 챗봇 서비스장치(120)의 동작 초기에 업무수행 챗봇 서비스부(220)에 저장되어 있는 프로그램을 복사하여 메모리 즉 램(RAM)에 로딩한 후 이를 실행시킴으로써 데이터 연산 처리 속도를 빠르게 증가시킬 수 있다. 딥러닝 모델 같은 경우 램(RAM)이 아닌 GPU 메모리에 올라가 GPU를 이용하여 수행 속도를 가속화하여 실행될 수도 있다.
도 7은 도 1의 업무수행 챗봇 서비스장치의 구동과정을 나타내는 흐름도이다.
설명의 편의상 도 7을 도 1과 함께 참조하면, 본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)는 챗봇 서비스를 이용하는 사용자 단말장치(100)로부터 질의 내용을 수신한다(S700). 더 정확하게는 질의 내용과 관련한 질의 데이터를 수신할 수 있다. 여기서, 질의 데이터는 텍스트 형태의 데이터이지만 이미지 형태의 데이터를 포함할 수도 있을 것이다.
또한 도 1의 업무수행 챗봇 서비스장치(120)는 대화의 맥락 내에서 시나리오가 변환되는 지점에 고객의도와 챗봇 발화의 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 기수신한 질의 내용에서 고객의도와 챗봇 발화의 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 사용자 단말장치(100)로 질의 내용에 대한 답변을 제공할 수 있다(S710). 여기서, "단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터"는 도 4에서와 같이 <부족한정보요청> 등의 적은 데이터와 그에 대응되는 각각의 로그프로브(Logprob)의 특수 토큰의 토큰값을 포함할 수 있다.
본 발명의 실시예에 따른 업무수행 챗봇 서비스장치(120)는 가령 어떤 상황인지 나타내는 정보의 특수 토큰을 고려해 각 Task에 맞는 프롬프트를 생성하고, 그 생성한 프롬프트를 활용해 원하는 결과를 얻을 수 있다. 이러한 프롬프트는 사용자의 발화 의도를 정확히 판단하기 위해 이용되며, 또 챗봇 발화 즉 사용자의 질의에 대한 답변을 제공하는 경우에도 프롬프트가 생성되어 사용될 수 있다. 각각 생성된 프롬프트에 따라 LLM과 같은 초거대 모델을 통해 추론 즉 정확한 예측이 이루어지며 또 예측한 모델행동에 대한 신뢰도를 측정할 수 있다. 신뢰도의 측정결과가 기설정된 임계치를 만족하는 경우 업무수행 챗봇 서비스장치(120)는 해당 답변을 고객의도가 파악되고 또 그에 따른 모델행동을 검증한 상태의 답변으로 제공할 수 있다.
상기한 내용 이외에도 도 1의 업무수행 챗봇 서비스장치(120)는 다양한 동작을 수행할 수 있으며, 기타 자세한 내용은 앞서 충분히 설명하였으므로 그 내용들로 대신하고자 한다.
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시 예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 비일시적 저장매체(non-transitory computer readable media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시 예를 구현할 수 있다.
여기서 비일시적 판독 가능 기록매체란, 레지스터, 캐시(cache), 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라, 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로, 상술한 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리 카드, ROM 등과 같은 비일시적 판독가능 기록매체에 저장되어 제공될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 사용자 단말장치 110: 통신망
120: 업무수행 챗봇 서비스장치 130: 서드파티장치
200: 통신 인터페이스부 210: 제어부
220, 220': 업무수행 챗봇 서비스부 230: 저장부
300: 학습부 310: 추론부

Claims (10)

  1. 챗봇(chatbot) 서비스를 이용하는 사용자 단말장치로부터 질의 내용을 수신하는 통신 인터페이스부; 및
    대화의 맥락 내에서 시나리오가 변환되는 지점에 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 상기 수신한 질의 내용에서 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 상기 사용자 단말장치로 상기 질의 내용에 대한 답변을 제공하는 제어부;를
    포함하는, 업무수행 챗봇 서비스장치.
  2. 제1항에 있어서,
    상기 제어부는 상기 학습 데이터의 학습시 기취득한 데이터의 대화 이력을 바탕으로 상기 시나리오에서 유의미한 분기를 나타내는 위치에 상기 정보와 관련하여 추가되는 각각의 지정 토큰(token)을 처리하는, 업무수행 챗봇 서비스장치.
  3. 제2항에 있어서,
    상기 제어부는, 상기 수신한 질의 내용에서 각 단계별 업무를 수행하기 위해 상기 지정 토큰을 이용해 생성되는 프롬프트(prompt)를 이용하여 각 단계별로 어떤 상황인지 판단하는, 업무수행 챗봇 서비스장치.
  4. 제2항에 있어서,
    상기 제어부는, 상기 수신한 질의 내용에서 상기 지정 토큰이 나온 시점에서 상기 지정 토큰의 제1 신뢰도를 측정해 상기 측정한 제1 신뢰도를 근거로 사용자의 의도를 파악하는, 업무수행 챗봇 서비스장치.
  5. 제4항에 있어서,
    상기 제어부는, 상기 측정한 제1 신뢰도가 지정 조건을 만족할 때, 챗봇 행동 및 발화와 관련한 제2 신뢰도를 측정해 측정 결과를 근거로 상기 답변을 제공하는, 업무수행 챗봇 서비스장치.
  6. 통신 인터페이스부가, 챗봇 서비스를 이용하는 사용자 단말장치로부터 질의 내용을 수신하는 단계; 및
    제어부가, 대화의 맥락 내에서 시나리오가 변환되는 지점에 단계별로 어떤 상황인지 나타내는 정보가 담긴 학습 데이터를 학습한 후 학습 결과를 근거로 상기 수신한 질의 내용에서 각 단계별로 어떤 상황인지 판단하여 판단 결과를 근거로 상기 사용자 단말장치로 상기 질의 내용에 대한 답변을 제공하는 단계;를
    포함하는, 업무수행 챗봇 서비스장치의 구동방법.
  7. 제6항에 있어서,
    상기 학습 데이터를 학습하는 단계는,
    상기 학습 데이터의 학습시 기취득한 데이터의 대화 이력을 바탕으로 상기 시나리오에서 유의미한 분기를 나타내는 위치에 상기 정보와 관련하여 추가되는 각각의 지정 토큰을 처리하는, 업무수행 챗봇 서비스장치의 구동방법.
  8. 제7항에 있어서,
    상기 어떤 상황인지 판단하는 단계는,
    상기 수신한 질의 내용에서 각 단계별 업무를 수행하기 위해 상기 지정 토큰을 이용해 생성되는 프롬프트를 이용하여 각 단계별로 어떤 상황인지 판단하는, 업무수행 챗봇 서비스장치의 구동방법.
  9. 제7항에 있어서,
    상기 답변을 제공하는 단계는,
    상기 수신한 질의 내용에서 상기 지정 토큰이 나온 시점에서 상기 지정 토큰의 제1 신뢰도를 측정해 상기 측정한 제1 신뢰도를 근거로 사용자의 의도를 파악하는, 업무수행 챗봇 서비스장치의 구동방법.
  10. 제9항에 있어서,
    상기 답변을 제공하는 단계는,
    상기 측정한 제1 신뢰도가 지정 조건을 만족할 때, 챗봇 행동 및 발화와 관련한 제2 신뢰도를 측정해 측정 결과를 근거로 상기 답변을 제공하는, 업무수행 챗봇 서비스장치의 구동방법.
KR1020230135346A 2023-10-11 2023-10-11 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법 KR102660276B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230135346A KR102660276B1 (ko) 2023-10-11 2023-10-11 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230135346A KR102660276B1 (ko) 2023-10-11 2023-10-11 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법

Publications (1)

Publication Number Publication Date
KR102660276B1 true KR102660276B1 (ko) 2024-04-25

Family

ID=90884939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230135346A KR102660276B1 (ko) 2023-10-11 2023-10-11 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법

Country Status (1)

Country Link
KR (1) KR102660276B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101972904B1 (ko) 2017-04-12 2019-04-29 민보경 챗봇, 신뢰도측정 및 프로젝트관리를 이용한 프로젝트 매칭 방법 및 시스템
KR102102287B1 (ko) 2017-12-20 2020-04-20 한국과학기술원 챗봇을 위한 대화 모델의 데이터 크라우드소싱 방법
US20210034305A1 (en) * 2019-03-19 2021-02-04 Boe Technology Group Co., Ltd. Question generating method and apparatus, inquiring diagnosis system, and computer readable storage medium
KR20220041702A (ko) 2020-09-25 2022-04-01 한일네트웍스(주) 인공지능 챗봇 서버
KR20230021968A (ko) * 2021-08-06 2023-02-14 김용선 딥러닝을 기반으로 하는 대화형 검색시스템
US20230069935A1 (en) * 2019-11-20 2023-03-09 Korea Advanced Institute Of Science And Technology Dialog system answering method based on sentence paraphrase recognition

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101972904B1 (ko) 2017-04-12 2019-04-29 민보경 챗봇, 신뢰도측정 및 프로젝트관리를 이용한 프로젝트 매칭 방법 및 시스템
KR102102287B1 (ko) 2017-12-20 2020-04-20 한국과학기술원 챗봇을 위한 대화 모델의 데이터 크라우드소싱 방법
US20210034305A1 (en) * 2019-03-19 2021-02-04 Boe Technology Group Co., Ltd. Question generating method and apparatus, inquiring diagnosis system, and computer readable storage medium
US20230069935A1 (en) * 2019-11-20 2023-03-09 Korea Advanced Institute Of Science And Technology Dialog system answering method based on sentence paraphrase recognition
KR20220041702A (ko) 2020-09-25 2022-04-01 한일네트웍스(주) 인공지능 챗봇 서버
KR20230021968A (ko) * 2021-08-06 2023-02-14 김용선 딥러닝을 기반으로 하는 대화형 검색시스템

Similar Documents

Publication Publication Date Title
US11676067B2 (en) System and method for creating data to train a conversational bot
US11455469B2 (en) Personality based sentiment analysis of textual information written in natural language
US11216510B2 (en) Processing an incomplete message with a neural network to generate suggested messages
US11651163B2 (en) Multi-turn dialogue response generation with persona modeling
US12001798B2 (en) Generation of training data for machine learning based models for named entity recognition for natural language processing
US20220164683A1 (en) Generating a domain-specific knowledge graph from unstructured computer text
US20210200948A1 (en) Corpus cleaning method and corpus entry system
JP6224857B1 (ja) 分類装置、分類方法および分類プログラム
US20220358292A1 (en) Method and apparatus for recognizing entity, electronic device and storage medium
US10825446B2 (en) Training artificial intelligence to respond to user utterances
EP4060517A1 (en) System and method for designing artificial intelligence (ai) based hierarchical multi-conversation system
JP7488871B2 (ja) 対話推薦方法、装置、電子機器、記憶媒体ならびにコンピュータプログラム
CA3123387C (en) Method and system for generating an intent classifier
Patil et al. A voice based assistant using Google dialogflow and machine learning
CN110637321A (zh) 动态申索提交系统
US20230315999A1 (en) Systems and methods for intent discovery
CN115391499A (zh) 生成多任务生成模型的方法、问答对生成方法和相关装置
KR102098003B1 (ko) 챗봇 구동 방법, 장치 및 컴퓨터 판독가능 매체
US11875128B2 (en) Method and system for generating an intent classifier
KR102660276B1 (ko) 거대언어모델을 활용한 업무수행 챗봇 서비스장치 및 그 장치의 구동방법
CN116204624A (zh) 应答方法、装置、电子设备及存储介质
CN114519094A (zh) 基于随机状态的话术推荐方法、装置及电子设备
KR20220154935A (ko) 인공 지능 모델을 이용하는 질의 답변 서버의 제어 방법
Yoshiuchi et al. Data analysis technology of service robot system for business improvement
KR20210025933A (ko) 고객 응대 방법을 제공하기 위한 컴퓨터 프로그램

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant