KR102146031B1 - 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법 - Google Patents

멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법 Download PDF

Info

Publication number
KR102146031B1
KR102146031B1 KR1020170157626A KR20170157626A KR102146031B1 KR 102146031 B1 KR102146031 B1 KR 102146031B1 KR 1020170157626 A KR1020170157626 A KR 1020170157626A KR 20170157626 A KR20170157626 A KR 20170157626A KR 102146031 B1 KR102146031 B1 KR 102146031B1
Authority
KR
South Korea
Prior art keywords
chatbot
answer
natural language
server
query language
Prior art date
Application number
KR1020170157626A
Other languages
English (en)
Other versions
KR20190059731A (ko
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 KR1020170157626A priority Critical patent/KR102146031B1/ko
Publication of KR20190059731A publication Critical patent/KR20190059731A/ko
Application granted granted Critical
Publication of KR102146031B1 publication Critical patent/KR102146031B1/ko

Links

Images

Classifications

    • G06Q50/40
    • 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/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법이 개시된다.
이 시스템은 챗봇 관리 서버 및 챗봇 서버를 포함한다. 챗봇 관리 서버는 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리하며, 외부로부터 수신되는 자연어 질의어에 대한 개체명과 의도에 해당되는 외부 챗봇 서버를 검색한 후 검색된 외부 챗봇 서버에 대한 라우팅 정보를 제공한다. 챗봇 서버는 사용자의 질문에 답변하기 위해 지식베이스 기반 또는 기계학습 기반으로 정보를 저장하고, 사용자 단말로부터 수신되는 자연어 질의어에 해당되는 답변을 검색하여 검색된 답변을 상기 자연어 질의어에 대한 답변으로서 상기 사용자 단말에게 제공하되, 상기 자연어 질의어에 해당되는 답변이 검색되지 않는 경우 상기 챗봇 관리 서버를 통해 상기 자연어 질의어에 대한 개체명과 의도에 대응되는 라우팅 정보를 제공받아서 제공된 라우팅 정보에 대응되는 외부 챗봇 서버로 상기 자연어 질의어를 전달한 후 상기 외부 챗봇 서버로부터 제공되는 답변을 받아서 상기 사용자 단말에게 제공한다.

Description

멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법 {CHATBOT SYSTEM BASED ON MULTI-DOMAIN AND METHOD FOR PROVIDING CHATBOT SERVICE}
본 발명은 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법에 관한 것이다.
최근 스마트폰을 통한 메신저의 사용 환경 확대와 인공지능의 발전과 함께 고객들과 기업들이 메시징 서비스를 통해서 연결이 되기를 원함에 따라 정해진 응답 규칙을 바탕으로 메신저를 통해 사용자와 대답할 수 있도록 구현된 챗봇(ChatBot) 시스템이 각광을 받고 있다. 이러한 챗봇 시스템은 원래 채터 로봇(Chatter Robot) 시스템을 의미하는 시스템으로 대화를 하는 로봇이라고 할 수 있다.
또한, 최근 인공지능(Artificail Intellegent, AI) 기술의 발전에 힘입어 인공지능 기반으로 지식 베이스(Knowledge Base)를 구축하여 정보를 제공하는 인공지능 챗봇이 사용되고 있지만, 이러한 인공지능 챗봇도 추가적인 정보가 필요할 경우 외부 시스템과의 통신 인터페이스 프로토콜이 지원하는 한도 내에서만 외부의 챗봇과 연동할 수 밖에 없어 지능화된 새로운 방식의 챗봇간 연동 방식이 필요하다. 이것은 점차적으로 비즈니스 도메인 영역별 챗봇이 증가함에 따라, 하나의 챗봇이 사용자가 질의하는 모든 주제 영역의 지식을 커버하기 어려우며, 그로 인해 타 시스템 또는 타 플랫폼에 구축된 챗봇의 지식과 연계하여 복합 생성해야 하는 연계 답변의 필요성이 커지는 상황에서 현재와 같이 통신 프로토콜에 의존한 인터페이스 방식으로는 일일이 인터페이스를 개발해야 하는 등 비용이나 일정 측면에서 한계가 있기 때문이다.
본 발명이 해결하고자 하는 과제는 단일 챗봇의 지식으로 커버할 수 없는 지식 도메인에 대해 사용자가 질의했을 때, 통신 프로토콜에 의존하여 인터페이스를 개발하는 기존 방식의 문제점을 개선하여, 챗봇의 자연어 처리 기술인 개체명 식별기술(Named Entity Recognition, NER), 의도 분류 기술(Intent Classification) 등을 토대로 획득한 멀티 챗봇 정보를 통해 연동할 대상 챗봇의 라우팅 정보를 획득함으로써, 인공지능으로 스스로 외부 챗봇에게 질의하여 답변하는 진화된 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법을 제공하는 것이다.
본 발명의 하나의 특징에 따른 챗봇 시스템은,
챗봇 시스템으로서, 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리하며, 외부로부터 수신되는 자연어 질의어에 대한 개체명 및 의도에 해당되는 외부 챗봇 서버를 검색한 후 검색된 외부 챗봇 서버에 대한 라우팅 정보를 제공하는 챗봇 관리 서버 및 사용자의 질문에 답변하기 의해 지식 베이스 기반 또는 기계학습 기반으로 정보를 저장하고, 사용자 단말로부터 수신되는 자연어 질의어에 해당되는 답변을 검색하여 검색된 릿답변을 상기 자연어 질의어에 대한 답변으로서 상기 사용자 단말에게 제공하되, 상기 자연어 질의어에 대응되는 답변이 검색되지 않는 경우 상기 챗봇 관리 서버를 통해 상기 자연어 질의어에 대한 개체명과 의도에 대응되는 라우팅 정보를 제공받아서 제공된 라우팅 정보에 대응되는 외부 챗봇 서버로 상기 자연어 질의어를 전달한 후 상기 외부 챗봇 서버로부터 제공되는 답변을 받아서 상기 사용자 단말에게 제공하는 챗봇 서버를 포함한다.
여기서, 상기 챗봇 서버는, 지식 베이스 기반 또는 기계학습 기반으로 정보를 저장하는 정보 데이터베이스 상기 정보 데이터베이스를 사용하여 상기 자연어 질의어에 해당되는 답변을 검색하는 답변 생성부 상기 자연어 질의어를 분석하여 상기 자연어 질의어에 대해 식별되는 개체명과 상기 자연어 질의어에 대해 분류되는 의도를 파악하는 분석부 상기 챗봇 관리 서버에게 상기 분석부에 의해 파악되는 상기 자연어 질의어에 대한 개체명과 의도를 전달하고, 상기 챗봇 관리 서버로부터 상기 자연어 질의어에 대응되는 라우팅 정보를 수신하는 라우팅 정보 취득부 상기 라우팅 정보에 대응되는 외부 챗봇 서버에 접속한 후 상기 외부 챗봇 서버를 통해 상기 자연어 질의어에 대응되는 답변을 취득하는 답변 취득부 및 상기 답변 생성부에 의해 검색된 답변 또는 상기 답변 취득부에 의해 취득되는 답변으로부터 상기 자연어 질의어에 대한 답변을 구성하여 상기 사용자 단말에게 제공하는 답변 가공부를 포함한다.
또한, 상기 답변 생성부는 상기 정보 데이터베이스를 사용하여 상기 자연어 질의어에 대한 답변 검색이 실패하는 경우 상기 자연어 질의어에 대한 개체명과 의도를 상기 라우팅 정보 취득부로 전달하여 상기 자연어 질의어에 대응되는 라우팅 정보를 취득하도록 한다.
또한, 상기 챗봇 관리 서버는, 상기 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리하는 라우팅 테이블 및 상기 챗봇 서버로부터 수신되는 자연어 질의어에 대한 개체명과 의도를 기준으로 상기 라우팅 테이블로부터 상기 자연어 질의어에 대응되는 외부 챗봇 서버를 검색하여 검색된 외부 챗봇 서버에 대한 라우팅 정보를 상기 챗봇 서버에게 제공하는 챗봇 검색부를 포함한다.
또한, 상기 라우팅 테이블은 상기 복수의 외부 챗봇 서버에 대한 답변율을 더 포함하고, 상기 챗봇 검색부는 상기 자연어 질의어에 대응되어 검색되는 외부 챗봇 서버에 대한 답변율을 상기 챗봇 서버에게 추가로 전달한다.
또한, 상기 챗봇 서버는 상기 챗봇 관리 서버로부터 제공되는 답변율이 미리 설정된 임계값 이상인 경우 상기 답변율과 함께 제공되는 라우팅 정보에 대응되는 외부 챗봇 서버에 접속하여 상기 자연어 질의어에 대한 답변을 제공받는다.
또한, 상기 챗봇 서버는 상기 사용자 단말로부터 수신되는 자연어 질의어가 복수의 의도를 갖는 질의어인 경우, 상기 복수의 의도별로 질의어를 생성한 후, 각 질의어별로 상기 챗봇 서버를 통해 검색된 답변 또는 상기 외부 챗봇 서버를 통해 취득한 답변을 가공하여 복합적인 응답으로 재구성한 후 상기 자연어 질의어에 대한 답변으로 상기 사용자 단말에게 제공한다.
또한, 상기 챗봇 서버는 상기 외부 챗봇 서버와의 채팅을 통해 상기 자연어 질의어에 대한 답변을 취득하는 과정을 상기 사용자 단말의 디스플레이를 통해 표시한다.
또한, 상기 외부 챗봇 서버와의 채팅을 통해 상기 자연어 질의어에 대한 답변을 취득하는 과정은, 상기 챗봇 서버가 상기 사용자 단말과의 사이에 상기 자연어 질의에 대한 답변을 제공하기 위해 표시하는 채팅 창 내의 일부에 표시되는 쪽창을 통해 표시한다.
본 발명의 다른 특징에 따른 챗봇 서비스 방법은,
챗봇 시스템이 사용자 단말에게 챗봇 서비스를 제공하는 방법으로서, 사용자 단말로부터 수신되는 자연어 질의어에 대해 정보 데이터베이스를 통해 답변을 검색하는 단계 ― 상기 정보 데이터베이스는 지식 베이스 기반 또는 기계학습 기반으로 정보를 저장함 ― 상기 자연어 질의어에 대해 상기 정보 데이터베이스를 통한 답변 검색이 실패하는 경우, 챗봇 관리 서버를 통해 라우팅 정보를 제공받는 단계 ― 상기 챗봇 관리 서버는 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리함 ― 상기 챗봇 관리 서버로부터 제공되는 라우팅 정보에 대응되는 외부 챗봇 서버를 통해 상기 자연어 질의에 대한 답변을 제공받는 단계 및 상기 답변을 검색하는 단계에서 검색된 답변 또는 상기 답변을 제공받는 단계에서 제공받은 답변을 상기 자연어 질의어에 대한 답변으로서 가공하여 상기 사용자 단말에게 제공하는 단계를 포함한다.
여기서, 상기 챗봇 관리 서버는 상기 복수의 외부 챗봇 서버 각각에 대한 답변율을 더 저장 관리하고, 상기 라우팅 정보를 제공받는 단계에서, 상기 챗봇 관리 서버로부터 상기 라우팅 정보와 함께 상기 답변율을 추가로 제공받으며, 상기 라우팅 정보를 제공받는 단계와 상기 답변을 제공받는 단계 사이에, 상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 단계를 더 포함하고, 상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 단계에서 상기 답변율이 상기 미리 설정된 임계값 이상인 경우에 상기 답변을 제공받는 단계를 수행한다.
또한, 상기 답변율이 상기 미리 설정된 임계값보다 작은 경우 답변 검출 실패를 상기 질의어에 대한 응답으로 상기 사용자 단말에게 제공한다.
또한, 상기 라우팅 정보를 제공받는 단계에서, 상기 챗봇 서버가 상기 자연어 질의어에 대한 개체명과 의도를 상기 챗봇 관리 서버에게 전달하고, 상기 챗봇 관리 서버는 상기 자연어 질의어에 대한 개체명과 의도를 기준으로 외부 챗봇 서버를 검색한다.
본 발명의 또 다른 특징에 따른 챗봇 시스템은,
챗봇 시스템으로서, 통신기, 메모리 및 프로세서를 포함하며, 상기 통신기는 사용자 단말, 챗봇 관리 서버 - 상기 챗봇 관리 서버는 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리함 ―및 외부 챗봇 서버와 통신을 수행하고, 상기 메모리는 사용자의 질문에 대해 답변하기 위해 지식 베이스 기반 또는 기계학습 기반으로 정보를 저장하고, 코드의 집합을 저장하도록 구성되며, 상기 코드는, 상기 통신기를 통해 상기 사용자 단말로부터 수신되는 자연어 질의어에 해당되는 답변을 검색하는 동작 상기 통신기를 통해 상기 챗봇 관리 서버로부터 상기 자연어 질의어에 대한대응개체명과 의도에 대응되는 라우팅 정보를 제공받는 동작 상기 통신기를 통해, 취득된 상기 라우팅 정보에 대응되는 외부 챗봇 서버에 접속하여 상기 자연어 질의어에 대한 답변을 취득하는 동작 상기 통신기를 통해 상기 답변을 상기 사용자 단말에게 제공하는 동작을 실행하도록 상기 프로세서를 제어하는 데 사용된다.
여기서, 상기 프로세서는, 상기 통신기를 통해 상기 챗봇 관리 서버로부터 상기 라우팅 정보와 함께 답변율을 추가로 제공받는 동작 및 상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 동작을 더 실행하고, 상기 프로세서는, 상기 답변율이 상기 미리 설정된 임계값 이상인 경우 상기 외부 챗봇 서버를 통해 상기 자연어 질의어에 대한 답변을 취득하는 동작을 실행한다.
본 발명에 따르면, 인공지능 멀티 챗봇 서버간에 정보를 주고 받을 때 챗봇 서버끼리의 자연어 대화 처리 방식을 구조화하고, 챗봇 서버 스스로 필요한 정보가 있을 때 질의해야 하는 대상 챗봇 서버를 인공지능으로 찾아내고 원하는 정보를 챗봇 서버간 자연어 처리 방식을 통해 획득함으로써 이종 플랫폼 간에도 쉽게 정보를 주고 받을 수 있다.
또한, 챗봇 서버 이용자는 수많은 영역별 챗봇 서버와 일일이 대화할 필요없이, 최초 질의를 받은 챗봇 서버가 필요에 따라 인공지능으로 타 영역 챗봇 서버를 찾아 답변을 생성함으로써 하나의 챗봇 서버가 통합된 지식 베이스를 구축할 필요가 없게 되며, 이종 플랫폼 간의 챗봇 서버 연계도 용이해져 인공지능 챗봇 서버를 연결시켜주는 집단 지성을 구축할 수 있다.
도 1은 본 발명의 실시예에 따른 챗봇 시스템의 개략 구성도이다.
도 2는 도 1에 도시된 챗봇 서버의 구체적인 구성 블록도이다.
도 3은 도 1에 도시된 챗봇 관리 서버의 구체적인 구성 블록도이다.
도 4는 도 3에 도시된 라우팅 테이블을 구성하는 필드 정보를 개략적으로 도시한 도면이다.
도 5는 본 발명의 실시예에 따른 챗봇 서비스 제공 방법의 개략적인 흐름도이다.
도 6은 본 발명의 실시예에 따라 챗봇 서버가 수행하는 챗봇 서비스 방법의 흐름도이다.
도 7은 본 발명의 실시예에 따른 챗봇 시스템에서 사용자 단말의 디스플레이를 개략적으로 도시한 도면으로, (a)는 챗봇 서버와의 채팅 창만을 도시한 도면이고, (b)는 챗봇 서버와 외부 챗봇 서버와의 채팅 창을 쪽창으로 도시한 도면이다.
도 8은 본 발명의 다른 실시예에 따른 챗봇 서버의 개략적인 구성 블록도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이하, 도면을 참고하여 본 발명의 실시예에 따른 챗봇 시스템에 대해 설명한다.
도 1은 본 발명의 실시예에 따른 챗봇 시스템의 개략 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 챗봇 시스템(10)은 사용자 단말(100), 챗봇 서버(200), 챗봇 관리 서버(300) 및 외부 챗봇 서버(400)를 포함한다. 이 때, 도 1에 도시된 챗봇 시스템(10)은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다.
사용자 단말(100)은 네트워크(510)를 통해 챗봇 서버(200)에 연결된다. 여기서 네트워크(510)는 주로 무선 네트워크로서 단말들 및 서버들과 같은 각각의 노드 상호 간에 무선으로 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(network)의 일례에는 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 3G, 4G, 5G 등이 포함되나 이에 한정되지는 않는다.
사용자 단말(100)은 사용자의 질의를 입력받아서 네트워크(510)를 통해 챗봇 서버(200)로 전달하고, 챗봇 서버(200)로부터 질의에 대한 응답을 전달받아서 사용자에게 제공하는 챗봇 서비스 어플리케이션인 챗봇 클라이언트가 탑재된 단말일 수 있다.
사용자 단말(100)은 무선 통신이 가능한 모바일 단말을 포함할 수 있고, 본 발명의 다양한 실시예들에 따르면, 사용자 단말(100)은 다양한 형태의 디바이스일 수 있다. 예를 들어, 사용자 단말(100)은 네트워크(510)를 통해 원격지의 챗봇 서버(200)에 접속할 수 있는 휴대용 단말일 수 있다. 여기서, 휴대용 단말의 일 예로는 휴대성과 이동성이 보장되는 무선 통신 장치로서, 3G, 4G, 5G 단말, LTE 단말, 스마트폰(smartphone), 스마트 패드, 태블릿 PC, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말과 같은 휴대성과 이동성이 보장되는 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치가 포함될 수 있다. 또한, 사용자 단말(100)의 일 예는 노트북(notebook), 넷북(Netbook), 울트라북(UltraBook), 서브노트북(SubNotebook), 데스크노트(DeskNote), UMPC(Ultra-Mobile PC), 데스크탑(Desktop) 등과 같은 모든 종류의 PC를 포함할 수 있다. 여기서, 사용자 단말(100)은 도 1에 도시된 형태 또는 앞서 예시된 것들로만 한정 해석되는 것은 아니다.
챗봇 서버(200)는 네트워크(510)를 통해 사용자 단말(100)로부터 수신된 자연어 질의어에 대응되는 답변을 검색하고, 대응되는 답변이 검색되는 경우 검색된 답변을 질의어에 대한 답변으로 사용자 단말(100)에게 전송할 수 있다.
그러나, 챗봇 서버(200)가 사용자 단말(100)로부터 수신된 자연어 질의어에 대응되는 답변을 검색하지 못하는 경우에는 해당 자연어 질의어에 대한 정보를 챗봇 관리 서버(300)로 전달하고, 챗봇 관리 서버(300)로부터 제공되는 라우팅 정보를 받아서 라우팅 정보에 해당하는 외부 챗봇 서버(400)로 자연어 질의어를 전달하며, 해당 외부 챗봇 서버(400)로부터 제공되는 답변을 사용자 단말(100)에게 제공할 수 있다. 여기서, 자연어 질의어에 대한 정보로는 자연어 질의어에 대해 개체명 식별(Named Entity Recognition) 기술을 통해 식별된 개체명과 의도 분류(Intent Classification) 기술을 통해 분류된 의도가 포함될 수 있다. 이 때, 개체명 식별 기술은 미리 정의해 둔 사람, 회사, 장소, 시간, 단위 등에 해당하는 단어, 즉 개체명을 인식하여 추출하는 기술이고, 의도 분류 기술은 다양한 형태의 자연어 문장에 대해 대응되는 의도로서 미리 분류한 후 입력되는 자연어 질의어에 해당하는 의도를 찾아내는 기술로서, 이미 잘 알려져 있으므로 여기에서는 구체적인 설명을 생략한다.
챗봇 서버(200)가 자연어 질의어에 대응되는 답변을 검색하는 방식으로 여러가지가 있을 수 있다. 예를 들어, 챗봇 서버(200)가 지식 베이스 기반 챗봇 서버인 경우, AIML(Artificial Intelligence Markup Language)과 같은 패턴의 매칭을 통해 답변을 검색하는 패턴 매칭 방식과, 단어와 단어의 관계를 탐색하는 온톨로지 방식으로 답변을 검색할 수 있다. 또는, 챗봇 서버(200)가 기계학습 기반 챗봇 서버인 경우, 대량의 키(key), 값(value)으로 이루어진 학습 데이터를 학습하여, 최적의 기계학습 함수 모델을 찾아낸 후 이를 API(Appliaction Programming Interface)화하여 입력 값으로 질문, 출력 값으로 답변과, 답변 정확도(%)를 검색할 수 있다. 또한, 챗봇 서버(200)는 사용자 단말(100)로부터 수신된 질의어 분석 결과 둘 이상의 질문 의도가 파악되는 경우 챗봇 서버(200) 자체 내에서 검색된 답변들 또는 챗봇 관리 서버(300)를 통해 제공받은 라우팅 정보에 따라서 외부 챗봇 서버(400)로부터 제공받은 답변들을 가공하여 복합 답변을 생성하고, 생성된 복합 답변을 사용자 단말(100)에게 최종 답변으로서 제공할 수 있다.
챗봇 관리 서버(300)는 본 발명의 실시예에 따른 챗봇 서비스를 사용하기 위해 접속되는 챗봇 서버들, 즉 챗봇 서버(200) 및 외부 챗봇 서버(400)들은 챗봇 관리 서버(300)에 자신들의 정보를 등록한다. 이 때 등록되는 정보에는 챗봇 서버를 확인할 수 있는 식별자와 챗봇 서버에 접속하기 위한 라우팅 정보, 예를 들어 접근 주소인 URL(Uniform Resource Locator) 등이 포함될 수 있다.
챗봇 관리 서버(300)는 챗봇 서버(200)로부터 자연어 질의어에 대한 정보, 즉 개체명과 의도가 전달되면 전달된 정보, 즉 개체명과 의도에 해당하는 챗봇 서버를 검색하며, 검색된 챗봇 서버에 해당하는 라우팅 정보를 챗봇 서버(200)에게 제공한다. 이 때, 챗봇 관리 서버(300)로부터 챗봇 서버(200)에게 제공되는 라우팅 정보는 하나 이상일 수 있다. 예를 들어, 챗봇 관리 서버(300)는 챗봇 서버(200)로부터 전달되는 하나의 자연어 질의어에 대해 하나 이상의 라우팅 정보를 제공할 수 있거나, 또는 챗봇 서버(200)로부터 둘 이상의 자연어 질의어가 전달되는 경우에는 둘 이상의 라우팅 정보가 챗봇 서버(200)에게 제공될 수 있다.
외부 챗봇 서버(400)는 하나 이상의 챗봇 서버로 구성되며, 네트워크(520)를 통해 챗봇 서버(200)에 연결된다. 여기서 네트워크(520)는 네트워크(510)와 마찬가지로 무선 네트워크일 수 있거나 또는 인터넷과 같은 유선 네트워크일 수 있다.
외부 챗봇 서버(400)는 챗봇 서버(200)와 유사한 구성을 가지며 외부로부터 입력되는 자연어 질의어에 대해 답변을 검색하고, 검색된 답변을 챗봇 서버(200)에게 제공한다.
외부 챗봇 서버(400)는 챗봇 서버(200)와 유사하거나 또는 상이한 토픽에 대한 지식 베이스를 갖는 챗봇 서버일 수 있다. 챗봇 관리 서버(300)에는 대부분의 외부 챗봇 서버(400)가 등록될 수 있지만, 외부 챗봇 서버(400)는 챗봇 서버(200)에서 질의어에 대한 검색이 실패하는 경우에 사용되기 때문에 유사한 토픽에 대한 정보를 제공하는 외부 챗봇 서버(400)의 경우에는 사용될 가능성이 적다.
외부 챗봇 서버(400)도 입력되는 자연어 질의어에 대한 답변 검색이 실패하는 경우가 발생하여 해당 질의어에 대해 챗봇 관리 서버(300)를 통해 라우팅 정보를 제공받을 수 있지만, 사용자 단말(100)로부터 질의어를 수신하는 것이 아니라 챗봇 서버(200)로부터 자연어 질의어를 수신하는 경우에는 수신된 질의어에 대한 답변 검색이 실패하더라도 챗봇 관리 서버(300)를 통한 계속된 검색을 수행하지 않을 수 있다. 즉, 외부 챗봇 서버(400)는 챗봇 서버(200)로부터 수신되는 자연어 질의어에 대해 답변 검색이 실패하는 경우에는 실패 응답을 챗봇 서버(200)에게 제공한다.
이하에서는 도 1에 도시된 챗봇 시스템(10)의 각 구성요소의 동작에 대해 보다 구체적으로 설명한다.
도 2는 도 1에 도시된 챗봇 서버(200)의 구체적인 구성 블록도이다.
도 2에 도시된 바와 같이, 챗봇 서버(200)는 질의어 수신부(210), 질의어 분석부(220), 정보 데이터베이스(DB)(230), 답변 생성부(240), 라우팅 정보 취득부(260), 답변 취득부(260), 답변 가공부(270) 및 답변 제공부(280)를 포함한다.
질의어 수신부(210)는 네트워크(510)를 통해 사용자 단말(100)로부터 자연어 질의어를 입력받는다.
질의어 분석부(220)는 질의어 수신부(210)를 통해 수신되는 자연어 질의어를 분석하여 수신된 자연어 질의어의 내용을 파악한다. 이러한 분석에는 개체명 식별 기술 기반의 분석, 의도 분류 기반의 분석 등이 포함된다. 즉, 질의어 수신부(210)를 통해 수신되는 자연어 질의어가 의도 분류 기반으로 몇 개의 의도를 갖는 질의어가 수신되었는지, 그리고 수신된 질의어에 대응되는 개체명은 무엇인지를 파악한다.
정보 데이터베이스(230)는 사용자의 질문에 대한 답변을 제공하기 위한 정보를 저장한다. 이러한 정보 데이터베이스(230)는 챗봇 서버(200)가 자연어 질의어에 대응되는 답변을 검색하여 제공하는 방식에 대응하도록 구성될 수 있다. 예를 들어, 챗봇 서버(200)가 지식 베이스 기반 챗봇 서버인 경우, AIML 기반의 패턴 매칭 방식의 검색과 온톨로지 방식의 검색이 가능하도록, 정보 데이터베이스(230)는 지식을 DB나 메모리에 지식 그래프 형태로 구성한다. 따라서, 챗봇 서버(200)는 정보 데이터베이스(230)에 구성된 지식 그래프를 검색하여 자연어 질의어에 대응되는 답변을 찾아서 제공할 수 있다. 또는 챗봇 서버(200)가 기계학습 기반의 챗봇 서버인 경우, 정보 데이터베이스(230)는 대량의 키(key)와 값(value)으로 이루어진 학습 데이터를 학습한 최적의 기계학습 함수 모델로 구성된다. 따라서, 챗봇 서버(200)는 정보 데이터베이스(230)로 자연어 질의어를 입력 값으로 하여 API 질의를 한 후 자연어 질의어에 대응되는 답변 및 답변 정확도, 즉 신뢰도(%)를 출력 값으로 제공받을 수 있다. 본 발명의 실시예에 따른 정보 데이터베이스(230)는 상기한 지식 베이스 기반으로 답변을 제공하기 위한 지식 베이스 또는 기계학습 기반으로 답변을 제공하기 위한 기계학습 모델 중 하나, 또는 둘 다를 포함할 수 있다.
답변 생성부(240)는 정보 데이터베이스(230)를 통해 질의어 분석부(220)에 의한 분석 결과로 입력되는 질의어에 대응되는 답변을 검색한다. 질의어 분석부(220)에 의해 복수의 질의어가 분석되는 경우 복수의 질의어 각각에 대한 답변 검색이 수행될 수 있다.
답변 생성부(240)는 질의어에 매칭되는 답변이 검색되는 경우 검색된 답변을 정보 데이터베이스(230)에서 찾아서 질의어에 대한 답변으로 추출한다.
그러나, 답변 생성부(240)는 질의어에 매칭되는 답변이 검색되지 않는 경우에는 답변이 검색되지 않은 자연어 질의어에 대한 개체명과 의도를 라우팅 정보 취득부(260)로 전달한다. 여기서, 답변 생성부(240)가 복수의 질의어에 대한 답변 검색을 수행한 경우, 복수의 질의어 중에서 답변 검색이 실패한 질의어에 대해서만 라우팅 정보 취득부(250)로 전달한다.
그 후, 답변 생성부(240)는 라우팅 정보 취득부(250)에 의해 취득되는 라우팅 정보를 자연어 질의어와 함께 답변 취득부(260)로 전달하고, 답변 취득부(260)를 통해 취득되는 자연어 질의어에 대한 답변을 전달받아서 답변 가공부(270)로 전달한다. 이 때, 답변 생성부(240)는 복수의 질의어 중에서 정보 데이터베이스(230)에서 검색된 답변이 있는 경우 해당 답변도 함께 답변 가공부(270)로 전달한다.
라우팅 정보 취득부(250)는 답변 생성부(240)로부터 전달되는 자연어 질의어에 대한 개체명과 의도를 챗봇 관리 서버(300)로 전달하고, 챗봇 관리 서버(300)로부터 제공되는 라우팅 정보를 수신하여 답변 생성부(230)로 전달한다. 이 때, 챗봇 관리 서버(300)로부터 복수의 라우팅 정보가 수신될 수 있고, 이렇게 수신되는 복수의 라우팅 정보를 모두 답변 생성부(230)로 전달한다.
답변 취득부(260)는 답변 생성부(240)로부터 전달되는 라우팅 정보와 자연어 질의어를 수신하고, 네트워크(520)를 통해, 수신된 라우팅 정보에 해당되는 외부 챗봇 서버(400)에게 자연어 질의어를 전달한 후, 외부 챗봇 서버(400)로부터 자연어 질의어에 대한 답변을 제공받아서 답변 생성부(230)로 전달한다. 이 때, 답변 취득부(260)는 답변 생성부(240)로부터 하나의 질의어에 대응되어 복수의 라우팅 정보를 수신하는 경우, 수신된 복수의 라우팅 정보에 대응되는 복수의 외부 챗봇 서버(400)에게 해당 질의어를 전달한 후 질의어에 대한 답변을 각각 수신하여 답변 생성부(240)에게 전달한다. 또한, 답변 취득부(260)는 답변 생성부(240)로부터 복수의 질의어와 이 질의어 각각에 대응되는 복수의 라우팅 정보가 전달되는 경우, 라우팅 정보별로 대응되는 외부 챗봇 서버(400)로 접속하여 해당하는 각 질의어를 전달한 후 질의어에 대한 답변을 각각 받아서, 복수의 질의어에 각각 대응되는 복수의 답변을 답변 생성부(240)로 전달한다.
답변 가공부(270)는 답변 생성부(240)로부터 전달되는 적어도 하나의 답변을 받아서 자연어 질의어에 대응되는 답변으로 가공하여 답변 제공부(280)에게 전달한다. 이 때, 답변 생성부(240)에서 검색된 자연어 질의어가 하나인 경우에는 답변 가공부(270)는 답변 생성부(240)에서 전달되는 답변을 그대로 답변 제공부(280)로 제공할 수 있다. 그러나, 답변 생성부(240)에서 검색된 자연어 질의어가 둘 이상인 경우에는 답변도 둘 이상이므로 답변 생성부(240)에서 전달되는 둘 이상의 답변을 둘 이상의 의도를 갖고 있는 자연어 질의어에 대응되도록 가공하여 복합적인 답변으로 재구성한 후 답변 제공부(280)로 전달한다.
답변 제공부(280)는 답변 가공부(270)로부터 전달되는 답변을 받아서 네트워크(510)를 통해 사용자 단말(100)에게 제공한다.
한편, 당업자라면, 질의어 수신부(210), 질의어 분석부(220), 정보 데이터베이스(230), 답변 생성부(240), 라우팅 정보 취득부(260), 답변 취득부(260), 답변 가공부(270) 및 답변 제공부(280) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다.
다음, 도 1에 도시된 챗봇 관리 서버(300)에 대해 설명한다.
도 3은 도 1에 도시된 챗봇 관리 서버(300)의 구체적인 구성 블록도이다.
도 3에 도시된 바와 같이, 챗봇 관리 서버(300)는 라우팅 테이블(310), 수신부(320), 챗봇 검색부(330) 및 송신부(340)를 포함한다.
라우팅 테이블(310)은 챗봇 관리 서버(300)에 등록한 챗봇 서버들의 정보, 특히 라우팅 정보를 저장하여 관리하는 테이블이다. 이러한 라우팅 테이블(310)에는 도 4에 도시된 바와 같이, 개체명 및 의도를 기준으로 챗봇 식별자(ID), 챗봇명, 제조사 식별자(ID), 챗봇별 접근 주소, 즉 URL, 접근 범위, 상태, 답변율 등의 필드로서 저장되어 관리될 수 있다. 여기서, 접근 범위는 공개나 인증 유무 등을 나타내는 것이고, 상태는 해당 챗봇 서버의 활성화나 비활성화 등을 나타낸다. 또한, 답변율은 인공지능 지식 베이스 기준의 지식 베이스를 갖는 챗봇 서버들이 외부로부터의 질문에 대한 답변을 제공할 때 답변에 대한 신뢰도를 나타낸다. 이러한 답변율은 인공지능 지식 베이스의 학습 정도에 따라 다를 수 있다. 예를 들어, 인공지능 지식 베이스의 학습 완성도가 높은 경우 답변율도 또한 높을 수 있다. 도 4에 도시된 라우팅 테이블(310)의 구성은 본 발명의 일 실시예에 불과하므로, 다양한 실시예들이 다르게 구성될 수 있다는 것은 당업자라면 쉽게 이해할 것이다.
수신부(320)는 챗봇 서버(200)로부터 전달되는 자연어 질의어에 대한 개체명과 의도를 수신하여 챗봇 검색부(330)로 전달한다. 챗봇 검색부(330)는 수신부(320)로부터 수신되는 개체명과 의도를 사용하여 라우팅 테이블(310)에서 질의어에 대응되는 외부 챗봇 서버(400)를 검색하고, 검색된 외부 챗봇 서버(400)에 접근할 수 있는 라우팅 정보, 즉 접근 주소인 URL을 추출하여 송신부(340)로 전달한다. 이 때, 챗봇 검색부(330)는 수신부(320)로부터 수신되는 개체명과 의도를 사용하여 라우팅 테이블(310)에서의 검색을 수행할 수 있다. 또한, 챗봇 검색부(340)는 라우팅 테이블(310)에서 검색된 외부 챗봇 서버(400)에 대한 접근 범위나 상태 등을 판단하여 라우팅 정보 제공이 가능한 경우에만 라우팅 정보를 추출할 수 있다. 예를 들어, 외부 챗봇 서버(400)가 공개로 되어 있거나 또는 활성화되어 있는 경우에 라우팅 정보를 추출할 수 있다. 또한, 챗봇 검색부(320)는 라우팅 테이블(310)로부터 라우팅 정보뿐만 아니라 검색된 외부 챗봇 서버(400)에 대한 다른 정보들, 예를 들어, 챗봇 ID, 챗봇명 등도 함께 추출하여 송신부(330)로 전달할 수 있다.
송신부(330)는 챗봇 검색부(330)로부터 전달되는 라우팅 정보를 챗봇 서버(200)로 제공한다.
이하, 도면을 참조하여 본 발명의 실시예에 따른 챗봇 서비스 제공 방법에 대해 설명한다.
도 5는 본 발명의 실시예에 따른 챗봇 서비스 제공 방법의 개략적인 흐름도이다. 도 1 내지 도 4를 참조하여 사용자 단말(100), 챗봇 서버(200), 챗봇 관리 서버(300) 및 외부 챗봇 서버(400)에 관하여 설명된 내용은 도 5에 도시된 실시예에 따른 챗봇 서비스 제공 방법에도 적용될 수 있다.
도 5를 참조하면, 챗봇 서버(200)는 네트워크(510)를 통해 사용자 단말(100)로부터 자연어 질의어를 수신한다(S100).
그러면, 챗봇 서버(200)는 수신된 자연어 질의어를 사용하여 정보 데이터베이스(230)를 통해 해당되는 답변을 검색한다(S110).
그 후, 질의어에 해당되는 답변이 검색되었는지를 판단하고(S120), 만약 질의어에 해당되는 답변이 검색되지 않으면 자연어 질의어에 대한 개체명 및 의도를 챗봇 관리 서버(300)로 전달한다(S130).
챗봇 관리 서버(300)는 챗봇 서버(200)로부터 전달되는 자연어 질의어에 대한 개체명 및 의도에 대응되는 외부 챗봇 서버(400)를 라우팅 테이블(310)을 통해 검색한다(S140).
그 후, 챗봇 관리 서버(300)는 검색된 외부 챗봇 서버(400)에 대한 라우팅 정보를 챗봇 서버(200)에게 제공한다(S150).
계속해서, 챗봇 서버(200)는 챗봇 관리 서버(300)로부터 제공되는 라우팅 정보를 사용하여 라우팅 정보에 해당하는 외부 챗봇 서버(400)에 접근하여 자연어 질의어를 전달한다(S160).
외부 챗봇 서버(400)는 챗봇 서버(200)로부터 전달되는 자연어 질의어에 해당되는 답변을 검색한 후(S170), 검색된 답변을 자연어 질의어에 대응되는 답변으로서 챗봇 서버(200)에게 제공한다(S180).
따라서, 챗봇 서버(200)는 외부 챗봇 서버(400)로부터 제공되는 답변을 상기 단계(S100)에서 수신된 자연어 질의어에 대한 답변으로서 사용자 단말(100)에게 제공한다(S190).
한편, 상기 단계(S120)에서 자연어 질의어에 해당되는 답변이 검색된 경우에는 검색된 답변을 사용자 단말(100)에게 제공한다(S190).
또한, 상기 단계(S140)에서 자연어 질의어에 대응되는 외부 챗봇 서버(400)가 검색되지 않거나 또는 상기 단계(S170)에서 자연어 질의어에 해당되는 답변이 검색되지 않을 수 있지만, 본 발명의 실시예에서는 설명의 편의를 위해, 상기 단계(S140)에서 자연어 질의어에 대응되는 외부 챗봇 서버(400)가 검색되고, 상기 단계(S170)에서 자연어 질의어에 해당되는 답변이 검색되는 것으로 가정하여 설명하였다. 선택적으로, 상기 단계(S140)에서 자연어 질의어에 대응되는 외부 챗봇 서버(400)가 검색되지 않거나 또는 상기 단계(S170)에서 자연어 질의어에 해당되는 답변이 검색되지 않은 경우에는 챗봇 서버(200)가 사용자 단말(100)로부터 수신된 자연어 질의어에 대해 답변을 제공할 수 없는 것으로 응답할 수 있다.
다음, 상기한 챗봇 서비스 방법에 대해 구체적으로 설명한다.
도 6은 본 발명의 실시예에 따라 챗봇 서버(200)가 수행하는 챗봇 서비스 방법의 흐름도이다.
도 6을 참조하면, 챗봇 서버(200)는 네트워크(510)를 통해 사용자 단말(100)로부터 자연어 질의어를 수신한다(S200).
그 후, 정보 데이터베이스(230)를 사용하여 수신되는 질의어에 해당되는 답변을 검색한다(S210). 이 때의 답변은 상기한 바와 같이, 지식 베이스 기반의 답변 또는 기계학습 기반의 답변일 수 있다.
만약 질의어에 해당되는 답변이 검색되지 않은 경우(S220), 자연어 질의어에 대한 개체명과 의도를 챗봇 관리 서버(300)에게 전달한다(S230).
그 후, 챗봇 관리 서버(300)로부터 제공되는 라우팅 정보 및 답변율을 수신하고(S240), 수신된 답변율이 미리 설정된 임계값 이상인지를 판단한다(S250).
만약 답변율이 미리 설정된 임계값 이상이면, 수신된 라우팅 정보에 해당하는 외부 챗봇 서버(400)에 접속하고(S260), 상기 단계(S200)에서 수신된 자연어 질의어를 상기 단계(S260)에서 접속된 외부 챗봇 서버(400)에게 전달한다(S270).
그 후, 외부 챗봇 서버(400)로부터 답변이 수신되면(S280), 수신된 답변을 사용자 단말(100)에게 제공한다(S290).
그러나, 상기 단계(S220)에서 자연어 질의어에 해당되는 답변이 검색되면 검색된 답변을 사용자 단말(100)로 제공한다(S290).
한편, 상기 단계(S250)에서 답변율이 미리 설정된 임계값보다 작은 경우에는 챗봇 관리 서버(300)에 의해 검색된 외부 챗봇 서버(400)를 통합 답변을 신뢰할 수 없으므로 상기 단계(S100)에서 수신된 자연어 질의어에 대한 검출 실패 응답을 사용자 단말(S100)에게 제공한다(S300).
이와 같이, 본 발명의 실시예에 따르면, 사용자 단말(100)로부터 직접 자연어 질의어를 수신하는 챗봇 서버(200)가 자연어 질의어에 대응되는 답변을 검색하지 못하는 경우에도 멀티 챗봇 서버를 구성하는 외부 챗봇 서버(400)와 자연어 대화 처리 방식을 통해 외부 챗봇 서버(400)로부터 자연어 질의어에 대한 답변을 제공받아서 사용자 단말(100)에게 제공할 수 있다. 이 때, 챗봇 서버(200)가 외부 챗봇 서버(400)를 찾기 위해 멀티 챗봇 서버를 관리하는 챗봇 관리 서버(300)를 통해 자연어 질의어에 대한 답변을 제공할 수 있는 외부 챗봇 서버(400)를 쉽게 찾아서 사용자 단말(100)로부터의 자연어 질의어에 대해 답변할 수 있으므로 챗봇 서비스에 대한 신뢰도가 향상될 수 있다.
따라서, 본 발명의 실시예에서는 단일 챗봇 서버의 지식으로 커버할 수 없는 지식 도메인에 대해 사용자가 질의했을 때, 개체명과 의도를 토대로 획득한 멀티 챗봇 서버의 정보를 통해 연동할 대상 챗봇 서버의 라우팅 정보를 획득하여 인공지능으로 스스로 외부 챗봇 서버에게 질의하여 답변할 수 있으므로 집단 지성을 구축할 수 있다.
한편, 본 발명의 실시예에 따른 챗봇 시스템(10)에서 사용자 단말(100)은 챗봇 서버(200)에게 자연어 질의어를 전달하고 챗봇 서버(200)로부터 이에 대한 답변을 제공받는 것으로만 설명하였다. 그러나, 본 발명의 기술적 범위는 여기에 한정되지 않고, 챗봇 서버(200)에서 자연어 질의어에 대한 답변 검색이 실패하는 경우 외부 챗봇 서버(400)로 접속하여 자연어 질의어에 대한 답변을 찾아서 사용자 단말(100)에게 제공하는 과정 정보를 사용자 단말(100)에서 알 수 있도록 제공할 수 있다.
예를 들어, 도 7의 (a)를 참조하면, 사용자 단말(100)의 디스플레이(110)가 도시되어 있다. 사용자가 사용자 단말(100)을 통해 챗봇 서버(200)에 접속한 후 채팅 창(111)을 통해 자연어 질의어를 입력하면 상기한 도 5에서 설명된 챗봇 서비스 방법에 따른 과정을 통해 챗봇 서버(200)가 입력된 자연어 질의어에 대한 응답을 검색하여 채팅 창(111)을 통해 사용자 단말(100)에게 제공함으로써 사용자가 자연어 질의어에 대한 답변을 확인할 수 있다. 이 때, 사용자 단말(100)의 채팅 창(111)에는 사용자가 입력한 자연어 질의어와 이 자연어 질의어에 대한 답변만이 표시되어 사용자는 챗봇 서버(200)가 외부 챗봇 서버(400)를 통해 자연어 질의어에 대한 재질의에 의해 답변을 구하는 과정을 알 수가 없다.
한편, 도 7의 (b)를 참조하면, 사용자가 사용자 단말(100)을 통해 챗봇 서버(200)에 접속한 후 채팅 창(111)을 통해 자연어 질의어를 입력하고, 챗봇 서버(200)가 자연어 질의어에 대한 답변 검출에 실패한 경우 챗봇 관리 서버(300)로부터 라우팅 정보를 제공받아서 외부 챗봇 서버(400)에 접속하여 자연어 질의어에 대한 재질의를 통해 답변을 제공받는 과정이 채팅 창(111) 내에 별도의 쪽창(112)을 생성하여 표시될 수 있다. 즉, 챗봇 서버(200)는 외부 챗봇 서버(400)와의 질의를 위한 채팅 창을 채팅 창(111) 내에 쪽창(112)으로 생성한 후, 이 쪽창을 통해 자연어 질의를 외부 챗봇 서버(400)에게 전달하고, 외부 챗봇 서버(400)로부터 제공되는 답변을 또한 쪽창(112)을 통해 표시함으로써 챗봇 서버(200)가 외부 챗봇 서버(400)를 통해 자연어 질의어에 대한 답변을 구하여 사용자 단말(100)로 제공하는 과정에 대해 사용자가 알 수 있도록 할 수 있다.
선택적으로, 상기한 쪽창(112)이 채팅 창(111) 내에 생성되지 않고 채팅 창(111)과 별개의 채팅 창(도시하지 않음)으로서 디스플레이(110) 내에 생성되어 사용자에게 챗봇 서비스 과정을 표시할 수도 있다.
도 8은 본 발명의 다른 실시예에 따른 챗봇 서버(600)의 개략적인 구성 블록도이다.
도 8을 참조하면, 본 발명의 다른 실시예에 따른 챗봇 서버(600)는 통신기(610), 입력기(620), 메모리(630), 프로세서(640) 및 버스(650)를 포함한다.
통신기(610)는 외부 구성요소와의 신호 전송을 수행한다. 구체적으로, 통신기(610)는 네트워크(510)를 통해 사용자 단말(100)과 통신을 수행하고, 직접 챗봇 관리 서버(300)와 통신을 수행하며, 또한 네트워크(520)를 통해 외부 챗봇 서버(400)와 통신을 수행한다.
입력기(620)는 외부로부터의 입력을 수신한다. 이러한 입력은 데이터 입력 또는 명령 입력일 수 있다.
메모리(630)는 사용자의 질문에 대한 답변을 제공하기 위한 정보를 지식 베이스 기반 또는 기계학습 기반으로 저장한다.
따라서, 입력기(620)는 메모리(630) 내에 정보를 지식 기반으로, 또는 기계학습 기반으로 추가하거나 또는 변경하기 위한 입력을 받을 수 있다.
또한, 메모리(630)는 코드의 집합을 저장하도록 구성되고, 그 코드는 다음과 같은 동작을 실행하기 위해 프로세서(640)를 제어하는 데 사용된다. 이러한 동작은, 통신기(610)를 통해 사용자 단말(100)로부터 질의어를 수신하는 동작, 수신된 질의어에 해당되는 답변을 검색하는 동작, 질의어에 해당되는 답변이 검색되었는지를 판단하는 동작, 질의어에 대한 개체명과 의도를 통신기(610)를 통해 챗봇 관리 서버(300)에게 전달하는 동작, 통신기(610)를 통해 챗봇 관리 서버(300)로부터 제공되는 라우팅 정보를 수신하는 동작, 수신된 라우팅 정보에 따라 통신기(610)를 통해 외부 챗봇 서버(400)에 접속하는 동작, 통신기(610)를 통해 외부 챗봇 서버(400)에게 질의어를 전달하는 동작, 통신기(610)를 통해 외부 챗봇 서버(400)로부터 답변을 제공받는 동작, 통신기(610)를 통해 질의어에 대한 답변을 사용자 단말(100)에게 제공하는 동작을 포함한다.
선택적으로, 상기한 동작은 통신기(610)를 통해 챗봇 관리 서버(300)로부터 답변율을 수신하는 동작, 수신된 답변율과 미리 설정된 임계값을 비교하는 동작, 수신된 답변율이 미리 설정된 임계값보다 작은 경우 답변 검출 실패 응답을 통신기(610)를 통해 사용자 단말(100)에게 제공하는 동작을 더 포함한다.
또한, 상기한 수신된 라우팅 정보에 따라 통신기(610)를 통해 외부 챗봇 서버(400)에 접속하는 동작은 상기한 수신된 답변율이 미리 설정된 임계값이상인 경우에 수행될 수 있다.
선택적으로, 상기한 동작은 입력기(620)를 통해 입력되는 정보에 따라 메모리(630) 내에 지식 베이스 기반 또는 기계학습 기반으로 정보를 추가하거나 또는 수정하는 동작을 추가로 포함한다.
이러한 메모리(630)는 ROM(Read Only Memory)과RAM(Random Access Memory), NVRAM(Non-Volatile Random Access Memory)을 포함할 수 있다. 또한, 프로세서(640)는 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 호칭될 수 있다. 또한, 프로세서(540)는 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다.
버스(650)는 챗봇 서버(600)의 모든 구성요소들, 즉 통신기(610), 입력기(620), 메모리(630) 및 프로세서(640)를 결합하도록 구성된다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (15)

  1. 챗봇 시스템으로서,
    복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리하며, 외부로부터 수신되는 자연어 질의어에 대한 개체명 및 의도에 해당되는 외부 챗봇 서버를 검색한 후 검색된 외부 챗봇 서버에 대한 라우팅 정보를 제공하는 챗봇 관리 서버; 및
    사용자의 질문에 답변하기 위해 지식베이스 기반 또는 기계학습 기반으로 정보를 저장하고, 사용자 단말로부터 수신되는 자연어 질의어에 해당되는 답변을 검색하여 검색된 답변을 상기 자연어 질의어에 대한 답변으로서 상기 사용자 단말에게 제공하되, 상기 자연어 질의어에 대응되는 답변이 검색되지 않는 경우 상기 챗봇 관리 서버를 통해 상기 자연어 질의어에 대한 개체명과 의도에 대응되는 라우팅 정보를 제공받아서 제공된 라우팅 정보에 대응되는 외부 챗봇 서버로 상기 자연어 질의어를 전달한 후 상기 외부 챗봇 서버로부터 제공되는 답변을 받아서 상기 사용자 단말에게 제공하는 챗봇 서버
    를 포함하며,
    상기 챗봇 서버는 상기 자연어 질의어에 대응되는 답변이 검색되지 않는 경우, 상기 자연어 질의어의 분석에 의해 파악되는 상기 자연어 질의어에 대응하는 개체명과 의도를 상기 챗봇 관리 서버로 전달하고,
    상기 챗봇 관리 서버는 상기 챗봇 서버로부터 전달되는 상기 자연어 질의어에 대응하는 개체명과 의도를 사용하여 상기 복수의 외부 챗봇 서버 중에서 상기 자연어 질의어에 답변할 적어도 하나의 외부 챗봇 서버를 검색하는,
    챗봇 시스템.
  2. 제1항에 있어서,
    상기 챗봇 서버는,
    지식베이스 기반 또는 기계학습 기반으로 정보를 저장하는 정보 데이터베이스;
    상기 정보 데이터베이스를 사용하여 상기 자연어 질의어에 해당되는 답변을 검색하는 답변 생성부;
    상기 자연어 질의어를 분석하여 상기 자연어 질의어에 대해 식별되는 개체명과 상기 자연어 질의어에 대해 분류되는 의도를 파악하는 분석부;
    상기 챗봇 관리 서버에게 상기 분석부에 의해 파악되는 상기 자연어 질의어에 대한 개체명과 의도를 전달하고, 상기 챗봇 관리 서버로부터 상기 자연어 질의어에 대응되는 라우팅 정보를 수신하는 라우팅 정보 취득부;
    상기 라우팅 정보에 대응되는 외부 챗봇 서버에 접속한 후 상기 외부 챗봇 서버를 통해 상기 자연어 질의어에 대응되는 답변을 취득하는 답변 취득부; 및
    상기 답변 생성부에 의해 검색된 답변 또는 상기 답변 취득부에 의해 취득되는 답변으로부터 상기 자연어 질의어에 대한 답변을 구성하여 상기 사용자 단말에게 제공하는 답변 가공부
    를 포함하는, 챗봇 시스템.
  3. 제2항에 있어서,
    상기 답변 생성부는 상기 정보 데이터베이스를 사용하여 상기 자연어 질의어에 대한 답변검색이 실패하는 경우 상기 자연어 질의어에 대한 개체명과 의도를 상기 라우팅 정보 취득부로 전달하여 상기 자연어 질의어에 대응되는 라우팅 정보를 취득하도록 하는,
    챗봇 시스템.
  4. 제1항에 있어서,
    상기 챗봇 관리 서버는,
    상기 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리하는 라우팅 테이블; 및
    상기 챗봇 서버로부터 수신되는 자연어 질의어에 대한 개체명과 의도를 기준으로 상기 라우팅 테이블로부터 상기 자연어 질의어에 대응되는 외부 챗봇 서버를 검색하여 검색된 외부 챗봇 서버에 대한 라우팅 정보를 상기 챗봇 서버에게 제공하는 챗봇 검색부
    를 포함하는, 챗봇 시스템.
  5. 제4항에 있어서,
    상기 라우팅 테이블은 상기 복수의 외부 챗봇 서버에 대한 답변율을 더 포함하고,
    상기 챗봇 검색부는 상기 자연어 질의어에 대응되어 검색되는 외부 챗봇 서버에 대한 답변율을 상기 챗봇 서버에게 추가로 전달하는,
    챗봇 시스템.
  6. 제5항에 있어서,
    상기 챗봇 서버는 상기 챗봇 관리 서버로부터 제공되는 답변율이 미리 설정된 임계값 이상인 경우 상기 답변율과 함께 제공되는 라우팅 정보에 대응되는 외부 챗봇 서버에 접속하여 상기 자연어 질의어에 대한 답변을 제공받는,
    챗봇 시스템.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 챗봇 서버는 상기 사용자 단말로부터 수신되는 자연어 질의어가 복수의 의도를 갖는 질의어인 경우, 상기 복수의 의도별로 질의어를 생성한 후, 각 질의어별로 상기 챗봇 서버를 통해 검색된 답변 또는 상기 외부 챗봇 서버를 통해 취득한 답변을 가공하여 복합적인 응답으로 재구성한 후 상기 자연어 질의어에 대한 답변으로 상기 사용자 단말에게 제공하는,
    챗봇 시스템.
  8. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 챗봇 서버는 상기 외부 챗봇 서버와의 채팅을 통해 상기 자연어 질의어에 대한 답변을 취득하는 과정을 상기 사용자 단말의 디스플레이를 통해 표시하는,
    챗봇 시스템.
  9. 제8항에 있어서,
    상기 외부 챗봇 서버와의 채팅을 통해 상기 자연어 질의어에 대한 답변을 취득하는 과정은, 상기 챗봇 서버가 상기 사용자 단말과의 사이에 상기 자연어 질의에 대한 답변을 제공하기 위해 표시하는 채팅 창 내의 일부에 표시되는 쪽창을 통해 표시하는,
    챗봇 시스템.
  10. 챗봇 시스템이 사용자 단말에 대해 챗봇 서비스를 제공하는 방법으로서,
    상기 챗봇 시스템이 사용자 단말로부터 수신되는 자연어 질의어에 대해 정보 데이터베이스를 통해 답변을 검색하는 단계 ― 상기 정보 데이터베이스는 지식베이스 기반 또는 기계학습 기반으로 정보를 저장함 ―;
    상기 자연어 질의어에 대해 상기 정보 데이터베이스를 통한 답변 검색이 실패하는 경우, 상기 자연어 질의어의 분석에 의해 파악되는 상기 자연어 질의어에 대응하는 개체명과 의도를 챗봇 관리 서버로 전달하고, 상기 챗봇 관리 서버를 통해 적어도 하나의 라우팅 정보를 제공받는 단계 ― 상기 챗봇 관리 서버는 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리함 ―;
    상기 챗봇 시스템이, 상기 챗봇 관리 서버로부터 제공되는 라우팅 정보에 대응되는 외부 챗봇 서버를 통해 상기 자연어 질의에 대한 답변을 제공받는 단계; 및
    상기 챗봇 시스템이, 상기 답변을 검색하는 단계에서 검색된 답변 또는 상기 답변을 제공받는 단계에서 제공받은 답변을 상기 자연어 질의어에 대한 답변으로서 가공하여 상기 사용자 단말에게 제공하는 단계
    를 포함하며,
    상기 적어도 하나의 라우팅 정보를 제공받는 단계에서, 상기 챗봇 관리 서버는 상기 챗봇 시스템으로부터 전달되는 상기 자연어 질의어에 대응하는 개체명과 의도를 사용하여 상기 복수의 외부 챗봇 서버 중에서 상기 자연어 질의어에 답변할 적어도 하나의 외부 챗봇 서버를 검색하는,
    챗봇 서비스 제공 방법.
  11. 제10항에 있어서,
    상기 챗봇 관리 서버는 상기 복수의 외부 챗봇 서버 각각에 대한 답변율을 더 저장 관리하고,
    상기 라우팅 정보를 제공받는 단계에서, 상기 챗봇 관리 서버로부터 상기 라우팅 정보와 함께 상기 답변율을 추가로 제공받으며,
    상기 라우팅 정보를 제공받는 단계와 상기 답변을 제공받는 단계 사이에,
    상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 단계를 더 포함하고,
    상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 단계에서 상기 답변율이 상기 미리 설정된 임계값 이상인 경우에 상기 답변을 제공받는 단계를 수행하는,
    챗봇 서비스 제공 방법.
  12. 제11항에 있어서,
    상기 답변율이 상기 미리 설정된 임계값보다 작은 경우 답변 검출 실패를 상기 질의어에 대한 응답으로 상기 사용자 단말에게 제공하는,
    챗봇 서비스 제공 방법.
  13. 제11항에 있어서,
    상기 라우팅 정보를 제공받는 단계에서, 상기 챗봇 시스템이 상기 자연어 질의어에 대한 개체명과 의도를 상기 챗봇 관리 서버에게 전달하고,
    상기 챗봇 관리 서버는 상기 자연어 질의어에 대한 개체명과 의도를 기준으로 외부 챗봇 서버를 검색하는,
    챗봇 서비스 제공 방법.
  14. 챗봇 시스템으로서,
    통신기, 메모리 및 프로세서를 포함하며,
    상기 통신기는 사용자 단말, 챗봇 관리 서버 - 상기 챗봇 관리 서버는 복수의 외부 챗봇 서버에 대한 접근 경로인 복수의 라우팅 정보를 저장 관리함 ― 및 외부 챗봇 서버와 통신을 수행하고,
    상기 메모리는 사용자의 질문에 대해 답변하기 위해 지식베이스 기반 또는 기계학습 기반으로 정보를 저장하고, 코드의 집합을 저장하도록 구성되며,
    상기 코드는,
    상기 통신기를 통해 상기 사용자 단말로부터 수신되는 자연어 질의어에 해당되는 답변을 검색하는 동작;
    상기 통신기를 통해 상기 챗봇 관리 서버로부터 상기 자연어 질의어에 대한 개체명과 의도에 대응되는 라우팅 정보를 제공받는 동작;
    상기 통신기를 통해, 취득된 상기 라우팅 정보에 대응되는 외부 챗봇 서버에 접속하여 상기 자연어 질의어에 대한 답변을 취득하는 동작; 및
    상기 통신기를 통해 상기 답변을 상기 사용자 단말에게 제공하는 동작
    을 실행하며,
    상기 자연어 질의어에 해당되는 답변이 검색되지 않는 경우, 상기 자연어 질의어의 분석에 의해 파악되는 상기 자연어 질의어에 대응하는 개체명과 의도를 상기 챗봇 관리 서버로 전달하고,
    상기 챗봇 관리 서버에 의해, 상기 자연어 질의어에 대응하는 개체명과 의도를 사용하여 복수의 외부 챗봇 서버 중에서 상기 자연어 질의어에 답변할 적어도 하나의 외부 챗봇 서버가 검색되어 대응하는 라우팅 정보가 제공되도록
    상기 프로세서를 제어하는 데 사용되는, 챗봇 시스템.
  15. 제14항에 있어서,
    상기 프로세서는,
    상기 통신기를 통해 상기 챗봇 관리 서버로부터 상기 라우팅 정보와 함께 답변율을 추가로 제공받는 동작; 및
    상기 답변율이 미리 설정된 임계값 이상인지를 판단하는 동작
    을 더 실행하고,
    상기 프로세서는,
    상기 답변율이 상기 미리 설정된 임계값 이상인 경우 상기 외부 챗봇 서버를 통해 상기 자연어 질의어에 대한 답변을 취득하는 동작을 실행하는,
    챗봇 시스템.
KR1020170157626A 2017-11-23 2017-11-23 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법 KR102146031B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170157626A KR102146031B1 (ko) 2017-11-23 2017-11-23 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170157626A KR102146031B1 (ko) 2017-11-23 2017-11-23 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법

Publications (2)

Publication Number Publication Date
KR20190059731A KR20190059731A (ko) 2019-05-31
KR102146031B1 true KR102146031B1 (ko) 2020-08-28

Family

ID=66657397

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170157626A KR102146031B1 (ko) 2017-11-23 2017-11-23 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법

Country Status (1)

Country Link
KR (1) KR102146031B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11641384B1 (en) 2022-05-16 2023-05-02 Mindwareworks Co., Ltd. System for linking chatbot services and contact center services
EP4231606A1 (en) 2022-02-17 2023-08-23 Mindwareworks Co.,Ltd. System for providing chatbot services in integrated way

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210030646A (ko) * 2019-09-10 2021-03-18 삼성전자주식회사 인공지능 비서를 선택하는 전자 장치 및 그 응답 제공 방법
KR102357620B1 (ko) * 2019-11-27 2022-02-03 주식회사 와이즈넛 챗봇 채널연계 통합을 위한 챗봇 통합 에이전트 플랫폼 시스템 및 그 서비스 방법
JP7334800B2 (ja) * 2019-12-11 2023-08-29 富士通株式会社 会話制御プログラム、会話制御方法及び会話制御装置
KR102416371B1 (ko) * 2019-12-31 2022-07-01 주식회사 하나금융티아이 전문 도메인 온톨로지를 이용하여 지식 기반 질의 응답 서비스를 제공하기 위한 응답 규격화 방법 및 그 장치
US10841251B1 (en) 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
KR102560298B1 (ko) * 2020-03-25 2023-07-26 한전케이디엔 주식회사 챗봇 서비스를 위한 자연어 처리 관리 시스템 및 그 방법
KR102457985B1 (ko) * 2020-09-17 2022-10-31 주식회사 포티투마루 페러프레이저 모델을 이용한 질의 응답 검색 방법 및 검색 장치
KR102436666B1 (ko) * 2021-10-19 2022-08-26 주식회사 퍼니웍 하이브리드 챗봇 서비스 시스템 및 그 서비스 방법
KR20230094032A (ko) * 2021-12-20 2023-06-27 삼성전자주식회사 전자 장치 및 그 제어 방법
US11947536B2 (en) 2022-05-26 2024-04-02 International Business Machines Corporation Identifying and processing poly-process natural language queries

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080075748A (ko) * 2007-02-13 2008-08-19 홍성훈 네트워크상의 대화로봇을 이용한 지혜획득 및 제공방법과그 시스템
KR20140004515A (ko) * 2012-07-03 2014-01-13 삼성전자주식회사 디스플레이 장치, 대화형 시스템 및 응답 정보 제공 방법
KR101590908B1 (ko) * 2013-12-24 2016-02-03 서강대학교산학협력단 채팅 데이터 학습 및 서비스 방법 및 그에 따른 시스템
KR102033395B1 (ko) * 2014-11-20 2019-10-18 한국전자통신연구원 심층 자연어 질문 분석 기반 구조화된 지식베이스 질의응답 시스템 및 그 방법
KR101797856B1 (ko) * 2016-02-24 2017-11-15 라인 가부시키가이샤 메신저 서비스를 이용한 인공지능 학습 방법 및 시스템, 그리고 인공지능을 이용한 답변 중계 방법 및 시스템

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4231606A1 (en) 2022-02-17 2023-08-23 Mindwareworks Co.,Ltd. System for providing chatbot services in integrated way
KR20230123602A (ko) 2022-02-17 2023-08-24 주식회사 마인드웨어웍스 챗봇 서비스 연계 제공 시스템
US11641384B1 (en) 2022-05-16 2023-05-02 Mindwareworks Co., Ltd. System for linking chatbot services and contact center services
EP4280562A1 (en) 2022-05-16 2023-11-22 Mindwareworks Co.,Ltd. System for linking chatbot services and contact center services
KR20230159919A (ko) 2022-05-16 2023-11-23 주식회사 마인드웨어웍스 챗봇 서비스 및 컨택센터 서비스 연계 제공 시스템

Also Published As

Publication number Publication date
KR20190059731A (ko) 2019-05-31

Similar Documents

Publication Publication Date Title
KR102146031B1 (ko) 멀티 도메인 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법
US11075853B2 (en) Resource prioritization and communication-channel establishment
KR102517843B1 (ko) Aiml 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법
KR102047010B1 (ko) 중계 챗봇을 이용하여 인스턴트 메시징 서비스를 제공하는 서버, 단말 및 방법
KR100959292B1 (ko) 이동 단말기에서 서비스 디스커버리를 향상시키는 방법,장치 및 컴퓨터 프로그램 명령어들
CN100566301C (zh) 可动作型消息传递
US7460884B2 (en) Data buddy
KR101999780B1 (ko) 가상 챗봇을 이용하여 인스턴트 메시징 서비스를 제공하는 서버, 단말 및 방법
EP3868090B1 (en) Dynamic endpoint communication channels
KR101922037B1 (ko) 페이지 조작 처리 방법 및 장치, 그리고 단말기
CN112399130B (zh) 云视频会议信息的处理方法、装置、存储介质和通信设备
US20200167429A1 (en) Efficient use of word embeddings for text classification
Espada et al. Using extended web technologies to develop Bluetooth multi-platform mobile applications for interact with smart things
CN105827798A (zh) 一种位置信息的处理方法及电子设备
KR20190097947A (ko) 사용자 질의를 처리하는 장치, 방법 및 컴퓨터 프로그램
US20180285092A1 (en) Software update intervention as a service for industrial control systems
EP3493484A1 (en) Devices, systems and methods for communication in an iot environment
CN103222252A (zh) 用于选择性启动通信的服务访问设备、方法、计算机程序及计算机程序产品
CN105704686A (zh) 一种基于短信的即时通讯方法、装置及系统
US20190012399A1 (en) Systems and Methods for Recommending Objects Based on Captured Data
CN114788393A (zh) 设备间通信方法、装置、和存储介质
KR20230061190A (ko) 챗봇을 활용한 정보제공 시스템
KR101538467B1 (ko) 링크정보 공유 시스템, 이동통신 단말기 및 그 텍스트 전송방법
KR101484702B1 (ko) 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템
CN105072205A (zh) 基于蓝桥的网络系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant