WO2021096382A2 - Способ и система управления диалоговым агентом в канале взаимодействия с пользователем - Google Patents

Способ и система управления диалоговым агентом в канале взаимодействия с пользователем Download PDF

Info

Publication number
WO2021096382A2
WO2021096382A2 PCT/RU2019/000820 RU2019000820W WO2021096382A2 WO 2021096382 A2 WO2021096382 A2 WO 2021096382A2 RU 2019000820 W RU2019000820 W RU 2019000820W WO 2021096382 A2 WO2021096382 A2 WO 2021096382A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
request
text
response
processing
Prior art date
Application number
PCT/RU2019/000820
Other languages
English (en)
French (fr)
Other versions
WO2021096382A3 (ru
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 PCT/RU2019/000820 priority Critical patent/WO2021096382A2/ru
Publication of WO2021096382A2 publication Critical patent/WO2021096382A2/ru
Publication of WO2021096382A3 publication Critical patent/WO2021096382A3/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges

Definitions

  • the present technical solution relates to the field of computer technology, in particular to dialogue systems that provide processing and intelligent dialogue with the user.
  • Patent RU 2637874 C2 (Google Inc. (US), 07.12.2017) discloses a method for generating dialog recommendations for chat information systems.
  • the advantages of this development include the ability to comprehensively approach the question of what type of information can be requested by the user at a particular point in time, and solves it according to possible schemes.
  • this dialogue system has limited functionality due to the lack of internal switching of the dialogue system and personality, supported by a weak variability of dialogue, which narrows the possibilities for the formation of various scenarios of dialogue, depending on the type of replicas supplied to the input of the system.
  • the technical problem to be solved with the help of the claimed invention is to create a new method and system for expanding the functionality of conducting a dialogue, which allows switching personalization depending on the user's intentions and the purpose of communicating with an intelligent system, by separating the required entities from the text stream, storing the interaction history with the user, deciding on the response and performing the generation of the response.
  • Such a system uses a number of methods to select the desired answer, applies different approaches to processing the input utterance, and is capable of supporting more than one state of dialogue.
  • the technical result is to create a self-learning scalable system that combines various types of agents and provides dynamic switching between the functionality associated with the dialogue script.
  • the claimed technical solution is implemented by means of a control system for an interactive agent in a channel of interaction with a user, which contains: at least one processor; at least one data storage means; an annotator module that receives a user request in a channel for interacting with a user, and the request is presented in text form; preliminary processing of the user's text request; classification of replicas in the user's text request; extracting parameters from said user request and defining characteristics of the user's request intent; a selector module that provides a choice of the skill of conducting a dialogue with a user based on certain characteristics of the user's request intent; selecting a response to a user's request associated with the selected skill, the selection of the response being performed by processing the characteristics of the user's request intent; a post-processing module that generates the response selected by the selector module; sending a response to the user interaction channel.
  • pre-processing a user request includes at least one of: correcting typos, normalizing text, splitting the request text into separate words, defining named entities, identifying and classifying intents in replicas of the user request.
  • the coefficient of correspondence to one or more skills is calculated.
  • the skill of conducting a dialogue is selected from the group: a targeted answer to a question, an answer in free form, or maintaining a free conversation.
  • the selector module performs an appeal to one or more external information systems to select a response to a user request.
  • each of the modules is based on one or more machine learning methods.
  • the claimed technical solution is also implemented by means of a computer-implemented method for controlling a dialog agent in a channel of interaction with a user, performed using at least one process and containing the stages at which: a user request is received in a channel of interaction with a user, and the request is presented in text form; processing the text request of the user, during which the classification of replicas in the said request of the user is carried out; extracting parameters from said user request, on the basis of which the characteristics of the user's request intention are determined; selecting the skill of conducting a dialogue with the user based on certain characteristics of the user's request intent; selecting a response to the user's request associated with the selected skill, the selection of the response being performed by processing the characteristics of the user's request intent; generate a response; and transmitting the response to the user interaction channel.
  • the channel for interacting with the user is selected from the group: an online chat session, a mobile application, a multimedia device with a voice assistant,
  • At the stage of processing a user request at least one of: correcting typos, normalizing text, splitting the request text into separate words, determining named entities, identifying and classifying intents in replicas of the user request is performed.
  • a match factor for one or more skills is calculated based on the revealed characteristics of the user's request intent.
  • the dialogue skill is selected from the group: a targeted answer to a question, a free-form answer, or an answer to a question on behalf of a person.
  • FIG. 1 illustrates the general information architecture of the solution.
  • FIG. 2 illustrates the hardware and software architecture of the claimed system.
  • FIG. 3 illustrates a flowchart of the claimed method for managing a dialog agent.
  • FIG. 4A to FIG. 4B illustrate an example of conducting a dialogue in a chatbot channel of a messenger using the claimed solution.
  • FIG. 1 shows the general information architecture (100) of the claimed technical solution, which includes a user (10), a user device (110) for generating a request, a server (200) executing the main program logic for processing user requests (10), an external knowledge base ( 130).
  • a data transmission network 150
  • the Internet the Internet
  • Various means can act as a user device (software) for interacting with a dialog agent located on a server (200), for example, a computer, laptop, smartphone, tablet, smart wearable device (watch, bracelet, glasses), smart -TV, vehicle multimedia device, game console, multimedia voice assistant (smart speaker, smart speaker), etc.
  • a server for example, a computer, laptop, smartphone, tablet, smart wearable device (watch, bracelet, glasses), smart -TV, vehicle multimedia device, game console, multimedia voice assistant (smart speaker, smart speaker), etc.
  • the formation of a user request for dialogue using the device (110) is carried out in one or another communication channel, for example, a phone call to a call center, an online chat session on a website or mobile application, a chat with a support service, communication with multimedia devices equipped with the function of voice assistants, etc.
  • the user interaction channel can vary relative to the implementation and operation of the device (110), as well as the software that provides the required interaction with the dialog agent.
  • the data network (150) can be implemented using communication techniques known from the prior art, for example, WLAN, LAN, PAN, GSM / 3G / LTE / 5G, satellite communication, TCPLR connection, and the like.
  • An external knowledge base (130) can be formed on the basis of a plurality of data describing a particular subject area and organized in the form of a centralized storage of information, for example, a database, and the like.
  • the knowledge base (130) can represent one or more resources on the Internet that are used to form a response to a user request (Wikipedia.org site, online telephone directory, etc.).
  • FIG. 2 shows an architectural execution of the hardware and software platform of the server (200), which houses the control system for the dialog agent that processes incoming user requests from devices (110).
  • the server (200) is executed on the basis of a standardized arrangement of computing devices and includes such components as: one or more processors (201), random access memory (202), data storage (203), input / output interfaces (204), means input / output (205) and means of networking (206).
  • the processor (201) is designed to execute the program logic and the required computational operations required for the operation of the server (200).
  • the processor (201) executes the necessary computer readable instructions and instructions contained in the main memory (202).
  • the processor (201) (or multiple processors, multi-core processor, etc.) can be selected from a range of devices that are currently widely used, for example, such manufacturers as: Intel TM, AMD TM, Apple TM, Samsung Exynos TM, MediaTEK TM, Qualcomm Snapdragon TM, etc.
  • a graphics processor for example, NVIDIA GPU or Graphcore, the type of which is also suitable for full or partial implementation of the methods of implementing the declared solution, and can also be used for training and applying models. machine learning.
  • Random access memory (202), as a rule, is made in the form of RAM and contains the necessary program logic that provides the required functionality.
  • the data storage medium (203) can be performed in the form of HDD, SSD disks, array raid, flash memory, optical information storage devices (CD, DVD, MD, Blue-Ray disks), etc. Means (203) allow performing long-term storage of various types of information.
  • Interfaces (204) are standard means for connecting and operating multiple devices, for example, USB, RS232, RJ45, LPT, COM, HDMI, PS / 2, Lightning, FireWire, etc. The choice of interfaces (204) depends on the specific implementation of the server device (200).
  • data input / output (205) can be used: keyboard, joystick, display (touch display), projector, touchpad, mouse, trackball, light pen, speakers, microphone, etc.
  • Networking means (206) are selected from devices providing network reception and transmission of data, for example, Ethernet card, WLAN / Wi-Fi module, Bluetooth module, BLE module, NFC module, IrDa, RFID module, GSM modem, etc.
  • the means (205) provide the organization of data exchange via a wired and / or wireless data transmission channel, for example, WAN, PAN, LAN, Intranet, Internet, WLAN, WMAN or GSM.
  • a software implementation provided by the server (200) that allows control of the dialog agent is implemented using a set of modules, in particular, an annotator module (2031), a selector module (2032), and a post-processing module (2033).
  • the claimed method (300) for controlling a dialog agent consists of sequential steps carried out by the operation of the program logic implemented on the server (200).
  • the first step (301) the initial receipt and preprocessing of the user request occurs.
  • the request coming from the user (10) using the device (110) can be formed in various forms, for example, voice, text, gesture, etc. Regardless of the initial state of the user request by the device (software), it is necessary to transform it into a text form, which will be sent to the annotator module (2031).
  • the conversion to text form can be performed using various known means, for example, converting voice information to text, converting gesture information to text, etc.
  • the query formed by the user (10) is obtained by the module (2031) in the form of a block of unstructured text.
  • the annotator module (2031) at step (302) extracts the following data from the received text: concepts, keywords, phrases, classifications and named entities, marks the received extracts as annotations.
  • Module (2031) can include several text annotation algorithms that can operate in parallel.
  • the annotator module (2031) performs processing of the statements of the user (10) in natural language, which may include one or more of the following functions implemented by the mentioned algorithms:
  • Intents include: organizations, time, locations, persons, products, facts, etc.
  • the above is only an exemplary functionality of the annotator module (2031), which can be extended depending on the required implementation of the technical solution.
  • the intention of the user (10) is determined based on the processing of his request, as well as its parameters - characteristics that make it possible to more accurately describe intention, or clarify the necessary details of the request.
  • agent should be understood as the format of the required communication defined by the user request and the response to be generated by the dialog agent management system when processing the user request.
  • the main types of agents for dialogue can be distinguished:
  • the request generated by the user (10) received by the server (200) in the following form: "What is the weather today?"
  • the intention of the user (10) is to find out the weather, the parameter is the date and place.
  • Additional information such as the user's location, current date, etc. can be obtained from the services of the user device (software) or from external services with which the user device (software) interacts.
  • the module (2031) generates an annotated expression with certain characteristics of the intention.
  • step (304) the request text processed by the module (2031) is sent for processing to the selector module (2032), which determines the next most appropriate state.
  • State is understood as an expression obtained after processing the dialog input information to extract at least one corresponding basic meaning and its further interpretation by various software skills that allow processing the basic meaning of the request.
  • the selector module (2032) allows you to connect a different number of skills that can be used to process a user request, while each software skill provides a unique version of the state in relation to others, which expands the variability of dialogue with the user using an automated dialogue system.
  • the basic meaning of the user request (10) is the key intent as defined by the annotator module (2031). For example, as indicated in the example above, find out the weather.
  • the selector module (2032) uses the skill algorithms connected to it, for each of which the coefficient of confidence in the answer regarding the user's intention in the generated request is calculated. In particular, when choosing to activate a particular skill, the selector module (2032) can preliminarily determine the states they generate, for example:
  • the selector module (2032) selects an expression that most fully corresponds to the user's statement (10), based on the obtained coefficient for each of the states formed by one skill or another, as well as analyzing the semantic content of the user's request text.
  • the coefficient is understood as the value that the skill gives after processing the intent; this is the value of confidence in the answer formed by each of the connected skills.
  • the selector module architecture (2032) may implement the following intent processing approaches, for example:
  • the skill of answering a question takes an intent about the world in free form and gives an answer based on its knowledge from Wikipedia (can be implemented on the basis of elements of the DeepPavlov library - ODQA skill and KBQA skill).
  • the skill of purposeful dialogue allows predicting responses (can be implemented on the basis of elements of the DeepPavlov library - Goal-oriented) • The skill of creating a conversational dialogue, allowing you to answer questions in a free form on behalf of a person (can be implemented on the basis of the elements of the DeepPavlov library - Chit-chat).
  • the selector module (2032) selects the most relevant state. At the same time, at this stage, there can be several states at once, if several offers were submitted to the input.
  • the selector module (2023) can refer to one or more information systems, for example, an external or internal knowledge base (130) or other resources and services to generate the required response.
  • an external or internal knowledge base 130
  • other resources and services to generate the required response.
  • geo-location services websites with weather forecast data, news resources, etc.
  • the selected answer is sent by the selector module (2032) to the post-processing module (2033), which generates a textual response using natural language word matching functions.
  • the generation of a text response occurs due to the receipt of text data in a previously prepared template, in which the most probable characteristics of the given text and / or the most statistically probable answers in the form of a replica to this text are selected.
  • a previously prepared template should be understood as a text that was obtained by training a skill on test data.
  • step (306) the response is transmitted to the user interaction channel (10), in particular, to the channel in which the initial request was generated.
  • the server's dialogue system (200) generates a response in text form, but it can be converted into the required form, for example, speech (voice assistants), gesture images, video sequences, etc.
  • Each of these modules can be executed on the basis of one or more methods and / or algorithms of machine learning based on neural networks, which can include, for example, an error correction method, an error backpropagation method, a support vector machine, a gradient boosting, random forest method, regression, etc.
  • FIG. 4A shows an example of the operation of the claimed solution using the example of a chatbot.
  • the user forms a request in the channel of the messenger application using a device (software), for example, using the Telegram application.
  • the generated request contains information characterizing the user's intention (10) to obtain general data in terms of establishments providing a certain type of service (cafes, restaurants, snack bars).
  • the dialogue system connects the required skill for processing the corresponding user request (10), namely, the skill for a goal-oriented dialogue, implemented on the DeepPavlov library and a database of restaurants (cafes, snack bars) containing the necessary information to implement the search mechanism at the user's request (10).
  • the connected skill type When recognizing the received request containing general information, the connected skill type initially contains empty slots that must be filled in during the conversation with the user. Thus, the dialog system at each iteration generates a qualifying query to determine the user's intent during communication and fills in the information slots. Such information can be the type of cuisine preferred by the user (10). Upon receiving an appropriate response, the dialogue system generates subsequent procedures for processing the request, which may contain, for example, clarification of the approximate location of the cafe / restaurant.
  • the system When the information slots are completely filled, the system generates a specific answer based on the prepared template (for example, the name of the restaurant). The determination of the place of visit is carried out by the system based on the calculation of the confidence coefficient and, upon the affirmative acceptance of the proposal of the dialogue system by the user, provide information identifying the selected place of visit.
  • This type of dialogue system can be implemented on the basis of recurrent neural networks, trained on a sample of information on the appropriate places for the provision of food services (cafes, restaurants, bistros, etc.).
  • FIG. 4B shows an example of how the claimed solution works on the example of a chatbot.
  • the user (10) forms a request in the interaction channel using the device (110), for example, using a voice column.
  • the initially generated request contains information characterizing the user's intention (10) to communicate with the system on well-known topics (for example, about cars, fashion, etc.).
  • the dialogue system connects the required skill to process the corresponding user request (10), namely, the chit-chat chatter skill implemented on the DeepPavlov library and systems containing the necessary information to implement the search engine at the user's request (10).
  • the chatters try to find the answer that best matches the meaning of the last comment the user said.
  • the answer is chosen from a set of ready-made phrases obtained during the training of the skill - with this approach, the bot's answers do not always correspond to the user's replicas in meaning, but are literate complete sentences. In this case, it is possible to generate a response from scratch - this is a much more flexible approach, but it is fraught with errors.
  • An ordinary chatbot trained on the corpus of dialogues, answers questions about itself inconsistently - for example, it can say that it has no animals, and then - that it has just walked the dog. If the chatbot does not have any information about itself, it simply generates a string that best matches the user's previous replica and does not check it against what it said before. However, in order to solve this problem, the person and the answers to questions about himself are prescribed in the dialogue system, which allows her to use one or another preset personality.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)

Abstract

Настоящее техническое решение относится к области компьютерных технологий, в частности к диалоговым системам, обеспечивающим обработку и интеллектуальное ведение диалога с пользователем. Заявленное техническое решение осуществляется за счет системы управления диалоговым агентом в канале взаимодействия с пользователем, содержащая: по меньшей мере один процессор; по меньшей мере одно средство хранения данных; модуль аннотатор, обеспечивающий получение пользовательского запроса в канале взаимодействия с пользователем, причем запрос представляется в текстовой форме; предварительную обработку текстового запроса пользователя; классификацию реплик в текстовом запросе пользователя; извлечение параметров из упомянутого запроса пользователя и определение характеристик намерения пользовательского запроса; модуль селектор, обеспечивающий выбор навыка ведения диалога с пользователем на основании определенных характеристик намерения пользовательского запроса; выбор ответа на запрос пользователя, связанного с выбранным навыком, причем выбор ответа осуществляется с помощью обработки характеристик намерения пользовательского запроса; модуль постпроцессинга, обеспечивающий генерирование ответа, выбранного модулем селектором; передачу ответа в канал взаимодействия с пользователем.

Description

СПОСОБ И СИСТЕМА УПРАВЛЕНИЯ ДИАЛОГОВЫМ АГЕНТОМ В КАНАЛЕ ВЗАИМОДЕЙСТВИЯ С ПОЛЬЗОВАТЕЛЕМ
ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее техническое решение относится к области компьютерных технологий, в частности к диалоговым системам, обеспечивающим обработку и интеллектуальное ведение диалога с пользователем.
УРОВЕНЬ ТЕХНИКИ
[0002] Одним из наиболее перспективных направлений в области применения современных нейросетевых методов являются диалоговые системы. Пользователей мессенджеров становится год за годом больше, чем пользователей социальных сетей. Также многие компании стремятся предоставлять свои услуги через текстовые каналы коммуникации, когда общение происходит через сервисы в форме диалога. К таким применениям можно отнести сферы:
• обеспечение заказа товаров и/или услуг с помощью персональных устройств пользователей;
• службы поддержки;
• персональные помощники, голосовые ассистенты и т.п.
[0003] Сегодня существует несколько подходов к разработке диалоговых агентов, или разговорных диалоговых систем, или разговорных агентов. При разработке разговорных агентов в основном применяется модульная архитектура для целенаправленного диалога, при котором разворачивается сценарий. Однако, зачастую пользователю необходимо сочетать целенаправленный диалог, например, с другой функциональностью, такой как ответы на вопросы или поиск информации, а также поддержание беседы. Таким образом идеальный диалоговый агент - это персональный помощник, который объединяет в себе разные типы агентов и переключается между своими функциональностями, между своими характерами в зависимости от того, в какой задаче используется. При этом, агент должен накапливать информацию о своей сущности, подстраивать свои алгоритмы под конкретного пользователя. С другой стороны, он должен иметь возможность интегрироваться с внешними сервисами (например, делать запросы во внешние базы данных, получать оттуда информацию, обрабатывать ее, выделять важное и это передавать пользователю). [0004] Известны способ и система для создания диалоговых агентов с помощью искусственного интеллекта, раскрытые в патентной заявке RU 2015155633 А (РИСОФТДЕВ, ИНК., 10.08.2017). К достоинствам данной разработки можно отнести возможность создания личности диалоговой системы, в процессе ведения диалога с пользователем. Таким образом, система учится, как вести себя и как правильно отвечать. Однако, данная система поддерживает только один вид взаимодействия - чит-чат беседу и не умеет отвечать на конкретные запросы пользователя на основании обработки параметров реплик пользователя.
[0005] В патентной заявке США US 20120016678 А1 (Apple Inc., 19.01.2012) раскрывается интеллектуальный автоматизированный помощник. К достоинствам данной разработки можно отнести возможность расширения внутреннего функционала для достижения поставленной цели (цели ориентированный диалог, за счет активной онтологии), интеграция в различные устройства, а также подключение внешних служб, с которыми система совместима. Однако, данная система поддерживает только один вид взаимодействия - для решения поставленной цели и не допускает использования других типов агентов, т.е. данный функционал системы является ограниченным в вариативности формирования ответа при ведении диалога с помощью интеллектуальной системы.
[0006] В патенте RU 2637874 С2 (Гугл Инк. (US), 07.12.2017) раскрывается способ генерирования диалоговых рекомендаций для чатовых информационных систем. К достоинствам данной разработки относится возможность комплексно подходить к вопросу, какой тип информации может запрашиваться пользователем в конкретный момент времени, и решает его согласно возможным схемам. Однако у данной диалоговой системы ограниченная функциональность из-за отсутствия внутреннего переключения диалоговой системы и персональности, подкрепленная слабой вариативностью ведения диалога, что сужает возможности по формированию различных сценариев ведения диалога в зависимости от типа подаваемых на вход системы реплик.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0007] Решаемой технической проблемой с помощью заявленного изобретения является создание нового способа и системы для расширения функциональных возможностей ведения диалога, позволяющей переключать персонализацию в зависимости от намерений пользователя и цель общения с интеллектуальной системой, за счет выделения из потока текста требуемых сущностей, хранения истории взаимодействия с пользователем, принятия решения об ответе и выполнения генерации ответа. [0008] Подобная система использует некоторое количество методов для выбора нужного ответа, применяет различные подходы к обработке входного высказывания и способна поддерживать ведение более одного состояния диалога.
[0009] Технический результат заключается в создании самообучающейся масштабируемой системы, которая объединяет в себе различные типы агентов и обеспечивает динамическое переключение между функционалом, связанным со сценарием ведения диалога.
[0010] Заявленное техническое решение осуществляется за счет системы управления диалоговым агентом в канале взаимодействия с пользователем, которая содержит: по меньшей мере один процессор; по меньшей мере одно средство хранения данных; модуль аннотатор, обеспечивающий получение пользовательского запроса в канале взаимодействия с пользователем, причем запрос представляется в текстовой форме; предварительную обработку текстового запроса пользователя; классификацию реплик в текстовом запросе пользователя; извлечение параметров из упомянутого запроса пользователя и определение характеристик намерения пользовательского запроса; модуль селектор, обеспечивающий выбор навыка ведения диалога с пользователем на основании определенных характеристик намерения пользовательского запроса; выбор ответа на запрос пользователя, связанного с выбранным навыком, причем выбор ответа осуществляется с помощью обработки характеристик намерения пользовательского запроса; модуль постпроцессинга, обеспечивающий генерирование ответа, выбранного модулем селектором; передачу ответа в канал взаимодействия с пользователем.
[0011] В одном из частных примеров реализации системы предварительная обработка пользовательского запроса включает в себя по меньшей мере одно из: исправление опечаток, нормализация текста, разбиения текста запроса на отдельные слова, определение именованных сущностей, выявление и классификация намерений в репликах пользовательского запроса.
[0012] В другом частном примере реализации системы при выявлении именованных сущностей осуществляется поиск информации о положении имен в тексте и информацию о классах, соответствующих им. [0013] В другом частном примере реализации системы после выделения именованных сущностей определяется их тематика с помощью метода классификации, включающей отнесение запроса к одной из известных категорий на основании семантического содержания.
[0014] В другом частном примере реализации системы при классификации реплик они делятся на получение конкретной информации, выполнение действий, получение информации в режиме обсуждения или их сочетания.
[0015] В другом частном примере реализации системы по выявленным характеристикам намерения пользовательского запроса и их семантического содержания вычисляется коэффициент соответствия одному или нескольким навыкам.
[0016] В другом частном примере реализации системы навык ведения диалога выбирается из группы: целенаправленный ответ на вопрос, ответ в свободной форме или поддержание свободной беседы.
[0017] В другом частном примере реализации системы модуль селектор выполняет обращение к одной или нескольким внешним информационным системам для выбора ответа на запрос пользователя.
[0018] В другом частном примере реализации системы каждый из модулей выполнен на базе одной или нескольких методов машинного обучения.
[0019] Заявленное техническое решение реализуется также за счет компьютерно- реализуемого способа управления диалоговым агентом в канале взаимодействия с пользователем, выполняемый с помощью по меньшей мере одного процесса и содержащий этапы, на которых: получают пользовательский запрос в канале взаимодействия с пользователем, причем запрос представляется в текстовой форме; выполняют обработку текстового запроса пользователя, в ходе которой осуществляют классификацию реплик в упомянутом запросе пользователя; осуществляют извлечение параметров из упомянутого запроса пользователя, на основании которых определяют характеристики намерения пользовательского запроса; осуществляют выбор навыка ведения диалога с пользователем на основании определенных характеристик намерения пользовательского запроса; осуществляют выбор ответа на запрос пользователя, связанного с выбранным навыком, причем выбор ответа осуществляется с помощью обработки характеристик намерения пользовательского запроса; генерируют ответ; и осуществляют передачу ответа в канал взаимодействия с пользователем. [0020] В одном из частных вариантов осуществления способа канал взаимодействия с пользователем выбирается из группы: онлайн чат-сессия, мобильное приложение, мультимедийное устройство с голосовым ассистентом, колл-центр.
[0021] В другом частном варианте осуществления способа на этапе обработки пользовательского запроса выполняется по меньшей мере одно из: исправление опечаток, нормализация текста, разбиения текста запроса на отдельные слова, определение именованных сущностей, выявление и классификация намерений в репликах пользовательского запроса.
[0022] В другом частном варианте осуществления способа при выявлении именованных сущностей осуществляется поиск информации о положении имен в тексте и информацию о классах, соответствующих им.
[0023] В другом частном варианте осуществления способа по выявленным характеристикам намерения пользовательского запроса вычисляется коэффициент соответствия одному или нескольким навыкам.
[0024] В другом частном варианте осуществления способа навык ведения диалога выбирается из группы: целенаправленный ответ на вопрос, ответ в свободной форме или ответ на вопрос от лица персоны.
[0025] В другом частном варианте осуществления способа при генерирования ответа на пользовательский запрос выполняется обращение к одной или нескольким внешним информационным системам.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0026] Фиг. 1 иллюстрирует общую информационную архитектуру решения.
[0027] Фиг. 2 иллюстрирует программно-аппаратную архитектуру заявленной системы.
[0028] Фиг. 3 иллюстрирует блок-схему выполнения заявленного способа управления диалоговым агентом.
[0029] Фиг. 4А - Фиг. 4В иллюстрируют пример ведения диалога в канале чат-бота мессенджера с помощью заявленного решения.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0030] На Фиг. 1 представлена общая информационная архитектура (100) заявленного технического решения, которая включает в себя пользователя (10), пользовательское устройство (110) для формирования запроса, сервер (200), выполняющий основную программную логику обработки запросов пользователей (10), внешнюю базу знаний (130). [0031] Вычислительные и компьютерные устройства, участвующие в общей архитектуре работы заявленного решения, взаимодействую между собой посредством сети передачи данных (150), в частности, сети Интернет.
[0032] В качестве пользовательского устройства (ПО) для взаимодействия с диалоговым агентом, расположенном на сервере (200), могут выступать различные средства, например, компьютер, ноутбук, смартфон, планшет, умное носимое устройство (часы, браслет, очки), смарт-ТВ, мультимедийное устройство транспортного средства, игровая приставка, мультимедийный голосовой ассистент (смарт- динамик, смарт-колонка) и т.п.
[0033] Формирование пользовательского запроса на ведение диалога с помощью устройства (110) осуществляется в том или ином канале взаимодействия, например, телефонный звонок в колл-центр, онлайн чат сессия на веб-сайте или мобильном приложении, чат со службой поддержки, общение с мультимедийными устройствами, снабженными функцией голосовых ассистентов и т.п. Канал пользовательского взаимодействия может изменяться относительного реализации и принципа работы устройства (110), а также программного обеспечения, обеспечивающего требуемое взаимодействие с диалоговым агентом.
[0034] Сеть передачи данных (150) может быть реализована с помощью известных из уровня техники приемов организации связи, например, WLAN, LAN, PAN, GSM/3G/LTE/5G, спутниковая связь, ТСРЛР соединение и т.п.
[0035] Внешняя база знаний (130) может формироваться на основе множества данных, описывающих ту или иную предметную область и организованных в виде централизованного хранилища информации, например, базу данных и т.п. Например, база знаний (130) может представлять собой один или несколько ресурсов в сети Интернет, которые применяются для формирования ответа на запрос пользователей (сайт Wikipedia.org, телефонный онлайн справочник и т.п.).
[0036] На Фиг. 2 представлена архитектурное исполнение программно-аппаратной платформы сервера (200), на котором размещается система управления диалоговым агентом, обрабатывающим поступающие пользовательские запросы от устройств (110). Сервер (200) выполняется на базе стандартизованной компоновки вычислительных устройств и включает в себя такие компоненты, как: один или несколько процессоров (201), оперативную память (202), средство хранения данных (203), интерфейсы ввода/вывода (204), средства ввода/вывода (205) и средство сетевого взаимодействия (206).
[0037] Процессор (201) предназначен для выполнения программной логики и требуемых вычислительных операций, необходимых для функционирования сервера (200). Процессор (201) исполняет необходимые машиночитаемые команды и инструкции, содержащиеся в оперативной памяти (202). Процессор (201) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в архитектуре сервера (200) также необходимо учитывать графический процессор, например, GPU NVIDIA или Graphcore, тип которых также является пригодным для полного или частичного выполнения способов реализации заявленного решения, а также может применяться для обучения и применения моделей машинного обучения.
[0038] Оперативная память (202), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал. Средство хранения данных (203) может выполняться в виде HDD, SSD дисков, рейд массива, флэш- памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средства (203) позволяют выполнять долгосрочное хранение различного вида информации. Интерфейсы (204) представляют собой стандартные средства для подключения и работы нескольких устройств, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п. Выбор интерфейсов (204) зависит от конкретного исполнения серверного устройство (200).
[0039] В качестве средств ввода/вывода данных (205) может использоваться: клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
Средства сетевого взаимодействия (206) выбираются из устройств, обеспечивающих сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (205) обеспечивается организация обмена данными по проводному и/или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
[0040] Обеспечиваемая сервером (200) программная реализация, позволяющая осуществлять управление диалоговым агентом, реализуется с помощью совокупности модулей, в частности, модуля аннотатора (2031), модуля селектора (2032) и модуля постпроцессинга (2033).
[0041] Как представлено на Фиг. 3, заявленный способ (300) управления диалоговым агентом состоит из последовательных этапов, осуществляемых с помощью работы программной логики, реализуемой на сервере (200). [0042] На первом этапе (301) происходит первичное получение и предобработка пользовательского запроса. Запрос, поступающий от пользователя (10) с помощью устройства (110), может быть сформирован в различном виде, например, голосовом, текстовом, жестовом и т.п. В независимости от первоначального состояния пользовательского запроса устройством (ПО), необходимо осуществить его преобразование в текстовую форму, которая будет передана в модуль аннотатор (2031). Преобразование в текстовый вид может выполняться с помощью различных известных средств, например, преобразование голосовой информации в текст, преобразование жестовой информации в текст и т.д.
[0043] Формируемый запрос пользователем (10) получается модулем (2031) в виде блока неструктурированного текста. Модуль аннотатор (2031) на этапе (302) выполняет извлечение из полученного текста следующих данных: концепции, ключевые слова, фразы, классификации и именованные сущности, осуществляет пометку полученных выдержек как аннотаций. Модуль (2031) может включать несколько алгоритмов аннотирования текста, которые могут работать в параллельном режиме.
[0044] С помощью алгоритмов модуля аннотатора (2031) выполняется:
• Предварительная обработка текста;
• Классификация реплики, соотнесение с одним из классов, известных системе;
• Извлечение параметров запроса.
[0045] Модуль аннотатор (2031 ) выполняет обработку высказываний пользователя (10) на естественном языке, который может включать в себя одну или несколько следующих функций, реализуемых упомянутыми алгоритмами:
• Разбиение текста на слова.
• Исправление опечаток (например, с помощью базы элементов библиотеки DeepPavlov - Automatic spelling correction model).
• Пополнение текста морфологическими признаками - определение нормальной формы слов и частей речи (например, с помощью элементов библиотеки DeepPavlov - Morphological tagging model)
• Определение именованных сущностей (например, с помощью базы элементов библиотеки DeepPavlov - NER model).
• Классификация интентов (характеристик намерений) в реплике с помощью одновременно работающих подходов: на основе примеров фраз и алгоритмов на базе машинного обучения (например, с помощью базы элементов библиотеки DeepPavlov - Classification model). К интентам можно отнести: организации, время, локации, персоны, продукты, факты и д.р.
• Заполнение информационных «слотов» — параметров запроса, переданных во фразе пользователя (например, с помощью базы элементов библиотеки DeepPavlov - Slot filling model). При реализации данного этапа на основании предоставленного текста выделяются именованные сущности (NER), классифицируемые и структурируемые по установленной форме (списку). Например, ФИО, паспортные данные, наименование компаний, данные из ЕГРЮЛ и т.п.
[0046] Необходимо отметить, что выше представлен лишь примерный функционал модуля аннотатора (2031), который может быть расширен в зависимости от требуемой реализации технического решения. В результате работы модуля аннотатора (2031) на основе ключевых слов, помеченных одним или несколькими алгоритмами, указанными выше, на этапе (303) определяется намерение пользователя (10) на основании обработки его запроса, а также его параметры - характеристики, позволяющие более точно описать намерение, или уточнить необходимые детали запроса.
[0047] Под термином ‘'намерение’' необходимо понимать формат требуемого общения, задаваемого пользовательским запросом и отклик, который должен быть сформирован системой управления диалоговым агентом при обработке пользовательского запроса. В реализации заявленного решения можно выделить основные типы агентов для ведения диалога:
• общего назначения (чат-боты), позволяющие вести диалог в свободной форме;
• задачеориентированные (целеориентированной системы), формирующие конкретный ответ на вопрос пользователя;
• способные вести диалог на любую тему (болталки), предназначенные для поддержания беседы.
[0048] В качестве примера можно рассмотреть запрос, сформированный пользователем (10), поступивший на сервер (200) в следующем виде: «Какая сегодня погода?». Намерение пользователя (10) - узнать погоду, параметр - это дата и место. Дополнительная информация, например, местоположение пользователя, текущая дата и т.п. могут получаться от служб пользовательского устройства (ПО) или от внешних сервисов, с которыми пользовательское устройство (ПО) осуществляет взаимодействие. На выходе модулем (2031) формируется аннотированное выражение с определенными характеристиками намерения.
[0049] Далее на этапе (304) обработанный модулем (2031) текст запроса передается на обработку в модуль селектор (2032), который определяет следующее наиболее подходящее состояние. Под состоянием понимается выражение, получаемое после обработки диалоговой входной информации для извлечения по меньшей мере одного соответствующего ей базового смысла и дальнейшей ее интерпретации различными программными навыками, позволяющими обработать базовый смысл запроса.
[0050] Модуль селектор (2032) позволяет подключать различное количество навыков, которые могут применяться для обработки пользовательского запроса, при этом каждый программный навык обеспечивает формирование уникального варианта состояния по отношению к другими, что расширяет вариативность ведения диалога с пользователем с помощью автоматизированной диалоговой системы. Базовый смысл запроса пользователя (10) представляет собой ключевое намерение, определяемое модулем аннотатором (2031). Например, как было указано в примере выше, узнать погоду.
[0051] Модуль селектор (2032) задействует подключенные к нему алгоритмы навыков, для каждого из которого вычисляется коэффициент уверенности в ответе относительно намерения пользователя в формируемом запросе. В частности, при выборе активации того или иного навыка модуль селектор (2032) может предварительно определить формируемые ими состояния, например:
• навык А - запрос дополнительной информации, местоположения запрашиваемой погоды - «в каком месте вам интересует погода?»;
• навык В - сгенерировать информацию по текущим координатам устройства пользователя (110) - «сегодня 18 градусов тепла»;
• навык С - пошутить на счет погоды - «вам не помешает сегодня взять зонт».
Далее среди сформированных ответов с помощью навыков модуль селектора (2032) выбирает выражение, наиболее полно соответствующее высказыванию пользователя (10), на основе полученного коэффициента для каждого из состояний, сформированных тем или иным навыком, а также анализа семантического содержания текста пользовательского запроса. Под коэффициентом понимается значение, которое выдает навык после обработки интента, это значение уверенности в ответе, формируемое каждым из подключенных навыков.
[0052] Архитектура модуля селектора (2032) может реализовывать следующие подходы к обработке интента, например:
• Навык ответа на вопрос принимает интент о мире в свободной форме и выдает ответ, основываясь на своих знаниях из Википедии (может быть реализован на базе элементов библиотеки DeepPavlov - ODQA skill and KBQA skill).
• Навык целенаправленного диалога позволяет прогнозировать ответы (может быть реализован на базе элементов библиотеки DeepPavlov - Goal-oriented) • Навык создания разговорного диалога, позволяющий отвечать на вопросы в свободной форме от лица персоны (может быть реализован на базе элементов библиотеки DeepPavlov - Chit-chat).
Представленные выше примеры навыков, выбираемые с помощью модуля селектора (2032) отображают лишь примерный набор, который может быть расширен в зависимости от требуемой реализации технического решения.
[0053] После расчета коэффициента уверенности каждым из подключенных навыков и контекста полученного выражения, на этапе (305) модуль селектор (2032) выбирает наиболее релевантное состояние. При этом на данном этапе может быть сразу несколько состояний, если на вход было подано несколько предложений.
[0054] Модуль селектор (2023) при этом может обращаться к одной или нескольким информационным системам, например, внешней или внутренней базе знаний (130) или иным ресурсам и службам для формирования требуемого ответа. В частности, к службам гео-локации, веб-сайтам с данными метеопрогноза, новостным ресурсам и т.п.
[0055] Выбранный ответ с помощью модуля селектора (2032) передается в модуль постпроцессинга (2033), который осуществляет генерацию текстового ответа с использованием функций согласования слов на естественном языке. Генерация текстового ответа происходит за счет поступления текстовых данных в ранее подготовленный шаблон, в котором производится выбор наиболее вероятных характеристик данного текста и/или наиболее статистический вероятные ответы в виде реплики на данный текст. Под ранее подготовленным шаблоном стоит понимать текст, который был получен путем обучения навыка на тестовых данных.
[0056] На этапе (306) ответ передается в канал взаимодействия с пользователем (10), в частности, в канал, в котором был сформирован первоначальный запрос. Диалоговая система сервера (200) формирует ответ в текстовом виде, однако он может быть преобразован в требуемую форму, например, речь (голосовые ассистенты), изображения жестов, видеоряд и т.п.
[0057] Каждый из указанных модулей может быть выполнен на базе одного или нескольких методов и/или алгоритмов машинного обучения на основе нейронных сетей, которые могут включать в себя, например, метод коррекции ошибки, метод обратного распространения ошибки, метод опорных векторов, алгоритм градиентного бустинга, метод случайного леса, регрессию, и др.
[0058] На Фиг. 4А представлен пример работы заявленного решения на примере чат- бота. Пользователь (10) формирует запрос в канале приложения мессенджера с помощью устройства (ПО), например, с помощью приложения Telegram. Первоначально формируемый запрос содержит информацию, характеризующую намерение пользователя (10) по получению общих данных в части заведений, предоставляющих определенный тип услуги (кафе, рестораны, закусочные). Диалоговая система подключает требуемый навык для обработки соответствующего запроса пользователя (10), а именно, навык для целеориентированного диалога, реализованный на библиотеке DeepPavlov и базу данных ресторанов (кафе, закусочных), содержащую необходимые сведения для осуществления поискового механизма по запросу пользователя (10).
[0059] При распознавании получаемого запроса, содержащего общие сведения, изначально в подключенном типе навыка содержатся пустые слоты, которые необходимо заполнить в процессе ведения беседы с пользователем. Таким образом, диалоговая система на каждой итерации формирует уточняющий запрос для определения намерения пользователя при общении и заполняет информационные слоты. Такой информацией может являться вид кухни, предпочитаемой пользователем (10). При получении соответствующего ответа, диалоговая система формирует последующие процедуры обработки запроса, которые могут содержать, например, уточнение примерного местоположения кафе/ресторана.
[0060] При полном заполнении информационных слотов система формирует конкретный ответ на основании подготовленного шаблона (например, наименование ресторана). Определение места посещения выполняется системой на основании расчета коэффициента уверенности и при утвердительном принятии предложения диалоговой системы пользователем осуществить предоставление информации, идентифицирующей подобранное место посещения. Такой тип диалоговой системы может быть реализован на основе рекуррентных нейронных сетей, обученной на выборке информации по соответствующим местам предоставления услуг сферы питания (кафе рестораны, бистро и т.п.).
[0061] На Фиг. 4В представлен пример работы заявленного решения на примере чат- бота. Пользователь (10) формирует запрос в канале взаимодействия с помощью устройства (110), например, с помощью голосовой колонки. Первоначально формируемый запрос содержит информацию, характеризующую намерение пользователя (10) по общению с системой на общеизвестные темы (например, про автомобили, моду и т.д). Диалоговая система подключает требуемый навык для обработки соответствующего запроса пользователя (10), а именно, навык для болталки chit-chat, реализованный на библиотеке DeepPavlov и системы, содержащие необходимые сведения для осуществления поискового механизма по запросу пользователя (10). [0062] Вместо следования сценарию болталки пытаются найти ответ, наиболее подходящий по смыслу последней реплике, которую сказал пользователь. Чаще всего ответ выбирается из набора готовых фраз, полученных при обучении навыка - при таком подходе ответы бота не всегда соответствуют репликам пользователя по смыслу, но являются грамотными законченными предложениями. При этом возможна генерация ответа с нуля - это гораздо более гибкий подход, но он чреват ошибками.
[0063] Обычный чатбот, обученный на корпусе диалогов, на вопросы о себе отвечает непоследовательно - например, может сказать, что у него нет животных, а потом - что только что гулял с собакой. Если никакой информации о себе у чатбота нет, он просто генерирует строку, лучше всего сочетающуюся с предыдущей репликой пользователя, и не проверяет ее на соответствие тому, что говорил раньше. Однако, чтобы решить эту проблему, личность и ответы на вопросы о себе прописывают в диалоговой системе, что позволяет ей использовать ту или иную предустановленную персональность.
[0064] Представленные описание заявленного решения раскрывает лишь предпочтительные примеры его реализации и не должно трактоваться как ограничивающее иные, частные примеры его осуществления, не выходящие за рамки объема правовой охраны, которые являются очевидными для специалиста соответствующей области техники.

Claims

ФОРМУЛА
1. Система управления диалоговым агентом в канале взаимодействия с пользователем, содержащая: по меньшей мере один процессор; по меньшей мере одно средство хранения данных; модуль аннотатор, обеспечивающий получение пользовательского запроса в канале взаимодействия с пользователем, причем запрос представляется в текстовой форме; предварительную обработку текстового запроса пользователя; классификацию реплик в текстовом запросе пользователя; извлечение параметров из упомянутого запроса пользователя и определение характеристик намерения пользовательского запроса; модуль селектор, обеспечивающий выбор навыка ведения диалога с пользователем на основании определенных характеристик намерения пользовательского запроса; выбор ответа на запрос пользователя, связанного с выбранным навыком, причем выбор ответа осуществляется с помощью обработки характеристик намерения пользовательского запроса; модуль постпроцессинга, обеспечивающий генерирование ответа, выбранного модулем селектором; передачу ответа в канал взаимодействия с пользователем.
2. Система по п.1, характеризующаяся тем, что предварительная обработка пользовательского запроса включает в себя по меньшей мере одно из: исправление опечаток, нормализация текста, разбиения текста запроса на отдельные слова, определение именованных сущностей, выявление и классификация намерений в репликах пользовательского запроса.
3. Система по п.2, характеризующаяся тем, что при выявлении именованных сущностей осуществляется поиск информации о положении имен в тексте и информацию о классах, соответствующих им.
4. Система по п.2, характеризующаяся тем, что после выделения именованных сущностей определяется их тематика с помощью метода классификации, включающей отнесение запроса к одной из известных категорий на основании семантического содержания.
5. Система по п.1 , характеризующаяся тем, что при классификации реплик они делятся на получение конкретной информации, выполнение действий, получение информации в режиме обсуждения или их сочетания.
6. Система по п.1, характеризующаяся тем, что по выявленным характеристикам намерения пользовательского запроса и их семантического содержания вычисляется коэффициент соответствия одному или нескольким навыкам.
7. Система по п.6, характеризующаяся тем, что навык ведения диалога выбирается из группы: целенаправленный ответ на вопрос, ответ в свободной форме или поддержание свободной беседы.
8. Система по п.1 , характеризующаяся тем, что модуль селектор выполняет обращение к одной или нескольким внешним информационным системам для выбора ответа на запрос пользователя.
9. Система по п.1, характеризующаяся тем, что каждый из модулей выполнен на базе одного или нескольких методов машинного обучения.
10. Компьютерно-реализуемый способ управления диалоговым агентом в канале взаимодействия с пользователем, выполняемый с помощью по меньшей мере одного процесса и содержащий этапы, на которых:
• получают пользовательский запрос в канале взаимодействия с пользователем, причем запрос представляется в текстовой форме;
• выполняют обработку текстового запроса пользователя, в ходе которой осуществляют классификацию реплик в упомянутом запросе пользователя;
• осуществляют извлечение параметров из упомянутого запроса пользователя, на основании которых определяют характеристики намерения пользовательского запроса;
• осуществляют выбор навыка ведения диалога с пользователем на основании определенных характеристик намерения пользовательского запроса;
• осуществляют выбор ответа на запрос пользователя, связанного с выбранным навыком, причем выбор ответа осуществляется с помощью обработки характеристик намерения пользовательского запроса;
• генерируют ответ; и
• осуществляют передачу ответа в канал взаимодействия с пользователем.
11. Способ по п.10, характеризующийся тем, что канал взаимодействия с пользователем выбирается из группы: онлайн чат-сессия, мобильное приложение, мультимедийное устройство с голосовым ассистентом, колл-центр.
12. Способ по п.10, характеризующийся тем, что на этапе обработки пользовательского запроса выполняется по меньшей мере одно из: исправление опечаток, нормализация текста, разбиения текста запроса на отдельные слова, определение именованных сущностей, выявление и классификация намерений в репликах пользовательского запроса.
13. Способ по п.12, характеризующийся тем, что при выявлении именованных сущностей осуществляется поиск информации о положении имен в тексте и информацию о классах, соответствующих им.
14. Способ по п.10, характеризующийся тем, что по выявленным характеристикам намерения пользовательского запроса вычисляется коэффициент соответствия одному или нескольким навыкам.
15. Способ по п.14, характеризующийся тем, что навык ведения диалога выбирается из группы: целенаправленный ответ на вопрос, ответ в свободной форме или ответ на вопрос от лица персоны.
16. Способ по п.10, характеризующийся тем, что при генерирования ответа на пользовательский запрос выполняется обращение к одной или нескольким внешним информационным системам.
PCT/RU2019/000820 2019-11-15 2019-11-15 Способ и система управления диалоговым агентом в канале взаимодействия с пользователем WO2021096382A2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000820 WO2021096382A2 (ru) 2019-11-15 2019-11-15 Способ и система управления диалоговым агентом в канале взаимодействия с пользователем

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000820 WO2021096382A2 (ru) 2019-11-15 2019-11-15 Способ и система управления диалоговым агентом в канале взаимодействия с пользователем

Publications (2)

Publication Number Publication Date
WO2021096382A2 true WO2021096382A2 (ru) 2021-05-20
WO2021096382A3 WO2021096382A3 (ru) 2021-07-08

Family

ID=75912254

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2019/000820 WO2021096382A2 (ru) 2019-11-15 2019-11-15 Способ и система управления диалоговым агентом в канале взаимодействия с пользователем

Country Status (1)

Country Link
WO (1) WO2021096382A2 (ru)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002527800A (ja) * 1998-10-02 2002-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 会話ブラウザおよび会話システム
US9473637B1 (en) * 2015-07-28 2016-10-18 Xerox Corporation Learning generation templates from dialog transcripts
RU2018113724A (ru) * 2015-10-21 2019-11-21 ГУГЛ ЭлЭлСи Сбор параметров и автоматическая генерация диалога в диалоговых системах
US10967508B2 (en) * 2018-02-15 2021-04-06 DMAI, Inc. System and method for dynamic robot configuration for enhanced digital experiences
EP3557439A1 (en) * 2018-04-16 2019-10-23 Tata Consultancy Services Limited Deep learning techniques based multi-purpose conversational agents for processing natural language queries

Also Published As

Publication number Publication date
WO2021096382A3 (ru) 2021-07-08

Similar Documents

Publication Publication Date Title
JP7063932B2 (ja) 適切なエージェントの自動化アシスタント呼び出し
US20220156465A1 (en) Dialog Session Override Policies for Assistant Systems
CN107846350B (zh) 一种语境感知网络聊天的方法、计算机可读介质和系统
CN110462730B (zh) 促进以多种语言与自动化助理的端到端沟通
US10552544B2 (en) Methods and systems of automated assistant implementation and management
US20220237233A1 (en) Method and system for generating a conversational agent by automatic paraphrase generation based on machine translation
US20140257794A1 (en) Semantic Re-Ranking of NLU Results in Conversational Dialogue Applications
US20140257792A1 (en) Anaphora Resolution Using Linguisitic Cues, Dialogue Context, and General Knowledge
CN110741364A (zh) 确定自动化助理对话的状态
US11861315B2 (en) Continuous learning for natural-language understanding models for assistant systems
WO2020056621A1 (zh) 一种意图识别模型的学习方法、装置及设备
US10713288B2 (en) Natural language content generator
WO2022252636A1 (zh) 基于人工智能的回答生成方法、装置、设备及存储介质
KR20160147303A (ko) 기억 능력을 이용하는 다중 사용자 기반의 대화 관리 방법 및 이를 수행하는 장치
US20220171946A1 (en) Enhanced logits for natural language processing
CN116635862A (zh) 用于自然语言处理的域外数据扩充
CN116615727A (zh) 用于自然语言处理的关键词数据扩充工具
CN116235164A (zh) 聊天机器人的范围外自动转变
Aattouri et al. Modeling of an artificial intelligence based enterprise callbot with natural language processing and machine learning algorithms
CN110249326B (zh) 自然语言内容生成器
RU2818036C1 (ru) Способ и система управления диалоговым агентом в канале взаимодействия с пользователем
CN114860910A (zh) 智能对话方法及系统
WO2021096382A2 (ru) Способ и система управления диалоговым агентом в канале взаимодействия с пользователем
Torres-Cruz et al. Evaluation of Performance of Artificial Intelligence System during Voice Recognition in Social Conversation
RU2759090C1 (ru) Способ управления диалогом и система понимания естественного языка в платформе виртуальных ассистентов

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: 19952782

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 27.09.2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19952782

Country of ref document: EP

Kind code of ref document: A2