[go: up one dir, main page]

WO2015194684A1 - Method for providing service according to user dialogue and dialogue agent system - Google Patents

Method for providing service according to user dialogue and dialogue agent system Download PDF

Info

Publication number
WO2015194684A1
WO2015194684A1 PCT/KR2014/005245 KR2014005245W WO2015194684A1 WO 2015194684 A1 WO2015194684 A1 WO 2015194684A1 KR 2014005245 W KR2014005245 W KR 2014005245W WO 2015194684 A1 WO2015194684 A1 WO 2015194684A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
user
providing
information
dialog
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2014/005245
Other languages
French (fr)
Korean (ko)
Inventor
김경선
이용환
이정진
권영민
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NHN Diquest Inc
Original Assignee
Diquest Inc
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 Diquest Inc filed Critical Diquest Inc
Priority to PCT/KR2014/005245 priority Critical patent/WO2015194684A1/en
Publication of WO2015194684A1 publication Critical patent/WO2015194684A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present invention relates to a service providing method and a dialog agent system according to a user dialog, and more particularly, a method for extracting necessary information from a user's dialog and providing a service and a dialog agent system performing the method. It is about.
  • End-user devices such as smartphones and tablet computers, are able to run software applications to perform a variety of tasks and provide different types of information over the Internet, including the functions, services, and information they can access and perform.
  • the back is skyrocketing.
  • Each application, function, and website has its own user interface and mode of operation, which can be burdensome or overwhelming for users to learn.
  • many users may have difficulty even finding what functionality or information is available on their electronic devices or various websites and thus may not be able to effectively use the resources available to them.
  • a user interface has been introduced that allows a user to input a dialogue (dialog) form of a sentence by voice or text to interpret the information and to obtain information corresponding to the input content or to perform a function.
  • a dialogue digital
  • voice or text to interpret the information and to obtain information corresponding to the input content or to perform a function.
  • Siri an Apple-provided service
  • Siri specifically provides a user interface by interpreting the user's voice input and responding with voice / text / graphics, or by performing the function requested by the user (such as dialing). Even if you don't learn it, you can easily perform functions and get information.
  • Siri is a dialog agent system installed in iPhone, Apple's smartphone, and it is difficult to use other application services in conjunction with Siri in addition to Siri-linked services provided by Apple.
  • S-Voice a dialog agent system installed on Galaxy, Samsung's smartphone, is also based on the connection with the service provided by the manufacturer (basically built in the terminal) and only external services using search.
  • the service provided by the manufacturer basic built in the terminal
  • only external services using search As a target service, there is a shortage of linkage with various external services, and it is difficult for an external company to make an application using the same.
  • the present invention has been made in view of this point, and provides a service providing method and a dialog agent system according to a user dialog capable of grasping a user's intention to perform desired services or to perform a function such as device control. .
  • Another object of the present invention is that even when a new application service (a variety of apps in the market and services provided by the web) is released, an application service developer, not a core software developer such as a manufacturer, talks about a new application service developed by the developer. It is to provide a service providing method and a dialog agent system according to a user dialog that can be added to easily connect with a user interface. Accordingly, the application services can be used in conjunction with the dialog agent system to increase the utilization, and the dialog agent system can be activated by providing a means for utilizing various application services.
  • Still another object of the present invention is to provide a service providing method and a dialog agent system according to a user dialog that can be applied to a user interface of various devices (smartphone, tablet, vehicle infotainment device, etc.) as a module.
  • the service providing method for achieving the above object, the step of extracting the user's intention and attribute information from the user dialog, the search for searching for services using the extracted user intention and attribute information
  • the user dialog may be converted into text by recognizing the user's voice.
  • the search step is to find a suitable service to be provided according to the user's intention.
  • the search step stores the user's intention registered by the service provider, service area, necessary information for processing the service, and service provider information regarding the service provider providing the service.
  • the service profile is used to find services that match the user's intention.
  • Service providers include programs that provide services, and websites that provide services.
  • the necessary information is obtained by linguistic analysis of the dialog of the user with parameter information necessary to perform the service.
  • the mediation step is to select the appropriate service for the user among the searched services or to generate information necessary for the service. There may be a large number of services searched according to the user's intention, and a suitable result is selected or provided according to the service provision range specified in the user's preference or profile, or the contents of the plurality of services are combined to generate a necessary result.
  • the mediation step at least one of selecting a provided service using a service providing range, selecting a provided service using a user preference, and providing a combination of information obtained using a plurality of services may be performed. Can be.
  • the delegation step is to execute the selected service using an application framework provided according to each device.
  • the service providing method may further include receiving a user's intention, service area, necessary information for processing a service, and service provider information regarding a service to be provided from a service provider and storing the received information in a service profile. It may further include.
  • the dialog agent system of the present invention is a dialog agent system for providing a service according to a user dialog, and includes a memory in which one or more processors and instructions are stored.
  • the instructions when executed by the one or more processors, cause the processors to extract user intent and attribute information from a user dialog, and to search for services using the extracted user intent and attribute information.
  • the system of the present invention may further include an editor for receiving a user's intention, service area, necessary information, and service provider information about a service to be provided from a service provider and storing the received information in the service profile.
  • the client program capable of using the dialog agent of the present invention since only the client program capable of using the dialog agent of the present invention needs to be installed in the terminal, it can be applied as a user interface tool to various devices.
  • 1 is a conceptual diagram illustrating an environment in which the dialog agent system of the present invention operates.
  • Figure 2 is a block diagram showing the internal configuration of the dialog agent system of the present invention.
  • 3 is a flowchart showing the operation flow of the dialog agent system of the present invention.
  • the term “app” or “program” is used interchangeably to indicate software installed in a terminal and providing a service.
  • the terms “conversation” or “dialog” are used interchangeably to indicate a sentence input by a user.
  • 1 is a conceptual diagram illustrating an environment in which the dialog agent system of the present invention operates.
  • the dialog agent system 100 of the present invention is connected to a terminal such as a mobile phone 10, a tablet, a smart TV, a PC 20, and the like through a communication network such as a wireless network (3G, LTE, WiFi), a wired network (Internet), and the like.
  • a terminal such as a mobile phone 10, a tablet, a smart TV, a PC 20, and the like through a communication network such as a wireless network (3G, LTE, WiFi), a wired network (Internet), and the like.
  • a terminal 10, 20 is provided with a client program for providing information to the user in an interactive form and performing a desired function by the user in cooperation with the dialog agent system of the present invention.
  • the user executes a client program and enters voice or text interactively to request the desired information or service.
  • the input contents are transmitted to the dialog agent system 100 through a communication network, and the dialog agent system 100 processes the input contents and processes the input contents to process the intention shown in the user's conversation.
  • the client program uses this information to either respond to the user or perform the service (app or web) requested by the user using the parameters contained in this information.
  • Figure 2 is a block diagram showing the internal configuration of the dialog agent system of the present invention.
  • the dialog agent system 100 has a transmission / reception server function for exchanging data with a user terminal.
  • the transmission / reception server function is provided with a web server / WAS (Web Application Server) using a web protocol or a server program using its own protocol.
  • the data from the user terminal may be voice data spoken by the user or text data input by the user.
  • the association with the client program with the dialog agent system 100 is preferably defined in an XML based protocol.
  • the server 110 transmits it to the voice recognition unit 120 to convert the voice data into text.
  • the converted text is again converted into a request code form and transmitted to the DA (Dialogue Agent) manager 130.
  • DA Dialogue Agent
  • DA (Dialogue Agent) management unit 130 selects a worker to perform the task according to the request code (request code) from the web server / WAS (110), and the result is performed again through the web server / WAS (110) Provided by client program.
  • the input conversation content is processed by the natural language processing engine 140.
  • the natural language processing engine 140 extracts user intention and attribute information from the conversation contents. For example, if the sentence “What is the weather in Gangwon-do?" Is entered, it is understood that the intention of this sentence is "weather_view", the area is “weather”, and the place is "gangwon-do".
  • the performing engine 150 searches for services using user intention and attribute information, an arbitration step of determining services to be provided among the searched services, and generating information necessary for providing the services, and the determined services.
  • the delegation step of transferring the system control authority while providing the generated information to the providing service provider is performed.
  • Service profiles are a database describing the characteristics of services, making services developed by service developers easier and more easily applicable.
  • the service profile consists of the domain representing the service, type of service provision, service provider information, and necessary information necessary to process the service belonging to the domain.
  • the profile is used by the service developer to use the editor 160. Register directly.
  • the main fields included in the service profile are as follows.
  • -Domain information on which services the service belongs to (e.g. bus, weather, exchange rate, etc.)
  • Type for providing services on each device e.g. web service, native app, hybrid app, etc.
  • -Service provider information information about the service provider that provides the service. Address information (URL, etc.) of the service (web site) to which control is delegated to perform the service, or program execution information (Intent, etc. for Android OS). Information from
  • -Necessary information Defined according to the characteristics of each service to be linked with the parameter information required to process the service (e.g. weather service of Portal A can be linked using "Date” and “Place” as parameters. "Date” and "place” are necessary information)
  • the dialog agent system of the present invention also includes an editor 160 that enables a service developer who is not a conversation management expert to easily add or delete a new service, and a simulator 170 that can simulate the added service through a conversation interface. Can be provided.
  • the editor 160 is a tool for associating a dialogue interface with a service developed by a service developer, and edits and registers the above-described service profile so that the dialogue agent system can be used.
  • the simulator 170 simulates the execution of a service registered with the editor 160 through an actual dialog interface.
  • the voice recognition unit 120 recognizes this and converts it into text data (step 310). This step is not performed when the user's voice is converted into text in the terminal and input to the dialog agent system 100, or when the user inputs the conversation contents in the text.
  • the natural language processing engine 140 extracts user intention and attribute information from the user dialog (step 320).
  • the user dialog "What's the weather in Gangwon-do?" Goes through the steps of morphological analysis, syntax syntax, and semantic analysis.
  • the execution engine 150 performs the following steps by using information extracted from the natural language processing engine and stored service profiles.
  • the services are searched using the extracted user intention (step 330).
  • an arbitration step of determining a service to be provided from among one or more services discovered in the previous step and generating information necessary for providing the service is performed (step 340).
  • the mediation stage may be configured to determine which services to provide or to process and provide information from one of three forms:
  • -Service selection using service provision range Appropriate services using the service provision scope of each service registered in the service profile (determined from the necessary information registered in the service profile or a separate service provision field may be prepared). Select. For example, if A weather service and B weather service are searched according to the user's intention "weather_view", A weather service is registered in the service profile with "place” and "time” as necessary information, and each attempt is made according to the place. When the weather service is available and B weather service is required information, only "time” is registered. If the weather service is not available for each attempt, the weather service is requested for each attempt (Gangwon-do). Arbitrate to use weather services.
  • the provided service is selected using the user's preference (priority of the attribute information such as frequency, place, and time used by the user) among the searched services. For example, if a user uses the A weather service more often than the B weather service as the weather service, the user arbitrates to select the A weather service first. In addition, if the weather service according to the time change is used more than the regional weather, it arbitrates to select the weather for the daily time change first.
  • -Combination of information using multiple services Creates new information using the information included in the discovered service and provides it as a service. For example, if the user asks "What is the nearest restaurant?" And “Menu.com” and “Wingbus" are registered in the service profile for "Restaurant_Find", then the mediation step is a restaurant that combines the information of the two services. Create and provide information.
  • the execution engine 150 delegates the system control authority while providing the parameters to the service providers registered in the service profile of the corresponding service (step 360).
  • the dialog agent system 100 may be configured to be embedded in the terminal.
  • the user's conversation input is analyzed by the embedded dialog agent system and controlled to provide the information / service requested by the user.
  • the app using the dialog agent of the present invention in addition to the method of running the app through a general user interface Can be run.
  • some or all of the functions described above may be configured as separate hardware, or may be configured as a memory device that stores one or more processors and a program for performing the function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Provided are a method for providing a service by extracting necessary information from a user dialogue, and a dialogue agent system for performing the same method. The method for providing the service according to a user dialogue of the present invention comprises: a step for extracting keywords from the user dialogue; a searching step for searching for services by using the extracted keywords; an intervention step for determining the service to be provided from among the searched for services, and generating the information necessary for providing the corresponding service; and a delegation step for delegating system control authority while providing the generated information to a service provider providing the determined service. According to the present invention, a service developer, excluding a software developer, can easily add an interactive interface for a new service by using an editor when providing the new service.

Description

사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템Service provision method and dialog agent system according to user dialog

본 발명은 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템에 관한 것으로서, 더욱 상세하게는 사용자의 다이알로그로부터 필요한 정보를 추출하여 서비스를 제공하기 위한 방법 및 이 방법을 수행하는 다이알로그 에이전트 시스템에 관한 것이다.The present invention relates to a service providing method and a dialog agent system according to a user dialog, and more particularly, a method for extracting necessary information from a user's dialog and providing a service and a dialog agent system performing the method. It is about.

스마트폰, 태블릿 컴퓨터 등과 같은 일반 사용자용의 장치들은 소프트웨어 애플리케이션들을 구동하여 다양한 작업들을 수행하고 인터넷 등을 통해 다양한 유형의 정보를 제공할 수 있게 되었으며, 이들이 액세스하고 수행할 수 있는 기능, 서비스 및 정보 등은 급증하고 있다.End-user devices, such as smartphones and tablet computers, are able to run software applications to perform a variety of tasks and provide different types of information over the Internet, including the functions, services, and information they can access and perform. The back is skyrocketing.

각각의 애플리케이션, 기능, 웹사이트들은 독자적인 사용자 인터페이스 및 작동 양식을 가지며, 이들은 사용자들이 학습하기가 부담스럽거나 압도적일 수 있다. 또한, 많은 사용자들은 자신의 전자 디바이스들 또는 다양한 웹사이트들에서 어떤 기능이나 정보를 이용할 수 있는지를 찾는 것에서조차도 어려움을 겪을 수 있고 그에 따라 그들이 이용할 수 있는 자원들을 효과적으로 사용하지 못할 수 있다.Each application, function, and website has its own user interface and mode of operation, which can be burdensome or overwhelming for users to learn. In addition, many users may have difficulty even finding what functionality or information is available on their electronic devices or various websites and thus may not be able to effectively use the resources available to them.

이러한 어려움을 해결하기 위한 한가지 방법으로서, 사용자가 대화(다이알로그) 형태의 문장을 음성 또는 문자로 입력하면 이를 해석하여 입력된 내용에 맞는 정보를 가져오거나 기능을 수행하도록 하는 사용자 인터페이스가 등장하고 있다.As a way to solve this difficulty, a user interface has been introduced that allows a user to input a dialogue (dialog) form of a sentence by voice or text to interpret the information and to obtain information corresponding to the input content or to perform a function. .

예를 들면, 애플사에서 제공하는 시리(Siri)라는 서비스는, 사용자의 음성 입력을 해석하여 음성/문자/그래픽 등으로 답변을 주거나 사용자가 요청한 기능(전화걸기 등)을 수행하도록 함으로써 특별히 사용자 인터페이스를 익히지 않더라도 쉽게 기능을 수행하고 정보를 얻을 수 있도록 하고 있다. 그러나, 시리는 애플의 스마트폰인 아이폰에 탑재된 다이알로그 에이전트 시스템으로서, 애플에서 제공하는 시리 연계 서비스 외에 다른 어플리케이션 서비스를 시리에 연동하여 사용하기가 어렵다.For example, Siri, an Apple-provided service, specifically provides a user interface by interpreting the user's voice input and responding with voice / text / graphics, or by performing the function requested by the user (such as dialing). Even if you don't learn it, you can easily perform functions and get information. However, Siri is a dialog agent system installed in iPhone, Apple's smartphone, and it is difficult to use other application services in conjunction with Siri in addition to Siri-linked services provided by Apple.

또한, 삼성전자의 스마트폰인 갤럭시에 탑재된 다이알로그 에이전트 시스템인 S-Voice 또한 제조사가 제공하는 서비스(단말기 내에 기본적으로 탑재된 서비스)와의 연계를 기본으로 하며 검색을 활용한 외부서비스 등만을 연계 대상서비스로 하여, 다양한 외부서비스와의 연계가 부족하고, 외부 업체에서 이를 활용한 애플리케이션을 만들기 어렵다는 문제가 있다.In addition, S-Voice, a dialog agent system installed on Galaxy, Samsung's smartphone, is also based on the connection with the service provided by the manufacturer (basically built in the terminal) and only external services using search. As a target service, there is a shortage of linkage with various external services, and it is difficult for an external company to make an application using the same.

본 발명은 이러한 점을 감안하여 이루어진 것으로서, 사용자의 의도를 파악하여 원하는 서비스들을 수행하거나 기기 제어 등의 기능을 수행할 할 수 있는 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템을 제공하는 것이다. SUMMARY OF THE INVENTION The present invention has been made in view of this point, and provides a service providing method and a dialog agent system according to a user dialog capable of grasping a user's intention to perform desired services or to perform a function such as device control. .

본 발명의 다른 목적은 새로운 어플리케이션 서비스(마켓에 존재하는 다양한 앱 및 웹에서 제공되는 서비스들)이 출시되었을 경우에도 제조사 등의 코어 소프트웨어 개발자가 아닌 어플리케이션 서비스 개발자가 자신이 개발한 새로운 어플리케이션 서비스를 대화형 인터페이스와 쉽게 연계하여 사용하도록 추가할 수 있는 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템을 제공하는 것이다. 이에 따라 어플리케이션 서비스들은 다이알로그 에이전트 시스템과 연계하여 활용도를 높일 수 있고 다이알로그 에이젼트 시스템은 다양한 어플리케이션 서비스에 대한 활용 수단을 제공하여 활성화 될 수 있다. Another object of the present invention is that even when a new application service (a variety of apps in the market and services provided by the web) is released, an application service developer, not a core software developer such as a manufacturer, talks about a new application service developed by the developer. It is to provide a service providing method and a dialog agent system according to a user dialog that can be added to easily connect with a user interface. Accordingly, the application services can be used in conjunction with the dialog agent system to increase the utilization, and the dialog agent system can be activated by providing a means for utilizing various application services.

본 발명의 또 다른 목적은 다양한 기기(스마트 폰, 태블릿, 차량용 인포테인먼트기기 등)의 사용자 인터페이스에 모듈로 적용할 수 있는 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템을 제공하는 것이다. Still another object of the present invention is to provide a service providing method and a dialog agent system according to a user dialog that can be applied to a user interface of various devices (smartphone, tablet, vehicle infotainment device, etc.) as a module.

이러한 목적을 달성하기 위한 본 발명의 사용자 다이알로그에 따른 서비스 제공 방법은, 사용자 다이알로그로부터 사용자의 의도와 속성정보를 추출하는 단계와, 추출된 사용자 의도와 속성정보를 사용하여 서비스들을 탐색하는 탐색단계와, 탐색된 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재단계, 상기 결정된 서비스를 제공하는 서비스 제공처로 상기 생성된 정보를 제공하면서 시스템 컨트롤 권한을 넘기는 위임단계를 포함한다. 사용자 다이알로그는 사용자의 음성을 인식하여 텍스트로 변환한 것일 수 있다. The service providing method according to the user dialog of the present invention for achieving the above object, the step of extracting the user's intention and attribute information from the user dialog, the search for searching for services using the extracted user intention and attribute information A mediation step of deciding a service to be provided from among the discovered services and generating information necessary to provide the service, and a delegation step of transferring system control authority while providing the generated information to a service provider providing the determined service. Include. The user dialog may be converted into text by recognizing the user's voice.

탐색단계는, 사용자 의도에 따라 제공해야할 적합한 서비스를 찾는 단계로 서비스 제공자가 등록한 사용자 의도, 서비스 영역, 서비스를 처리하기 위해 필요한 필요정보, 해당 서비스를 제공하는 서비스 제공처에 관한 서비스 제공처 정보 등을 저장하고 있는 서비스 프로파일을 이용하여 상기 사용자의 의도와 일치하는 서비스들을 찾는 것이다. 서비스 제공처는 서비스를 제공하는 프로그램, 서비스를 제공하는 웹사이트를 포함한다. 상기 필요정보는, 서비스를 수행하는데 필요한 매개변수정보로 사용자의 다이얼로그를 언어 분석하여 얻어진다. The search step is to find a suitable service to be provided according to the user's intention. The search step stores the user's intention registered by the service provider, service area, necessary information for processing the service, and service provider information regarding the service provider providing the service. The service profile is used to find services that match the user's intention. Service providers include programs that provide services, and websites that provide services. The necessary information is obtained by linguistic analysis of the dialog of the user with parameter information necessary to perform the service.

중재단계는 탐색된 서비스들 중에 사용자에게 적절한 서비스를 선택하거나 서비스에 필요한 정보를 만들어 내는 단계이다. 사용자의 의도에 맞게 탐색된 서비스들은 다수가 존재할 수 있으며 사용자의 기호나 프로파일에 명시된 서비스 제공 범위에 따라 적절한 서비스를 선택하여 제공하거나 다수의 서비스의 내용을 조합하여 필요한 결과를 생성한다. 중재단계에서는 서비스 제공 범위를 이용하여 제공 서비스를 선택하는 동작과, 사용자 기호를 이용하여 제공 서비스를 선택하는 동작과, 다수 서비스를 이용하여 획득한 정보를 조합하여 제공하는 동작 중의 적어도 하나 를 수행할 수 있다. The mediation step is to select the appropriate service for the user among the searched services or to generate information necessary for the service. There may be a large number of services searched according to the user's intention, and a suitable result is selected or provided according to the service provision range specified in the user's preference or profile, or the contents of the plurality of services are combined to generate a necessary result. In the mediation step, at least one of selecting a provided service using a service providing range, selecting a provided service using a user preference, and providing a combination of information obtained using a plurality of services may be performed. Can be.

위임단계는 선택된 되어진 서비스를 각 기기에 따라 제공되는 어플리케이션 프레임워크를 이용해 실행하는 단계이다. The delegation step is to execute the selected service using an application framework provided according to each device.

본 발명의 사용자 다이알로그에 따른 서비스 제공 방법은 또한, 서비스 제공자로부터 제공할 서비스에 관한 사용자의도, 서비스 영역, 서비스를 처리하기 위한 필요정보 및 서비스 제공처 정보를 입력받아서 상기 서비스 프로파일에 저장하는 단계를 더 포함할 수 있다.The service providing method according to the user dialog of the present invention may further include receiving a user's intention, service area, necessary information for processing a service, and service provider information regarding a service to be provided from a service provider and storing the received information in a service profile. It may further include.

본 발명의 다이알로그 에이전트 시스템은, 사용자 다이알로그에 따른 서비스를 제공하기 위한 다이알로그 에이전트 시스템으로서, 하나 이상의 프로세서들 및 명령어들이 저장된 메모리를 포함한다.The dialog agent system of the present invention is a dialog agent system for providing a service according to a user dialog, and includes a memory in which one or more processors and instructions are stored.

상기 명령어들은 상기 하나 이상의 프로세서들에 의해 실행될 때 상기 프로세서들로 하여금, 사용자 다이알로그로부터 사용자 의도와 속성정보를 추출하는 동작과, 추출된 사용자 의도와 속성정보를 사용하여 서비스들을 탐색하는 탐색동작과, 탐색된 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재동작과, 상기 결정된 서비스를 제공하는 서비스 제공처로 상기 생성된 정보를 제공하면서 시스템 컨트롤 권한을 넘기는 위임동작을 포함하는 동작들을 수행하게 한다. 본 발명의 시스템은 또한, 서비스 제공자로부터 제공할 서비스에 관한 사용자 의도, 서비스 영역, 필요정보 및 서비스 제공처 정보를 입력받아서 상기 서비스 프로파일에 저장하는 편집기를 더 포함할 수 있다. The instructions, when executed by the one or more processors, cause the processors to extract user intent and attribute information from a user dialog, and to search for services using the extracted user intent and attribute information. A mediation operation for determining a service to be provided from among the searched services and generating information for providing the service, and a delegation operation for transferring the system control authority while providing the generated information to a service provider providing the determined service. To perform the operations. The system of the present invention may further include an editor for receiving a user's intention, service area, necessary information, and service provider information about a service to be provided from a service provider and storing the received information in the service profile.

본 발명에 따르면, 대화를 사용하는 쉬운 인터페이스를 사용하여 앱 또는 웹사이트의 사용자 인터페이스에 상관없이 서비스들을 수행하거나 기기 제어 등의 기능을 수행할 수 있으므로, 새로운 앱 또는 새로운 기기를 사용할 때마다 사용법을 익히기 위하여 시간을 들일 필요가 없으며 누구나 서비스를 쉽게 이용할 수 있다. According to the present invention, it is possible to perform services or perform functions such as device control regardless of the user interface of an app or a website using an easy interface using a conversation. You don't have to spend time to learn and anyone can use the service easily.

또한, 새로운 서비스를 제공하고자 하는 경우에도 소프트웨어 개발자가 아닌 서비스 개발자가 편집기를 사용하여 손쉽게 새로운 서비스에 대한 대화형 인터페이스를 추가할 수 있으므로, 외부서비스(마켓에 존재하는 다양한 앱 및 웹에서 제공되는 서비스들)를 다이알로그 에이전트 시스템과 편리하게 연계할 수 있으며, 이에 따라 보다 쉽게 다이알로그 에이전트를 활용할 수 있게 되어 다이알로그 에이전트의 활용도가 높아진다.In addition, even if you want to provide a new service, service developers, not software developers, can easily add interactive interfaces to new services using the editor, so that external services (services provided by various apps and webs in the market) E) can be conveniently linked to the dialog agent system, and thus the dialog agent can be more easily utilized, thereby increasing the utilization of the dialog agent.

또한, 본 발명의 방법을 제공하기 위해서는 단말기에 본 발명의 다이알로그 에이전트를 사용할 수 있는 클라이언트 프로그램만을 설치하면 되므로, 다양한 기기에 사용자 인터페이스 도구로서 적용할 수 있다. In addition, in order to provide the method of the present invention, since only the client program capable of using the dialog agent of the present invention needs to be installed in the terminal, it can be applied as a user interface tool to various devices.

도 1은 본 발명의 다이알로그 에이전트 시스템이 동작하는 환경을 설명하기 위한 개념도이다.1 is a conceptual diagram illustrating an environment in which the dialog agent system of the present invention operates.

도 2는 본 발명의 다이알로그 에이전트 시스템의 내부 구성을 보여주는 블록도이다.Figure 2 is a block diagram showing the internal configuration of the dialog agent system of the present invention.

도 3은 본 발명의 다이알로그 에이전트 시스템의 동작 흐름을 보여주는 흐름도이다.3 is a flowchart showing the operation flow of the dialog agent system of the present invention.

이하, 도면을 참조하여 본 발명의 바람직한 실시예에 대해서 상세히 설명한다. 이하의 설명에서는 단말기에 설치되어 서비스를 제공하는 소프트웨어를 나타내기 위하여 "앱(App)" 또는 "프로그램"이라는 용어를 혼용하였다. 또한, 사용자가 입력한 문장을 나타내기 위하여 "대화" 또는 "다이알로그"라는 용어를 혼용하였다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, the term "app" or "program" is used interchangeably to indicate software installed in a terminal and providing a service. In addition, the terms "conversation" or "dialog" are used interchangeably to indicate a sentence input by a user.

도 1은 본 발명의 다이알로그 에이전트 시스템이 동작하는 환경을 설명하기 위한 개념도이다.1 is a conceptual diagram illustrating an environment in which the dialog agent system of the present invention operates.

본 발명의 다이알로그 에이전트 시스템(100)에는 무선망(3G, LTE, WiFi), 유선망(인터넷) 등의 통신망을 통해 휴대폰(10), 태블릿, 스마트 TV, PC(20) 등의 단말기가 연결된다. 각 단말기(10, 20)에는 본 발명의 다이알로그 에이전트 시스템과의 협력에 의해 대화형태로 사용자에게 정보를 제공하고 사용자가 원하는 기능을 수행할 수 있도록 하는 클라이언트 프로그램이 설치되어 있다. The dialog agent system 100 of the present invention is connected to a terminal such as a mobile phone 10, a tablet, a smart TV, a PC 20, and the like through a communication network such as a wireless network (3G, LTE, WiFi), a wired network (Internet), and the like. . Each terminal 10, 20 is provided with a client program for providing information to the user in an interactive form and performing a desired function by the user in cooperation with the dialog agent system of the present invention.

사용자는 클라이언트 프로그램을 실행시키고 음성 또는 문자를 대화형태로 입력하여 원하는 정보 또는 서비스를 요청한다. 입력된 내용은 통신망을 통해 다이알로그 에이전트 시스템(100)에 전달되고, 다이알로그 에이전트 시스템(100)은 입력된 내용을 처리하여 사용자의 대화에 나타난 의도를 처리할 수 있는 정보를 통신망을 통해 해당 단말기로 전송하고 클라이언트 프로그램은 이 정보를 이용하여 사용자에게 답변하거나 사용자가 요청한 서비스(앱 또는 웹)를 이 정보에 포함된 매개변수를 이용하여 수행한다. The user executes a client program and enters voice or text interactively to request the desired information or service. The input contents are transmitted to the dialog agent system 100 through a communication network, and the dialog agent system 100 processes the input contents and processes the input contents to process the intention shown in the user's conversation. The client program uses this information to either respond to the user or perform the service (app or web) requested by the user using the parameters contained in this information.

도 2는 본 발명의 다이알로그 에이전트 시스템의 내부 구성을 보여주는 블록도이다.Figure 2 is a block diagram showing the internal configuration of the dialog agent system of the present invention.

다이알로그 에이전트 시스템(100)은 사용자 단말기와 데이터를 주고 받기 위한 송수신 서버기능를 구비한다. 송수신 서버기능은 웹 프로토콜을 이용한 웹서버/WAS(Web Application Server)를 이용하거나 자체 프로토콜을 사용하는 자체 서버 프로그램으로 구비된다. 사용자 단말기로부터의 데이터는 사용자가 말한 음성 데이터일 수도 있고, 사용자가 입력한 텍스트 데이터일 수도 있다. 또한, 실시예에 따라서는 사용자가 음성으로 입력한 내용을 단말기에서 음성 인식하여 텍스트로 변환한 다음에, 변환된 텍스트를 다이알로그 에이전트 시스템(100)으로 전송하도록 구성하는 것도 가능하다. 다이알로그 에이젼트 시스템(100)과의 클라이언트 프로그램과의 연계는 XML 기반 프로토콜로 정의되는 것이 바람직하다. The dialog agent system 100 has a transmission / reception server function for exchanging data with a user terminal. The transmission / reception server function is provided with a web server / WAS (Web Application Server) using a web protocol or a server program using its own protocol. The data from the user terminal may be voice data spoken by the user or text data input by the user. In addition, according to the exemplary embodiment, it is possible to configure the terminal to recognize the voice input by the terminal, convert the text into a text, and then transmit the converted text to the dialog agent system 100. The association with the client program with the dialog agent system 100 is preferably defined in an XML based protocol.

입력된 내용이 음성 데이터인 경우에 서버(110)는 이를 음성인식부(120)로 전달하여 음성 데이터를 텍스트로 변환하도록 한다. 변환된 텍스트는 다시 리퀘스트 코드(request code) 형태로 변환되어 DA(Dialogue Agent) 관리부(130)로 전달된다. If the input content is voice data, the server 110 transmits it to the voice recognition unit 120 to convert the voice data into text. The converted text is again converted into a request code form and transmitted to the DA (Dialogue Agent) manager 130.

DA(Dialogue Agent) 관리부(130)는 웹서버/WAS(110)로부터의 리퀘스트 코드(request code)에 따라 태스크를 수행할 워커를 선정하며, 수행된 결과를 다시 웹서버/WAS(110)를 통해 클라이언트 프로그램으로 제공한다.DA (Dialogue Agent) management unit 130 selects a worker to perform the task according to the request code (request code) from the web server / WAS (110), and the result is performed again through the web server / WAS (110) Provided by client program.

입력된 대화 내용은 자연어 처리엔진(140)에서 처리된다. 자연어 처리엔진(140)은 대화 내용에서 사용자 의도와 속성정보를 추출한다. 예를 들면, "강원도 날씨가 어떻게 되지?"라는 문장이 입력되었다면, 이 문장으로부터 이 문장의 의도는 "날씨_보기"이고, 영역은 "날씨", 장소는 "강원도"라는 것을 파악한다. The input conversation content is processed by the natural language processing engine 140. The natural language processing engine 140 extracts user intention and attribute information from the conversation contents. For example, if the sentence "What is the weather in Gangwon-do?" Is entered, it is understood that the intention of this sentence is "weather_view", the area is "weather", and the place is "gangwon-do".

수행엔진(150)은 사용자 의도와 속성정보를 사용하여 서비스들을 탐색하는 탐색단계와, 탐색된 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재단계와, 상기 결정된 서비스를 제공하는 서비스 제공처로 상기 생성된 정보를 제공하면서 시스템 컨트롤 권한을 넘기는 위임단계를 수행한다. The performing engine 150 searches for services using user intention and attribute information, an arbitration step of determining services to be provided among the searched services, and generating information necessary for providing the services, and the determined services. The delegation step of transferring the system control authority while providing the generated information to the providing service provider is performed.

본 발명에서 이들 단계의 수행에는 서비스 프로파일이 사용된다. 서비스 프로파일은 서비스의 특성을 기술한 데이터베이스로서, 서비스 개발자가 개발한 서비스를 보다 편하고 손쉽게 적용가능하게 만든다. 서비스 프로파일은 서비스를 나타내는 영역(domain), 서비스 제공 형태(Type), 서비스 제공처 정보, 해당 도메인에 속하는 서비스를 처리하기 위하여 필요한 필요정보 등으로 구성되며 해당 프로파일은 서비스 개발자가 편집기(160)를 사용하여 직접 등록한다. In the present invention, a service profile is used to perform these steps. Service profiles are a database describing the characteristics of services, making services developed by service developers easier and more easily applicable. The service profile consists of the domain representing the service, type of service provision, service provider information, and necessary information necessary to process the service belonging to the domain. The profile is used by the service developer to use the editor 160. Register directly.

서비스 프로파일에 포함되는 주요 필드는 다음과 같다.The main fields included in the service profile are as follows.

- 영역(domain) : 제공서비스가 어떤 분야에 속해 있는지에 대한 정보(예: 버스, 날씨, 환율 등) -Domain : information on which services the service belongs to (e.g. bus, weather, exchange rate, etc.)

- 사용자 의도 : 해당 영역에 대한 사용자의 요구 사항을 나타내는 정보 (예: 버스_노선_찾기, 버스_도착시간_보기, 버스_정류장_찾기 등) -User Intention : Information that indicates the user's requirements for the area (eg bus_route_find, bus_arrival_time, bus_stop_find, etc.)

- 서비스 제공 형태(Type) : 각 기기에서 서비스를 제공하기 위한 형태 (예: 웹서비스, 네이티브 앱(Native App), 하이브리드 앱(Hybrid App) 등)-Type of service provision : Type for providing services on each device (e.g. web service, native app, hybrid app, etc.)

- 서비스 제공처 정보 : 해당 서비스를 제공하는 서비스 제공처에 관한 정보로 서비스를 수행하기 위해 컨트롤을 위임할 서비스(웹 사이트)의 주소정보(URL 등)나 프로그램의 실행 정보(안드로이드 OS의 경우 Intent 등)의 정보 -Service provider information : information about the service provider that provides the service. Address information (URL, etc.) of the service (web site) to which control is delegated to perform the service, or program execution information (Intent, etc. for Android OS). Information from

- 필요정보 : 해당 서비스를 처리하기 위해서 필요한 매개변수 정보로 연계될 각 서비스 특성에 따라 정의됨 (예: A포털의 날씨 서비스는 "일시"와 "장소"를 매개변수로 사용하여 연계할 수 있으며 이때 "일시"와 "장소"가 필요정보임) -Necessary information : Defined according to the characteristics of each service to be linked with the parameter information required to process the service (e.g. weather service of Portal A can be linked using "Date" and "Place" as parameters. "Date" and "place" are necessary information)

본 발명의 다이알로그 에이전트 시스템에는 또한, 대화관리 전문가가 아닌 서비스 개발자도 쉽게 새로운 서비스를 추가하고나 삭제할 수 있는 편집기(160)와 추가한 서비스를 대화인터페이스를 통해 시뮬레이션 할 수 있는 시뮬레이터(170)가 제공될 수 있다. The dialog agent system of the present invention also includes an editor 160 that enables a service developer who is not a conversation management expert to easily add or delete a new service, and a simulator 170 that can simulate the added service through a conversation interface. Can be provided.

편집기(160)는 서비스 개발자가 개발한 서비스에 다이알로그 인터페이스를 연계하기 위한 도구로 전술한 서비스 프로파일을 편집하고 등록하여 다이알로그 에이젼트 시스템에서 사용할 수 있도록 한다. The editor 160 is a tool for associating a dialogue interface with a service developed by a service developer, and edits and registers the above-described service profile so that the dialogue agent system can be used.

시뮬레이터(170)는 편집기(160)로 등록된 서비스가 실제 다이알로그 인터페이스 통해 실행되는 모습을 시뮬레이션한다. The simulator 170 simulates the execution of a service registered with the editor 160 through an actual dialog interface.

다음으로 도 3을 참조하여 본 발명의 일 실시예에 따른 다이알로그 에이전트 시스템의 동작에 대해서 설명한다.Next, an operation of the dialog agent system according to an embodiment of the present invention will be described with reference to FIG. 3.

먼저, 사용자의 대화 내용이 음성 데이터의 형태로 입력되면 음성인식부(120)는 이를 인식하고 텍스트 데이터로 변환한다(단계 310). 사용자의 음성이 단말기에서 텍스트로 변환되어 다이알로그 에이전트 시스템(100)으로 입력되는 경우 또는 사용자가 텍스트로 대화 내용을 입력한 경우에는 이 단계는 수행되지 않는다.First, when the user's conversation content is input in the form of voice data, the voice recognition unit 120 recognizes this and converts it into text data (step 310). This step is not performed when the user's voice is converted into text in the terminal and input to the dialog agent system 100, or when the user inputs the conversation contents in the text.

다음으로, 자연어처리엔진(140)은 사용자 다이알로그로부터 사용자 의도 및 속성 정보를 추출한다(단계 320). "강원도 날씨가 어떻게 되지?"라는 사용자 다이알로그는 형태소분석, 구문문석, 의미분석의 단계를 거쳐 "날씨_보기"라는 사용자 의도와 날씨 보기 서비스를 위해 필요한 "장소: 강원도", "시간: 오늘"의 속성 정보를 추출한다. "시간: 오늘"과 같이 사용자 다이얼로그에 나타나지 않은 속성정보는 다이알로그의 문맥을 고려하여 자연어처리엔진(140)이 생성한다. Next, the natural language processing engine 140 extracts user intention and attribute information from the user dialog (step 320). The user dialog "What's the weather in Gangwon-do?" Goes through the steps of morphological analysis, syntax syntax, and semantic analysis. The user's intention of "weather_view" and "place: Gangwon-do", "time: today Extract attribute information. Attribute information that does not appear in the user dialog such as "time: today" is generated by the natural language processing engine 140 in consideration of the context of the dialog.

수행엔진(150)은 자연어처리엔진에서 추출한 정보들과 저장되어 있는 서비스 프로파일들을 사용하여 다음의 단계를 수행한다.The execution engine 150 performs the following steps by using information extracted from the natural language processing engine and stored service profiles.

먼저, 추출된 사용자 의도를 사용하여 서비스들을 탐색한다(단계 330). 이 단계에서는 서비스 프로파일에서 사용자 의도와 부합하는 서비스를 찾는다. 예를 들어 "강원도 날씨가 어떻게 되지?"라는 사용자 다이알로그는 자연어 처리엔진을 통해 "날씨_보기"라는 사용자 의도가 추출되며 서비스 프로파일에 "날씨_보기"라는 사용자 의도로 "네이버 날씨 서비스"와 "기상청 날씨 서비스"가 등록 되어 있을 경우 이 두 가지 서비스를 탐색을 통해 찾아 내게 된다. First, the services are searched using the extracted user intention (step 330). In this step, you find a service in the service profile that matches your intent. For example, a user dialog called "What's the weather like in Gangwon-do?" Is extracted from the user's intention of "weather_view" by the natural language processing engine. If "Weather Services" is registered, these two services can be found by searching.

다음으로, 이전 단계에서 탐색된 하나 또는 그 이상의 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재단계를 수행한다(단계 340). Next, an arbitration step of determining a service to be provided from among one or more services discovered in the previous step and generating information necessary for providing the service is performed (step 340).

중재단계는 다음의 3가지 형태 중의 한가지 형태 중에서 제공할 서비스를 결정하거나 정보를 가공하여 제공하도록 구성할 수 있다: The mediation stage may be configured to determine which services to provide or to process and provide information from one of three forms:

- 서비스 제공 범위를 이용한 제공 서비스 선택 : 서비스 프로파일에 등록된 각 서비스의 서비스 제공 범위(서비스 프로파일에 등록된 필요정보로부터 판단하거나 또는 별도의 서비스 제공범위 필드를 마련할 수도 있다)를 이용하여 적합한 서비스를 선택한다. 예를 들어 사용자 의도 "날씨_보기"에 따라 A 날씨 서비스, B 날씨 서비스가 탐색된 경우에, 서비스 프로파일에 A 날씨 서비스는 필요정보로 "장소"와 "시간"이 등록되어 장소에 따른 각 시도별 날씨 서비스가 가능하고 B 날씨 서비스는 필요정보로 "시간"만 등록 되어 각 시도별 날씨 서비스가 불가능한 경우 "강원도 날씨가 어떻게 되지?"라는 시도별(강원도) 날씨 서비스를 요구 사용자 다이알로그는 A 날씨 서비스를 사용하도록 중재한다. -Service selection using service provision range : Appropriate services using the service provision scope of each service registered in the service profile (determined from the necessary information registered in the service profile or a separate service provision field may be prepared). Select. For example, if A weather service and B weather service are searched according to the user's intention "weather_view", A weather service is registered in the service profile with "place" and "time" as necessary information, and each attempt is made according to the place. When the weather service is available and B weather service is required information, only "time" is registered. If the weather service is not available for each attempt, the weather service is requested for each attempt (Gangwon-do). Arbitrate to use weather services.

- 사용자 기호를 이용한 제공 서비스 선택 : 탐색된 서비스 중에서 사용자 기호(사용자가 사용한 빈도 또는 장소, 시간 등의 속성 정보에 대한 우선순위)를 이용하여 제공 서비스를 선택함. 예를 들어 사용자가 날씨 서비스로 A 날씨 서비스를 B 날씨 서비스보다 자주 이용한 경우 A 날씨 서비스를 우선 선택하도록 중재한다. 또 지역별 날씨보다 시간의 변화에 따른 날씨 서비스를 많이 사용할 경우 일일 시간 변화에 대한 날씨를 우선 선택하도록 중재한다. -Selection of the provided service using the user's preference : The provided service is selected using the user's preference (priority of the attribute information such as frequency, place, and time used by the user) among the searched services. For example, if a user uses the A weather service more often than the B weather service as the weather service, the user arbitrates to select the A weather service first. In addition, if the weather service according to the time change is used more than the regional weather, it arbitrates to select the weather for the daily time change first.

- 다수 서비스를 이용한 정보 조합 : 탐색된 서비스에 포함된 정보를 이용하여 새로운 정보를 생성하여 서비스로 제공한다. 예를 들어 사용자가 "가까운 식당은?"을 물어보고 "식당_찾기"에 관한 서비스 프로파일에 "메뉴판닷컴", "윙버스" 등이 등록되어 있는 경우 중재 단계에서는 두 서비스의 정보를 조합한 식당 정보를 만들어 제공한다. -Combination of information using multiple services : Creates new information using the information included in the discovered service and provides it as a service. For example, if the user asks "What is the nearest restaurant?" And "Menu.com" and "Wingbus" are registered in the service profile for "Restaurant_Find", then the mediation step is a restaurant that combines the information of the two services. Create and provide information.

중재단계에서는 또한 탐색된 서비스에 해당되는 필요정보를 자연어처리엔진에서 추출한 속성정보를 이용하여 생성한다. 예를 들어, "강원도 날씨가 어떻게 되지?"라는 대화가 입력된 경우 추출된 속성정보 "강원도(장소)"는 A날씨 서비스를 위해 서비스프로파일에 등록된 필요정보 "장소"와 매칭하여 서비스 연계를 위한 "장소=강원도"라는 매개변수로 생성된다. In the arbitration step, the necessary information corresponding to the searched service is also generated by using the attribute information extracted from the natural language processing engine. For example, if the dialogue "What is the weather like in Gangwon-do?" Is entered, the extracted attribute information "Gangwon-do (place)" matches the necessary information "place" registered in the service profile for A weather service. Is created with the parameter "place = Gangwon-do".

이와 같이 서비스와 매개변수가 정해지면, 수행엔진(150)은 해당 서비스의 서비스 프로파일에 등록되어 있는 서비스 제공처로 매개변수를 제공하면서 시스템 컨트롤 권한을 위임한다(단계 360). 예를 들어, A날씨 서비스가 서비스 프로파일에 "의도: 날씨_보기, 서비스 형태: 웹, 서비스 제공처 정보: http://날씨.com, 필요정보: 장소, 시간"과 같이 등록되어 있고 사용자 다이얼로그가 "강원도 날씨가 어떻게 되지?"라고 들어와 자연어처리엔진을 거쳐 "날씨_보기"로 사용자 의도가 분석되고 "강원도(장소)"라는 속성 정보가 추출된 경우, 수행엔진은 웹 브라우저를 이용해 "http://날씨.com"이 "장소=강원도"라는 매개변수를 이용해 각 기기가 서비스할 수 있도록 서비스 컨트롤 권한을 시스템에 위임한다.When the service and the parameters are determined as described above, the execution engine 150 delegates the system control authority while providing the parameters to the service providers registered in the service profile of the corresponding service (step 360). For example, A weather service is registered in the service profile as "Intent: Weather_View, Service Type: Web, Service Provider Information: http://Weather.com, Necessary Information: Location, Time" and the user dialog is If the user's intention is analyzed by "weather_view" through "natural weather processing engine" and natural weather processing engine, and the attribute information "Gangwon-do (place)" is extracted, the performing engine uses "http: //Weather.com "delegates service control to the system for each device to service using the parameter" Place = Gangwon-do ".

한편, 이상의 설명에서는 다이알로그 에이전트 시스템(100)이 통신망을 통해 단말기와 연결되는 경우에 대해서 설명하였으나, 실시예에 따라서는 다이알로그 에이전트 시스템(100)을 단말기 안에 내장하도록 구성하는 것도 가능하다. 이 경우에는 사용자의 대화 입력 내용을 내장된 다이알로그 에이전트 시스템에서 분석하여 사용자가 요청한 정보/서비스를 제공하도록 제어한다. 또한, 새로운 앱이 설치되는 경우에 해당 앱을 다이알로그 에이전트를 사용하여 실행하도록 하기 위한 서비스 프로파일을 함께 설치하도록 함으로써, 일반적인 사용자 인터페이스를 통한 앱의 실행 방법 이외에도 본 발명의 다이알로그 에이전트를 사용하여 앱을 실행하도록 할 수 있다.Meanwhile, in the above description, the case in which the dialog agent system 100 is connected to the terminal through a communication network has been described. However, according to an exemplary embodiment, the dialog agent system 100 may be configured to be embedded in the terminal. In this case, the user's conversation input is analyzed by the embedded dialog agent system and controlled to provide the information / service requested by the user. In addition, by installing a service profile for running the app using a dialog agent when a new app is installed, the app using the dialog agent of the present invention in addition to the method of running the app through a general user interface Can be run.

또한, 이상 설명한 각 기능의 일부 또는 전부는 별도의 하드웨어로 구성할 수도 있고, 하나 또는 그 이상의 프로세서와 해당 기능을 수행하기 위한 프로그램을 저장하고 있는 메모리 디바이스로 구성할 수도 있다. In addition, some or all of the functions described above may be configured as separate hardware, or may be configured as a memory device that stores one or more processors and a program for performing the function.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서 라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above description, it is described that all the components constituting the embodiments of the present invention are combined or operated in one, but the present invention is not necessarily limited to these embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be inherent unless specifically stated otherwise, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms used generally, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be interpreted in an ideal or excessively formal sense unless explicitly defined in the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

* 부호의 설명 * * Explanation of Codes *

100 다이알로그 에이전트 시스템,100 dialog agent system,

110 웹서버/WAS,110 web server / WAS,

120 음성인식부120 Speech Recognition

130 DA 관리부,130 DA management unit,

140 자연어처리엔진,140 natural language processing engine,

150 수행엔진,150 performance engine,

160 편집기,160 editors,

170 시뮬레이터.170 simulator.

Claims (15)

사용자 다이알로그로부터 사용자 의도와 속성정보를 추출하는 단계와, Extracting user intention and attribute information from the user dialog; 추출된 사용자 의도와 속성정보를 사용하여 서비스들을 탐색하는 탐색단계와, A search step of searching for services using the extracted user intention and attribute information; 탐색된 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재단계, An arbitration step of deciding which service to provide among the discovered services and generating information necessary to provide the service, 상기 결정된 서비스를 제공하는 서비스 제공처로 상기 생성된 정보를 제공하면서 시스템 컨트롤 권한을 넘기는 위임단계Delegation step of transferring the system control authority while providing the generated information to the service provider providing the determined service 를 포함하는 사용자 다이알로그에 따른 서비스 제공 방법.Service providing method according to the user dialog comprising a. 제1항에 있어서, 상기 탐색단계는,The method of claim 1, wherein the searching step comprises: 서비스 제공자가 등록한 사용자 의도, 서비스 영역, 서비스를 처리하기 위해 필요한 필요정보, 해당 서비스를 제공하는 서비스 제공처에 관한 서비스 제공처 정보 등을 저장하고 있는 서비스 프로파일을 이용하여 상기 사용자의 의도와 일치하는 서비스들을 찾는 것임을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.Services that match the intention of the user are stored by using a service profile that stores a user's intention registered by the service provider, a service area, necessary information for processing a service, and service provider information on a service provider providing the service. Service providing method according to the user dialog, characterized in that finding. 제2항에 있어서, 상기 중재단계는,The method of claim 2, wherein the mediation step, 서비스 제공 범위를 이용하여 제공 서비스를 선택하는 동작과, 사용자 기호를 이용하여 제공 서비스를 선택하는 동작과, 다수 서비스를 이용하여 획득한 정보를 조합하여 제공하는 동작 중의 어느 하나를 수행하는 것을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.Any one of an operation of selecting a provided service using a service providing range, an operation of selecting a provided service using a user's preference, and providing a combination of information obtained by using a plurality of services To do one Service providing method according to the user dialog, characterized in that. 제3항에 있어서,The method of claim 3, 상기 서비스 제공 범위는 각 서비스에 대한 서비스 프로파일에 포함되어 있는 필요정보로부터 파악하는 것을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.The service providing method is a service providing method according to the user dialog, characterized in that the grasp from the necessary information included in the service profile for each service. 제3항에 있어서,The method of claim 3, 상기 사용자 기호는 사용자가 각 서비스를 사용한 빈도 또는 사용자의 속성 정보에 대한 우선순위로부터 파악하는 것을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.And the user preference is determined from a frequency of use of each service by a user or priority of attribute information of the user. 제2항에 있어서,The method of claim 2, 상기 서비스 제공처는 서비스를 제공하는 프로그램, 서비스를 제공하는 웹사이트를 포함하는 것을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.The service provider is a service providing method according to a user dialog, characterized in that it comprises a program for providing a service, a website for providing a service. 제2항 내지 제6항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 6, 서비스 제공자로부터 제공할 서비스에 관한 사용자 의도, 서비스 영역, 필요정보 및 서비스 제공처 정보를 입력받아서 상기 서비스 프로파일에 저장하는 단계를 더 포함하는 사용자 다이알로그에 따른 서비스 제공 방법.And receiving a user's intention, service area, necessary information, and service provider information about a service to be provided from a service provider, and storing the received information in the service profile. 제1항 내지 제6항 중 어느 한 항에 있어서,, 상기 사용자 다이알로그는 사용자의 음성을 인식하여 텍스트로 변환한 것임을 특징으로 하는 사용자 다이알로그에 따른 서비스 제공 방법.The method according to any one of claims 1 to 6, wherein the user dialog is a voice of a user and is converted into a text. 사용자 다이알로그에 따른 서비스를 제공하기 위한 다이알로그 에이전트 시스템으로서,A dialog agent system for providing a service according to a user dialog, 하나 이상의 프로세서들; 및One or more processors; And 명령어들이 저장된 메모리Memory where instructions are stored 를 포함하고,Including, 상기 명령어들은 상기 하나 이상의 프로세서들에 의해 실행될 때 상기 프로세서들로 하여금,The instructions cause the processors to execute when executed by the one or more processors, 사용자 다이알로그로부터 사용자 의도와 속성정보를 추출하는 동작과, Extracting user intention and attribute information from the user dialog; 추출된 사용자 의도와 속성정보를 사용하여 서비스들을 탐색하는 탐색동작과, A search operation for searching services using the extracted user intention and attribute information, 탐색된 서비스들 중에서 제공할 서비스를 결정하고 해당 서비스 제공에 필요한 정보를 생성하는 중재동작과, An arbitration operation for determining a service to be provided among the searched services and generating information for providing the service; 상기 결정된 서비스를 제공하는 서비스 제공처로 상기 생성된 정보를 제공하면서 시스템 컨트롤 권한을 넘기는 위임동작Delegation operation for transferring the system control authority while providing the generated information to a service provider providing the determined service 을 포함하는 동작들을 수행하게 하는 다이알로그 에이전트 시스템.A dialog agent system for performing operations comprising a. 제9항에 있어서,The method of claim 9, 상기 탐색동작은, 서비스 제공자가 등록한 사용자 의도, 서비스 영역, 서비스를 처리하기 위해 필요한 필요정보, 해당 서비스를 제공하는 서비스 제공처에 관한 서비스 제공처 정보 등을 저장하고 있는 서비스 프로파일을 이용하여 상기 사용자의 의도와 일치하는 서비스들을 찾는 것인 다이알로그 에이전트 시스템.The searching operation may be performed by using a service profile that stores a user intention registered by a service provider, a service area, necessary information required for processing a service, service provider information regarding a service provider providing a corresponding service, and the like. The dialog agent system that finds services that match. 제10항에 있어서, 상기 중재동작은,The method of claim 10, wherein the mediation operation, 서비스 제공 범위를 이용하여 제공 서비스를 선택하는 동작과, 사용자 기호를 이용하여 제공 서비스를 선택하는 동작과, 다수 서비스를 이용하여 획득한 정보를 조합하여 제공하는 동작 중의 어느 하나를 수행하는 것인 다이알로그 에이전트 시스템.A dial for performing any one of selecting a provided service using a service providing range, selecting a provided service using a user preference, and providing a combination of information obtained using a plurality of services. Log agent system. 제11항에 있어서,The method of claim 11, 상기 서비스 제공 범위는 각 서비스에 대한 서비스 프로파일에 포함되어 있는 필요정보로부터 파악하는 것을 특징으로 하는 다이알로그 에이전트 시스템.The service providing range is a dialog agent system characterized in that the grasp from the necessary information included in the service profile for each service. 제11항에 있어서,The method of claim 11, 상기 사용자 기호는 사용자가 각 서비스를 사용한 빈도 또는 사용자의 속성 정보에 대한 우선순위로부터 파악하는 것을 특징으로 하는 다이알로그 에이전트 시스템.The user preferences dialog box characterized in that the user grasps from the frequency of using each service or the priority of the attribute information of the user. 제10항에 있어서,The method of claim 10, 상기 서비스 제공처는 서비스를 제공하는 프로그램, 서비스를 제공하는 웹사이트를 포함하는 것을 특징으로 하는 다이알로그 에이전트 시스템.The service provider includes a program providing a service and a website providing the service. 제9항 내지 제14항 중 어느 한 항에 있어서,The method according to any one of claims 9 to 14, 서비스 제공자로부터 제공할 서비스에 관한 사용자 의도, 서비스 영역, 필요정보 및 서비스 제공처 정보를 입력받아서 상기 서비스 프로파일에 저장하는 편집기를 더 포함하는 다이알로그 에이전트 시스템.And an editor for receiving a user's intention, service area, necessary information, and service provider information about a service to be provided from a service provider and storing the received information in the service profile.
PCT/KR2014/005245 2014-06-16 2014-06-16 Method for providing service according to user dialogue and dialogue agent system Ceased WO2015194684A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2014/005245 WO2015194684A1 (en) 2014-06-16 2014-06-16 Method for providing service according to user dialogue and dialogue agent system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2014/005245 WO2015194684A1 (en) 2014-06-16 2014-06-16 Method for providing service according to user dialogue and dialogue agent system

Publications (1)

Publication Number Publication Date
WO2015194684A1 true WO2015194684A1 (en) 2015-12-23

Family

ID=54935656

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/005245 Ceased WO2015194684A1 (en) 2014-06-16 2014-06-16 Method for providing service according to user dialogue and dialogue agent system

Country Status (1)

Country Link
WO (1) WO2015194684A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050037791A (en) * 2003-10-20 2005-04-25 주식회사 다이퀘스트 Multi-media information provision dialogue agent system and method using coordinated communicationg agent structure
KR20070018382A (en) * 2005-08-09 2007-02-14 (주)다음소프트 Service method and system using interactive agent
KR20090000279A (en) * 2007-02-13 2009-01-07 홍성훈 How to acquire and provide wisdom through wired and wireless network and its system
US20130253929A1 (en) * 2005-08-29 2013-09-26 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
KR101334066B1 (en) * 2008-02-11 2013-11-29 이점식 Self-evolving Artificial Intelligent cyber robot system and offer method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050037791A (en) * 2003-10-20 2005-04-25 주식회사 다이퀘스트 Multi-media information provision dialogue agent system and method using coordinated communicationg agent structure
KR20070018382A (en) * 2005-08-09 2007-02-14 (주)다음소프트 Service method and system using interactive agent
US20130253929A1 (en) * 2005-08-29 2013-09-26 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
KR20090000279A (en) * 2007-02-13 2009-01-07 홍성훈 How to acquire and provide wisdom through wired and wireless network and its system
KR101334066B1 (en) * 2008-02-11 2013-11-29 이점식 Self-evolving Artificial Intelligent cyber robot system and offer method

Similar Documents

Publication Publication Date Title
US12086550B2 (en) System for focused conversation context management in a reasoning agent/behavior engine of an agent automation system
CN109739604B (en) Page rendering method, device, server and storage medium
WO2013137660A1 (en) Collaborative personal assistant system for delegating provision of services by third party task providers and method therefor
WO2022267175A1 (en) Information processing method and apparatus, and computer device and storage medium
CN103716308A (en) Multiprotocol platform communication method and multiprotocol platform
CN106294178A (en) Automated testing method and device
CN110851211A (en) Method, apparatus, electronic device, and medium for displaying application information
CN116467607B (en) Information matching method and storage medium
CN110210212A (en) A kind of data processing method, device and relevant device
WO2015041434A1 (en) Multilingual message translation system and method therefor
CN108959294A (en) A kind of method and apparatus accessing search engine
CN102946415A (en) Implementation method and device for local application of mobile terminal
WO2016006837A1 (en) Telephone number guidance system and telephone number guidance method using sentence analysis
CN101916283B (en) Method for acquiring link information from dynamic webpage and server thereof
CN111368145A (en) Knowledge graph creating method and system and terminal equipment
WO2014098308A1 (en) Method for displaying unified app information based on open app store, and computer readable recording medium therefor
CN104239371B (en) A kind of command information processing method and processing device
CN112000313A (en) Request response method, device, equipment and storage medium
WO2015194684A1 (en) Method for providing service according to user dialogue and dialogue agent system
WO2011055925A2 (en) Method and apparatus for intelligence-oriented service using context information estimation in mobile terminal
CN119151244A (en) Intelligent scheduling method, system, device, equipment and medium
WO2020138608A1 (en) Question answering method and apparatus using plurality of chatbots
WO2018110735A1 (en) Method for integrated data collection from plurality of open apis
KR101484702B1 (en) Method for providing service according to user dialogue and dialogue agent system
WO2013042809A1 (en) System and method for providing current use state information of an application

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14895045

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14895045

Country of ref document: EP

Kind code of ref document: A1