WO2019182325A1 - 전자 장치 및 전자 장치의 음성 인식 제어 방법 - Google Patents

전자 장치 및 전자 장치의 음성 인식 제어 방법 Download PDF

Info

Publication number
WO2019182325A1
WO2019182325A1 PCT/KR2019/003181 KR2019003181W WO2019182325A1 WO 2019182325 A1 WO2019182325 A1 WO 2019182325A1 KR 2019003181 W KR2019003181 W KR 2019003181W WO 2019182325 A1 WO2019182325 A1 WO 2019182325A1
Authority
WO
WIPO (PCT)
Prior art keywords
electronic device
task
state
information
voice data
Prior art date
Application number
PCT/KR2019/003181
Other languages
English (en)
French (fr)
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 US16/982,939 priority Critical patent/US11443744B2/en
Publication of WO2019182325A1 publication Critical patent/WO2019182325A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • 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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • 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/04Segmentation; Word boundary detection
    • 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/04Segmentation; Word boundary detection
    • G10L15/05Word boundary detection
    • 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/08Speech classification or search
    • G10L15/083Recognition networks
    • 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/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • 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/08Speech classification or search
    • G10L2015/088Word spotting
    • 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
    • G10L2015/223Execution procedure of a spoken command
    • 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
    • G10L2015/225Feedback of the input speech

Definitions

  • Various embodiments of the present disclosure relate to an electronic device for providing intelligent voice recognition control by recognizing surrounding conditions and a voice recognition control method of the electronic device.
  • intelligence services for electronic devices
  • one of such intelligence services may provide various services to users by controlling the electronic devices through voice recognition.
  • a control technology using voice recognition analyzes a voice (command) input through user utterance and provides a service that best meets a user's request (or command).
  • the electronic device can be controlled more easily than the control of the electronic device by direct manipulation of physical or mechanical buttons, or by input through an additional input device such as a mouse or keyboard, or a user interface displayed on a touchable display. It is gradually increasing.
  • Such a voice recognition control technique may be implemented by an application or a service developer registering a command to be used for voice control in advance, and predefining a voice recognition result and an action or operation according thereto.
  • the voice recognition control technology may control a user request (or command) corresponding to a voice input to the electronic device by the user's speech through the electronic device or the external electronic device.
  • An operation to be performed in the corresponding external electronic device (eg, a first task performing operation) by a user's voice request may affect an operation already performed in the electronic device (eg, a first function performing operation), or
  • the operation to be performed in the electronic device (eg, performing a first task) by the user's voice request is an operation that may affect an operation already performed in the external electronic device (eg, performing a first function).
  • a user when the electronic device is controlled by using voice recognition, a user may recognize a situation around the electronic device (for example, a state of an external electronic device near the electronic device controlled by the electronic device) and request a voice request from the user. Additional control operations (eg, the operation of the first task) on the performed electronic device or the operation of the external electronic device (for example, the voice output operation or the performance of the second task related to the adjustment of the state of the electronic device or the state of the external electronic device) If necessary, an electronic device and a method for controlling voice recognition of the electronic device may be provided.
  • Additional control operations eg, the operation of the first task
  • the operation of the external electronic device for example, the voice output operation or the performance of the second task related to the adjustment of the state of the electronic device or the state of the external electronic device
  • an electronic device may include at least one communication interface, at least one processor operatively connected to the communication interface, and at least one memory operatively connected to the processor, wherein the memory may be executed.
  • Receiving, by the processor, first input voice data including a first request for performing a first task by using a second external electronic device by a user utterance from a first external electronic device, and Instructions for determining or receiving a state of a first external electronic device and providing a first response related to the adjustment of the state of the first external electronic device to the first external electronic device may be stored.
  • an electronic device includes at least one communication interface, at least one processor operatively connected to the communication interface, and at least one memory operatively connected to the processor, the memory executing
  • the processor acquires first input voice data including a first request to perform a first task by using a first external electronic device by a user utterance through the electronic device, and Instructions for transmitting the acquired first input voice data to a second external electronic device and receiving a first response related to adjustment of a state of the electronic device from the second external electronic device.
  • an electronic device includes at least one communication interface, at least one processor operatively connected to the communication interface, and at least one memory operatively connected to the processor, the memory executing
  • the processor receives, from a first external electronic device, first input voice data including a first request for performing a first task by using the first external electronic device by a user utterance, and 2 may store instructions for determining or receiving a state of an external electronic device and providing an indication related to adjustment of a state of the second external electronic device to the first external electronic device.
  • the voice recognition control may be used to control the electronic device or a device controlled by the electronic device based on a user's request (or command) input by the user's speech.
  • voice or information related to an additional control operation for the user request may be provided to the user based on a surrounding situation.
  • FIG. 1 is a block diagram of an electronic device in a network environment according to various embodiments.
  • FIG. 2 is a diagram illustrating a voice recognition control system according to various embodiments.
  • 3A is a diagram illustrating an integrated intelligence system according to various embodiments of the present disclosure.
  • 3B is a block diagram illustrating a user terminal of an integrated intelligence system according to an embodiment of the present invention.
  • FIG. 4 is a block diagram of an intelligent server that provides voice recognition control according to various embodiments.
  • FIG. 5 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure.
  • FIG. 6 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure.
  • FIG. 7 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure.
  • FIG. 8 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure.
  • FIG. 9 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure.
  • FIG. 10 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure.
  • FIG. 11 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure.
  • FIG. 12 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure.
  • FIG. 13 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • FIG. 14 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • 15 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • 16 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • 17 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • FIG. 18 is a flowchart illustrating a control method of a voice recognition control system according to various embodiments.
  • FIG. 19 is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20A illustrates an example of a UI screen of a first electronic device according to various embodiments of the present disclosure.
  • 20B is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20C is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20D is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • FIG. 1 is a block diagram of an electronic device 101 in a network environment 100, according to various embodiments.
  • the electronic device 101 communicates with the electronic device 102 through a first network 198 (eg, a short-range wireless communication network) or the second network 199.
  • the electronic device 104 may communicate with the server 108 through a long range wireless communication network.
  • the electronic device 101 may communicate with the electronic device 104 through the server 108.
  • the electronic device 101 may include a processor 120, a memory 130, an input device 150, an audio output device 155, a display device 160, an audio module 170, and a sensor module ( 176, interface 177, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or antenna module 197. ) May be included.
  • a sensor module 176, interface 177, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or antenna module 197.
  • the components for example, the display device 160 or the camera module 180
  • the sensor module 176 may be implemented embedded in the display device 160 (eg, display).
  • the processor 120 executes software (eg, the program 140) to execute at least one other component (eg, hardware or software component) of the electronic device 101 connected to the processor 120. It can control and perform various data processing or operations. According to one embodiment, as at least part of data processing or operation, processor 120 may send instructions or data received from another component (eg, sensor module 176 or communication module 190) to volatile memory 132. Can be loaded into, processed in a command or data stored in volatile memory 132, and stored in the non-volatile memory (134).
  • software eg, the program 140
  • processor 120 may send instructions or data received from another component (eg, sensor module 176 or communication module 190) to volatile memory 132. Can be loaded into, processed in a command or data stored in volatile memory 132, and stored in the non-volatile memory (134).
  • the processor 120 may include a main processor 121 (eg, a central processing unit or an application processor), and a coprocessor 123 (eg, a graphics processing unit, an image signal processor) that may operate independently or together. , Sensor hub processor, or communication processor). Additionally or alternatively, the coprocessor 123 may be set to use lower power than the main processor 121 or to be specialized for its designated function. The coprocessor 123 may be implemented separately from or as part of the main processor 121.
  • a main processor 121 eg, a central processing unit or an application processor
  • a coprocessor 123 eg, a graphics processing unit, an image signal processor
  • the coprocessor 123 may be set to use lower power than the main processor 121 or to be specialized for its designated function.
  • the coprocessor 123 may be implemented separately from or as part of the main processor 121.
  • the coprocessor 123 may, for example, replace the main processor 121 while the main processor 121 is in an inactive (eg, sleep) state, or the main processor 121 may be active (eg, execute an application). At least one of the components of the electronic device 101 (eg, the display device 160, the sensor module 176, or the communication module 190) together with the main processor 121 while in the) state. Control at least some of the functions or states associated with the. According to one embodiment, the coprocessor 123 (eg, an image signal processor or communication processor) may be implemented as part of other functionally related components (eg, camera module 180 or communication module 190). have.
  • the memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101.
  • the data may include, for example, software (eg, the program 140) and input data or output data for a command related thereto.
  • the memory 130 may include a volatile memory 132 or a nonvolatile memory 134.
  • the program 140 may be stored as software in the memory 130, and may include, for example, an operating system 142, middleware 144, or an application 146.
  • the input device 150 may receive a command or data to be used for a component (for example, the processor 120) of the electronic device 101 from the outside (for example, a user) of the electronic device 101.
  • the input device 150 may include, for example, a microphone, a mouse, or a keyboard.
  • the sound output device 155 may output a sound signal to the outside of the electronic device 101.
  • the sound output device 155 may include, for example, a speaker or a receiver.
  • the speaker may be used for general purposes such as multimedia playback or recording playback, and the receiver may be used to receive an incoming call.
  • the receiver may be implemented separately from or as part of a speaker.
  • the display device 160 may visually provide information to the outside (eg, a user) of the electronic device 101.
  • the display device 160 may include, for example, a display, a hologram device, or a projector and a control circuit for controlling the device.
  • the display device 160 may include a touch circuitry configured to sense a touch, or a sensor circuit (eg, a pressure sensor) configured to measure the strength of a force generated by the touch. have.
  • the audio module 170 may convert sound into an electric signal or, conversely, convert an electric signal into a sound. According to an embodiment, the audio module 170 acquires sound through the input device 150, or an external electronic device (eg, connected to the sound output device 155 or the electronic device 101 directly or wirelessly). Sound may be output through the electronic device 102 (for example, a speaker or a headphone).
  • the sensor module 176 detects an operating state (eg, power or temperature) of the electronic device 101, or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the detected state. can do.
  • the sensor module 176 may include, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an infrared sensor, a biometric sensor, It may include a temperature sensor, a humidity sensor, or an illuminance sensor.
  • the interface 177 may support one or more designated protocols that may be used for the electronic device 101 to be directly or wirelessly connected to an external electronic device (for example, the electronic device 102).
  • the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital Card interface
  • audio interface audio interface
  • connection terminal 178 may include a connector through which the electronic device 101 may be physically connected to an external electronic device (eg, the electronic device 102).
  • the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
  • the haptic module 179 may convert an electrical signal into a mechanical stimulus (eg, vibration or movement) or an electrical stimulus that can be perceived by the user through tactile or kinesthetic senses.
  • the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 180 may capture still images and videos. According to one embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
  • the power management module 188 may manage power supplied to the electronic device 101.
  • the power management module 388 may be implemented, for example, as at least part of a power management integrated circuit (PMIC).
  • PMIC power management integrated circuit
  • the battery 189 may supply power to at least one component of the electronic device 101.
  • the battery 189 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell or a fuel cell.
  • the communication module 190 may establish a direct (eg wired) communication channel or wireless communication channel between the electronic device 101 and an external electronic device (eg, the electronic device 102, the electronic device 104, or the server 108). Establish and perform communication over established communication channels.
  • the communication module 190 may operate independently of the processor 120 (eg, an application processor) and include one or more communication processors supporting direct (eg, wired) or wireless communication.
  • the communication module 190 is a wireless communication module 192 (eg, a cellular communication module, a near field communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (eg It may include a local area network (LAN) communication module, or a power line communication module.
  • GNSS global navigation satellite system
  • the corresponding communication module of these communication modules may be a first network 198 (e.g. a short range communication network such as Bluetooth, WiFi direct or infrared data association (IrDA)) or a second network 199 (e.g. cellular network, the Internet, or Communicate with external electronic devices via a telecommunications network, such as a computer network (eg, LAN or WAN).
  • a first network 198 e.g. a short range communication network such as Bluetooth, WiFi direct or infrared data association (IrDA)
  • a second network 199 e.g. cellular network, the Internet, or Communicate with external electronic devices via a telecommunications network, such as a computer network (eg, LAN or WAN).
  • a telecommunications network such as a computer network (eg, LAN or WAN).
  • the wireless communication module 192 uses subscriber information (e.g., international mobile subscriber identifier (IMSI)) stored in the subscriber identification module 196 in a communication network such as the first network 198 or the second network 199.
  • subscriber information e.g., international mobile subscriber identifier (IMSI)
  • IMSI international mobile subscriber identifier
  • the antenna module 197 may transmit or receive a signal or power to an external (eg, an external electronic device) or from the outside.
  • antenna module 197 may include one or more antennas, from which at least one antenna suitable for a communication scheme used in a communication network, such as first network 198 or second network 199, For example, it may be selected by the communication module 190.
  • the signal or power may be transmitted or received between the communication module 190 and the external electronic device through the at least one selected antenna.
  • peripheral devices eg, a bus, a general purpose input and output (GPIO), a serial peripheral interface (SPI), or a mobile industry processor interface (MIPI)
  • GPIO general purpose input and output
  • SPI serial peripheral interface
  • MIPI mobile industry processor interface
  • the command or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199.
  • Each of the electronic devices 102 and 104 may be a device of the same or different type as the electronic device 101.
  • all or part of operations executed in the electronic device 101 may be executed in one or more external devices among the external electronic devices 102, 104, or 108. For example, when the electronic device 101 needs to perform a function or service automatically or in response to a request from a user or another device, the electronic device 101 instead of executing the function or service itself.
  • one or more external electronic devices may be requested to perform at least a part of the function or the service.
  • the one or more external electronic devices that receive the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit a result of the execution to the electronic device 101.
  • the electronic device 101 may process the result as it is or additionally and provide it as at least part of a response to the request.
  • cloud computing distributed computing, or client-server computing technology may be used.
  • Electronic devices may be various types of devices.
  • the electronic device may include, for example, at least one of a portable communication device (eg, a smartphone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance.
  • a portable communication device eg, a smartphone
  • a computer device e.g., a laptop, a desktop, a tablet, or a smart bracelet
  • a portable multimedia device e.g., a portable medical device
  • a camera e.g., a portable medical device
  • a camera e.g., a portable medical device
  • a wearable device e.g., a portable medical device
  • a home appliance e.g., a portable medical device
  • module includes a unit composed of hardware, software or firmware, and can be used interchangeably with the terminology of logic, logic blocks, components, or circuits, for example.
  • the module may be an integrally formed part or a minimum unit or part of performing one or more functions.
  • the module may be configured as an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Various embodiments of this document include instructions stored in a machine-readable storage media (eg, internal memory 136 or external memory 138) that can be read by a machine (eg, a computer). It may be implemented in software (eg, program 140).
  • the device may be a device capable of calling a stored command from a storage medium and operating in accordance with the called command, and may include an electronic device (eg, the electronic device 101) according to the disclosed embodiments.
  • the processor for example, the processor 120
  • the processor may perform a function corresponding to the command directly or by using other components under the control of the processor.
  • the instructions can include code generated or executed by a compiler or interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-temporary' means that the storage medium does not include a signal and is tangible, and does not distinguish that data is stored semi-permanently or temporarily on the storage medium.
  • a method may be provided included in a computer program product.
  • the computer program product may be traded between the seller and the buyer as a product.
  • the computer program product may be distributed online in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)) or through an application store (eg play store TM ).
  • a storage medium such as a server of a manufacturer, a server of an application store, or a relay server, or may be temporarily created.
  • Each component eg, a module or a program
  • some components eg, modules or programs
  • operations performed by a module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.
  • FIG. 2 is a diagram illustrating a voice recognition control system according to various embodiments.
  • a voice recognition control system 200 may include a first electronic device 201, at least one second electronic device 202 (202a through 202d), an intelligent server 208, or an IoT. It may include at least one of the servers 209.
  • the voice recognition control system 200 may include a home network that may control electronic devices (eg, IoT devices) having a communication function, such as at least one second electronic device 202 (202a to 202d). It may further include a home network server 202S (eg, an access point or router) for forming the 202N.
  • the first electronic device 201 (for example, the electronic device 101) and the at least one second electronic device 202 (202a to 202d) (for example, the electronic device 102) may be connected to a first network.
  • (298) eg, first network 198
  • the first network 298 may include short-range wireless communication in a connected or disconnected manner.
  • connectionless short range wireless communication may include neighbor awareness networking (NAN).
  • NAN neighbor awareness networking
  • the first electronic device 201 and the intelligent server 208 are connected to the second network 299 (eg, the second network 199) (eg, far wireless communication). ) Can communicate with each other.
  • the first electronic device 201 may be an app (or an application program) stored in the first electronic device 201 (for example, an alarm app, a message app, or a photo ( Gallery) app) can provide services that users need.
  • the first electronic device 201 may execute and operate another app through an intelligent app (for example, a voice recognition app) stored in the first electronic device 201 (for example, Bixby TM of Samsung Electronics).
  • the first electronic device 201 may receive a user input for executing the other app and executing an operation through the intelligent app (eg, a voice recognition app) of the first electronic device 201.
  • the user input may be received via, for example, a physical or mechanical button, touch pad, voice input, or remote input.
  • the first electronic device 201 may be a mobile terminal, a smart phone 201a, a personal digital assistant (PDA), a notebook computer, an AI speaker 201b, or various terminal devices having a communication function such as a remote controller ( Or an electronic device).
  • PDA personal digital assistant
  • AI speaker 201b or various terminal devices having a communication function such as a remote controller ( Or an electronic device).
  • the first electronic device 201 may receive a user voice by utterance of the user as a user input.
  • the first electronic device 201 may receive a user voice including a user request by the user's speech, and generate a command to operate an app based on the user request. Accordingly, the first electronic device 201 may operate at least one app using the command.
  • the first electronic device 201 receives a voice input by the user's utterance from the user as a user input through an intelligent app (eg, a voice recognition app), and is included in the voice.
  • an intelligent app eg, a voice recognition app
  • the first electronic device 201 receives a voice input by a user's utterance from the user as a user input through an intelligent app (eg, a voice recognition app), and is included in the voice.
  • the home network server 202S may control at least one second electronic device 202 (202a to 202d) that can communicate with the first electronic device 201 according to a command generated based on a user request.
  • the home network server 202S may turn on / off a light or open / close a door according to a command generated based on a user request included in the voice. .
  • the at least one second electronic device 202 may communicate with the first electronic device 201 through a first network 298 (for example, near field communication).
  • a first network 298 for example, near field communication
  • state information between the first electronic device 201 and the first network 298 may be periodically or aperiodically transmitted and received.
  • Each second electronic device 202 may execute an app stored in each of the second electronic devices 202 (202a to 202d) and receive a user input for executing an operation.
  • the user input may be received via, for example, a physical or mechanical button, touch pad, voice input, or remote input.
  • the second electronic device 202 (202a to 202d) may correspond to various home appliances having a communication function such as a smart TV 202a, a refrigerator 202b, an air conditioner 202c, or a washing machine 202d. Can be.
  • the second electronic devices 202 may serve as controlled devices that can be controlled by the control of the first electronic device 201.
  • the second electronic devices 202 (202a to 202d) receive the command generated by the user's speech input through an intelligent app (for example, a voice recognition app) of the first electronic device 201, and the Based on the received command, at least one app stored in the second electronic devices 202 (202a to 202d) may be executed and operated.
  • the first electronic device 201 may include the second electronic device 202 (202a through 202d) by a user speech input through an intelligent app (for example, a voice recognition app) of the first electronic device 201.
  • the controlled device for example, the second electronic device 202 (202a to 202d), to be controlled through the communication connection app (for example, Samsung Connect TM ) of the first electronic device 201 may be registered.
  • the first electronic device 201 receives a voice by the user's speech as a user input through an intelligent app (for example, a voice recognition app)
  • the first electronic device 201 may be based on an object of a user request included in the voice.
  • At least one second electronic device 202 (202a to 202d) registered in 201 may be searched for.
  • the intelligent server 208 is an intelligent server capable of providing voice recognition control, and may be, for example, a voice recognition server (eg, a Bixby TM server of Samsung Electronics).
  • the intelligent server 208 may communicate with the first electronic device 201 through, for example, a second network 299 (eg, the second network 199) (eg, far wireless communication).
  • the intelligent server 208 may receive a user voice input from the first electronic device 201 and change the text data into text data. All or at least some of the functions performed by the intelligent server 208 may be performed by the first electronic device 201 (eg, the electronic device 101 of FIG. 1) or the second electronic device 202 (eg, FIG. It may also be performed by the electronic device 101 of FIG. 1.
  • Detailed examples of the intelligent server 208 will be described later with reference to FIGS. 3A and 3B.
  • the first electronic device 201 executes the operation and displays a screen corresponding to the state of the first electronic device 201 that executes the operation (for example, the display device 160 of FIG. 1). ) Can be displayed.
  • the first electronic device 201 may execute the operation and may not display a result of performing the operation on a display.
  • the first electronic device 201 may execute a plurality of operations and display only a partial result of the plurality of operations on the display.
  • the first electronic device 201 may display only a result of performing the last order of operations on the display.
  • the first electronic device 201 may receive a user input and display a result of executing the operation on a display.
  • the first electronic device 201 and the second electronic devices 202 may communicate through the IoT server 209 connected to the second network 299 (eg, remote wireless communication). Can be.
  • the IoT server 209 may communicate with the intelligent server 208 as well as the first electronic device 201 through the second network 299.
  • the first electronic device 201 and the home network server 202S may communicate with each other via the first network 298 (for example, near field communication).
  • the IoT server 209 (eg, a cloud) and the at least one second electronic device 202 (202a to 202d) may be connected through a home network 202N for providing the smart home service.
  • the at least one second electronic device 202 (202a to 202d) may be registered and managed in the IoT server 209 by performing a registration request and a registration request approval process with the IoT server 209. All or at least some of the functions performed by the IoT server 209 may be performed by the first electronic device 201 (eg, the electronic device 101 of FIG. 1) or the second electronic device 202 (eg, FIG. 1 may be performed by the electronic devices 101 and 102 of FIG.
  • the first electronic device 201 298 or an IoT server 209 (eg, a cloud) through the second network 299, and an object (eg, a target device) for performing a user request included in a user voice by the user's speech.
  • an object eg, a target device
  • at least one second electronic device 202 (202a to 202d) registered in the linked IoT server 209 (eg, cloud) may be searched based on the application.
  • the second electronic devices 202 (202a to 202d) may receive a control command from the IoT server 209 through the home network server 202S.
  • an intelligent server 208 eg, a voice recognition server
  • an IoT server 209 eg, a cloud
  • an intelligent server 208 eg, a voice recognition server
  • an IoT server 209 eg, a cloud
  • a plurality of servers may be integrated into one or separately configured. May be further distributed.
  • 3A is a diagram illustrating an integrated intelligence system according to various embodiments of the present disclosure.
  • the integrated intelligence system 300 may include a user terminal 310, an intelligent server 320, a personalization information server 330, or a proposal server 340.
  • the user terminal 310 may have an app (or application program) stored inside the user terminal 310.
  • application program eg, an alarm app, a messaging app, or a photo (gallery) app
  • the user terminal 310 may execute and operate another app through an intelligent app (or a voice recognition app) stored in the user terminal 310.
  • the intelligent app of the user terminal 310 may receive a user input for executing the other app and executing an operation.
  • the user input may be received through, for example, a physical button, a touch pad, a voice input, or a remote input.
  • the user terminal 310 may correspond to various terminal devices (or electronic devices) capable of connecting to the Internet, such as a mobile phone, a smart phone, a personal digital assistant (PDA), or a notebook computer.
  • PDA personal digital assistant
  • the user terminal 310 may receive a user's speech as a user input.
  • the user terminal 310 may receive a user's speech and generate a command for operating the app based on the user's speech. Accordingly, the user terminal 310 may operate the app using the command.
  • the intelligent server 320 may receive a user voice input from the user terminal 310 through a communication network and change it into text data. In another embodiment, the intelligent server 320 may generate (or select) a path rule based on the text data.
  • the pass rule may include information on an action (or operation) for performing a function of an app or information on a parameter required to execute the action.
  • the path rule may include an order of the operation of the app.
  • the user terminal 310 may receive the path rule, select an app according to the path rule, and execute an operation included in the path rule in the selected app.
  • path rule in this document may generally mean a sequence of states for an electronic device to perform a task requested by a user, but is not limited thereto.
  • the pass rule may include information about the sequence of states.
  • the task may be, for example, any action that an intelligent app can provide.
  • the task may include generating a schedule, transmitting a photo to a desired counterpart, or providing weather information.
  • the user terminal 310 may perform the task by sequentially having at least one or more states (for example, an operating state of the user terminal 310).
  • the pass rule may be provided or generated by an artificial intelligent (AI) system.
  • the AI system may be a rule-based system, a neural network-based system (e.g., a feedforward neural network (FNN), a recurrent neural network (RNN) May be))) or combinations of the foregoing or other AI systems.
  • the pass rule may be selected from a predefined set of pass rules or may be generated in real time in response to a user request.
  • the artificial intelligence system may select at least a pass rule among a plurality of predefined pass rules, or generate a pass rule dynamically (or in real time).
  • the user terminal 310 may use a hybrid system to provide a pass rule.
  • the user terminal 310 may execute the operation and display a screen corresponding to the state of the user terminal 310 which has executed the operation on the display.
  • the user terminal 310 may execute the operation and may not display a result of performing the operation on the display.
  • the user terminal 310 may execute a plurality of operations and display only a partial result of the plurality of operations on the display.
  • the user terminal 310 may display only the result of performing the last order of operations on the display.
  • the user terminal 310 may receive a user input and display a result of executing the operation on a display.
  • the personalization information server 330 may include a database in which user information is stored.
  • the personalization information server 330 may receive user information (eg, context information or an app execution) from the user terminal 310 and store it in the database.
  • the intelligent server 320 may be used when receiving the user information from the personalized information server 330 through a communication network to generate a pass rule for a user input.
  • the user terminal 310 may receive user information from the personalization information server 330 through a communication network and use the information as information for managing a database.
  • the proposal server 340 may include a database in which information about a function or an application to be introduced or provided is stored in the terminal.
  • the proposal server 340 may include a database of functions that a user can use by receiving user information of the user terminal 310 from the personalization information server 330.
  • the user terminal 310 may receive information on the function to be provided from the proposal server 340 through a communication network and provide the information to the user.
  • 3B is a block diagram 300 illustrating a user terminal of an integrated intelligence system according to an embodiment of the present invention.
  • the user terminal 310 may include an input module 311, a display 313, a speaker 314, a memory 312, or a processor 315. ) May be included.
  • the user terminal 310 may further include a housing, and the components of the user terminal 310 may be seated inside or located on the housing.
  • the input module 311 may receive a user input from a user.
  • the input module 311 may receive a user input from a connected external device (eg, a keyboard or a headset).
  • the input module 311 may include a touch screen (eg, a touch screen display) coupled with the display 313.
  • the input module 311 may include a hardware key (or a physical key) located in the user terminal 310 (or the housing of the user terminal 310).
  • the input module 311 may include a microphone 311a capable of receiving a user's speech as a voice signal.
  • the input module 311 may include a speech input system, and may receive a speech of a user as a voice signal through the speech input system.
  • the display 313 may display an image, a video, and / or an execution screen of an application.
  • the display 313 can display a graphical user interface (GUI) of the app.
  • GUI graphical user interface
  • the speaker 314 may output a voice signal.
  • the speaker 314 may output the voice signal generated inside the user terminal 310 to the outside.
  • the memory 312 may store a plurality of apps (or application programs) 318 and 319.
  • the plurality of apps 318 and 319 stored in the memory 312 may be selected, executed, and operated according to a user input.
  • the memory 312 may include a database capable of storing information necessary to recognize a user input.
  • the memory 312 may include a log database that may store log information.
  • the memory 312 may include a persona database that may store user information.
  • the memory 312 may store a plurality of apps 318 and 319, and the plurality of apps 318 and 319 may be loaded and operated.
  • the plurality of apps 318 and 319 stored in the memory 312 may be loaded and operated by the execution manager module 317 of the processor 315.
  • the plurality of apps 318 and 319 may include execution service modules 318a and 319a that perform functions.
  • the plurality of apps 318 and 319 may execute a plurality of operations (eg, a sequence of states) 318b and 319b through the execution service module 318a and 319a to perform a function. That is, the execution service modules 318a and 319a may be activated by the execution manager module 317 and execute a plurality of operations 318b and 319b.
  • the execution status screen when the operations 318b and 319b of the apps 318 and 319 are executed, the execution status screen according to the execution of the operations 318b and 319b may be displayed on the display 313.
  • the execution status screen may be, for example, a screen in which operations 318b and 319b are completed.
  • the execution status screen may be a screen in a state in which execution of operations 318b and 319b is stopped (for example, when a parameter required for operations 318b and 319b is not input). .
  • the execution service module 318a or 319a may execute operations 318b and 319b according to a pass rule.
  • the execution service modules 318a and 319a are activated by the execution manager module 317, receive an execution request from the execution manager module 317 according to the pass rule, and operate according to the execution request 318b. 319b), the functions of the apps 318 and 319 can be executed.
  • the execution service module 318a or 319a may transmit completion information to the execution manager module 317 when the execution of the operations 318b and 319b is completed.
  • the plurality of operations 318b and 319b when executed in the apps 318 and 319, the plurality of operations 318b and 319b may be sequentially executed.
  • the execution service modules 318a and 319a may complete the execution of one operation (for example, operation 1 of the first app 318 and operation 1 of the second app 319) when the next operation (for example, the first app 318) is completed.
  • Operation 2), operation 2) of the second app 319 may be opened, and the completion information may be transmitted to the execution manager module 317. Opening any operation herein may be understood as transitioning any operation to an executable state or preparing to execute any operation. In other words, if any action is not open, that action cannot be executed.
  • the execution manager module 317 executes execution requests for a next operation (for example, operation 2 of the first app 318 and operation 2 of the second app 319). ) Can be sent.
  • the plurality of apps 318 and 319 may be sequentially executed.
  • the execution manager module 317 may execute the second app 319.
  • the execution request of the first operation (eg, operation 1 of the second app 319) may be transmitted to the execution service 319a.
  • a result screen according to the execution of each of the executed plurality of operations 318b and 319b is displayed on the display 313.
  • FIG. Can be displayed.
  • only a part of the plurality of result screens according to the execution of the executed operations 318b and 319b may be displayed on the display 313.
  • the memory 312 may store an intelligent app (eg, a voice recognition app) linked to the intelligent agent 315.
  • An app linked with the intelligent agent 315 may receive and process a user's speech as a voice signal.
  • an app linked with the intelligent agent 315 may be operated by a specific input (for example, input through a hardware key, input through a touch screen, or specific voice input) input through the input module 311. Can be.
  • the processor 315 may control the overall operation of the user terminal 310.
  • the processor 315 may control the input module 311 to receive a user input.
  • the processor 315 may control the display 313 to display an image.
  • the processor 315 may control the speaker 314 to output a voice signal.
  • the processor 315 may control the memory 312 to retrieve or store necessary information.
  • the processor 315 may include an intelligent agent 315a, an execution manager module 317, or an intelligent service module 316.
  • the processor 315 may execute the instructions stored in the memory 312 to drive the intelligent agent 315a, the execution manager module 317, or the intelligent service module 316.
  • Various modules mentioned in various embodiments of the present disclosure may be implemented in hardware or in software.
  • an operation performed by the intelligent agent 315a, the execution manager module 317, or the intelligent service module 316 may be understood as an operation performed by the processor 315.
  • the intelligent agent 315a may generate a command to operate the app based on the voice signal received through the user input.
  • the execution manager module 317 may receive the generated command from the intelligent agent 315a, select and execute the apps 318 and 319 stored in the memory 312, and operate the same.
  • the intelligent service module 316 may manage information of the user and use the same to process user input.
  • the intelligent agent 315a may transmit and process the user input received through the input module 311 to the intelligent server 320.
  • the intelligent agent 315a may preprocess the user input before transmitting the user input to the intelligent server 320.
  • the intelligent agent 315a may include an adaptive echo canceller (AEC) module, a noise suppression (NS) module, and an end-point end point for preprocessing the user input. detection (EPD) module or automatic gain control (AGC) module.
  • the adaptive echo canceller may remove an echo included in the user input.
  • the noise suppression module may suppress background noise included in the user input.
  • the end point detection module may detect an end point of the user voice included in the user input and find a portion in which the voice of the user exists.
  • the automatic gain control module may adjust the volume of the user input to be suitable for recognizing and processing the user input.
  • the intelligent agent 315a may include all of the preprocessing configurations for performance, but in other embodiments, the intelligent agent 315a may include some of the preprocessing configurations to operate at low power. .
  • the intelligent agent 315a may include a wake up recognition module that recognizes a user's call.
  • the wakeup recognition module may recognize a wakeup command of a user through a voice recognition module, and activate the intelligent agent 315a to receive a user input when the wakeup command is received.
  • the wake-up recognition module of the intelligent agent 315a may be implemented in a low power processor (eg, a processor included in an audio codec).
  • the intelligent agent 315a may be activated according to a user input through a hardware key.
  • an intelligent app for example, a voice recognition app linked with the intelligent agent 315a may be executed.
  • the intelligent agent 315a may include a voice recognition module for executing a user input.
  • the voice recognition module may recognize a user input for executing an action in an app.
  • the speech recognition module may include a “click” for executing a shooting operation when a limited user (voice) input (eg, a camera app is running) that executes an operation such as the wake up command in an app 318 or 319. Same speech) can be recognized.
  • the voice recognition module that recognizes a user input by assisting the intelligent server 320 may recognize a user command that can be processed in the user terminal 310 and process the same.
  • the voice recognition module for executing a user input of the intelligent agent 315a may be implemented in an app processor.
  • the voice recognition module of the intelligent agent 315a may recognize a user input by using an algorithm for recognizing the voice.
  • the algorithm used to recognize the voice may be, for example, at least one of a hidden markov model (HMM) algorithm, an artificial neural network (ANN) algorithm, or a dynamic time warping (DTW) algorithm.
  • HMM hidden markov model
  • ANN artificial neural network
  • DTW dynamic time warping
  • the intelligent agent 351a may convert the voice input of the user into text data. According to an embodiment of the present disclosure, the intelligent agent 315a may transmit the voice of the user to the intelligent server 320 to receive the converted text data. Accordingly, the intelligent agent 315a may display the text on the display 313.
  • the intelligent agent 315a may receive a pass rule transmitted from the intelligent server 320. According to an embodiment of the present disclosure, the intelligent agent 315a may transmit the path rule to the execution manager module 317.
  • the intelligent agent 315a transmits an execution result log according to the path rule received from the intelligent server 320 to the intelligence service module 316, and transmits the execution result.
  • the logs may be accumulated and managed in the user's preference information of the persona module 316b.
  • the execution manager module 317 receives a pass rule from the intelligent agent 315a to execute the apps 318 and 319, and the app 318 and 319 includes the operation 318b included in the pass rule. , 319b).
  • the execution manager module 317 may transmit command information (eg, path rule information) for executing the operations 318b and 319b to the apps 318 and 319, and the apps 318 and 319.
  • command information eg, path rule information
  • the execution manager module 317 may execute command information (eg, for executing the operations 318b and 319b of the apps 318 and 319 between the intelligent agent 315a and the apps 318 and 319). Pass rule information) can be transmitted and received.
  • the execution manager module 317 binds the apps 318 and 319 to be executed according to the path rule, and executes the command information (eg, path rule information) of the operations 318b and 319b included in the path rule. (318, 319).
  • the execution manager module 317 sequentially transmits the operations 318b and 319b included in the path rule to the apps 318 and 319 to sequentially execute the operations 318b and 319b of the apps 318 and 319. It can be executed sequentially according to the pass rule.
  • the execution manager module 317 may manage execution states of operations 318b and 319b of the apps 318 and 319. For example, the execution manager module 317 may receive information about an execution state of the operations 318b and 319b from the apps 318 and 319. When the execution state of the operations 318b and 319b is, for example, a partial landing (eg, when a parameter required for the operations 318b and 319b is not input), the execution manager module 317 May transmit information about the stopped state to the intelligent agent 315a. The intelligent agent 315a may request input of necessary information (eg, parameter information) from the user by using the received information.
  • necessary information eg, parameter information
  • a speech may be received from the user, and the execution manager module 317 may execute the executed apps 318 and 319 and the app.
  • Information about the running state of the 318 and 319 may be sent to the intelligent agent 315a.
  • the intelligent agent 315a may receive parameter information of the user's speech through the intelligent server 320 and may transmit the received parameter information to the execution manager module 317.
  • the execution manager module 317 may change the parameters of operations 318b and 319b into new parameters using the received parameter information.
  • the execution manager module 317 may deliver the parameter information included in the path rule to the apps 318 and 319.
  • the execution manager module 317 may deliver parameter information included in the pass rule from one app to another app.
  • the execution manager module 317 may receive a plurality of pass rules.
  • the execution manager module 317 may select a plurality of pass rules based on the user's speech. For example, if execution manager module 317 specified some apps 318a to execute some action 318a but the user's utterance did not specify another app 319 to run the remaining actions 319b, some Run the same app 318 (e.g. gallery app) that will execute action 318a and run a different app 319 (e.g. messaging app, telegram app) that can execute the remaining action 319b.
  • a plurality of different pass rules can be received.
  • the execution manager module 317 may execute, for example, the same operations 318b and 319b (eg, successive identical operations 318b and 319b) of the plurality of pass rules.
  • the execution manager module 317 may display, on the display 320, a status screen for selecting different apps 318 and 319 included in the plurality of pass rules, respectively.
  • the intelligent service module 316 may include a context module 316a, a persona module 316b, or a suggestion module 316c.
  • the context module 316a may collect the current state of the app 318, 319 from the app 318, 319.
  • the context module 316a may receive context information indicating the current state of the app 318, 319 to collect the current state of the app 318, 319.
  • the persona module 316b may manage personal information of a user who uses the user terminal 310.
  • the persona module 316b may manage the personal information of the user by collecting the usage information and the execution result of the user terminal 310.
  • the suggestion module 316c may recommend a command to the user in anticipation of the user's intention. For example, the suggestion module 316c may recommend a command to the user in consideration of the current state (eg, time, place, situation, app) of the user.
  • the current state eg, time, place, situation, app
  • the processor 315 may obtain a user voice through the input module 311.
  • the processor 315 may obtain first input voice data including a first request by user utterance.
  • the processor 315 may obtain first input voice data including the first request through the input module 311 (eg, the microphone 311a) of the user terminal 310.
  • the processor 315 senses an input of a designated hardware key (eg, 1954a of FIG. 19) formed at a location on the user terminal 310 or the housing of the user terminal 310 for voice recognition control.
  • the first input voice data including the first request may be acquired through the input module 311 (for example, a microphone) after being switched to a mode for providing a voice recognition control service.
  • the processor 315 may use one of the second electronic devices 202 (202a to 202d) (for example, the smart TV 202a) based on the user speech through the input module 311.
  • the first input voice data including the first request for performing the first task may be obtained.
  • the processor 315 may include a first input including a first request for performing a first task using the first electronic device 201 based on the user speech through the input module 315. Voice data can be obtained.
  • the processor 315 may transmit the first input voice data to the intelligent server 208 through a communication interface (eg, the communication module 190 of FIG. 1).
  • the processor 315 transmits the first input voice data and then includes the first request included in the first input voice data from the intelligent server 208 through a communication module (eg, the communication interface 190 of FIG. 1).
  • the first task execution information for performing the first task corresponding to may be received.
  • the first task execution information is a first operation for performing the first task using one of the second electronic devices 202 (202a to 202d) (for example, the smart TV 202a). It may include information (eg, a first pass rule).
  • the first operation information may include information about an execution operation (eg, a user intention) and an execution target (eg, a domain) of the first task, parameter information required to execute an execution operation of the first task, or the first task. It may include a first operation sequence for the operation performed.
  • the first task performance information may further include user interface (UI) information related to the first task or the first operation information.
  • UI user interface
  • the first task execution information may include first operation information (eg, a first pass rule) for performing the first task using the first electronic device 201.
  • the first operation information may include information about an execution operation (eg, a user intention) and an execution target (eg, a domain) of the first task, parameter information required to execute an execution operation of the first task, or the first task. It may include a first operation sequence for the operation performed.
  • the first task performance information may further include user interface (UI) information related to the first task or the first operation information.
  • UI user interface
  • the processor 315 may determine the state of the first electronic device 201. For example, the processor 315 determines whether there is an association between a state of the first electronic device 201 and an execution operation of the first task to be performed in response to the first request included in the first input voice data. can do.
  • the state of the first electronic device 201 may be an operation of a function (eg, a first function such as music playback or video (video) playback) that is being performed by the first electronic device 201.
  • the first task may be an operation to be performed in response to a user intention extracted as a result of the analysis of the first input voice data.
  • the processor 315 may determine whether there is an association between a state of the first electronic device 201 (eg, a first function execution operation) and an execution operation of the first task.
  • the processor 315 may determine whether to associate with the state of the first electronic device 201 (for example, a first function performing operation) and an execution operation of the first task. Can be. For example, the processor 315 may determine that the state of the first electronic device 201 (for example, the first function performing operation) and the performing operation of the first task have at least one same property (for example, an auditory element or visual feature). Elements), it may be determined that they are interfering with each other and that they are related.
  • the state of the first electronic device 201 for example, a first function performing operation
  • the processor 315 may determine that the state of the first electronic device 201 (for example, the first function performing operation) and the performing operation of the first task have at least one same property (for example, an auditory element or visual feature). Elements), it may be determined that they are interfering with each other and that they are related.
  • the processor 315 may execute the first electronic device 201.
  • the execution of the first task may be determined to have an attribute including an auditory element or a visual element. Since the processor 315 includes the same attribute that the state of the first electronic device 201 and the performing operation of the first task are auditory elements, the state of the first electronic device 201 and the first task It may be determined that the performing operations interfere with each other, and accordingly, it may be determined that the related operations are related.
  • the processor 315 may execute the first electronic device. It may be determined that the state of the device 201 has an attribute that includes an auditory element or a visual element, and that the performing operation of the first task has an attribute that includes an auditory element or a visual element. Since the processor 315 includes the same attribute that the state of the first electronic device 201 and the performing operation of the first task are an auditory element or a visual element, the state of the first electronic device 201 and the first agent may be used. It may be determined that the operations performed by one task interfere with each other, and accordingly, it may be determined that there is such a correlation.
  • the first electronic device 201 and the first task may be determined based on whether the target devices (eg, the second electronic device (eg, the smart TV 202a)) that perform the operation are close to each other.
  • the first electronic device 201 may determine the first electronic device. If it is determined that the state of the device 201 and the operation of performing the first task interfere with each other, the second electronic device (for example, the smart TV 202a) that is the target device performing the first task with the first electronic device 201.
  • the processor 315 may determine whether the distance between the two electronic devices is less than or equal to a threshold value, and the second electronic device (eg, the smart TV 202a) that is the target device performing the first task with the first electronic device 201. If the distance is less than the threshold, the state of the first electronic device 201 and the number of the first task
  • the threshold may include interference between at least one of an audio output and a visual output of the first electronic device 201 and a performance of performing the first task.
  • the threshold value may be set to operation state information (eg, volume size or screen size) of the first electronic device 201 or the second electronic device 202 (202a to 202d). Subject to change.
  • the processor 315 may include a capability including at least one function (or operation) of each of the first electronic device 201 and the second electronic devices 202 (202a to 202d). ) And the predetermined attribute information or association determination condition may be stored in the memory 312 in advance in order to determine association between the information and each function (or operation). For example, the processor 315 may store capability information, attribute information, or association determination conditions as shown in Table 1 in the form of a table in the memory 312.
  • the processor 315 may include a capability including at least one function (or operation) of each of the first electronic device 201 and the second electronic devices 202 (202a to 202d). ) And the specified attribute information or the association determination condition for the association determination for each function (or operation) may be stored in the memory 312.
  • the processor 315 may store capability information, attribute information, or association determination conditions as shown in Table 1 in the form of a table in the memory 312.
  • Attributes: auditory or visual Air conditioner (attribute: auditory element) Electronic device (for example, user terminal or AI speaker) TV On TV Off volume up Volume down ON OFF Function in action Play music (attribute: auditory element) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ Standby mode ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ Active component Microphone (attribute: auditory element) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ Display (attribute: visual element) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ Sensors (attributes: auditory or visual) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • the processor 315 may satisfy the association determination condition between the state of the first electronic device 201 and the execution operation of the first task based at least in part on the association determination condition specified in Table 1 below. Whether or not the association can be determined. For example, the processor 315 determines that there is an association between the state of the first electronic device 201 and the performing operation of the first task when the association determination condition is satisfied, and when the association determination condition is not satisfied, It may be determined that there is no correlation between the state of the first electronic device 201 and the performing operation of the first task.
  • the association determination condition specified in Table 1 may be updated periodically or aperiodically.
  • the processor 315 may transmit a first response related to the adjustment of the state of the first electronic device 201 to the first electronic device 201 based at least in part on the result of the association determination.
  • the intelligent server 408 shown in FIG. 4 may include some or all of the server 108 shown in FIG. 1 or the intelligent server 208 shown in FIG.
  • the intelligent server 408 is an intelligent server (eg, a Bixby TM server of Samsung Electronics) that provides a voice recognition control service, for example, a communication interface 410, a processor 420, or a memory 430. It may include at least one of).
  • a voice recognition control service for example, a communication interface 410, a processor 420, or a memory 430. It may include at least one of).
  • the communication interface 410 may include a first electronic device (eg, the first electronic device 201) through a network (eg, the network 199 of FIG. 1 or the second network 299 of FIG. 2). Receives input voice data including a request (or command) by a user utterance from the user, or a request by the user's utterance included in the input voice data or output voice data corresponding to the received input voice data (or Command) or operation information (eg, a path rule) for performing at least one application based on a task corresponding to the request (or the command) or UI information related to the operation information.
  • the task performance information may be transmitted to the first electronic device 201.
  • the communication interface 410 may include a plurality of communication circuits, and may include, for example, part or all of the communication module 190 shown in FIG. 1.
  • the communication interface 410 may be referred to as a communication unit or a communication module, or may include the communication unit or the communication module as a part thereof or may configure the communication unit or the communication module.
  • the processor 420 may control the intelligent server 408 as a whole.
  • the processor 420 may include some or all of the processor 120 shown in FIG. 1.
  • the processor 420 analyzes user utterances included in input voice data received from the first electronic device 201 to generate output voice data corresponding to the input voice data, or to analyze the user utterances.
  • An operation including information on at least one operation (for example, a task) for performing at least one application corresponding to a request (or command), parameter information for executing the operation (for example, a task), or an operation sequence
  • ASR automatic speech recognition
  • NLU natural language understanding
  • DM Dialogue manager
  • NLG natural language generator
  • TTS text to speech
  • the various modules of the intelligent server 408 mentioned in various embodiments of the present invention may be implemented in hardware or in software.
  • the operations performed by each module of intelligent server 408 may be understood as operations performed by processor 420.
  • the automatic voice recognition (ASR) module 421 may convert input voice data (eg, first input voice data) as a user input received from the first electronic device 201 into text data.
  • the automatic speech recognition (ASR) module 421 may include a speech recognition module.
  • the speech recognition module may include an acoustic model and a language model.
  • the acoustic model may include information related to speech
  • the language model may include information about a combination of unit phoneme information and unit phoneme information.
  • the speech recognition module may convert user speech included in the input speech data into text data by using information related to speech and unit phoneme information.
  • Information about the acoustic model and the language model may be stored, for example, in a memory 430 (eg, automatic speech recognition database (ASR DB) 432).
  • ASR DB automatic speech recognition database
  • the natural language understanding (NLU) module 422 or the path planner module 423 of the processor 420 may be configured to perform at least one application based on user speech included in input voice data (eg, first input voice data).
  • Action information eg, a pass rule
  • at least one action sequence may be generated.
  • the input voice data (eg, the first input voice data) may be performed by the first electronic device 201 (eg, the user terminal 310 of FIG. 3) (eg, by performing a first task). It may include a command or request (eg, a first request) for the execution of.
  • the input voice data (eg, the first input voice data) may be performed by an operation (eg, performing a first task) of a second electronic device (eg, the second electronic device 202) (eg, an IoT device).
  • an operation eg, performing a first task
  • a second electronic device eg, the second electronic device 202
  • Command or request eg, a first request for execution of the operation.
  • the natural language understanding (NLU) module 422 may determine a user's intent by performing syntactic analysis or semantic analysis.
  • the grammatical analysis may divide user input into grammatical units (eg, words, phrases, or morphemes) and determine what grammatical elements the divided units have.
  • the semantic analysis may be performed using semantic matching, rule matching, or formula matching.
  • the natural language understanding (NLU) module 422 may include a domain corresponding to a user (voice) input (for example, a target device or a target app for executing an action), an intent (for example, an action to be executed ( For example, a task)) or a parameter (or a slot (for example, a keyword)) necessary for expressing the intention.
  • the natural language understanding (NLU) module 422 may match a matching rule divided into a domain, an intent, or a parameter (or a slot) necessary to determine the intention. Can be used to determine the user's intent or parameters.
  • the one domain e.g., alarm service or alarm device
  • the one intent is a plurality of parameters (e.g. time, repetition) Times, or alarm sounds).
  • the plurality of rules may include, for example, one or more mandatory element parameters.
  • the matching rule may be stored in a natural language understanding database (NLU DB) 434.
  • the natural language understanding (NLU) module 422 means the meaning of words (eg slots (eg keywords)) extracted from user input using morphological or linguistic features of the phrase (eg grammatical elements).
  • the intention of the user may be determined by matching the meaning of the identified word with a domain and an intention.
  • the natural language understanding (NLU) module 422 may determine how user words are included in each domain and intent by calculating how many words extracted from the user input are included.
  • the natural language understanding (NLU) module 422 may determine a parameter of a user input using a word (eg, a slot (eg, a keyword)) based on identifying the intention.
  • the natural language understanding (NLU) module 422 may determine a user's intention using a natural language recognition database (NLU DB) 434 that stores linguistic features for determining the intention of the user input.
  • the natural language understanding (NLU) module 422 may determine a user's intention using a personal language model (PLM).
  • PLM personal language model
  • the natural language understanding (NLU) module 422 may determine the user's intention using personalized information (eg, contact list, music list).
  • the personalized language model may be stored, for example, in a natural language recognition database (NLU DB) 434.
  • the automatic speech recognition (ASR) module 421 as well as the natural language understanding (NLU) module 422 refers to a personalized language model stored in the natural language recognition database (NLU DB) 434. I can recognize it.
  • the natural language understanding (NLU) module 422 may generate a pass rule based on intent and parameters of a user input. For example, the natural language understanding (NLU) module 422 may select an app to be executed based on an intention of a user input, and determine an action to be performed in the selected app. The natural language understanding (NLU) module 422 may generate a pass rule by determining a parameter corresponding to the determined operation. According to one embodiment, the path rule generated by the natural language understanding (NLU) module 422 is based on the app to be executed, the action to be executed in the app (eg, at least one state) and the parameters required to execute the action. Information may be included.
  • the natural language understanding (NLU) module 422 may generate one pass rule or a plurality of pass rules based on intent and parameters of a user input. For example, the natural language understanding (NLU) module 422 receives a pass rule set corresponding to a user request (or command) (eg, a first request) included in a user (voice) input from the path planner module 423.
  • a path rule may be determined by mapping an intention and a parameter of a user input to the received path rule set.
  • the natural language understanding (NLU) module 422 determines an app to be executed, an action to be executed in the app, and a parameter required to execute the action based on an intention and a parameter of a user input, or a single pass rule, or You can create multiple pass rules.
  • the natural language understanding (NLU) module 422 may include a first electronic device 201 or a second electronic device 202 corresponding to a domain included in the user request (or command) (eg, the first request); 202a to 202d) may be used to generate a path rule by arranging the app to be executed and an operation to be executed in the app in the form of an ontology or a graph model according to an intention of a user input.
  • the generated path rule may be stored in a path rule database (path rule DB) 436 through, for example, the path planner module 423.
  • the generated pass rule may be added to a pass rule set of the pass rule DB 436.
  • the natural language understanding (NLU) module 422 may select at least one pass rule from the generated plurality of pass rules. For example, the natural language understanding (NLU) module 422 may select the plurality of path rule optimal path rules. For another example, the natural language understanding (NLU) module 422 may select a plurality of pass rules when only some actions are specified based on user speech. The natural language understanding (NLU) module 422 may determine one path rule among the plurality of pass rules based on an additional input (eg, second input voice data) of the user.
  • an additional input eg, second input voice data
  • the natural language understanding (NLU) module 422 may apply a path rule to a domain (eg, a first) in response to a request (or a command) for a user input obtained by the first electronic device 201. And transmit to the electronic device 201 or the second electronic device 202 (202a to 202d). For example, the natural language understanding (NLU) module 422 may transmit one pass rule corresponding to the user input to the first electronic device 201 (for example, the user terminal 310 of FIG. 3). .
  • a domain eg, a first
  • the natural language understanding (NLU) module 422 may transmit one pass rule corresponding to the user input to the first electronic device 201 (for example, the user terminal 310 of FIG. 3).
  • the natural language understanding (NLU) module 422 may include a plurality of path rules corresponding to a user input input by the first electronic device 201 (eg, a user terminal) corresponding to a domain (eg, a target). And transmit to the first electronic device 201 or the second electronic device 202 (202a to 202d).
  • the plurality of pass rules may be generated by the natural language understanding (NLU) module 422, for example, when only a few actions are specified based on user speech.
  • the path planner module 423 may select at least one path rule from among the plurality of path rules.
  • the path planner module 423 may transmit a path rule set including a plurality of path rules to the natural language understanding (NLU) module 422.
  • the plurality of path rules of the path rule set may be stored in a table in a path rule database (DB) 436 connected to the path planner module 423.
  • the path planner module 423 may store information (eg, OS information and app information) of the first electronic device 201 (eg, a user terminal) received from the intelligent agent (eg, the intelligent agent 322).
  • the corresponding path rule set may be transmitted to the natural language understanding (NLU) module 422.
  • the table stored in the path rule database 436 may be stored, for example, by domain or version of a domain.
  • the path planner module 423 may select one path rule or a plurality of path rules from the path rule set and transmit the selected path rules to the natural language understanding (NLU) module 422.
  • NLU natural language understanding
  • the path planner module 423 may select one path rule or a plurality of path rules by matching a user's intention and parameters with a path rule set corresponding to the first electronic device 201 (NLU). ) To the module 422.
  • the path planner module 423 may generate one path rule or a plurality of path rules using user intentions and parameters. For example, the path planner module 423 may generate one path rule or a plurality of path rules by determining an app to be executed and an operation to be executed in the app based on a user intention and a parameter. According to an embodiment, the path planner module 423 may store the generated path rule in the path rule database 436.
  • the path planner module 423 may store the path rule generated by the natural language understanding (NLU) module 422 in the path rule database 436.
  • the generated path rule may be added to a path rule set stored in the path rule database 436.
  • the table stored in the path rule database (DB) 436 may include a plurality of path rules or a plurality of path rule sets.
  • the plurality of pass rules or the plurality of pass rule sets may reflect the type, version, type, or characteristic of a device that performs each pass rule.
  • the natural language The understanding (NLU) module 422 determines that the domain is the first electronic device 201 based at least in part on a user's intention or domain according to the detected slot as a result of analyzing the first input voice data,
  • the user intention is determined to be a performance of a first task (for example, an audio output operation or a visual data output operation), and corresponds to a parameter required for the execution of the first task performing operation on the first electronic device 201.
  • At least one pass rule may be received from the pass planner module 423.
  • the first request included in the first input voice data is performed by the first task (eg, the smart TV 202a) of the second electronic device 202 (202a to 202d).
  • the natural language understanding (NLU) module 422 may determine at least a part of the user's intention or domain according to the detected slot as a result of analyzing the first input voice data. Based on this, the domain is determined to be a second electronic device (eg, smart TV 202a), and the user intention is determined to be a performance of a first task (eg, an audio output operation or a visual data output operation).
  • the path planner module 423 may receive at least one pass rule corresponding to a parameter required for executing the first task execution operation on the second electronic device (eg, the smart TV 202a).
  • the conversation manager (DM) module 424 may determine whether the intention of the user identified by the natural language understanding (NLU) module 422 is clear. For example, the conversation manager (DM) module 424 may determine whether the intention of the user is clear based on whether the information in the parameter is sufficient. The conversation manager (DM) module 424 may determine whether the parameters identified in the natural language understanding (NLU) module 422 are sufficient to perform a task or action. According to an embodiment, the conversation manager (DM) module 424 may perform feedback for requesting necessary information from the user when the intention of the user is not clear. For example, the conversation manager (DM) module 424 may perform feedback requesting information about a parameter for determining a user's intention.
  • the conversation manager (DM) module 424 may include a content provider module.
  • the content providing module may generate a result of performing a task corresponding to a user input when the content providing module can perform an operation based on the intentions and parameters identified by the natural language understanding (NLU) module 422.
  • the conversation manager (DM) module 424 may transmit the result generated by the content providing module to the first electronic device 201 (eg, a user terminal) in response to a user input. .
  • the natural language generation (NLG) module 425 may change the designated information into a text form.
  • the information changed in the text form may be in the form of natural language speech.
  • the specified information may be, for example, information about an additional input, information for guiding completion of an operation corresponding to a user input, or information (eg, feedback information for a user input) for guiding an additional input of a user.
  • the information changed into the text form is transmitted to the first electronic device 201 (eg, the user terminal) and displayed on the display device (eg, the display 313) or transmitted to the text-to-speech (TTS) module 426. It may be changed to a voice form.
  • TTS text-to-speech
  • the text-to-speech module 426 may change the text-type information into the speech-type information.
  • the text-to-speech (TTS) module 426 receives information in text form from the natural language generation (NLG) module 425, and converts the text form information into speech form information so that the first electronic device 201 ( Example: the user terminal 310 may transmit.
  • the first electronic device 201 (for example, a user terminal) transmits the information in the form of a voice to a sound output device (for example, a sound output device) (for example, a speaker 314) or a first electronic device 201 (for example, a user). And output to a functional connection device (eg, AI speaker 201b) that is functionally connected to the terminal.
  • a functional connection device eg, AI speaker 201b
  • the natural language understanding (NLU) module 422, the path planner module 423, or the conversation manager (DM) module 424 may be implemented as one module.
  • the natural language understanding (NLU) module 422, the path planner module 423, or the conversation manager (DM) module 424 may be implemented as one module to determine the user's intentions and parameters, A response (eg, a pass rule or output voice data) corresponding to the intention and the parameter may be generated. Accordingly, the generated response may be transmitted to the first electronic device 201 (eg, a user terminal).
  • the processor 420 may receive a user voice from the first electronic device 201 through the communication interface 410.
  • the processor 420 may use the first electronic device 201 by using one of the second electronic devices 202 (202a to 202d) (eg, the smart TV 202a) by the user's speech.
  • the first input voice data including the first request for performing the task may be received.
  • the first task performing operation may include an audio output operation or a visual output operation performed by the first electronic device 201.
  • the performing of the first task may be an operation of outputting audio data through a sound output device (eg, the speaker 314) of the first electronic device 201.
  • the performing of the first task may be an operation of outputting audio data through the first electronic device 201 or a functional connection device (eg, an AI speaker (eg, 201b)) functionally connected to the first electronic device 201.
  • the performing of the first task may be an operation of outputting visual data through the display 313 of the first electronic device 201.
  • the performing of the first task may be performed on the first electronic device 201. It may be an operation of outputting visual data through an external display device (eg, TV, monitor, display) (not shown) controlled by the controller.
  • an external display device eg, TV, monitor, display
  • the first task performing operation may include an audio output operation or a visual output operation performed by the second electronic device 202 (202a to 202d).
  • the performing of the first task may be an operation of outputting audio data through the sound output device (for example, the speaker 314) of the second electronic device 202 (202a to 202d).
  • the performing of the first task may be an operation of outputting visual data through a display device (eg, a display) of the second electronic devices 202 (202a to 202d).
  • the processor 420 may communicate with the first electronic device 201 or the second electronic device from the first electronic device 201 through a communication interface 410 (eg, long distance wireless communication). 202; device information or status information of 202a to 202d may be received. For example, the processor 420 periodically receives device information or status information of the first electronic device 201 or the second electronic devices 202 (202a to 202d) or responds to a request of the processor 420. Can be received in response.
  • a communication interface 410 eg, long distance wireless communication
  • 202 device information or status information of 202a to 202d
  • the processor 420 periodically receives device information or status information of the first electronic device 201 or the second electronic devices 202 (202a to 202d) or responds to a request of the processor 420. Can be received in response.
  • the processor 420 may include an IoT server 209 (eg, a cloud) in which the second electronic devices 202 (202a to 202d) are registered through a communication interface 410 (eg, remote wireless communication). ) May transmit / receive data or information (eg, device information or status information) of the second electronic devices 202 (202a to 202d).
  • IoT server 209 eg, a cloud
  • a communication interface 410 eg, remote wireless communication.
  • the processor 420 may provide first task performance information related to the execution of the first task corresponding to the first request included in the received first input voice data, to the first electronic device 201. ) Can be sent.
  • the processor 420 may transmit the first task performance information to the first electronic device 201 through the communication interface 410 (eg, long distance wireless communication).
  • the communication interface 410 eg, long distance wireless communication
  • the first task execution information is a first operation for performing the first task using one of the second electronic devices 202 (202a to 202d) (for example, the smart TV 202a). It may include information (eg, a first pass rule).
  • the first operation information may include information about an execution operation (eg, a user intention) and an execution target (eg, a domain) of the first task, parameter information required to execute an execution operation of the first task, or the first task. It may include a first operation sequence for the operation performed.
  • the first task performance information may further include user interface (UI) information related to the first task or the first operation information.
  • UI user interface
  • the processor 420 analyzes the first input voice data to generate first task performance information including domain information, intention, or pass rule for the first request, and generates the first task.
  • Performance information may be transmitted to the first electronic device 201.
  • the domain information for the first request is a target device or a target app (or function (operation)) for performing the first request
  • the processor 420 stores the domain information in a second electronic device ( 202; may be determined as one of the smart TVs 202a.
  • the intention is an action or operation to be performed in response to the first request, and the processor 420 determines that the intention is a first task performing operation to be executed in a second electronic device (for example, the smart TV 202a). Can be.
  • the pass rule is an operation sequence for the domain to perform the intention
  • the processor 420 may select the second electronic device (eg, the smart TV 202a) selected from a plurality of pass rule sets from the pass planner module 423. May receive a first operation sequence corresponding to the first task execution operation.
  • the first electronic device 201 may transmit a first command including the first task performance information to the second electronic device (for example, the smart TV 202a).
  • the second electronic device eg, the smart TV 202a
  • the second electronic device may perform the first task based on the first task execution operation information included in the first command.
  • the second electronic device (for example, the smart TV 202a) may transmit feedback information including a result of performing the first task to the first electronic device 201.
  • the second electronic device receives feedback information including a result of performing the first task, and the IoT server 209 to which the second electronic device (eg, the smart TV 202a) is registered. (Eg, cloud) may be transmitted to the intelligent server 408.
  • the processor 420 may receive state information of the first electronic device 201 or the second electronic devices 202 (202a to 202d).
  • the processor 420 may provide the state information of the first electronic device 201 or the first task from the first electronic device 201 through a communication interface 410 (for example, remote wireless communication). State information of the device (for example, the second electronic device (for example, the smart TV 202a)) that is performing the operation.
  • the processor 420 is configured to receive the first data received from the IoT server 209 (eg, a cloud) connected to a network 299 (eg, a second network 199 (eg, far wireless communication).
  • the feedback information including the result of performing the first task of the second electronic device (eg, the smart TV 202a) may further include state information of the second electronic device (eg, the smart TV 202a).
  • the processor 420 may periodically receive the state information of the first electronic device 201 or the second electronic devices 202 (202a to 202d) or in response to a request of the intelligent server 408. have.
  • the processor 420 may determine an association between the state of the first electronic device 201 and the first task.
  • the state of the first electronic device 201 may be an operation of a function (eg, a first function such as music playback or video (video) playback) that is being performed by the first electronic device 201.
  • the task may be an operation to be performed in response to a user intention extracted as a result of the analysis of the first input voice data.
  • the processor 420 may determine whether there is an association between a state of the first electronic device 201 (eg, a first function execution operation) and an execution operation of the first task.
  • the processor 420 may determine whether to associate with the state of the first electronic device 201 (for example, a first function performing operation) and an execution operation of the first task. Can be. For example, the processor 420 may determine that a state (eg, a first function performing operation) of the first electronic device 201 and an performing operation of the first task have at least one same property (eg, an auditory element or visual). Elements), it may be determined that they are interfering with each other and that they are related.
  • a state eg, a first function performing operation
  • an performing operation of the first task have at least one same property (eg, an auditory element or visual). Elements)
  • the processor 420 may execute the first electronic device 201.
  • the execution of the first task may be determined to have an attribute including an auditory element or a visual element. Since the processor 420 includes the same attribute that the state of the first electronic device 201 and the performing operation of the first task are auditory elements, the state of the first electronic device 201 and the state of the first task.
  • the performing operations may be determined to interfere with each other, and thus may be determined to be related.
  • the processor 420 may execute the first electronic device. It may be determined that the state of the device 201 has an attribute that includes an auditory element or a visual element, and that the performing operation of the first task has an attribute that includes an auditory element or a visual element. Since the processor 420 includes the same attribute that the state of the first electronic device 201 and the performing operation of the first task are an auditory element or a visual element, the state of the first electronic device 201 and the first agent may be used. It may be determined that the operations performed by one task interfere with each other, and accordingly, it may be determined that there is such a correlation.
  • the processor 420 may perform the first task with the first electronic device 201 and the first task such that the state of the first electronic device 201 and the execution operation of the first task interfere with each other.
  • the association may be determined based on whether or not the second electronic device (for example, the smart TV 202a) is close to each other.
  • the processor 420 may determine the state of the first electronic device 201. If it is determined that an operation of performing the first task interferes with each other, the distance between the first electronic device 201 and the second electronic device (for example, the smart TV 202a) that is the target device performing the first task is a threshold value.
  • the first electronic device 201 may determine a distance between the first electronic device 201 and a second electronic device (eg, the smart TV 202a) that is a target device that performs the first task. Is less than a threshold, an association between the state of the first electronic device 201 and the performing operation of the first task.
  • the threshold may be a minimum distance at which at least one of an audio output and a visual output of the first electronic device 201 interferes with an operation of performing the first task. It can be set to.
  • the processor 420 includes a capability including at least one function (or operation) for each of the first electronic device 201 and the second electronic devices 202 (202a to 202d). ) And the predetermined attribute information or the association determination condition may be stored in the memory 430 in advance in order to determine the association between the information and each function (or operation). For example, the processor 420 may store the capability information, the attribute information, or the association determination condition as shown in Table 1 in the form of a table in the memory 430.
  • the processor 420 may determine that the state of the first electronic device 201 and the execution operation of the first task satisfy the association determination condition based at least in part on the association determination conditions specified in Table 1 below. Whether or not the association can be determined depending on whether For example, the processor 420 may determine that there is an association between the state of the first electronic device 201 and the execution operation of the first task if the association determination condition is satisfied, and if the association determination condition is not satisfied, It may be determined that there is no correlation between the state of the first electronic device 201 and the performing operation of the first task.
  • the association determination condition specified in Table 1 may be updated periodically or aperiodically.
  • the processor 420 may transmit a first response related to the adjustment of the state of the first electronic device 201 to the first electronic device 201 based at least in part on the result of the association determination.
  • a server (eg, server 108 of FIG. 1 or intelligent server 208 of FIG. 2) according to any one of the various embodiments of the present invention may include at least one communication interface; At least one processor operatively connected to the communication interface; And at least one memory operatively coupled to the processor, wherein the memory, when executed, is configured to be executed by the processor using a second electronic device by a user utterance from a first electronic device.
  • Receiving first input voice data including a first request to perform a task, determining or receiving a state of the first electronic device, and receiving a first response related to adjusting a state of the first electronic device; 1 Instructions to be provided to the electronic device may be stored.
  • the instructions may be configured such that the processor analyzes the first request included in the first input voice data and based on at least a portion of the analysis result. Determine whether there is an association between performing operations of the first task to be performed based on the first request, or receive the association determination result from the first electronic device, and as a result of the association determination, the state of the first electronic device and the If it is determined that there is a correlation between performing operations of the first task, generating first output voice data related to the adjustment of the state of the first electronic device, and generating the first response including the first output voice data. 1 can be transmitted to the electronic device.
  • the instructions may include at least one of the audio output or the visual output of the first electronic device, wherein the processor is configured to provide an audio output or a visual output upon determining the association. Or it may be determined whether or not interfere with at least one of the audio output or the visual output of the second electronic device configured to provide a visual output.
  • the instructions may include at least one of the audio output or the visual output of the first electronic device and the audio output or the second electronic device of the second electronic device, when the processor determines the association. It may be determined whether at least one of the visual outputs includes the same attribute.
  • the instructions may include at least one of the audio output or the visual output of the first electronic device and at least one of the audio output or the visual output of the second electronic device. May determine whether the first electronic device and the second electronic device are in close proximity to each other so as to interfere with each other.
  • the first output voice data may include a follow-up question regarding the performance of a second task related to adjusting the state of the first electronic device.
  • the instructions may be configured such that the processor analyzes the first request included in the first input voice data and based on at least a portion of the analysis result. Determining whether there is an association between performing operations of the first task to be performed based on the first request, or receiving the association determination result from the first electronic device, and as a result of the association determination, the state of the first electronic device is determined. If it is determined that there is a correlation between performing operations of the first task, an indication including at least a part of auditory information or visual information related to the adjustment of the state of the first electronic device is generated, and includes the indication. The first response may be transmitted to the first electronic device.
  • the instructions may include the processor analyzing the first request included in the first input voice data and corresponding to the first request based at least in part on the analysis result.
  • First task execution information for performing a first task may be generated, and the first task execution information may be transmitted to the second electronic device.
  • the first task execution information may include first operation information related to an operation of performing the first task, and the first operation information may be performed and performed on the first task. It may include information on a target, parameter information on an execution operation of the first task, or a first operation sequence on an execution operation of the first task.
  • the instructions may be configured such that the processor analyzes the first request included in the first input voice data and based on at least a portion of the analysis result. Determining whether there is an association between performing operations of the first task to be performed based on the first request, or receiving the association determination result from the first electronic device, and as a result of the association determination, the state of the first electronic device is determined. If it is determined that there is a correlation between performing operations of the first task, generating second task execution information for performing a second task related to adjusting the state of the first electronic device, and generating the second task execution information. The transmission may be performed to the first electronic device.
  • an electronic device may include at least one communication interface; At least one processor operatively connected to the communication interface; And at least one memory operatively coupled to the processor, wherein the memory, when executed, is configured to be executed by the processor using a first external electronic device by a user utterance through the electronic device.
  • Acquire first input voice data including a first request to perform a task, transmit the acquired first input voice data to a second external electronic device, and state of the electronic device from the second external electronic device. Instructions for receiving a first response related to the adjustment of?
  • the memory may be configured to execute, by the processor, the first task corresponding to the first request included in the first input voice data from the second external electronic device.
  • the memory may further include at least one of the audio output and the visual output of the electronic device configured to provide, when executed, the audio output or visual output when the processor determines the association. Instructions for determining whether to interfere with at least one of an audio output or a visual output of the first external electronic device configured to provide an audio output or a visual output may be stored.
  • the memory determines whether a distance between the electronic device and the first external electronic device on which the first task is to be performed is less than a threshold when the processor determines the association.
  • the threshold value is set to a minimum distance at which one of the audio output and the visual output of the electronic device may interfere with at least one of the audio output and the visual output of the first external electronic device. You can store instructions to make it work.
  • the memory may, when executed, generate a first command to cause the first external electronic device to perform the first task based on the first task execution information. And instructions for transmitting the first command to the first external electronic device.
  • the memory may be configured to transmit, by the processor, state information of the electronic device to the second external electronic device, and, from the second external electronic device, Instructions for receiving the first response including first output voice data associated with adjustment of the condition.
  • the first output voice data includes a follow-up question regarding performance of a second task related to adjusting a state of the electronic device, wherein the memory, when executed, is executed by the processor; Instructions for outputting the first output voice data through a sound output device of the electronic device or a device functionally connected to the electronic device may be stored.
  • the memory may be configured to, when executed, cause the processor to receive a user input for the subsequent question and in response to receiving the user input, the adjustment of the state of the electronic device.
  • the memory may be configured to transmit, by the processor, state information of the electronic device to the second external electronic device, and, from the second external electronic device, Instructions may be stored for receiving an indication that includes at least some of the auditory or visual information associated with conditioning.
  • an electronic device may include at least one communication interface; At least one processor operatively connected to the communication interface; And at least one memory operatively connected to the processor, wherein, when executed, the processor uses a first external electronic device by using a first speech by a user speaking from a first external electronic device.
  • FIG. 5 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure. The method may be performed by at least one of a first electronic device (eg, the first electronic device 201) or a processor (eg, the processor 315) of the first electronic device.
  • a first electronic device eg, the first electronic device 201
  • a processor eg, the processor 315
  • the first electronic device 201 may perform a first task using a second electronic device (eg, the second electronic device 202 (202a-202d)).
  • the first input voice data including the first request may be obtained.
  • the first electronic device 201 may obtain first input voice data including a first request by user speech.
  • the first electronic device 201 includes the first request through a voice input device (eg, the input module 311) (eg, a microphone 311a) of the first electronic device 201.
  • the first input voice data may be obtained.
  • the smartphone 201a obtains first input voice data including the first request through a functional connection device (for example, AI speaker 201b) that is functionally connected to the smartphone 201a. can do.
  • a functional connection device for example, AI speaker 201b
  • the first request may be performed by using one of at least one second electronic device (eg, the second electronic device 202 (202a-202d)) (eg, the smart TV 202a). It may be a request to perform.
  • the second electronic device 202 eg, the second electronic device 202 (202a-202d)
  • the smart TV 202a e.g., the smart TV 202a
  • the performing of the first task according to the first request may be an operation of performing at least one of audio output or visual output
  • the apparatus is a device performing the first task according to the first request.
  • the second electronic device (for example, the smart TV 202a) may provide a function for performing at least one of audio output or visual output.
  • the first electronic device 201 may transmit the first input voice data to an intelligent server (eg, an intelligent server) through a second network (eg, the second network 299) (eg, remote wireless communication). 408) (eg, a voice recognition server) (eg, a Bixby TM server of Samsung Electronics).
  • an intelligent server eg, an intelligent server
  • a second network eg, the second network 299) (eg, remote wireless communication).
  • a voice recognition server eg, a Bixby TM server of Samsung Electronics
  • the first electronic device 201 may use a communication interface (eg, the communication module 190) (eg, a remote wireless communication interface) of the first electronic device 201 through the second network 299.
  • the first input voice data may be transmitted to the intelligent server 408.
  • the first electronic device 201 may receive a first response related to the adjustment of the state of the first electronic device 201 from the intelligent server 408.
  • the first electronic device 201 may, from the intelligent server 408, perform a first task for performing the first task corresponding to the first request included in the first input voice data.
  • the performance information can be received.
  • the first electronic device 201 confirms an execution operation of the first task to be performed based on the first request from the first task execution information, and determines the execution of the first electronic device 201. It may be determined whether there is an association between a state and an execution operation of the first task. If the first electronic device 201 determines that there is a correlation between the state of the first electronic device 201 and the performing operation of the first task, the first electronic device 201 adjusts the state of the first electronic device 201.
  • the first electronic device may receive the first response including the first output voice data from the intelligent server.
  • the first electronic device 201 may receive an association determination result from the intelligent server 408.
  • the first output voice data may include a subsequent question about the execution of the second task related to the adjustment of the state of the first electronic device 201.
  • the first electronic device 201 receives the first electronic device from the intelligent server 208.
  • First output voice data associated with the adjustment of the state of the device 201 e.g., the state of music playback
  • the first response including “ e.g., "Do you want to lower the music?", "Turn the music?", Or "End the music?”
  • the first electronic device 201 may further perform at least one subsequent operation, and the at least one subsequent operation will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 6 is a flowchart illustrating a voice recognition control method of a first electronic device according to various embodiments of the present disclosure. The method may be performed by at least one of a first electronic device (eg, the electronic device 201 of FIG. 2) or a processor (eg, the processor 315 of FIG. 3b) of the first electronic device.
  • a first electronic device eg, the electronic device 201 of FIG. 2
  • a processor eg, the processor 315 of FIG. 3b
  • the first electronic device 201 may obtain a user voice.
  • the first electronic device 201 may obtain first input voice data including a first request by user speech.
  • the first electronic device 201 includes the first request through a voice input device (eg, the input module 311 or the microphone 311a of FIG. 3B) of the first electronic device 201.
  • the first input voice data may be obtained.
  • the smartphone (eg, the smartphone 201a of FIG. 2) makes the first request through a functional connection device (eg, the AI speaker 201b) that is functionally connected with the smartphone 201a.
  • the first input voice data may be acquired.
  • the first request may be a request (eg, “Play the music”) to perform a first task using the first electronic device 201.
  • the performing of the first task according to the first request may be an operation of performing at least one of audio output or visual output
  • the apparatus is a device performing the first task according to the first request.
  • the first electronic device 201 may provide a function for performing at least one of an audio output and a visual output.
  • the first electronic device 201 may transmit the first input voice data to an intelligent server (eg, an intelligent server) through a second network (eg, the second network 299) (eg, remote wireless communication). 408) (eg, a voice recognition server) (eg, a Bixby TM server of Samsung Electronics).
  • an intelligent server eg, an intelligent server
  • a second network eg, the second network 299) (eg, remote wireless communication).
  • a voice recognition server eg, a Bixby TM server of Samsung Electronics.
  • the first electronic device 201 uses the communication interface (eg, the communication module 190) (eg, a long range wireless communication interface) of the first electronic device to transmit the first electronic device 201 through the second network 299.
  • the input voice data may be transmitted to an intelligent server (eg, the intelligent server 408 of FIG. 4).
  • the first electronic device may be associated with adjusting the state of the second electronic device (eg, the second electronic device 202; 202a-202d (eg, the smart TV 202a)) from the intelligent server 408.
  • the indication may be received.
  • the first electronic device 201 may, from the intelligent server 408, perform a first task for performing the first task corresponding to the first request included in the first input voice data.
  • the performance information can be received.
  • the first electronic device 201 confirms an execution operation of the first task to be performed based on the first request from the first task execution information, and performs the operation on the first electronic device 201. It may be determined whether there is an association between the execution of the first task to be performed and the state of at least one second electronic device 202 around the first electronic device 201.
  • the first electronic device 201 may receive an association determination result from the intelligent server 408.
  • the first electronic device 201 based on a result of the association determination, the first electronic device 201 generates an indication related to adjustment of a state of the second electronic device 202 and thus the second electronic device 202. It can be controlled to adjust the state of.
  • the first electronic device 201 receives an indication related to adjustment of a state of the second electronic device 202 from the intelligent server 408, The second electronic device 202 may be controlled to adjust the state of the second electronic device 202 according to the received indication.
  • the intelligent server 408 generates an indication related to the adjustment of the state of the second electronic device 202 based on the result of the association determination to determine the state of the second electronic device 202. Can be controlled to adjust.
  • the second electronic device 202 may be associated with the adjustment of the state of the second electronic device 202 from the intelligent server 408.
  • the controller may receive an indication and control to adjust the state of the second electronic device 202 according to the received indication.
  • the intelligent server 408 generates an indication related to the adjustment of the state of the second electronic device 202 based on the result of the association determination to determine the state of the second electronic device 202. Can be controlled to adjust.
  • the indication may include at least some of audio information or visual information related to adjustment of a state of the at least one second electronic device 202.
  • the auditory information may include a notification sound informing the adjustment of the state of the at least one second electronic device 202 or a subsequent question relating to the adjustment of the state of the at least one second electronic device 202. It may include the first output voice data (eg, "lower the TV volume?" Or "higher the TV volume?”).
  • the first electronic device 201 is the audio information through a sound output device (eg, the speaker 314) or a functional connection device (eg, the AI speaker 201b) that is functionally connected to the first electronic device 201.
  • the visual information may include text, text, a picture, a picture, or an emoticon associated with adjusting the state of the at least one second electronic device 202.
  • the visual information may include a user interface (UI) such as a chat application.
  • the visual information includes at least one input button for receiving the subsequent question and a user input for the subsequent question included in the first output voice data related to adjusting the state of the at least one second electronic device 202. It may be a user interface (UI) including an (icon).
  • the visual information is not limited thereto, and may include all of the various visual representations.
  • the first electronic device 201 may output the visual information through a display device (for example, the display 313).
  • the first electronic device 201 may simultaneously output the auditory information and the visual information through the sound output device and the display device.
  • the first electronic device 201 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 7 is a flowchart illustrating a voice recognition control method of an electronic device according to various embodiments of the present disclosure.
  • the method may be performed by at least one of a first electronic device (eg, the first electronic device 201 of FIG. 2) or a processor (eg, the processor 315 of FIG. 3b) of the first electronic device.
  • a first electronic device eg, the first electronic device 201 of FIG. 2
  • a processor eg, the processor 315 of FIG. 3b
  • the first electronic device 201 receives a voice input for controlling a second electronic device (eg, the second electronic device 202 of FIG. 2)
  • the received second electronic device determines the correlation between the task corresponding to the voice input for controlling the 202 and the state of the first electronic device 201 to control the first electronic device 201 or to perform information (eg, Voice data).
  • information eg, Voice data
  • the first electronic device 201 may obtain first input voice data.
  • the first electronic device 201 may acquire a voice of a user using a microphone (for example, the microphone 311a of FIG. 3B) included in the first electronic device 201.
  • the first electronic device 201 may obtain first input voice data including a first request by user speech.
  • the first request may include at least one second electronic device (eg, second electronic device 202; 202a) registered in a communication connection app (eg, Samsung Connect TM ) of the first electronic device 201. 202d)), for example, a request to perform a first task using the smart TV 202a.
  • the first request may include at least one of at least one second electronic device (for example, the smart TV 202a) registered in the communication connection app of the first electronic device 201 in audio output or visual output. It may be a request to perform one as the first task.
  • the first input voice data may include a first request such as “Turn on the TV”.
  • the first electronic device 201 obtains first input voice data including the first request through a voice input device (eg, the microphone 311a) of the first electronic device 201. can do.
  • the first electronic device 201 is connected to the first electronic device 201 through a voice input device (for example, a microphone) of a functional connection device (for example, AI speaker 201b) that is functionally connected (for example, a BT connection).
  • the first input voice data including the first request may be obtained.
  • the first electronic device 201 may convert the first input voice data to an intelligent server (eg, the intelligent server 408) (eg, a voice recognition server) (eg, a Bixby TM server of Samsung Electronics).
  • an intelligent server eg, the intelligent server 408
  • a voice recognition server eg, a Bixby TM server of Samsung Electronics.
  • the first electronic device 201 may transmit its state information together with the first input voice data to the intelligent server 408.
  • the intelligent server 408 may receive the state information of the first electronic device 201 from the IoT server 209 instead of receiving the state information from the first electronic device 201. .
  • the first electronic device 201 may receive first task performance information for performing a first task from the intelligent server 408 in response to the transmission of the first input voice data. .
  • the first task execution information may include first operation information (eg, a first pass rule) related to an operation of performing the first task.
  • first operation information eg, a first pass rule
  • the first operation information may include information on an execution operation and an execution target of the first task, parameter information on an execution operation of the first task, or a first operation sequence on an execution operation of the first task. It may include.
  • the first task performance information may further include user interface (UI) information related to the first task or the first operation information.
  • UI user interface
  • the first electronic device 201 may transmit a first command including at least part of the first task performance information to a second electronic device (for example, the smart TV 202a).
  • a second electronic device for example, the smart TV 202a.
  • the first electronic device 201 may be configured based on at least a portion of the first task execution information received from the intelligent server 408, from the first operation information included in the first task execution information.
  • the domain that is the target device to perform the first task may be checked, and the target device corresponding to the checked domain may be searched for.
  • the first electronic device 201 may identify a device corresponding to the verified domain among at least one second electronic device 202 registered in a communication connection app (eg, Samsung Connect TM ) of the first electronic device. You can search.
  • the verified domain is “TV”
  • the first electronic device 201 is a target device corresponding to the verified domain among the at least one second electronic device 202 and may be connected to the “TV”.
  • the corresponding second electronic device (eg, the smart TV 202a) may be detected.
  • the second electronic device 202 having a higher priority may be selected according to a specified priority.
  • the first electronic device 201 generates a first command based at least in part on the first task execution information for performing the first task, and detects the second electronic device as a target device corresponding to the identified domain.
  • the first command may be sent to a device (eg, smart TV 202a).
  • the first electronic device 201 may determine an association between the state of the first electronic device 201 and the first task. For example, the first electronic device 201 may determine an association between a state of the first electronic device 201 and an execution operation of the first task to be performed by the first request included in the first input voice data. Can be.
  • the first electronic device 201 may determine the association based on whether the state of the first electronic device 201 and the performing operation of the first task interfere with each other. For example, when the state of the first electronic device 201 and the performing operation of the first task include the same property (for example, at least one of an audio element or a visual element), the state of the first electronic device 201. It may be determined that the operation of performing the first task interferes with each other. For example, the first electronic device 201 may be performing a first function such as playing music, and the performing of the first task may be “turning on the TV”.
  • the state of the first electronic device 201 is an operation state of performing the first function (for example, playing music)
  • the first electronic device 201 may have an attribute of an auditory element. ", So it can have the attributes of auditory and visual elements. Since the first electronic device 201 has the same attributes of auditory elements between the two operations, it may be determined that there is a correlation between the state of the first electronic device 201 and the performing operation of the first task.
  • the first electronic device 201 may be a target performing the first electronic device 201 and the first task such that the state of the first electronic device 201 and the performing operation of the first task interfere with each other.
  • the association may be determined based on whether devices (eg, the second electronic device (eg, the smart TV 202a)) are close to each other.
  • the first electronic device 201 may determine the first electronic device 201. Is determined to interfere with each other, is the distance between the first electronic device 201 and the second electronic device 202 that is the target device performing the first task less than a threshold value?
  • the first electronic device 201 may determine whether the distance between the first electronic device 201 and the second electronic device 202 that is the target device that performs the first task is less than a threshold value. It may be determined that there is a relationship between the state of the electronic device 201 and the performing operation of the first task. .
  • the first electronic device 201 may transmit a request for the first output voice data for controlling the first electronic device 201 to the intelligent server 408 based at least in part on the result of the association determination.
  • the first electronic device 201 when it is determined that there is a correlation between the state of the first electronic device 201 and the performing operation of the first task, the first electronic device 201 adjusts the state of the first electronic device 201. May send a request for first output voice data associated with the intelligent server 408. For example, when the state of the first electronic device 201 is performing the first function (for example, music playback), the first output voice associated with the adjustment of the execution state of the first function (for example, music playback) A request for data can be sent to the intelligent server 408.
  • the first function for example, music playback
  • a request for data can be sent to the intelligent server 408.
  • the first electronic device 201 may receive first output voice data (eg, a first response) for controlling the first electronic device 201 from the intelligent server 408.
  • first output voice data eg, a first response
  • the first electronic device 201 responds to the transmission of the request for the first output voice data, and thus, the first output voice associated with the adjustment of the state of the first electronic device 201 from the intelligent server 408. Data can be received.
  • the first electronic device 201 may include first output voice data received through a sound output device (eg, a speaker 314) or a functional connection device functionally connected to the first electronic device 201. You can output a sound output device (eg, a speaker 314) or a functional connection device functionally connected to the first electronic device 201. You can output a sound output device (eg, a speaker 314) or a functional connection device functionally connected to the first electronic device 201. You can output a sound output device (eg, a speaker 314) or a functional connection device functionally connected to the first electronic device 201. You can output
  • the first output voice data is a follow-up question related to the adjustment of the state of the first electronic device 201 (eg, a first function (eg, music playback) performing operation). (E.g., "Would you like music down?”, “Will music up?”, Or "Stop music playback?”).
  • the first electronic device 201 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 8 is a flowchart illustrating a voice recognition control method of an electronic device according to various embodiments of the present disclosure.
  • the method may be performed by at least one of a first electronic device (eg, the first electronic device 201 of FIG. 2 or the processor 315 of the electronic device 310 of FIG. 3B).
  • a first electronic device eg, the first electronic device 201 of FIG. 2 or the processor 315 of the electronic device 310 of FIG. 3B.
  • the first electronic device 201 receives a voice input for controlling the second electronic device 202
  • the first electronic device 201 corresponds to a voice input for controlling the received second electronic device 202.
  • the intelligent server 408 determines the association between the task and the state of the first electronic device 201, thereby controlling the first electronic device 201 or outputting information (eg, voice data).
  • operations 810 to 840 are the same as operations 710 to 740 of FIG. 7, and thus a detailed description thereof will be omitted.
  • the first electronic device 201 may transmit state information of the first electronic device 201 to an intelligent server (for example, the intelligent server 408 of FIG. 4).
  • the intelligent server 408 may obtain state information of the first electronic device 201 in various ways. For example, when the intelligent server 408 obtains state information of the first electronic device 201 through the IoT server 209, the operation 850 may be omitted.
  • the first electronic device 201 may perform operation 850 periodically or aperiodically. For example, the first electronic device 201 transmits its status information to the intelligent server 408 according to a specified cycle, or, in response to a request of the intelligent server 408, transmits its status information to the intelligent server 408. ) Can be sent.
  • the operation 850 is illustrated to be performed after the operation 840, but is not limited thereto and may be performed in any operation step. According to an embodiment of the present disclosure, when the first electronic device 201 transmits its own state information when transmitting the first input voice data to the intelligent server 408 in operation 820, operation 850 may be omitted.
  • the first electronic device 201 may receive first output voice data for controlling the first electronic device 201 based at least in part on the result of the association determination from the intelligent server 408.
  • the first output voice data is received from the intelligent server 408 by the request of the first electronic device 201 in operation 760, whereas in operation 860.
  • the first output voice data may be received from the intelligent server 408 without a request of the first electronic device 201.
  • the intelligent server 408 may determine whether there is a correlation between a state of the first electronic device 201 and an execution operation of the first task to be performed by the first request included in the first input voice data. have. If the intelligent server 408 determines that there is a correlation, the intelligent server 408 may generate first output voice data related to the adjustment of the state of the first electronic device 201 and transmit it to the first electronic device 201. . As a result, the first electronic device 201 may receive the first output voice data from the intelligent server 408.
  • the intelligent server 408 when the intelligent server 408 receives the first input voice data from the first electronic device 201 in operation 820, the intelligent server 408 receives the first electronic device 201. If the state information for the above is already known, the operation 850 may be omitted. In this case, the first task execution information reception in operation 830 and the first output voice data reception in operation 860 may be simultaneously or sequentially performed.
  • operation 870 is the same as operation 780 of FIG. 7, a detailed description thereof will be omitted.
  • the first electronic device may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 9 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure.
  • the method may be performed by at least one of an intelligent server (eg, intelligent server 408 of FIG. 4) or a processor (eg, processor 420 of FIG. 4) of the intelligent server.
  • an intelligent server eg, intelligent server 408 of FIG. 4
  • a processor eg, processor 420 of FIG. 4
  • the intelligent server 408 may receive voice data from a first electronic device (eg, the first electronic device 201). For example, the intelligent server 408 receives the first input voice data including the first request by the user's speech obtained through the voice input device (eg, the microphone 311a) of the first electronic device 201. can do.
  • a first electronic device eg, the first electronic device 201
  • the intelligent server 408 receives the first input voice data including the first request by the user's speech obtained through the voice input device (eg, the microphone 311a) of the first electronic device 201. can do.
  • the first request may be performed by using one of at least one second electronic device (for example, the second electronic devices 202 (202a to 202d)) (for example, the smart TV 202a).
  • Request eg, Turn on the TV.
  • the performing of the first task according to the first request may be an operation of performing at least one of audio output or visual output
  • the apparatus is a device performing the first task according to the first request.
  • the second electronic device (for example, the smart TV 202a) may provide a function for performing at least one of audio output or visual output.
  • the intelligent server 408 may perform an operation of performing a first task to be performed in the second electronic device (eg, the smart TV 202a) based at least in part on a result of analyzing the first input voice data. You can check it. For example, the intelligent server 408 analyzes the first input voice data and analyzes the first input voice data to determine a user's intention (eg, an operation of performing a first task) or a domain (eg, according to a first request). Target of the first task) may be detected. For example, when the device corresponding to the domain is the second electronic device (for example, the smart TV 202a), the intelligent server may check the performing operation of the first task based on the detected user intention.
  • a user's intention eg, an operation of performing a first task
  • a domain eg, according to a first request
  • Target of the first task may be detected.
  • the intelligent server may check the performing operation of the first task based on the detected user intention.
  • the intelligent server 408 may determine or receive a state of the first electronic device 201. For example, the intelligent server 408 may receive state information of the first electronic device 201 from the first electronic device 201. The intelligent server 408 may determine the state of the first electronic device 201 based at least in part on the state information of the first electronic device 201. According to various embodiments of the present disclosure, the intelligent server 408 may receive state information of the first electronic device 201 from another server (eg, the IoT server 209).
  • another server eg, the IoT server 209
  • the state information of the first electronic device 201 may include at least some of capability information, a running app (or a function (operation)), or state information or setting information of each component. have.
  • the state information may include volume information of the audio device (eg, the audio module 370).
  • the state information may be displayed on the volume information or the display device of the audio device (eg, the audio module 370).
  • the display device 360 may include screen adjustment information of the display device 360.
  • the intelligent server 408 may determine whether there is an association between the state of the first electronic device and the performing operation of the first task.
  • the intelligent server 408 may transmit a first response related to the adjustment of the state of the first electronic device 201 to the first electronic device 201.
  • the intelligent server 408 may generate and transmit the first response related to the adjustment of the state of the first electronic device 201 to the first electronic device 210 based at least in part on the result of the association determination. .
  • the first response may include first output voice data related to adjustment of a state of the first electronic device 210.
  • the intelligent server 408 determines that there is an association between the state of the first electronic device 201 (for example, a first function execution operation) and the first task execution operation, as the result of the association determination, the first electronic device determines whether the first electronic device 201 is connected.
  • the first output voice data associated with the adjustment of the state of the device 201 may be generated.
  • the intelligent server 408 may be configured to adjust the state of the first electronic device 201 from the first electronic device 201.
  • a request for associated first output voice data may be received, and the first output voice data may be generated in response to receiving the request.
  • the first output voice data may include a follow-up question related to adjustment of a state of the first electronic device 201.
  • the first output voice data may be a follow-up question related to the adjustment of the first function performing operation (eg, “music sound”). Lower? ",” Turn on the music? “, Or” end the music? "The intelligent server 408 sends the first response including the generated first output voice data.
  • the data may be transmitted to the first electronic device 201.
  • the intelligent server 408 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 10 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure. The method may be performed by at least one of an intelligent server (eg, intelligent server 408) or a processor (eg, processor 420) of the intelligent server.
  • an intelligent server eg, intelligent server 408
  • a processor eg, processor 420
  • the intelligent server 408 may receive voice data from a first electronic device (eg, the first electronic device 201). For example, the intelligent server 408 receives the first input voice data including the first request by the user's speech obtained through the voice input device (eg, the microphone 311a) of the first electronic device 201. can do.
  • a first electronic device eg, the first electronic device 201
  • the intelligent server 408 receives the first input voice data including the first request by the user's speech obtained through the voice input device (eg, the microphone 311a) of the first electronic device 201. can do.
  • the first request may be a request (eg, Play on the music) to perform a first task using the first electronic device 201.
  • the performing of the first task according to the first request may be an operation of performing at least one of audio output or visual output
  • the apparatus is a device performing the first task according to the first request.
  • the first electronic device 201 may provide a function for performing at least one of an audio output and a visual output.
  • the intelligent server 480 may check an execution operation of the first task to be performed in the first electronic device 201 based at least in part on the analysis result of the first input voice data.
  • the intelligent server 408 analyzes the first input voice data and detects a user intention (eg, an operation performed by the first task) or a domain (eg, an object performed by the first task) according to the first request. can do.
  • a user intention eg, an operation performed by the first task
  • a domain eg, an object performed by the first task
  • the intelligent server 408 may be performed by the first electronic device 201 based on the detected user intention. You can check the performance of the task.
  • the intelligent server may determine or receive a state of the second electronic device (eg, the smart TV 202a).
  • the intelligent server 408 may receive state information of at least one second electronic device 202a to 202d from the first electronic device.
  • the intelligent server 408 may determine the state of the second electronic device (eg, the smart TV 202a) based at least in part on the state information of the at least one second electronic device 202.
  • the intelligent server 408 may receive state information of the second electronic device 202 from another server (eg, the IoT server 209).
  • the state information of the second electronic device may include capability information, a running app (or a function (operation)), or state information or setting information of each component. It may include at least some of.
  • the state information may be displayed on the second electronic device (for example, the smart TV 202a).
  • the intelligent server 408 may determine whether there is an association between the execution of the first task and the state of the second electronic device (for example, the smart TV 202a).
  • the intelligent server 408 may transmit an indication related to the adjustment of the state of the second electronic device (eg, the smart TV 202a) to the first electronic device 201.
  • the intelligent server 408 generates an indication related to the adjustment of the state of the second electronic device (eg, the smart TV 202a) based at least in part on the result of the association determination, thereby generating the first electronic device 201.
  • the first electronic device 201 may display an indication related to adjustment of a state of the second electronic device (eg, the smart TV 202a) received from the intelligent server 408 (eg, the second electronic device). To the smart TV 202a.
  • the intelligent server 408 determines that the association of the second electronic device 202 is performed.
  • the indication may be generated including at least some of audio information or visual information related to the adjustment of the state.
  • the auditory information may include a notification sound informing the adjustment of the state of the second electronic device 202 or first output voice data including subsequent questions relating to the adjustment of the state of the second electronic device 202.
  • the visual information may include text related to adjustment of the state of the second electronic device 202; It may include a text, a picture, a picture, or an emoticon
  • the visual information may include a user interface (UI) such as a conversation application, The visual information may be related to the adjustment of the state of the second electronic device 202.
  • UI user interface
  • UI including at least one input button (icon) for receiving the subsequent question included in the first output voice data and a user input for the subsequent question.
  • the information is not limited thereto and may include all of the various visual representations
  • the intelligent server may transmit the generated indication to the first electronic device 201. After operation 1030, the intelligent server 408 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 11 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure. The method may be performed by at least one of an intelligent server (eg, intelligent server 408) or a processor (eg, processor 420) of the intelligent server.
  • an intelligent server eg, intelligent server 408
  • a processor eg, processor 420
  • the intelligent server 408 may receive first input voice data from a first electronic device (eg, the first electronic device 201). For example, the intelligent server 408 receives the first input voice data including the first request by the user's speech obtained through the voice input device (eg, the microphone 311a) of the first electronic device 201. can do. Since operation 1110 may perform the same or similar operation as operation 910 of FIG. 9 and operation 1010 of FIG. 10, a detailed description thereof will be omitted.
  • the intelligent server 408 may generate first task performance information for performing the first task based at least in part on a result of analysis of the first input voice data.
  • the intelligent server 408 may analyze the first input voice data received from the first electronic device 201. For example, the intelligent server 408 recognizes and converts the first input voice data into text through an automatic voice recognition module (eg, the ASR module 421), and understands the natural language module (eg, the NLU module 422). The intent of the user corresponding to the first request (eg, an operation to be performed (eg, a first task)) or a domain (eg, an execution target of the action to be performed based on the converted text) (For example, a device that performs a first task).
  • an automatic voice recognition module eg, the ASR module 421
  • the natural language module eg, the NLU module 422
  • the intent of the user corresponding to the first request eg, an operation to be performed (eg, a first task)
  • a domain eg, an execution target of the action to be performed based on the converted text
  • the intelligent server 408 analyzes the first request included in the first input voice data and extracts the extracted word ( Based on a slot) (eg, "TV” or “Turn on”), the user's intention (eg, the first task) may be determined to be a "Turn on” operation, and the domain (eg, the first task).
  • the device that performs the operation may be determined as “TV”, that is, “smart TV 202a” of at least one second electronic device (eg, second electronic devices 202 (202a to 202d)).
  • the intelligent server 408 may generate the first task execution information corresponding to the first request based at least in part on the detected user's intention or domain. For example, the intelligent server 408 may analyze the first input voice data, and according to the detected slot, the user's intention (eg, performing the first task) or domain (eg, performing the first task) according to the detected slot. Based on at least in part, a first parameter or first parameter necessary for the domain to perform the user's intent from a path rule database (eg, path rule DB 436) via a path planner module (eg, path planner module 423).
  • the first operation information (eg, a first pass rule) including an operation sequence may be generated.
  • the first operation information (eg, a first pass rule) may be executed by the target device or app to be executed in response to the first request, an operation to be executed by the target device or the app (eg, the first task or the first) At least one state associated with a task) and information about a parameter required to execute the operation.
  • the intelligent server 408 may select the smart TV 202a of the second electronic devices.
  • First operation information including information on a parameter or an operation order required to be turned on in the first operation sequence may be generated.
  • the first task performance information may further include user interface (UI) information related to the first operation information.
  • UI user interface
  • the intelligent server 408 may transmit the first task performance information to the first electronic device 201.
  • the intelligent server 408 may receive a request for first output voice data corresponding to a result of the association determination from the first electronic device 201. For example, the intelligent server 408 may determine, from the first electronic device 201, the first task to be performed by the first request included in the state of the first electronic device 201 and the first input voice data. A request for first output voice data related to adjustment of a state of the first electronic device 201 corresponding to a result of the association determination between performing operations may be received. The request for the first output voice data may include a result of the association determination.
  • the intelligent server 408 may generate first output voice data for controlling the first electronic device 201 based at least in part on a result of the association determination from the first electronic device 201. .
  • the intelligent server 408 may generate the first output voice data based at least in part on the result of the association determination detected from the request.
  • the intelligent server 408 may determine, from the first electronic device 201, an association determination result determined that there is a correlation between the state of the first electronic device 201 and the operation of performing the first task.
  • the state of the first electronic device 201 is determined based on the state information of the first electronic device 201 and the natural language generation module (eg, the NLG module 425) determines the determined state. 1
  • the first output voice data related to the adjustment of the state of the electronic device 201 may be generated.
  • the intelligent server 408 determines that the state of the first electronic device 201 is a state of performing the first function (for example, playing music)
  • the state of the first electronic device 201 is determined.
  • the natural language generation module may generate first output voice data related to the adjustment of the first function performing operation (eg, music playback).
  • the first output voice data may include a subsequent question (eg, “music sound”) related to adjusting a state of the first electronic device 201 (eg, performing a first function performing operation (eg, playing music)). Lower? ",” Raise the music? “Or” Stop the music? "
  • the first output voice data may include an audio output path ( follow-up questions for changing the path, such as "Would you like to change the music output to a Bluetooth headset?"
  • the intelligent server 408 may transmit the first output voice data (eg, a first response) to the first electronic device 201.
  • the intelligent server 408 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • FIG. 12 is a flowchart illustrating a voice recognition control method of an intelligent server according to various embodiments of the present disclosure. The method may be performed by at least one of an intelligent server (eg, intelligent server 408) or a processor (eg, processor 420) of the intelligent server.
  • an intelligent server eg, intelligent server 408
  • a processor eg, processor 420
  • operations 1210 to 1230 are the same as operations 1110 to 1130 of FIG. 11, and thus a detailed description thereof will be omitted.
  • the intelligent server 408 may receive state information of the first electronic device 201 from the first electronic device (eg, the first electronic device 201).
  • the intelligent server 408 may perform operation 1240 periodically or aperiodically.
  • the intelligent server 408 may receive the state information of the first electronic device 201 from the first electronic device 201 according to a specified period, or in response to a request of the intelligent server, the first electronic device ( Status information of the first electronic device 201 may be received from 201.
  • operation 1240 is illustrated to be performed after operation 1230, but is not limited thereto and may be performed in any operation step according to various embodiments.
  • the intelligent server 408 may be performed. May be omitted.
  • the intelligent server 408 may receive an association determination request as well as status information from the first electronic device 201 in operation 1240.
  • the intelligent server 408 may determine an association between a state of the first electronic device 201 and an performing operation of the first task. For example, the intelligent server 408 may determine an association between the state of the first electronic device 201 and the execution operation of the first task to be performed by the first request included in the first input voice data. .
  • the intelligent server 408 may determine the association based on whether the determined state of the first electronic device 201 and the performing operation of the first task interfere with each other. For example, the intelligent server 408 may perform the operation of the first task and the state information of the first electronic device 201 received from the first electronic device 201 or the IoT server 209 (eg, the cloud). When the same property (for example, an auditory element or a visual element) is included, it may be determined that the state of the first electronic device 201 and the performing operation of the first task interfere with each other. For example, when the first electronic device 201 performs a first function such as playing music, the determined state of the first electronic device 201 may be an execution state of the first function.
  • a first function such as playing music
  • the performing of the first task may be “turning on the TV”.
  • the first electronic device 201 since the determined state of the first electronic device 201 is a state in which the first function is performed (for example, music playback), the first electronic device 201 may have an attribute of an auditory element. To turn on “so that it can have the attributes of an auditory element or a visual element. Since the intelligent server 408 has the same attribute of an auditory element between two operations, it may be determined that there is a correlation between the state of the first electronic device 201 and the performing operation of the first task.
  • the intelligent server 408 may perform a target device that performs the first task with the first electronic device 201 such that the state of the first electronic device 201 and the operation of performing the first task interfere with each other.
  • the association may be determined based on whether or not the second electronic device (eg, the smart TV 202a) is close to each other, for example, the intelligent server 408 may be connected to a state of the first electronic device 201. If it is determined that an operation of performing the first task interferes with each other, the distance between the first electronic device 201 and the second electronic device (for example, the smart TV 202a) that is the target device performing the first task is a threshold value.
  • the intelligent server 408 may determine whether the distance between the first electronic device 201 and the second electronic device 202 that is the target device that performs the first task is less than the threshold value. It is determined that there is a relationship between the state of the electronic device 201 and the performing operation of the first task.
  • the threshold may be set to a minimum distance at which the state of the first electronic device 201 and the performing operation of the first task may be interfered with.
  • the threshold value may interfere with a function performing operation related to an audio output or a video output among states of the first electronic device 201 and a first task performing operation related to an audio output or a video output during the first task performing operation. It can be set to the minimum distance.
  • the intelligent server 408 may generate first output voice data for controlling the first electronic device 201 based at least in part on the result of the association determination. Since operation 1260 is the same except that a subject that determines an association between the operation 1150 of FIG. 11 and the state of the first electronic device 201 and the performing operation of the first task is different, a detailed description of the operation 1260 is omitted. Let's do it.
  • operation 1270 is the same as operation 1160 of FIG. 11, a detailed description thereof will be omitted.
  • the intelligent server 408 may further perform at least one subsequent operation, which will be described in more detail with reference to FIGS. 17 and 18.
  • the first electronic device 1301 (for example, the first electronic device 201) and the second electronic device 1302 (for example, the second electronic devices 202 (202a to 202d)) are connected to the first network (
  • the first network 298 eg, near field communication
  • the intelligent server 1308 eg, the intelligent server 408
  • the second network 299 (for example, long distance wireless communication) may be used, and the second electronic device 1302 and the intelligent server 1308 may transmit data or information through the first electronic device 1301.
  • the first electronic device 1301 may obtain a first input voice from a user.
  • the first electronic device 1301 may obtain first input voice data including a first request by user speech.
  • the first electronic device 1301 may acquire first input voice data including the first request through a voice input device (eg, the microphone 311a) of the first electronic device 1301. Can be.
  • the first electronic device 1301 requests the first request through a voice input device (eg, a microphone 311a) of a functional connection device (eg, an AI speaker 201b) that is functionally connected to the first electronic device 1301. It may also obtain the first input voice data comprising a.
  • the first request may be a request for performing a first task corresponding to the first request by using the second electronic device 1302 (for example, the smart TV 202a).
  • the first request may be a request for the second electronic device 1302 to communicate with the first electronic device 1301 to perform at least one of an audio output and a visual output as the first task.
  • the first electronic device 1301 may transmit the first input voice data to the intelligent server 1308 through a second network 299 (for example, long range wireless communication).
  • the first electronic device 1301 may intelligently read the first input voice data by using a communication interface (eg, the second communication interface 314) (eg, a remote wireless communication interface) of the electronic device 1301. Send to server 1308.
  • the first electronic device 1301 may include the state information of the first electronic device 1301 in the first input voice data when the first input voice data is transmitted to the intelligent server 1308. Can be sent together.
  • the intelligent server 1308 generates first task performance information for performing the first task based at least in part on an analysis result of the first input voice data received from the first electronic device 1301. can do.
  • the intelligent server 1308 may analyze the first input voice data. For example, the intelligent server 1308 recognizes the first input voice data through an automatic voice recognition module (eg, ASR module 421), converts the first input voice data into text, and understands a natural language module (eg, NLU module 422). The intent of the user corresponding to the first request (eg, an operation to be performed (eg, performing a first task)) or a domain (eg, an operation to be performed based on the converted text). An execution target (for example, a device that performs a first task) may be detected. For example, when the first input voice data is “Turn on the TV,” the intelligent server 1308 analyzes a first request included in the first input voice data and extracts a word.
  • ASR module 421 automatic voice recognition module
  • NLU module 422 e.g, NLU module 422
  • the user's intention (eg, first task) may be determined to be a "Turn on” operation, and the domain (eg, first)
  • the device performing the task may determine that it is a “TV”, that is, a second electronic device 1302 (for example, the smart TV 202a.)
  • the intelligent server 1308 may determine whether or not the detected user's intention or domain is the same. Based on at least a part, first task execution information for performing the first task corresponding to the first request may be generated.
  • the first task execution information may include first operation information (eg, a first pass rule) for performing a first task corresponding to the first request.
  • the intelligent server 1308 may determine a path rule database through a path planner module (eg, a path planner module 423) based on a result of analysis of the first input voice data and the detected user's intention or domain. (Eg, the pass rule DB 436), the domain may select or generate a first operation sequence corresponding to a parameter or an operation sequence necessary for the domain to perform the intention of the user.
  • the first operation information (eg, a first pass rule) may be executed by the target device or app to be executed in response to the first request, an operation to be executed by the target device or the app (eg, the first task or the first). At least one state associated with a task) and information about a parameter required to execute the operation. For example, when the first request included in the first input voice data is “Turn on the TV,” the intelligent server 1308 may be configured to use the second electronic device 1302 (eg, a smart TV).
  • the second electronic device 1302 eg, a smart TV
  • the “ turn on " operation of the second electronic device 1302 is executed in the target device ( For example, a first task including a first task, and including information on a parameter or an operation order required for the second electronic device 1302 (for example, the smart TV 202a) to turn on.
  • the operation information can be generated.
  • the first task performance information may further include user interface (UI) information related to the first operation information.
  • UI user interface
  • the intelligent server 1308 may transmit the first task performance information to the first electronic device 1301 through a second network 299 (for example, long range wireless communication).
  • the intelligent server 1308 may transmit the first task performance information to the first electronic device 1301 using a communication interface (eg, the communication interface 410) of the intelligent server 1308.
  • the first electronic device 1301 may transmit a first command generated based at least in part on the first task execution information received from the intelligent server 1308 (for example, the smart). TV 202a).
  • the first electronic device 1301 checks a domain that is a target device to perform the first task from the first operation information included in the first task execution information.
  • the target device corresponding to the identified domain may be checked.
  • the first electronic device 1301 may include at least one second electronic device 1302 (eg, at least one second device) registered in a communication connection app (eg, Samsung Connect TM ) of the first electronic device 1301.
  • a communication connection app eg, Samsung Connect TM
  • devices corresponding to the verified domain may be identified.
  • the verified domain is “TV”
  • the first electronic device 1301 may correspond to the second electronic device 1302 corresponding to the domain (for example, second electronic devices 202 (202a to 202d)). You can check.
  • a second electronic device having a high priority may be selected according to a specified priority.
  • the first electronic device 1301 may transmit a first command to the detected second electronic device 1302 (for example, the smart TV 202a) based on the first operation information.
  • the first electronic device 1301 uses the communication interface (eg, the communication module 190) of the first electronic device 1301 (eg, a short range wireless communication interface) to display the first network 298.
  • the first command may be transmitted to the second electronic device 1302 (for example, the smart TV 202a) that is the target device.
  • the second electronic device 1302 may perform the first task based on the first command received from the first electronic device 1301.
  • the first command corresponds to a first task (eg, second electronic device 1302) (eg, smart TV 202a) corresponding to the first request included in first input voice data acquired by the first electronic device 1301.
  • the first task execution information related to the performance of “Turn on”) may be included.
  • the second electronic device 1302 (for example, the smart TV 202a) is configured to correspond to the first request based on first operation information of the first task execution information included in the first command. Can be performed.
  • the second electronic device 1302 may have a user interface (UI) related to the execution of the first task based on UI information related to the first operation information included in the first task execution information. ) May be further displayed on the display device (eg, the display 313) of the second electronic device 1302 (eg, the smart TV 202a).
  • UI user interface
  • the first electronic device 1301 may determine the association based on whether the state of the first electronic device 1301 and the performing operation of the first task interfere with each other. For example, when the state of the first electronic device 1301 and the performing operation of the first task include the same property (for example, an auditory element or a visual element), the state of the first electronic device 1301 is performed. It may be determined that the operation of performing the first task interferes with each other. For example, when the first electronic device 1301 is performing a first function such as playing music, the state of the first electronic device 1301 may be the first function performing operation state. The performing operation of may be an "turning on TV" operation.
  • the state of the first electronic device 1301 is an operation state of performing the first function (for example, music playback)
  • the first electronic device 1301 may have an attribute of an auditory element. ", So it can have the attributes of an auditory or visual element.
  • the first electronic device 1301 may determine that the state (first function performing operation) of the first electronic device 1301 and the performing operation of the first task have the same attribute of the auditory element, and thus are related. have.
  • the first electronic device 1301 is a target performing the first electronic device 1301 and the first task such that the state of the first electronic device 1301 and the performance of the first task interfere with each other.
  • the association may be determined based on whether the devices (eg, the second electronic device 1302 (eg, the smart TV 202a) are close to each other.
  • the first electronic device 1301 may determine the first electronic device.
  • the first electronic device 1301 and the second electronic device 1302 which is a target device performing the first task (for example, smart)
  • the first electronic device 1301 may determine whether the distance between the TVs 202a is less than or equal to the threshold value, and the second electronic device 1301 may be a target device that performs the first task with the first electronic device 1301. 1302 (eg, the distance between the smart TV 202a) is less than the threshold, the state of the first electronic device 1301 and the first task
  • the threshold may be set to a minimum distance at which a state of the first electronic device 1301 and an execution operation of the first task may be interfered with.
  • the threshold may be a function performing operation related to an audio output or a video output during a state of the first electronic device 1301, and a first operation related to the audio output or video output during the first task performing operation.
  • the task performing operation may be set to a minimum distance that may be interfered with.
  • the state of the first electronic device 1301 is adjusted. May send a request for first output voice data associated with the intelligent server 1308.
  • the intelligent server 1308 may generate first output voice data for controlling the first electronic device 1301 based at least in part on the result of the association determination received from the first electronic device 1301. have. For example, when the request for the first output voice data is received, the intelligent server 1308 may be configured to adjust the state of the first electronic device 1301 based at least in part on the result of the association determination detected from the request. The associated first output voice data can be generated.
  • the intelligent server 1308 may determine, from the first electronic device 1301, an association determination result determined that there is a correlation between the state of the first electronic device 1301 and the first task execution operation.
  • the state of the first electronic device 1301 is determined based on the state information of the first electronic device 1301, and the natural language generation module (for example, the NLG module 425) determines the determined state.
  • the first output voice data related to the adjustment of the state of the first electronic device 1301 may be generated.
  • the natural language generation module 425 may generate first output voice data related to the adjustment of the operation of performing the first function (eg, music playback).
  • the first output voice data is a subsequent question (eg, "music") related to the adjustment of a state (eg, a first function (eg, music playback)) performing operation of the first electronic device 1301. Sound down? ",” Turn up the music? “Or” stop playing the music? "
  • a subsequent question eg, "music”
  • a state e.g, a first function (eg, music playback)
  • the intelligent server 1308 may transmit the first output voice data to the first electronic device 1301.
  • the intelligent server 1308 may transmit the first output voice data to the first electronic device 1301 through the second network 299 using the communication interface 410.
  • the first electronic device 1301 may output first output voice data.
  • the first electronic device 1301 may output first output voice data received through a sound output device (eg, the audio output device 340) (eg, a speaker).
  • a sound output device eg, the audio output device 340
  • the first electronic device 1301, the intelligent server 1308, or the second electronic device 1302 may further perform at least one subsequent operation, and FIGS. 17 and 18 will be described with respect to the at least one subsequent operation. It will be described in more detail with reference to.
  • the first electronic device 1401 eg, the first electronic device 201) and the second electronic device 1402 (eg, the second electronic devices 202 (202a to 202d)) are connected to the first network (
  • the first network 298 for example, short-range wireless communication
  • the first electronic device 1401 and the intelligent server 1408 for example, the intelligent server 408 may communicate with the second network (for example, the wireless network).
  • the second electronic device 1402 and the intelligent server 1408 may transmit and receive data or information through the first electronic device 1401. can do.
  • the subject of the association determination is the intelligent server 1408, the description will be given based on different operations since it is the same as FIG. 13.
  • the first electronic device 1401 may transmit its state information to the intelligent server 1408.
  • the first electronic device 1401 may use its second communication interface (eg, the second communication interface 314) (eg, a remote wireless communication interface) to transmit its state information through the second network 299. May be sent to the intelligent server 1408.
  • the first electronic device 1401 may perform operation 1424 periodically or aperiodically. For example, the first electronic device 1401 transmits its status information to the intelligent server 1408 according to a specified cycle, or, in response to a request of the intelligent server 1408, transmits its status information to the intelligent server 1408. ) Can be sent.
  • operation 1424 is illustrated as being performed after operation 1420, but is not limited thereto and may be performed at any operation step. According to an embodiment, when the first electronic device 1401 transmits its own state information when the first input voice data is transmitted to the intelligent server 1408 in operation 1414, operation 1424 may be omitted.
  • the intelligent server 1408 may determine an association between a state of the first electronic device 1401 and an execution operation of a first task to be performed by the first request included in the first input voice data. Can be.
  • the intelligent server 1408 may determine the association based on whether the determined state of the first electronic device 1401 and the performing operation of the first task interfere with each other. For example, the intelligent server 1408 determines the state of the first electronic device 1401 based at least in part on the state information of the first electronic device 1401, and determines the determined state of the first electronic device 1401. And when the performing operation of the first task includes the same property (for example, an auditory element or a visual element), it is determined that the state of the first electronic device 1401 and the performing operation of the first task interfere with each other. Can be. For example, when the first electronic device 1401 is performing a first function such as playing music, the determined state of the first electronic device 1401 may be an execution state of the first function.
  • a first function such as playing music
  • the performing of the first task may be “turning on the TV”.
  • the determined state of the first electronic device 1401 may have an attribute of an auditory element because the first function performing operation (for example, music playback) is performed, and the performing operation of the first task is “TV.
  • the intelligent server 1408 has the same attribute of the auditory element as the performance of the first function and the performance of the first task, there is a relationship between the state of the first electronic device 1401 and the performance of the first task. It can be judged that.
  • the intelligent server 1408 may perform operations on the first electronic device 1401 and the first device so that the state of the first electronic device 1401 and the performance of performing the first task interfere with each other.
  • the association may be determined based on whether the second electronic device 1402 (for example, the smart TV 202a) is close to each other, for example, the intelligent server 1408 may determine the first electronic device 1401.
  • the intelligent server 1408 may determine whether the distance between the first electronic device 1401 and the second electronic device 1402 (for example, a smart device) that is a target device performing the first task is determined. If the distance between the TVs 202a is less than the threshold value, the state of the first electronic device 1401 and the performance of the first task are performed.
  • the threshold may be set to a minimum distance at which the state of the first electronic device 1401 and the performance of performing the first task may be interfered with.
  • the threshold may be a function performing operation related to an audio output or a video output among states of the first electronic device 1401, and a first task related to audio output or a video output during the first task performing operation.
  • the performing operation may be set to a minimum distance that may be interfered with.
  • the intelligent server 1408 may generate first output voice data for controlling the first electronic device 1401 based at least in part on the result of the association determination.
  • the intelligent server 1408 may generate first output voice data related to adjustment of the state of the first electronic device 1401 based at least in part on the result of the association determination.
  • the intelligent server 1408 may determine a natural language generation module ( For example, the NLG module 425 may generate first output voice data related to adjustment of the determined state of the first electronic device 1401. For example, when the intelligent server 1408 determines that the state of the first electronic device 1401 is a state where the state of the first electronic device 1401 is performing a first function (for example, playing music), The natural language generation module 425 may generate first output voice data related to the adjustment of the operation of performing the first function (eg, music playback).
  • a natural language generation module for example, the NLG module 425 may generate first output voice data related to adjustment of the determined state of the first electronic device 1401.
  • the intelligent server 1408 determines that the state of the first electronic device 1401 is a state where the state of the first electronic device 1401 is performing a first function (for example, playing music).
  • the natural language generation module 425 may generate first output voice data related to the adjustment of the operation of performing the first function (eg, music playback).
  • the first output voice data is a subsequent question (eg, "music") related to adjustment of a state (eg, a first function (eg, music playback)) performing operation of the first electronic device 1401. Sound down? ",” Turn up the music? “Or” stop playing the music? "
  • a subsequent question eg, "music”
  • a state e.g, a first function (eg, music playback)
  • Operations 1430 and 1432 are the same as operations 1330 and 1332 of FIG. 13, and thus a detailed description thereof will be omitted.
  • the first electronic device 1401, the intelligent server 1408, or the second electronic device 1402 may further perform at least one subsequent operation, and FIGS. 17 and 18 will be described with respect to the at least one subsequent operation. It will be described in more detail with reference to.
  • the first electronic device 1501 eg, the first electronic device 201 and the second electronic device 1502 (eg, the second electronic devices 202 (202a-202d)) are connected to the first network ( Example: first network 298) (eg, near field communication).
  • the second electronic device 1502 is registered with a server (eg, home network server 202S) (eg, AP or router) for providing a smart home service and is registered with a home network 1502N (eg, home network 202N).
  • the first electronic device 1501 may control the second electronic device 1502 in cooperation with the IoT server 1509 (eg, the IoT server 209 of FIG. 2).
  • the first electronic device 1501 and the intelligent server 1508 eg, the intelligent server 408) (eg, Bixby TM ) and the IoT server 1509 are mutually connected to a second network (eg, the second network 299) ( For example, the communication may be performed through a long distance wireless communication, and the second electronic device 1502 may exchange data or information with the intelligent server 1508 through the first electronic device 1501 or the IoT server 1509. .
  • FIG. 15 is identical to the operation of FIG. 13 except for some operations, and therefore, different operations will be described.
  • the intelligent server 1508 may transmit the first task performance information to the IoT server 1509 via the second network 299 (eg, remote wireless communication).
  • the intelligent server 1508 may transmit the first task performance information to the IoT server 1509 using a communication interface (eg, the communication interface 410) of the intelligent server 1508.
  • the IoT server 1509 may issue a first command that includes at least a portion of the first task performance information received from the intelligent server 1508 (eg, the smart TV 202a). Can be sent to.
  • the intelligent server 1508 eg, the smart TV 202a
  • the IoT server 1509 may determine a domain, which is a target device to perform the first task, from the first operation information included in the first task performance information based at least in part on the first task performance information. And the target device corresponding to the verified domain may be searched for.
  • the IoT server 1509 may correspond to the verified domain among at least one second electronic device (for example, at least one second electronic device 202 (202a to 202d)) registered in the IoT server 1509. To search for the device.
  • the IoT server 1509 searches for the at least one second electronic device 202 (202a ⁇ 202d) and searches for the device corresponding to the verified domain with the “ The smart TV 202a corresponding to “TV” may be detected. For example, when there are a plurality of second electronic devices corresponding to the “TV”, a second electronic device having a high priority may be selected according to a designated priority.
  • the IoT server 1509 generates a first command to cause the detected second electronic device 1502 (for example, the smart TV 202a) to perform a first operation sequence included in the first task execution information.
  • the electronic device may transmit the detected second electronic device 1502 (eg, the smart TV 202a) corresponding to the verified domain.
  • the second electronic device 1502 performs a first task corresponding to the first request based on the first command received from the IoT server 1509. For example, an operation of “turning on” the second electronic device 1502 (eg, the smart TV 202a) may be executed.
  • the second electronic device 1502 eg, the smart TV 202a
  • a first task corresponding to the request may be performed.
  • the first electronic device 1501 may output information related to a result of performing the first task (eg, “Turn on the TV”) through a display (eg, the display 313). Can be.
  • the first electronic device 1501, the intelligent server 1508, the IoT server 1509, or the second electronic device 1502 may further perform at least one subsequent operation, and the at least one subsequent operation This will be described in more detail with reference to FIGS. 17 and 18.
  • the first electronic device 1601 (for example, the first electronic device 201) and the second electronic device 1602 (for example, the second electronic devices 202 (202a to 202d)) are connected to the first network ( Example: first network 298) (eg, near field communication).
  • the second electronic device 1602 is registered with a server (eg, home network server 202S) (eg, AP or router) for providing a smart home service and is home network 1602N (eg, home network 202N).
  • the first electronic device 1601 may be linked to the IoT server 1609 (eg, the IoT server 209 of FIG. 2) to control the second electronic device 1602.
  • the first electronic device 1601 and the intelligent server 1608 eg, the intelligent server 408) (eg, the Bixby TM server) and the IoT server 1609 are mutually connected to a second network (eg, the second network 299).
  • a second network eg, the second network 299
  • the second electronic device 1602 may exchange data or information with the intelligent server 1608 through the first electronic device 1601 or the IoT server 1609. have.
  • FIG. 16 except that the subject of the association determination is the intelligent server 1608, the same description as FIG. 15 will be described based on different operations.
  • Operations 1612 to 1622 are the same as operations 1512 to 1522 of FIG. 15, and thus a detailed description thereof will be omitted.
  • the first electronic device 1601 may transmit its state information to the intelligent server 1608.
  • the first electronic device 1601 may transmit its state information to the intelligent server 1608 through the second network 299 using a second communication interface (eg, a remote wireless communication interface).
  • the intelligent server 1608 may receive state information of the first electronic device 1601 from the IoT server 1609, instead of receiving state information from the first electronic device 1601. .
  • the IoT server 1609 may periodically or by request for state information of the first electronic device 1601. Can be updated.
  • the first electronic device 1601 transmits state information of the first electronic device 1601 to the IoT server 1609, and the intelligent server 1608 sends the IoT server 1609 to the first electronic device.
  • the state information of 1601 may be requested.
  • the first electronic device 1601 may perform operation 1624 periodically or aperiodically. For example, the first electronic device 1601 may transmit its status information to the intelligent server 1608 according to a specified cycle, or, in response to a request of the intelligent server 1608, the first electronic device 1601 may transmit its status information to the intelligent server 1608. ) Can be sent.
  • operation 1624 is illustrated to be performed after operation 1620, but is not limited thereto and may be performed in any operation step.
  • operation 1624 may be omitted when the first electronic device 1601 transmits its own state information when the first input voice data is transmitted to the intelligent server 1808 in operation 1614.
  • the intelligent server 1608 may determine an association between a state of the first electronic device 1601 and an execution operation of a first task to be performed by the first request included in the first input voice data. Can be.
  • the intelligent server 1608 may determine the association based on whether the determined state of the first electronic device 1601 and the performing operation of the first task interfere with each other. For example, the intelligent server 1608 determines the state of the first electronic device 1601 based at least in part on the state information of the first electronic device 1601, and determines the determined state of the first electronic device 1601. And when the performing operation of the first task includes the same property (for example, an auditory element or a visual element), it is determined that the state of the first electronic device 1601 and the performing operation of the first task interfere with each other. Can be.
  • the first electronic device 1701 eg, the first electronic device 201) and the second electronic device 1702 (eg, the second electronic devices 202 (202a-202d)) are connected to the first network (
  • the first network 298 eg, near field communication
  • the intelligent server 1708 eg, the intelligent server 408
  • the second network 299 for example, long distance wireless communication
  • the second electronic device 1702 and the intelligent server 1708 may transmit data or information through the first electronic device 1701.
  • the first electronic device 1701 may output an indication related to adjustment of a state of the first electronic device 1701 or the second electronic device 1702.
  • the first electronic device 1701 may be a state of the first electronic device 1701 or the second electronic device (for example, the smart TV 202a) and a first input obtained by the first electronic device 1701.
  • the state of the first electronic device 1701 or the second electronic device 1702 is determined based at least in part on the result of the association determination between the performing operations of the first task to be performed according to the voice recognition control corresponding to the first request for the voice data. You can output an indication to adjust.
  • the first electronic device 1701 may, from the intelligent server 1708, generate a first electronic device based at least in part on the result of the association determination.
  • An indication related to adjustment of a state of the device 1701 or the second electronic device 1702 may be received and output.
  • the first electronic device 1701 when the subject of the association determination is the first electronic device 1701, the first electronic device 1701 may be based on at least a portion of the association determination result, and then the first electronic device 1701 or the second electronic device.
  • An indication related to the adjustment of the state of the device 1702 eg, the smart TV 202a
  • the state of the device 1702 e.g. the smart TV 202a
  • the indication may be based on a result of the association determination, between the state of the first electronic device 1701 or the second electronic device 1702 (for example, the smart TV 202a), and the performing operation of the first task. If it is determined to be relevant, it may include at least some of the visual information or audio information related to the adjustment of the state of the first electronic device 1701 or the second electronic device 1702 (for example, the smart TV 202a). Can be.
  • the first electronic device 1701 may determine the state of the first electronic device 1701 and the first task to be performed in the second electronic device 1702 (for example, the smart TV 202a). If it is determined that there is a correlation between performing operations of the first electronic device 1701, an indication (eg, a first indication) including at least some of visual information or audio information related to the adjustment of the state of the first electronic device 1701 is received or The first indication may be received from the intelligent server 408.
  • an indication eg, a first indication
  • the first indication may be received from the intelligent server 408.
  • the first electronic device 1701 may determine the state of the first electronic device 1701 and the first task to be performed in the second electronic device 1702 (for example, the smart TV 202a). If it is determined that there is a correlation between performing operations of the electronic device 1702, an indication (eg, at least some of visual or audio information related to the adjustment of the state of the second electronic device 1702 (eg, the smart TV 202a)). A second indication) or the second indication from the intelligent server 408.
  • an indication eg, at least some of visual or audio information related to the adjustment of the state of the second electronic device 1702 (eg, the smart TV 202a)).
  • a second indication or the second indication from the intelligent server 408.
  • the first electronic device 1701 may determine the state of the second electronic device 1702 (for example, the smart TV 202a) and the first task to be performed in the first electronic device 1701. If it is determined that there is a correlation between performing operations of the electronic device 1702, an indication (eg, at least some of visual or audio information related to the adjustment of the state of the second electronic device 1702 (eg, the smart TV 202a)). A third indication) or the third indication from the intelligent server 408.
  • an indication eg, at least some of visual or audio information related to the adjustment of the state of the second electronic device 1702 (eg, the smart TV 202a)
  • a third indication or the third indication from the intelligent server 408.
  • the first electronic device 1701 may determine the state of the second electronic device 1702 (for example, the smart TV 202a) and the first task to be performed in the first electronic device 1701. If it is determined that there is a correlation between performing operations of the first electronic device 1701, an indication (eg, a fourth indication) including at least some of visual information or audio information related to the adjustment of the state of the first electronic device 1701 is received or The fourth indication may be received from the intelligent server 408.
  • an indication eg, a fourth indication
  • the fourth indication may be received from the intelligent server 408.
  • the auditory information may include a notification sound for notifying a state of the first electronic device 1701 or the second electronic device 1702 (for example, the smart TV 202a) or the first electronic device. 1701 or the first output voice data including a subsequent question relating to the adjustment of the state of the second electronic device 1702 (eg, the smart TV 202a).
  • the first output voice data is a subsequent question related to the adjustment of the state of the first electronic device 1701.
  • the message may be “lower music?”, “Higher music?” Or “end music playback?”
  • the first electronic device 1701 may determine whether the second electronic device 1701 is the second.
  • the first output voice data is followed by a subsequent question (eg, "lower TV volume") related to adjustment of the state of the second electronic device 1702 (eg, smart TV 202a). Or “Turn on the TV volume?"
  • the first electronic device 1701 may output the auditory information through a sound output device (eg, the speaker 314).
  • the visual information may include text, text, pictures, photos, or the like related to adjustment of a state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a). It can include emoticons.
  • the visual information may include a user interface (UI) such as a chat application.
  • the visual information includes the subsequent question and the subsequent question included in the first output voice data related to adjustment of a state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a).
  • It may be a user interface (UI) that includes at least one input button (icon) for receiving user input for subsequent questions.
  • the visual information is not limited thereto, and may include all of the various visual representations.
  • the first electronic device 1701 may output the visual information through a display device (for example, the display 313).
  • the first electronic device 1701 may simultaneously output the audio information and the visual information through the sound output device (eg, the speaker 314) and the display device.
  • the first electronic device 1701 may adjust the state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a) output through the indication.
  • a user input for performing a second task related to the user may be received.
  • the first electronic device 1701 receives a user input for a subsequent question relating to adjusting a state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a). Can be received.
  • the first electronic device 1701 may use a key input device (eg, a microphone 311a), a key input device (eg, an input module 311), or a touch screen within the display 313.
  • the user input may be received.
  • the first electronic device 1701 may receive, as the user input, voice data (eg, second input voice data) obtained through a voice input device (eg, a microphone 311a) by user speech, or A signal of a key selected through a key input device may be received as the user input, or a user touch obtained through the touch screen may be received as the user input.
  • voice data eg, second input voice data
  • a voice input device eg, a microphone 311a
  • a signal of a key selected through a key input device may be received as the user input, or a user touch obtained through the touch screen may be received as the user input.
  • the first electronic device 1701 performs a second task related to adjusting a state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a).
  • the request for the second task performance information may be transmitted to the intelligent server 1708.
  • the first electronic device 1701 may answer the first question regarding a subsequent question relating to adjusting the state of the first electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a). If a user input for requesting the execution of the second task is received to adjust the state of the electronic device 1701 or the second electronic device 1702 (eg, the smart TV 202a), the second task execution information may be received.
  • the request can be sent to the intelligent server 1708.
  • the request for the second task performance information may include second input voice data related to the performance of the second task.
  • the second input voice data may be a response to the subsequent question (eg, “Yes”) or the first electronic device 1701 or the second electronic device 1702 (eg, a smart TV 202a). It may include a second request (or command) associated with the adjustment of the state of.
  • the second input voice data is the first electronic device 1701.
  • the second input voice data may include the second electronic device ( 1702) (eg, smart TV 202a) may include a second request (or command) related to adjusting the state of the state (eg, “Take down the TV volume” or “Take up the TV volume”).
  • the intelligent server 1708 may be based at least in part on an analysis result of the request for the second task performance information received from the first electronic device 1701 (eg, a second request of the second input voice data). Second task execution information for performing the second task may be generated.
  • the intelligent server 1708 may analyze the request for the second task performance information.
  • the intelligent server 1708 may analyze the second request included in the second input voice data when the second input voice data is included in the request for the second task performance information.
  • the intelligent server 1708 recognizes and converts the second request of the second input voice data into text through an automatic voice recognition module (eg, the ASR module 421), and converts the text into a natural language understanding module (eg, Based on the converted text through the NLU module 422, the user's intent corresponding to the second request included in the second input voice data (eg, an operation to be performed (eg, performing a second task) Operation)) or a domain (for example, an execution target (for example, a device that performs a second task) of an operation to be performed).
  • the intelligent server 1708 may generate second task performance information for performing the second task corresponding to the second request based at least in part on the detected user's intention or domain.
  • the second task execution information may include second operation information (eg, a second pass rule) for performing a second task corresponding to the second request.
  • the intelligent server 1708 may determine a path rule database through a path planner module (eg, a path planner module 423) based on a result of analysis of the second input voice data and the detected user's intention or domain. (Eg, the pass rule DB 436), the domain may select or generate a second operation sequence corresponding to a parameter or an operation sequence necessary for the domain to perform the user's intention.
  • the second operation information (eg, the second pass rule) may be executed by the target device or app to be executed in response to the second request, an operation to be executed by the target device or the app (eg, the second task or the second). And at least one state associated with the task) and a second sequence of operations including information about parameters required to execute the operation.
  • the intelligent server 1708 may control music of the first electronic device 1701.
  • a playback application as a target device to be executed in response to the second request, and include a “reduce music sound” operation as an operation to be executed in an app of the target device (eg, a second task), and the first electronic device (
  • the music reproducing application of 1701 may generate second task execution information including information on a parameter or an operation order required to reduce the music sound as the second operation sequence.
  • the intelligent server 1708 may include the second electronic device 1702 ( For example, a smart TV 202a (or a function such as output of broadcast content being performed by the second electronic device 1702) as a target device or a target app (function) to be executed in response to the second request.
  • the second electronic device 1702 e.g., smart TV 202a
  • Second operation information including information on a parameter or an operation sequence required to reduce the volume of the second operation sequence may be generated.
  • the second task performance information may further include user interface (UI) information related to the second task or the second operation information.
  • UI user interface
  • the intelligent server 1708 may transmit the second task performance information to the first electronic device 1701 through a second network 299 (for example, long range wireless communication).
  • the intelligent server 1708 may transmit the second task performance information to the first electronic device 1701 using a communication interface (eg, the communication interface 410) of the intelligent server 1708.
  • the first electronic device 1701 may perform the second task based on the second task execution information received from the intelligent server 1708. For example, when the first electronic device 1701 receives an input corresponding to adjustment of a state of the first electronic device 1701 as a user input for a first or fourth indication, the first electronic device 1701 performs the second task.
  • the second task may be performed according to a second operation sequence by identifying an operation or target to perform the second task from the second operation information included in the information.
  • the first electronic device 1701 may receive, from the intelligent server 1708, second task performance information for performing a second task related to adjusting the state of the first electronic device 1701. have.
  • the second task performance information may correspond to the second task (eg, the first electronic device 1701 corresponding to the second request included in the second input voice data acquired by the first electronic device 1701).
  • Second operation information related to the performance of the music reproduction application.
  • the first electronic device 1701 may perform the second task corresponding to the second request based on the second operation information included in the second task execution information.
  • the first electronic device 1701 displays a user interface (UI) related to the execution of the second task based on UI information related to the second operation information included in the second task performance information (eg, a display ( 360).
  • UI user interface
  • the first electronic device 1701 may transmit a request for the second output voice data related to the result of performing the second task to the intelligent server 1708.
  • the intelligent server 1708 may generate second output voice data related to a result of performing the second task. For example, when the intelligent server 1708 receives the request for the second output voice data, the intelligent server 1708 may, based at least in part on the result of performing the second task, through a natural language generation module (eg, the NLG module 425). The second output voice data corresponding to a result of performing the second task related to adjusting the state of the first electronic device 1701 may be generated. For example, the intelligent server 1708 uses the natural language generation module 425 to adjust the state of the first electronic device 1701 when the adjustment of the state of performing the first function (eg, music playback) is performed. The second output voice data corresponding to the adjustment result of the first function (eg, music playback) performing operation may be generated.
  • a natural language generation module eg, the NLG module 425
  • the second output voice data corresponding to a result of performing the second task related to adjusting the state of the first electronic device 1701 may be generated.
  • the intelligent server 1708 uses
  • the second output voice data may be a result of adjustment of a state (eg, a function of performing a first function (eg, music playback)) of the first electronic device 1701 (eg, “lower music sound”). "", “Raised the music” or “I quit the music”.
  • the intelligent server 1708 may transmit second output voice data to the first electronic device 1701.
  • the intelligent server 1708 may transmit second output voice data to the first electronic device 1701 via the second network 299 using the communication interface 410.
  • the first electronic device 1701 may output the received second output voice data through the sound output device 340 (eg, a speaker).
  • the sound output device 340 eg, a speaker
  • the first electronic device 1801 eg, the first electronic device 201) and the second electronic device 1802 (eg, the second electronic devices 202 (202a to 202d)) are connected to the first network (
  • the first network 298 for example, short-range wireless communication
  • the first electronic device 1801 and the intelligent server 1808 for example, the intelligent server 408 may communicate with the second network
  • the second network 299 for example, long distance wireless communication
  • the second electronic device 1802 and the intelligent server 1808 may transmit data or information through the first electronic device 1801.
  • the first electronic device 1801 may generate a second command generated based at least in part on second task performance information received from the intelligent server 1808 (eg, a smart TV). 202a). For example, the first electronic device 1801 receives an input corresponding to adjustment of a state of the second electronic device 1802 (for example, the smart TV 202a) as a user input for a second or third indication.
  • the domain that is the target device to perform the second task may be identified from the second operation information included in the second task execution information, and the target device corresponding to the checked domain may be searched for.
  • the first electronic device 1801 may include at least one second electronic device 1802 (eg, at least one second device) registered in a communication connection app (eg, Samsung Connect TM ) of the first electronic device 1801.
  • a communication connection app eg, Samsung Connect TM
  • One of the two electronic devices 202a-202d may correspond to the domain.
  • the first electronic device 1801 may identify the at least one second electronic device 1802 (for example, the second electronic devices 202 (202a to 202d)).
  • the second electronic device 1802 for example, the smart TV 202a
  • the smart TV 202a for example, the smart TV 202a
  • a second electronic device having a high priority may be selected according to a specified priority.
  • the first electronic device 1801 generates a second command to cause the detected second electronic device 1802 (for example, the smart TV 202a) to perform the second task based on the second operation information.
  • the second command may be transmitted to the detected second electronic device 1802 (for example, the smart TV 202a) corresponding to the verified domain.
  • the first electronic device 1801 may use a communication interface (eg, the communication module 190) (eg, a short range wireless communication interface) of the first electronic device 1801.
  • the second command may be transmitted to the second electronic device 1802 (for example, the smart TV 202a) that is the target device.
  • the first electronic device 1801 receives the second task execution information from the intelligent server 1808, and sends the second command to the second electronic device 1802.
  • the intelligent server 1808 may perform the second task performance information. May be transmitted to the IoT server 209, and the IoT server 209 may generate a second command based at least in part on the second task performance information and transmit the second command to the second electronic device 1802.
  • the second electronic device 1802 may be configured based on the second task performance information included in the second command received from the first electronic device 1801.
  • the second task may be performed.
  • the second command may correspond to a second task (eg, the second electronic device 1802) corresponding to the second request included in the second input voice data acquired by the first electronic device 1801 (eg, the smart TV 202a).
  • Second task performance information related to the performance of the volume reduction)) may be included.
  • the second electronic device 1802 (for example, the smart TV 202a) may perform the second task corresponding to the second request based on the second operation information of the second task execution information included in the second command. Can be performed.
  • the second electronic device 1802 may have a user interface (UI) related to the execution of the second task based on UI information related to the second operation information included in the second task execution information. ) May be further displayed on a display device (not shown) of the second electronic device 1202 (eg, the smart TV 202a).
  • UI user interface
  • the second electronic device 1802 may generate feedback information generated based at least in part on a result of performing the second task related to the adjustment of the state of the second electronic device 1802. 1801). For example, the second electronic device 1802 may receive the feedback information through the first communication network 298 using a communication interface (eg, the communication module 190) (eg, a short-range communication interface). And transmit to 1801.
  • a communication interface eg, the communication module 190
  • a short-range communication interface e.g., a short-range communication interface
  • the second electronic device 1802 directly transmits the feedback information to the first electronic device 1801.
  • the present disclosure is not limited thereto, and the second electronic device 1802 is not limited thereto.
  • the second electronic device 1802 Is registered in the IoT server 209, the second electronic device 1802 transmits the feedback information to the IoT server 209, and then the IoT server 209 transmits the feedback information to the first server.
  • the intelligent server 1808 transmits the feedback information to the first electronic device 1801. Can also be sent.
  • the first electronic device 1801 may transmit a request for the second output voice data related to the result of performing the second task to the intelligent server 1808.
  • the intelligent server 1808 may generate second output voice data related to a result of performing the second task. For example, when the intelligent server 1808 receives the request for the second output voice data, the intelligent server 1808 may, based at least in part on the result of performing the second task, through a natural language generation module (eg, the NLG module 425). The second output voice data corresponding to a result of performing the second task related to adjusting the state of the second electronic device 1802 may be generated. For example, when the adjustment of the state of the second electronic device 1802 is volume control, the intelligent server 1808 uses the natural language generation module 425 to output second output voice data corresponding to the volume adjustment result. Can be generated.
  • a natural language generation module eg, the NLG module 425
  • the second output voice data may include a result of adjusting the state of the second electronic device 1802 (for example, "lower TV volume” or “higher TV volume”).
  • the intelligent server 1808 may transmit second output voice data to the first electronic device 1801.
  • the intelligent server 1808 may transmit the second output voice data to the first electronic device 1801 through the second network 299 using the communication interface 410.
  • the first electronic device 1801 may output the received second output voice data through an audio output device (eg, the speaker 314).
  • an audio output device eg, the speaker 314.
  • FIG. 19 is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • a first electronic device 1901 receives a voice signal by a user utterance 1980a as a user input, thereby receiving an intelligent agent (eg, an intelligent agent 315a).
  • an intelligent app e.g., a voice recognition app.
  • the first electronic device 1901 may transmit a user voice through a specific hardware key 1954a (eg, a button for providing a voice recognition control service) of the key input device (eg, the input module 311).
  • You can run an intelligent app e.g. Bixby TM
  • the display device 1960 for example, the display device 160 or the display 313
  • the chat window 1961 may be displayed as a user interface (UI) of the intelligent app.
  • the chat window of the intelligent app 1961 may be displayed on the display device 1960.
  • the user may touch the voice recognition button 1962 included in the chat window 1961 of the intelligent app to input the voice 1980b while the chat window 1961 of the intelligent app is displayed.
  • a user may input voice 1980b while continuously pressing the hardware key 1954a to input voice 1980b.
  • the first electronic device 1901 may execute an intelligent app for recognizing voices 1980a and 1980b through the voice input device 1952 (eg, a microphone). For example, when the designated voice 1980a (eg, wake up! Is input through the voice input device 1952 (eg, a microphone), the first electronic device 1901 may display an intelligent app on the display device 1960. The chat window 1961 may be displayed.
  • the voice input device 1952 eg, a microphone
  • the first electronic device 1901 may display an intelligent app on the display device 1960.
  • the chat window 1961 may be displayed.
  • the UI of the intelligent app may be a dialog screen (eg, a chat window 1961) such as a chat application, and the welcome screen (eg, “What Bixby greeting” or “I'm all”) may be included in the dialog screen.
  • the welcome screen eg, “What Bixby greeting” or “I'm all”
  • ear's e.g.
  • content corresponding to user speech 1980b e.g,“ Call my ...... ”
  • ASR automatic speech recognition
  • the chat window 1961 of the intelligent app may display at least one command hint 1961b (eg, “Share my location” or “Schedule a meetimg”) to help the user speak.
  • 20A is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20B is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20C is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • 20D is a diagram illustrating an example of a user interface screen of a first electronic device according to various embodiments of the present disclosure.
  • a first electronic device 2001 receives a voice signal by a user utterance 2080a or 2080b as a user input, thereby causing an intelligent agent (eg, intelligent).
  • Agent 315a) executes an intelligent app (e.g., a voice recognition app) that is linked.
  • the first electronic device 2001 receives a user voice through a specific hardware key 2054a (eg, a button for providing a voice recognition control service) of a key input device (eg, the input module 311).
  • You can run an intelligent app e.g. Bixby TM
  • the display device 2060 may display a UI of an intelligent app.
  • the chat window 2061 can be displayed as a user interface.
  • the voice input device 2052 e.g., the input module 311) (e.g., the microphone 311a).
  • the voice may be displayed on the chat window 2061 of the intelligent app.
  • the user may touch the voice recognition button 2062 included in the chat window 2061 of the intelligent app to input the voice 2080a while the chat window 2061 of the intelligent app is displayed.
  • the user may input the first input voice 2080a (eg, “Turn on the TV”) by continuously pressing the hardware key 2054a to input the voice 2080a.
  • the UI of the intelligent app may be a chat window 2061 such as a chat application, and when the first input voice (eg, “Turn on the TV”) is input by the user speech 2080a,
  • the chat window 2061 displays a welcome message (for example, “What Bixby greeting” or “I'm all ear's”) 2061a, and the voice recognition button 2062 is located in the chat window 2061 of the intelligent app.
  • the first input voice eg, “Turn on the TV” by the user's speech 2080a currently inputted may be displayed.
  • at least one command hint 2061b may be displayed in the chat window 2061 of the intelligent app to help the user speak. For example, “Share my location” or “Schedule a meeting” may be displayed as the command hint 2061b in the chat window 2061 of the intelligent app.
  • the first electronic device 2001 displays a text 2061c corresponding to the first input voice (eg, “Turn on the TV”) on the chat window 2061 of the UI of the intelligent app. can do.
  • the first electronic device 2001 completes the execution of the task (eg, the first task) corresponding to the first input voice (eg, “Turn on the TV”)
  • the first electronic device 2001 of the corresponding task eg, the first task
  • the output voice eg, “I turned on the TV” corresponding to the execution result is the sound output device (eg, the audio output device 340) of the first electronic device 2001 (eg, the built-in speaker) or the first electronic.
  • the first electronic device 2001 may display a text 2061d corresponding to the output voice (eg, “I turned on the TV”) on the chat window 2061.
  • the first electronic device 2001 may perform an operation of the first task. If it is determined that additional control according to execution (eg, execution of the second task) is required, an output voice (eg, “Do you want to reduce the sound of music?”) Related to the execution of the second task may be output. Can be.
  • the first electronic device 2001 may display a text 2061e corresponding to the output voice (eg, “Do you want to reduce the sound of music?”) On the chat window 2061.
  • the output voice (eg, “Do you want to reduce the sound of music?”) May include a subsequent question about the performance of the second task.
  • the first electronic device 2001 may receive a second input voice (eg, “Yes”) by the user utterance 2080c as a user input corresponding to the output voice.
  • the first electronic device 2001 may display a text 2061f corresponding to the second input voice (eg, “Yes”) on the chat window 2061.
  • the first electronic device 2001 may display a result of executing the task (eg, the second task).
  • the corresponding output voice eg, “I reduced the sound of music” is the sound output device of the first electronic device 2001 (eg, the audio output device 340) (eg, the built-in speaker) or the first electronic device ( And output through a functional connection device (eg, AI speaker 201b) that is functionally connected to 2001.
  • the first electronic device 2001 may display a text 2061g corresponding to the output voice (eg, “I reduced the sound of music”) on the chat window 2061.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephonic Communication Services (AREA)
  • Selective Calling Equipment (AREA)

Abstract

본 발명의 일 실시예에 따르면, 서버는, 적어도 하나의 통신 인터페이스, 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 제1 전자 장치로부터, 사용자 발화(utterance)에 의해 제2 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고, 상기 제1 전자 장치의 상태를 판단하거나 수신하고, 상기 제1 전자 장치의 상태의 조절과 관련된 제1 응답을 상기 제1 외부 전자 장치에 제공하도록 하는 인스트럭션들을 저장할 수 있다. 그 외 다양한 실시예가 가능하다.

Description

전자 장치 및 전자 장치의 음성 인식 제어 방법
본 발명의 다양한 실시예들은 주변 상황을 인식하여 지능화된 음성 인식 제어를 제공하는 전자 장치 및 전자 장치의 음성 인식 제어 방법에 관한 것이다.
최근 전자 장치를 위한 다양한 종류의 지능화 서비스(intelligence service)가 제공되고 있으며, 이러한 지능화 서비스 중 하나인 음성 인식 서비스는 음성 인식을 통해 전자 장치를 제어하여 사용자에게 다양한 서비스를 제공할 수 있다.
예를 들어, 음성 인식을 이용한 제어 기술은 사용자 발화를 통해 입력된 음성(명령)을 분석하여 사용자의 요청(또는 명령)에 가장 부합하는 서비스를 제공하는 것으로, 사용자가 상기 전자 장치 상에 구비된 물리적 또는 기계적 버튼을 직접 조작하거나, 터치가 가능한 디스플레이 상에 표시된 사용자 인터페이스 또는 마우스나 키보드와 같은 추가적인 입력 장치를 통한 입력에 의한 전자 장치의 제어에 비해 더욱 용이하게 전자 장치를 제어할 수 있어 사용이 점차 증가되고 있다.
이러한 음성 인식 제어 기술은 사전에 어플리케이션이나 서비스 개발자가 음성 제어에 사용될 명령어를 등록하고, 음성 인식된 결과와 그에 따른 액션(action) 또는 동작(operation)을 미리 정의하여 구현될 수 있다.
음성 인식 제어 기술은 사용자 발화에 의해 전자 장치로 입력된 음성에 대응되는 사용자 요청(또는 명령)을 상기 전자 장치 또는 외부 전자 장치를 통해 수행하도록 제어할 수 있다.
사용자의 음성 요청에 의해 상기 해당 외부 전자 장치에서 수행될 동작(예: 제1 태스크 수행 동작)이 상기 전자 장치에서 이미 수행중인 동작(예: 제1 기능 수행 동작)에 영향을 줄 수 있거나, 또는 사용자의 음성 요청에 의해 상기 전자 장치에서 수행될 동작(예: 제1 태스크 수행 동작)이 외부 전자 장치에서 이미 수행중인 동작(예: 제1 기능 수행 동작)에 영향을 줄 수 있는 동작일 경우 사용자는 상기 전자 장치 또는 상기 해당 외부 전자 장치의 동작을 추가로 제어할 필요가 발생될 수 있다.
다양한 실시예에 따르면, 음성 인식을 이용한 전자 장치의 제어 시 전자 장치 주변의 상황(예: 상기 전자 장치에 의해 제어되는 상기 전자 장치 주변의 외부 전자 장치의 상태)을 인지하여 사용자의 음성 요청에 의해 수행된 전자 장치 또는 외부 전자 장치의 동작(예: 제1 태스크 수행 동작)에 대한 추가 제어 동작(예: 전자 장치의 상태 또는 외부 전자 장치의 상태의 조절과 관련된 음성 출력 동작 또는 제2 태스크의 수행 동작)이 필요한 경우 이를 사용자에게 자동으로 제공할 수 있는 전자 장치 및 전자 장치의 음성 인식 제어 방법을 제공할 수 있다.
다양한 실시예에 따른 전자 장치는, 적어도 하나의 통신 인터페이스, 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서, 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 제1 외부 전자 장치로부터, 사용자 발화(utterance)에 의해 제2 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고, 상기 제1 외부 전자 장치의 상태를 판단하거나 수신하고, 상기 제1 외부 전자 장치의 상태의 조절과 관련된 제1 응답을 상기 제1 외부 전자 장치에 제공하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시예에 따르면, 전자 장치에 있어서, 적어도 하나의 통신 인터페이스, 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치를 통해 사용자 발화(utterance)에 의해 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득하고, 상기 획득된 제1 입력 음성 데이터를 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터 상기 전자 장치의 상태의 조절과 관련된 제1 응답을 수신하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시예에 따르면, 전자 장치에 있어서, 적어도 하나의 통신 인터페이스, 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 제1 외부 전자 장치로부터, 사용자 발화에 의해 상기 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고, 제2 외부 전자 장치의 상태를 판단하거나 수신하고, 상기 제2 외부 전자 장치의 상태의 조절과 관련된 인디케이션을 상기 제1 외부 전자 장치에 제공하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시예에 따르면, 음성 인식 제어를 이용하여 사용자의 발화에 의해 입력된 사용자의 요청(또는 명령)에 기반하여 전자 장치 또는 전자 장치에 의해 제어되는 장치를 제어할 수 있다.
다양한 실시예에 따르면, 상기 음성 인식 제어를 통해 전자 장치 또는 외부 전자 장치의 제어 시 주변 상황에 기반하여 상기 사용자 요청에 대한 추가적인 제어 동작과 관련된 음성 또는 정보를 사용자에게 제공할 수 있다.
도 1은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 다양한 실시예에 따른 음성 인식 제어 시스템을 나타낸 도면이다.
도 3a는 본 발명의 다양한 실시 예에 따른 통합 지능화 시스템을 나타낸 도면이다.
도 3b는 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 사용자 단말을 나타낸 블록도이다.
도 4는 다양한 실시예에 따른 음성 인식 제어를 제공하는 지능형 서버의 블록도이다.
도 5는 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 6은 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 7은 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 8은 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 9는 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 10은 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 11은 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 12는 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다.
도 13은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 14는 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 15는 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 16은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 17은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 18은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다.
도 19는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다.
도 20a는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면들이다.
도 20b는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면들이다.
도 20c는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면들이다.
도 20d는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면들이다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)은 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)은, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150) 를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)이 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)은, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 하나 이상의 안테나들을 포함할 수 있고, 이로부터, 제 1 네트워크 198 또는 제 2 네트워크 199와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, or 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치 중 적어도 하나를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나"의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램(140))로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(101))를 포함할 수 있다. 상기 명령이 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
도 2는 다양한 실시예에 따른 음성 인식 제어 시스템을 나타낸 도면이다.
도 2를 참조하면, 다양한 실시예에 따른 음성 인식 제어 시스템(200)은 제1 전자 장치(201), 적어도 하나의 제2 전자 장치(202; 202a~202d), 지능형 서버(208), 또는 IoT 서버(209) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에 따른 음성 인식 제어 시스템(200)은 적어도 하나의 제2 전자 장치(202; 202a~202d)와 같은 통신 기능을 구비한 전자 장치(예: IoT 장치)들을 제어할 수 있는 홈 네트워크(202N)를 형성하기 위한 홈 네트워크 서버(202S)(예: AP(access point) 또는 라우터)를 더 포함할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)(예: 전자 장치(101))와 적어도 하나의 제2 전자 장치(202; 202a~202d)(예: 전자 장치(102))는 제1 네트워크(298)(예: 제1 네트워크(198))(예: 근거리 무선 통신)를 통해 서로 통신할 수 있다. 일 실시예에 따르면, 제1 네트워크(298)는 연결 방식 또는 비연결 방식의 근거리 무선 통신을 포함할 수 있다. 예를 들어, 비연결 방식의 근거리 무선 통신은 NAN(neighbor awareness networking)을 포함할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)와 지능형 서버(208)(예: 서버(108))는 제2 네트워크(299)(예: 제2 네트워크(199))(예: 원거리 무선 통신)를 통해 서로 통신할 수 있다.
제1 전자 장치(201)(예: 사용자 단말)는 제1 전자 장치(201) 내부에 저장된 앱(app)(또는, 어플리케이션 프로그램(application program))(예: 알람 앱, 메시지 앱, 또는 사진(갤러리) 앱)을 통해 사용자에게 필요한 서비스를 제공할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치(201) 내부에 저장된 지능형 앱(예: 음성 인식 앱)(예: 삼성 전자의 BixbyTM)을 통해 다른 앱을 실행하고 동작시킬 수 있다. 제1 전자 장치(201)는 제1 전자 장치(201)의 상기 지능형 앱(예: 음성 인식 앱)을 통해 상기 다른 앱을 실행하고 동작을 실행시키기 위한 사용자 입력을 수신할 수 있다. 상기 사용자 입력은, 예를 들어, 물리적 또는 기계적 버튼, 터치 패드, 음성 입력, 또는 원격 입력을 통해 수신될 수 있다. 일 실시예에 따르면, 제1 전자 장치(201)는 휴대폰, 스마트폰(201a), PDA(personal digital assistant), 노트북 컴퓨터, AI 스피커(201b), 또는 리모콘과 같이 통신 기능을 갖는 각종 단말 장치(또는 전자 장치)가 이에 해당될 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 사용자의 발화(utterance)에 의한 사용자 음성을 사용자 입력으로 수신할 수 있다. 제1 전자 장치(201)는 사용자의 발화에 의한 사용자 요청을 포함한 사용자 음성을 수신하고, 상기 사용자 요청에 기초하여 앱을 동작시키는 명령을 생성할 수 있다. 이에 따라, 제1 전자 장치(201)는 상기 명령을 이용하여 적어도 하나의 앱을 동작시킬 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 지능형 앱(예: 음성 인식 앱)을 통해 사용자로부터 사용자의 발화(utterance)에 의해 입력되는 음성을 사용자 입력으로 수신하고, 상기 음성에 포함된 사용자 요청에 기반하여 생성된 명령에 따라 제1 전자 장치(201) 또는 제1 전자 장치(201)와 통신 가능한 적어도 하나의 제2 전자 장치(202; 202a~202d)를 제어할 수 있는 제어 장치(controller device)로서의 역할을 수행할 수 있다. 다양한 실시예에 따르면, 제1 전자 장치(201)는 지능형 앱(예: 음성 인식 앱)을 통해 사용자로부터 사용자의 발화(utterance)에 의해 입력되는 음성을 사용자 입력으로 수신하고, 상기 음성에 포함된 사용자 요청에 기반하여 생성된 명령에 따라 홈 네트워크 서버(202S)에 의해 제1 전자 장치(201)와 통신 가능한 적어도 하나의 제2 전자 장치(202; 202a~202d)를 제어할 수도 있다. 예컨대, 상기 홈 네트워크 서버(202S)는 상기 음성에 포함된 사용자 요청에 기반하여 생성된 명령에 따라 전등을 온(on)/오프(off) 시키거나, 문을 개폐(open/close)시킬 수 있다.
일 실시예에 따르면, 적어도 하나의 제2 전자 장치(202; 202a~202d)는 제1 전자 장치(201)와 제1 네트워크(298)(예: 근거리 무선 통신)를 통해 통신 가능하며, 예를 들어, 제1 전자 장치(201)와 상기 제1 네트워크(298)를 통해 서로의 상태 정보를 주기적으로 또는 비주기적으로 송수신할 수 있다.
각 제2 전자 장치(202; 202a~202d)는 각 제2 전자 장치(202; 202a~202d) 내부에 저장된 앱을 실행하고 동작을 실행시키기 위한 사용자 입력을 수신할 수 있다. 상기 사용자 입력은, 예를 들어, 물리적 또는 기계적 버튼, 터치 패드, 음성 입력, 또는 원격 입력을 통해 수신될 수 있다. 일 실시예에 따르면, 제2 전자 장치(202; 202a~202d)는 스마트 TV(202a), 냉장고(202b), 에어컨(202c) 또는 세탁기(202d)와 같은 통신 기능을 갖는 각종 가전 제품이 이에 해당될 수 있다.
일 실시예에 따르면, 제2 전자 장치(202; 202a~202d)는 제1 전자 장치(201)의 제어에 의해 제어될 수 있는 피제어 장치(controlled device)로서의 역할을 수행할 수 있다. 예를 들어, 제2 전자 장치(202; 202a~202d)는 제1 전자 장치(201)의 지능형 앱(예: 음성 인식 앱)을 통해 입력되는 사용자 발화에 의해 생성된 상기 명령을 수신하고, 상기 수신된 명령에 기반하여 제2 전자 장치(202; 202a~202d) 내부에 저장된 적어도 하나의 앱을 실행하고 동작시킬 수 있다. 일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 지능형 앱(예: 음성 인식 앱)을 통해 입력된 사용자 발화에 의해 제2 전자 장치(202; 202a~202d)를 제어하기 위해, 제1 전자 장치(201)의 통신 연결 앱(예: Samsung ConnectTM)을 통해 제어하고자 하는 피제어 장치, 이를 테면, 제2 전자 장치(202; 202a~202d)를 등록시킬 수 있다. 제1 전자 장치(201)는 지능형 앱(예: 음성 인식 앱)을 통해 상기 사용자 발화에 의한 음성을 사용자 입력으로서 수신하면, 상기 음성에 포함된 사용자 요청의 대상에 기반하여 상기 제1 전자 장치(201)에 등록된 적어도 하나의 제2 전자 장치(202; 202a~202d)를 검색할 수 있다.
지능형 서버(208)는 음성 인식 제어를 제공할 수 있는 지능형 서버로서, 예를 들어, 음성 인식 서버(예: 삼성 전자의 BixbyTM 서버)일 수 있다. 지능형 서버(208)는, 예를 들어, 제2 네트워크(299)(예: 제2 네트워크(199))(예: 원거리 무선 통신)를 통해 제1 전자 장치(201)와 통신할 수 있다. 예를 들어, 지능형 서버(208)는 제1 전자 장치(201)로부터 사용자 음성 입력(voice input)을 수신하여 텍스트 데이터(text data)로 변경할 수 있다. 상기 지능형 서버(208)에서 수행되는 기능의 전체 또는 적어도 일부 기능은 상기 제1 전자 장치(201)(예: 도 1의 전자 장치(101)) 또는 상기 제2 전자 장치(202)(예: 도 1의 전자 장치(101))에서 수행될 수도 있다. 상기 지능형 서버(208)의 상세한 예는 도 3a 및 도 3b에서 후술하기로 한다.
일 실시예에 따르면, 제1 전자 장치(201)는 상기 동작을 실행하고, 동작을 실행한 제1 전자 장치(201)의 상태에 대응되는 화면을 디스플레이(예: 도 1의 표시 장치(160))에 표시할 수 있다. 다른 실시 예에 따르면, 제1 전자 장치(201)는 상기 동작을 실행하고, 동작을 수행한 결과를 디스플레이에 표시하지 않을 수도 있다. 제1 전자 장치(201)는, 예를 들어, 복수의 동작을 실행하고, 상기 복수의 동작의 일부 결과만을 디스플레이에 표시할 수도 있다. 예를 들어, 제1 전자 장치(201)는 마지막 순서의 동작을 실행한 결과만을 디스플레이에 표시할 수도 있다. 다른 예로서, 제1 전자 장치(201)는 사용자의 입력을 수신하여 상기 동작을 실행한 결과를 디스플레이에 표시할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)와 제2 전자 장치(202; 202a~202d)는 제2 네트워크(299)(예: 원거리 무선 통신)에 연결된 IoT 서버(209)를 통해 통신할 수 있다. IoT 서버(209)는 제2 네트워크(299)를 통해 상기 제1 전자 장치(201)는 물론 지능형 서버(208)와도 통신할 수 있다. 제1 전자 장치(201)와 홈 네트워크 서버(202S)는 제1 네트워크(298)(예: 근거리 무선 통신)를 통해서도 통신 가능할 수 있다.
일 실시예에 따르면, 상기 IoT 서버(209)(예: 클라우드)와 상기 적어도 하나의 제2 전자 장치(202; 202a~202d)는 상기 스마트 홈 서비스를 제공하기 위한 홈 네트워크(202N)를 통해 연결될 수 있다. 예를 들어, 상기 적어도 하나의 제2 전자 장치(202; 202a~202d)는 IoT 서버(209)와의 등록 요청 및 등록 요청 승인 과정을 수행하여 상기 IoT 서버(209)에 등록되어 관리될 수 있다. 상기 IoT 서버(209)에서 수행되는 기능의 전체 또는 적어도 일부 기능은 상기 제1 전자 장치(201)(예: 도 1의 전자 장치(101)) 또는 상기 제2 전자 장치(202)(예: 도 1의 전자 장치(101, 102))에서 수행될 수도 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 적어도 하나의 제2 전자 장치(202; 202a~202d)가 IoT 서버(209)(예: 클라우드)를 통해 제어되는 경우, 상기 제1 네트워크(298) 또는 상기 제2 네트워크(299)를 통해 IoT 서버(209)(예: 클라우드)와 연동될 수 있으며, 상기 사용자 발화에 의한 사용자 음성에 포함된 사용자 요청을 수행하기 위한 대상(예: 대상 장치 또는 어플리케이션)에 기반하여 상기 연동된 IoT 서버(209)(예: 클라우드)에 등록된 적어도 하나의 제2 전자 장치(202; 202a~202d)를 검색할 수 있다. 일 실시예에 따르면, 제2 전자 장치(202; 202a~202d)는 홈 네트워크 서버(202S)를 통해 IoT서버(209)로부터 제어 명령을 수신할 수 있다.
도 2에서, 지능형 서버(208)(예: 음성 인식 서버)와 IoT 서버(209)(예: 클라우드)는 별도로 구성된 것으로 도시되었으나, 이에 한정되는 것은 아니며 하나로 통합되어 구성되거나 별도로 구성된 복수의 서버들로 더 분배되어 구성될 수도 있다.
도 3a는 본 발명의 다양한 실시 예에 따른 통합 지능화 시스템을 나타낸 도면이다.
도 3a를 참조하면, 통합 지능화 시스템(300)은 사용자 단말(310), 지능형 서버(320), 개인화 정보 서버(330) 또는 제안 서버(340)를 포함할 수 있다.
사용자 단말(310)(예: 도 1의 전자 장치(101, 102, 104) 또는 도 2의 전자 장치(201, 202))은 사용자 단말(310) 내부에 저장된 앱(app)(또는, 어플리케이션 프로그램(application program))(예: 알람 앱, 메시지 앱, 또는 사진(갤러리) 앱 )을 통해 사용자에게 필요한 서비스를 제공할 수 있다. 예를 들어, 사용자 단말(310)은 사용자 단말(310) 내부에 저장된 지능형 앱(또는, 음성 인식 앱)을 통해 다른 앱을 실행하고 동작시킬 수 있다. 사용자 단말(310)의 상기 지능형 앱을 통해 상기 다른 앱의 실행하고 동작을 실행시키기 위한 사용자 입력을 수신할 수 있다. 상기 사용자 입력은, 예를 들어, 물리적 버튼, 터치 패드, 음성 입력, 원격 입력을 통해 수신될 수 있다. 일 실시 예에 따르면, 사용자 단말(310)은 휴대폰, 스마트폰, PDA(personal digital assistant) 또는 노트북 컴퓨터와 같이 인터넷에 연결 가능한 각종 단말 장치(또는, 전자 장치)가 이에 해당될 수 있다.
일 실시 예에 따르면, 사용자 단말(310)은 사용자의 발화를 사용자 입력으로 수신할 수 있다. 사용자 단말(310)은 사용자의 발화를 수신하고, 상기 사용자의 발화에 기초하여 앱을 동작시키는 명령을 생성할 수 있다. 이에 따라, 사용자 단말(310)은 상기 명령을 이용하여 상기 앱을 동작시킬 수 있다.
지능형 서버(320)는 통신망을 통해 사용자 단말(310)로부터 사용자 음성 입력(voice input)을 수신하여 텍스트 데이터(text data)로 변경할 수 있다. 다른 실시 예에서는, 지능형 서버(320)는 상기 텍스트 데이터에 기초하여 패스 룰(path rule)을 생성(또는, 선택)할 수 있다. 상기 패스 룰은 앱의 기능을 수행하기 위한 동작(action)(또는, 오퍼레이션(operation))에 대한 정보 또는 상기 동작을 실행하기 위해 필요한 파라미터에 대한 정보를 포함할 수 있다. 또한, 상기 패스 룰은 상기 앱의 상기 동작의 순서를 포함할 수 있다. 사용자 단말(310)은 상기 패스 룰을 수신하고, 상기 패스 룰에 따라 앱을 선택하고, 상기 선택된 앱에서 상기 패스 룰에 포함된 동작을 실행시킬 수 있다.
본 문서의 "패스 룰(path rule)" 이라는 용어는 일반적으로, 전자 장치가 사용자에 의해 요청된 태스크를 수행하기 위한 상태들의 시퀀스를 의미할 수 있지만, 이에 제한되지 않는다. 다시 말해, 패스 룰은 상태들의 시퀀스에 대한 정보를 포함할 수 있다. 상기 태스크는, 예를 들어, 지능형 앱이 제공할 수 있는 어떠한 동작(action)일 수 있다. 상기 태스크는 일정을 생성하거나, 원하는 상대방에게 사진을 전송하거나, 날씨 정보를 제공하는 것을 포함할 수 있다. 사용자 단말(310)은 적어도 하나 이상의 상태(예: 사용자 단말(310)의 동작 상태)를 순차적으로 가짐으로써, 상기 태스크를 수행할 수 있다.
일 실시 예에 따르면, 패스 룰은 인공 지능(artificial intelligent)(AI) 시스템에 의해 제공되거나, 생성될 수 있다. 인공지능 시스템은 룰 베이스 시스템(rule-based system) 일 수도 있고, 신경망 베이스 시스템(neual network-based system)(예: 피드포워드 신경망(feedforward neural network(FNN)), 순환 신경망(recurrent neural network(RNN))) 일 수도 있다. 또는 전술한 것의 조합 또는 이와 다른 인공지능 시스템일 수도 있다. 일 실시 예에 따르면, 패스 룰은 미리 정의된 패스 룰들의 집합에서 선택될 수 있거나, 사용자 요청에 응답하여 실시간으로 생성될 수 있다. 예를 들어, 인공지능 시스템은 미리 정의된 복수의 패스 룰 중 적어도 패스 룰을 선택하거나, 동적(또는, 실시간)으로 패스 룰을 생성할 수 있다. 또한, 사용자 단말(310)은 패스 룰을 제공하기 위해 하이브리드 시스템을 사용할 수 있다.
일 실시 예에 따르면, 사용자 단말(310)은 상기 동작을 실행하고, 동작을 실행한 사용자 단말(310)의 상태에 대응되는 화면을 디스플레이에 표시할 수 있다. 다른 실시 예에 따르면, 사용자 단말(310)은 상기 동작을 실행하고, 동작을 수행한 결과를 디스플레이에 표시하지 않을 수 있다. 사용자 단말(310)은, 예를 들어, 복수의 동작을 실행하고, 상기 복수의 동작의 일부 결과만을 디스플레이에 표시할 수 있다. 예를 들어, 사용자 단말(310)은 마지막 순서의 동작을 실행한 결과만을 디스플레이에 표시할 수 있다. 또 다른 예를 들어, 사용자 단말(310)은 사용자의 입력을 수신하여 상기 동작을 실행한 결과를 디스플레이에 표시할 수 있다.
개인화 정보 서버(330)는 사용자 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 개인화 정보 서버(330)는 사용자 단말(310)로부터 사용자 정보(예: 컨텍스트 정보, 또는 앱 실행)를 수신하여 상기 데이터베이스에 저장할 수 있다. 지능형 서버(320)는 통신망을 통해 개인화 정보 서버(330)로부터 상기 사용자 정보를 수신하여 사용자 입력에 대한 패스 룰을 생성하는 경우에 이용할 수 있다. 일 실시 예에 따르면, 사용자 단말(310)은 통신망을 통해 개인화 정보 서버(330)로부터 사용자 정보를 수신하여 데이터베이스를 관리하기 위한 정보로 이용할 수 있다.
제안 서버(340)는 단말 내에 기능 혹은 어플리케이션의 소개 또는 제공될 기능에 대한 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 제안 서버(340)는 개인화 정보 서버(330)로부터 사용자 단말기(310)의 사용자 정보를 수신하여 사용자가 사용 할 수 있는 기능에 대한 데이터베이스를 포함할 수 있다. 사용자 단말(310)은 통신망을 통해 제안 서버(340)로부터 상기 제공될 기능에 대한 정보를 수신하여 사용자에게 정보를 제공할 수 있다.
도 3b는 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 사용자 단말을 나타낸 블록도(300)이다.
도 3b를 참조하면, 사용자 단말(310)(예: 도 2의 제1 전자 장치(201))은 입력 모듈(311), 디스플레이(313), 스피커(314), 메모리(312) 또는 프로세서(315)를 포함할 수 있다. 사용자 단말(310)은 하우징을 더 포함할 수 있고, 상기 사용자 단말(310)의 구성들은 상기 하우징의 내부에 안착되거나 하우징 상에(on the housing) 위치할 수 있다.
일 실시 예에 따른, 입력 모듈(311)은 사용자로부터 사용자 입력을 수신할 수 있다. 예를 들어, 입력 모듈(311)은 연결된 외부 장치(예: 키보드, 헤드셋)로부터 사용자 입력을 수신할 수 있다. 다른 예를 들어, 입력 모듈(311)은 디스플레이(313)와 결합된 터치 스크린(예: 터치 스크린 디스플레이)을 포함할 수 있다. 또 다른 예를 들어, 입력 모듈(311)은 사용자 단말(310)(또는, 사용자 단말(310)의 하우징)에 위치한 하드웨어 키(또는, 물리적 키)를 포함할 수 있다.
일 실시 예에 따르면, 입력 모듈(311)은 사용자의 발화를 음성 신호로 수신할 수 있는 마이크(311a)를 포함할 수 있다. 예를 들어, 입력 모듈(311)은 발화 입력 시스템(speech input system)을 포함하고, 상기 발화 입력 시스템을 통해 사용자의 발화를 음성 신호로 수신할 수 있다.
일 실시 예에 따른, 디스플레이(313)는 이미지나 비디오, 및/또는 어플리케이션의 실행 화면을 표시할 수 있다. 예를 들어, 디스플레이(313)는 앱의 그래픽 사용자 인터페이스(graphic user interface)(GUI)를 표시할 수 있다.
일 실시 예에 따르면, 스피커(314)는 음성 신호를 출력할 수 있다. 예를 들어, 스피커(314)는 사용자 단말(310) 내부에서 생성된 음성 신호를 외부로 출력할 수 있다.
일 실시 예에 따르면, 메모리(312)는 복수의 앱(또는, 어플리케이션 프로그램(application program))(318, 319)을 저장할 수 있다. 메모리(312)에 저장된 복수의 앱(318, 319)은 사용자 입력에 따라 선택되어 실행되고 동작할 수 있다.
일 실시 예에 따르면, 메모리(312)는 사용자 입력을 인식하는데 필요한 정보를 저장할 수 있는 데이터베이스를 포함할 수 있다. 예를 들어, 메모리(312)는 로그(log) 정보를 저장할 수 있는 로그 데이터베이스를 포함할 수 있다. 다른 예를 들어, 메모리(312)는 사용자 정보를 저장할 수 있는 페르소나 데이터베이스를 포함할 수 있다.
일 실시 예에 따르면, 메모리(312)는 복수의 앱(318, 319)을 저장하고, 복수의 앱(318, 319)은 로드되어 동작할 수 있다. 예를 들어, 메모리(312)에 저장된 복수의 앱(318, 319)은 프로세서(315)의 실행 매니저 모듈(317)에 의해 로드되어 동작할 수 있다. 복수의 앱(318, 319)은 기능을 수행하는 실행 서비스 모듈(318a, 319a)을 포함할 수 있다. 일 실시 예에서, 복수의 앱(318, 319)은 기능을 수행하기 위해서 실행 서비스 모듈(318a, 319a)을 통해서 복수의 동작(예: 상태들의 시퀀스)(318b, 319b)을 실행 수 있다. 즉, 실행 서비스 모듈(318a, 319a)은 실행 매니저 모듈(317)에 의해 활성화되고, 복수의 동작(318b, 319b)을 실행할 수 있다.
일 실시 예에 따르면, 앱(318, 319)의 동작(318b, 319b)이 실행되었을 때, 동작(318b, 319b)의 실행에 따른 실행 상태 화면은 디스플레이(313)에 표시될 수 있다. 상기 실행 상태 화면은, 예를 들어, 동작(318b, 319b)이 완료된 상태의 화면일 수 있다. 상기 실행 상태 화면은, 다른 예를 들어, 동작(318b, 319b)의 실행이 정지된 상태(partial landing)(예: 동작(318b, 319b)에 필요한 파라미터가 입력되지 않은 경우)의 화면일 수 있다.
일 실시 예에 따른, 실행 서비스 모듈(318a, 319a)은 패스 룰에 따라 동작(318b, 319b)을 실행할 수 있다. 예를 들어, 실행 서비스 모듈(318a, 319a)은 실행 매니저 모듈(317)에 의해 활성화되고, 실행 매니저 모듈(317)로부터 상기 패스 룰에 따라 실행 요청을 수신하고, 상기 실행 요청에 따라 동작(318b, 319b)함으로써, 앱(318, 319)의 기능을 실행할 수 있다. 실행 서비스 모듈(318a, 319a)은 상기 동작(318b, 319b)의 수행이 완료되면 완료 정보를 실행 매니저 모듈(317)로 송신할 수 있다.
일 실시 예에 따르면, 앱(318, 319)에서 복수의 동작(318b, 319b)이 실행되는 경우, 복수의 동작(318b, 319b)은 순차적으로 실행될 수 있다. 실행 서비스 모듈(318a, 319a)은 하나의 동작(예: 제1 앱(318)의 동작 1, 제2 앱(319)의 동작 1)의 실행이 완료되면 다음 동작(예: 제1 앱(318)의 동작 2, 제2 앱(319)의 동작 2)을 오픈하고 완료 정보를 실행 매니저 모듈(317)로 송신할 수 있다. 여기서 임의의 동작을 오픈한다는 것은, 임의의 동작을 실행 가능한 상태로 천이시키거나, 임의의 동작의 실행을 준비하는 것으로 이해될 수 있다. 다시 말해서, 임의의 동작이 오픈되지 않으면, 해당 동작은 실행될 수 없다. 실행 매니저 모듈(317)은 상기 완료 정보가 수신되면 다음 동작(예: 제1 앱(318)의 동작 2, 제2 앱(319)의 동작 2)에 대한 실행 요청을 실행 서비스 모듈(318a, 319a)로 송신할 수 있다. 일 실시 예에 따르면, 복수의 앱(318, 319)이 실행되는 경우, 복수의 앱(318, 319)은 순차적으로 실행될 수 있다. 예를 들어, 제1 앱(318)의 마지막 동작(예: 제1 앱(318)의 동작 3)의 실행이 완료되어 완료 정보를 수신하면, 실행 매니저 모듈(317)은 제2 앱(319)의 첫번째 동작(예: 제2 앱(319)의 동작 1)의 실행 요청을 실행 서비스(319a)로 송신할 수 있다.
일 실시 예에 따르면, 앱(318, 319)에서 복수의 동작(318b, 319b)이 실행된 경우, 상기 실행된 복수의 동작(318b, 319b) 각각의 실행에 따른 결과 화면은 디스플레이(313)에 표시될 수 있다. 일 실시 예에 따르면, 상기 실행된 복수의 동작(318b, 319b)의 실행에 따른 복수의 결과 화면 중 일부만 디스플레이(313)에 표시될 수 있다.
일 실시 예에 따르면, 메모리(312)는 지능형 에이전트(315)와 연동된 지능형 앱(예: 음성 인식 앱)을 저장할 수 있다. 지능형 에이전트(315)와 연동된 앱은 사용자의 발화를 음성 신호로 수신하여 처리할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315)와 연동된 앱은 입력 모듈(311)을 통해 입력되는 특정 입력(예: 하드웨어 키를 통한 입력, 터치 스크린을 통한 입력, 특정 음성 입력)에 의해 동작될 수 있다.
일 실시 예에 따르면, 프로세서(315)는 사용자 단말(310)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(315)는 입력 모듈(311)을 제어하여 사용자 입력을 수신할 수 있다. 프로세서(315)는 디스플레이(313)를 제어하여 이미지를 표시할 수 있다. 프로세서(315)는 스피커(314)를 제어하여 음성 신호를 출력할 수 있다. 프로세서(315)는 메모리(312)를 제어하여 필요한 정보를 불러오거나 저장할 수 있다.
일 실시 예에 따르면 프로세서(315)는 지능형 에이전트(315a), 실행 매니저 모듈(317) 또는 지능형 서비스 모듈(316)을 포함할 수 있다. 일 실시 예에서, 프로세서(315)는 메모리(312)에 저장된 명령어들을 실행하여 지능형 에이전트(315a), 실행 매니저 모듈(317) 또는 지능형 서비스 모듈(316)을 구동시킬 수 있다. 본 발명의 다양한 실시 예에서 언급되는 여러 모듈들은 하드웨어로 구현될 수도 있고, 소프트웨어로 구현될 수도 있다. 본 발명의 다양한 실시 예에서 지능형 에이전트(315a), 실행 매니저 모듈(317) 또는 지능형 서비스 모듈(316)에 의해 수행되는 동작은 프로세서(315)에 의해 수행되는 동작으로 이해될 수 있다.
일 실시 예에 따른, 지능형 에이전트(315a)는 사용자 입력으로 수신된 음성 신호에 기초하여 앱을 동작시키는 명령을 생성할 수 있다. 일 실시 예에 따른, 실행 매니저 모듈(317)은 지능형 에이전트(315a)로부터 상기 생성된 명령을 수신하여 메모리(312)에 저장된 앱(318, 319)을 선택하여 실행시키고 동작시킬 수 있다. 일 실시 예에 따르면, 지능형 서비스 모듈(316)은 사용자의 정보를 관리하여 사용자 입력을 처리하는데 이용할 수 있다.
지능형 에이전트(315a)는 입력 모듈(311)을 통해 수신된 사용자 입력을 지능형 서버(320)로 송신하여 처리할 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)는 상기 사용자 입력을 지능형 서버(320)로 송신하기 전에, 상기 사용자 입력을 전처리할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)는 상기 사용자 입력을 전처리하기 위하여, 적응 반향 제거(adaptive echo canceller)(AEC) 모듈, 노이즈 억제(noise suppression)(NS) 모듈, 종점 검출(end-point detection)(EPD) 모듈 또는 자동 이득 제어(automatic gain control)(AGC) 모듈을 포함할 수 있다. 상기 적응 반향 제거부는 상기 사용자 입력에 포함된 에코(echo)를 제거할 수 있다. 상기 노이즈 억제 모듈은 상기 사용자 입력에 포함된 배경 잡음을 억제할 수 있다. 상기 종점 검출 모듈은 상기 사용자 입력에 포함된 사용자 음성의 종점을 검출하여 사용자의 음성이 존재하는 부분을 찾을 수 있다. 상기 자동 이득 제어 모듈은 상기 사용자 입력을 인식하여 처리하기 적합하도록 상기 사용자 입력의 음량을 조절할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)는 성능을 위하여 상기 전처리 구성을 전부 포함할 수 있지만, 다른 실시 예에서 지능형 에이전트(315a)는 저전력으로 동작하기 위해 상기 전처리 구성 중 일부를 포함할 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)는 사용자의 호출을 인식하는 웨이크 업(wake up) 인식 모듈을 포함할 수 있다. 상기 웨이크 업 인식 모듈은 음성 인식 모듈을 통해 사용자의 웨이크 업 명령을 인식할 수 있고, 상기 웨이크 업 명령을 수신한 경우 사용자 입력을 수신하기 위해 지능형 에이전트(315a)를 활성화시킬 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)의 웨이크 업 인식 모듈은 저전력 프로세서(예: 오디오 코덱에 포함된 프로세서)에 구현될 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)는 하드웨어 키를 통한 사용자 입력에 따라 활성화될 수 있다. 지능형 에이전트(315a)가 활성화 되는 경우, 지능형 에이전트(315a)와 연동된 지능형 앱(예: 음성 인식 앱)이 실행될 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)는 사용자 입력을 실행하기 위한 음성 인식 모듈을 포함할 수 있다. 상기 음성 인식 모듈은 앱에서 동작을 실행하도록 하기 위한 사용자 입력을 인식할 수 있다. 예를 들어, 상기 음성 인식 모듈은 앱(318, 319)에서 상기 웨이크 업 명령과 같은 동작을 실행하는 제한된 사용자(음성) 입력(예: 카메라 앱이 실행 중일 때 촬영 동작을 실행시키는 “찰칵”과 같은 발화)을 인식할 수 있다. 상기 지능형 서버(320)를 보조하여 사용자 입력을 인식하는 음성 인식 모듈은, 예를 들어, 사용자 단말(310)내에서 처리할 수 있는 사용자 명령을 인식하여 빠르게 처리할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)의 사용자 입력을 실행하기 위한 음성 인식 모듈은 앱 프로세서에서 구현될 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)의 음성 인식 모듈(웨이크 업 모듈의 음성 인식 모듈을 포함)은 음성을 인식하기 위한 알고리즘을 이용하여 사용자 입력을 인식할 수 있다. 상기 음성을 인식하기 위해 사용되는 알고리즘은, 예를 들어, HMM(hidden markov model) 알고리즘, ANN(artificial neural network) 알고리즘 또는 DTW(dynamic time warping) 알고리즘 중 적어도 하나일 수 있다.
일 실시 예에 따르면, 지능형 에이전트(351a)는 사용자의 음성 입력을 텍스트 데이터로 변환할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)는 사용자의 음성을 지능형 서버(320)로 전달하여, 변환된 텍스트 데이터를 수신할 수 있다. 이에 따라, 지능형 에이전트(315a)는 상기 텍스트를 데이터를 디스플레이(313)에 표시할 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)는 지능형 서버(320)로부터 송신한 패스 룰을 수신할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(315a)는 상기 패스 룰을 실행 매니저 모듈(317)로 송신할 수 있다.
일 실시 예에 따르면, 지능형 에이전트(315a)는 지능형 서버(320)로부터 수신된 패스 룰에 따른 실행 결과 로그(log)를 지능형 서비스(intelligence service) 모듈(316)로 송신하고, 상기 송신된 실행 결과 로그는 페르소나 모듈(persona manager)(316b)의 사용자의 선호(preference) 정보에 누적되어 관리될 수 있다.
일 실시 예에 따른, 실행 매니저 모듈(317)은 지능형 에이전트(315a)로부터 패스 룰을 수신하여 앱(318, 319)을 실행시키고, 앱(318, 319)이 상기 패스 룰에 포함된 동작(318b, 319b)을 실행하도록 할 수 있다. 예를 들어, 실행 매니저 모듈(317)은 앱(318, 319)으로 동작(318b,319b)을 실행하기 위한 명령 정보(예: 패스 룰 정보)를 송신할 수 있고, 상기 앱(318, 319)로부터 동작(318b, 319b)의 완료 정보를 수신할 수 있다.
일 실시 예에 따르면, 실행 매니저 모듈(317)은 지능형 에이전트(315a)와 앱(318, 319)의 사이에서 앱(318, 319)의 동작(318b, 319b)을 실행하기 위한 명령 정보(예: 패스 룰 정보)를 송수신할 수 있다. 실행 매니저 모듈(317)은 상기 패스 룰에 따라 실행할 앱(318, 319)을 바인딩(binding)하고, 상기 패스 룰에 포함된 동작(318b, 319b)의 명령 정보(예: 패스 룰 정보)를 앱(318, 319)으로 송신할 수 있다. 예를 들어, 실행 매니저 모듈(317)은 상기 패스 룰에 포함된 동작(318b, 319b)을 순차적으로 앱(318, 319)으로 송신하여, 앱(318, 319)의 동작(318b, 319b)을 상기 패스 룰에 따라 순차적으로 실행시킬 수 있다.
일 실시 예에 따르면, 실행 매니저 모듈(317)은 앱(318, 319)의 동작(318b, 319b)의 실행 상태를 관리할 수 있다. 예를 들어, 실행 매니저 모듈(317)은 앱(318, 319)으로부터 상기 동작(318b, 319b)의 실행 상태에 대한 정보를 수신할 수 있다. 상기 동작(318b, 319b)의 실행 상태가, 예를 들어, 정지된 상태(partial landing)인 경우(예: 동작(318b, 319b)에 필요한 파라미터가 입력되지 않은 경우), 실행 매니저 모듈(317)은 상기 정지된 상태에 대한 정보를 지능형 에이전트(315a)로 송신할 수 있다. 지능형 에이전트(315a)는 상기 수신된 정보를 이용하여, 사용자에게 필요한 정보(예: 파라미터 정보)의 입력을 요청할 수 있다. 상기 동작(318b, 319b)의 실행 상태가, 다른 예를 들어, 동작 상태인 경우에 사용자로부터 발화를 수신할 수 있고, 실행 매니저 모듈(317)은 상기 실행되고 있는 앱(318, 319) 및 앱(318, 319)의 실행 상태에 대한 정보를 지능형 에이전트(315a)로 송신할 수 있다. 지능형 에이전트(315a)는 지능형 서버(320)를 통해 상기 사용자의 발화의 파라미터 정보를 수신할 수 있고, 상기 수신된 파라미터 정보를 실행 매니저 모듈(317)로 송신할 수 있다. 실행 매니저 모듈(317)은 상기 수신한 파라미터 정보를 이용하여 동작(318b, 319b)의 파라미터를 새로운 파라미터로 변경할 수 있다.
일 실시 예에 따르면, 실행 매니저 모듈(317)은 패스 룰에 포함된 파라미터 정보를 앱(318, 319)으로 전달할 수 있다. 상기 패스 룰에 따라 복수의 앱(318, 319)이 순차적으로 실행되는 경우, 실행 매니저 모듈(317)은 하나의 앱에서 다른 앱으로 패스 룰에 포함된 파라미터 정보를 전달할 수 있다.
일 실시 예에 따르면, 실행 매니저 모듈(317)은 복수의 패스 룰을 수신할 수 있다. 실행 매니저 모듈(317)은 사용자의 발화에 기초하여 복수의 패스 룰이 선택될 수 있다. 예를 들어, 실행 매니저 모듈(317)은 사용자의 발화가 일부 동작(318a)을 실행할 일부 앱(318a)을 특정하였지만, 나머지 동작(319b)을 실행할 다른 앱(319)을 특정하지 않은 경우, 일부 동작(318a)을 실행할 동일한 앱(318)(예: 갤러리 앱)이 실행되고 나머지 동작(319b)을 실행할 수 있는 서로 다른 앱(319)(예: 메시지 앱, 텔레그램 앱)이 각각 실행되는 서로 다른 복수의 패스 룰을 수신할 수 있다. 실행 매니저 모듈(317)은, 예를 들어, 상기 복수의 패스 룰의 동일한 동작(318b, 319b)(예: 연속된 동일한 동작(318b, 319b))을 실행할 수 있다. 실행 매니저 모듈(317)은 상기 동일한 동작까지 실행한 경우, 상기 복수의 패스 룰에 각각 포함된 서로 다른 앱(318, 319)을 선택할 수 있는 상태 화면을 디스플레이(320)에 표시할 수 있다.
일 실시 예에 따르면, 지능형 서비스 모듈(316)은 컨텍스트 모듈(316a), 페르소나 모듈(316b) 또는 제안 모듈(316c)을 포함할 수 있다.
컨텍스트 모듈(316a)은 앱(318, 319)으로부터 앱(318, 319)의 현재 상태를 수집할 수 있다. 예를 들어, 컨텍스트 모듈(316a)은 앱(318, 319)의 현재 상태를 나타내는 컨텍스트 정보를 수신하여 앱(318, 319)의 현재 상태를 수집할 수 있다.
페르소나 모듈(316b)은 사용자 단말(310)을 사용하는 사용자의 개인 정보를 관리할 수 있다. 예를 들어, 페르소나 모듈(316b)은 사용자 단말(310)의 사용 정보 및 수행 결과를 수집하여 사용자의 개인 정보를 관리할 수 있다.
제안 모듈(316c)은 사용자의 의도를 예측하여 사용자에게 명령을 추천해 줄 수 있다. 예를 들어, 제안 모듈(316c)은 사용자의 현재 상태(예: 시간, 장소, 상황, 앱)를 고려하여 사용자에게 명령을 추천해줄 수 있다.
다양한 실시예에 따르면, 프로세서(315)는 입력 모듈(311)을 통해 사용자 음성을 획득할 수 있다. 예를 들어, 프로세서(315)는 사용자 발화(utterance)에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 프로세서(315)는 사용자 단말(310)의 입력 모듈(311)(예: 마이크(311a))을 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다. 예를 들어, 상기 프로세서(315)는 음성 인식 제어를 위해 상기 사용자 단말(310) 또는 상기 사용자 단말(310)의 하우징 상의 어느 위치에 형성된 지정된 하드웨어 키(예: 도 19의 1954a)의 입력을 감지한 후 또는 음성 인식 제어 서비스를 제공하는 모드로 전환된 상태에서 상기 입력 모듈(311)(예: 마이크)을 통해 상기 제1 요청을 포함하는 상기 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 프로세서(315)는 입력 모듈(311)을 통해 상기 사용자 발화에 기반하여 제2 전자 장치(202; 202a~202d) 중 어느 하나(예: 스마트 TV(202a))를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 프로세서(315)는 입력 모듈(315)을 통해 상기 사용자 발화에 기반하여 제1 전자 장치(201)를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
다양한 실시예에 따르면, 프로세서(315)는 통신 인터페이스(예: 도 1의 통신 모듈(190))를 통해 상기 제1 입력 음성 데이터를 지능형 서버(208)로 전송할 수 있다. 프로세서(315)는 상기 제1 입력 음성 데이터를 전송한 후 통신 모듈(예: 도 1의 통신 인터페이스(190))을 통해 지능형 서버(208)로부터 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제2 전자 장치(202; 202a~202d) 중 하나(예: 스마트 TV(202a))를 이용하여 상기 제1 태스크를 수행하기 위한 제1 동작 정보(예: 제1 패스 룰)를 포함할 수 있다. 상기 제1 동작 정보는 상기 제1 태스크의 수행 동작(예: 사용자 의도) 및 수행 대상(예: 도메인)에 대한 정보, 상기 제1 태스크의 수행 동작을 실행하기 위해 필요한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함할 수 있다. 상기 제1 태스크 수행 정보는 상기 제1 태스크 또는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제1 전자 장치(201)를 이용하여 상기 제1 태스크를 수행하기 위한 제1 동작 정보(예: 제1 패스 룰)를 포함할 수 있다. 상기 제1 동작 정보는 상기 제1 태스크의 수행 동작(예: 사용자 의도) 및 수행 대상(예: 도메인)에 대한 정보, 상기 제1 태스크의 수행 동작을 실행하기 위해 필요한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함할 수 있다. 상기 제1 태스크 수행 정보는 상기 제1 태스크 또는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
다양한 실시예에 따르면, 프로세서(315)는 상기 제1 전자 장치(201)의 상태를 판단할 수 있다. 예를 들어, 프로세서(315)는 상기 제1 전자 장치(201)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되어 수행될 상기 제1 태스크의 수행 동작 간의 연관성 여부를 판단할 수 있다. 예를 들어, 제1 전자 장치(201)의 상태는 제1 전자 장치(201)에서 수행중인 기능(예: 음악 재생 또는 비디오(동영상) 재생과 같은 제1 기능)의 동작일 수 있으며, 상기 제1 태스크는 상기 제1 입력 음성 데이터의 분석 결과 추출된 사용자 의도에 대응되어 수행될 동작일 수 있다. 예를 들어, 프로세서(315)는 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 제1 태스크의 수행 동작 간 연관성 여부를 판단할 수 있다.
일 실시예에 따르면, 프로세서(315)는 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 상기 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 연관성 여부를 판단할 수 있다. 예를 들어, 프로세서(315)는 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 상기 제1 태스크의 수행 동작이 적어도 하나의 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 서로 간섭되는 것으로 판단하여 연관성이 있는 것으로 판단할 수 있다.
예를 들어, 상기 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행중이고, 상기 제1 태스크가 "TV를 켜는 동작"일 경우, 프로세서(315)는 상기 제1 전자 장치(201)의 상태가 청각적 요소를 포함하는 속성을 가지는 것으로 판단하고, 상기 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단할 수 있다. 프로세서(315)는 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 청각적 요소라는 동일한 속성을 포함하므로, 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있으며, 이에 따라 상기 연관성이 있는 것으로 판단할 수 있다.
예를 들어, 상기 제1 전자 장치(201)가 비디오(동영상) 재생과 같은 제1 기능을 수행하고, 상기 제1 태스크가 "TV를 켜는 동작"일 경우, 프로세서(315)는 상기 제1 전자 장치(201)의 상태가 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단하고, 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단할 수 있다. 프로세서(315)는 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소라는 동일한 속성을 포함하므로, 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있으며, 이에 따라 상기 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 프로세서(315)는 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단함에 있어, 상기 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(예: 스마트 TV(202a)) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 프로세서(315)는 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(예: 스마트 TV(202a)) 간 거리가 임계값 미만이면, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다. 일 실시예에 따르면, 상기 임계값은 상기 제1 전자 장치(201)의 오디오 출력 또는 시각적 출력 중 적어도 하나의 동작과 상기 제1 태스크의 수행 동작이 간섭되는 최소 거리로 설정될 수 있다. 예를 들어, 상기 임계값은 상기 제1 전자 장치(201) 또는 제2 전자 장치(202; 202a~202d)의 동작 상태 정보(예: 볼륨 크기 또는 화면 크기)에 따라 변경될 수 있다.
일 실시예에 따르면, 상기 프로세서(315)는 상기 제1 전자 장치(201) 및 상기 제2 전자 장치(202; 202a~202d) 각각에 대한 적어도 하나의 기능(또는 동작)을 포함하는 능력(capability) 정보 및 각 기능(또는 동작)에 대한 연관성 판단을 위해 미리 지정된 속성 정보 또는 연관성 판단 조건을 메모리(312)에 미리 저장할 수 있다. 예를 들어, 상기 프로세서(315)는 메모리(312)에 하기 <표 1>과 같은 능력(capability) 정보, 속성 정보 또는 연관성 판단 조건을 테이블 형태로 저장할 수 있다.
일 실시예에 따르면, 상기 프로세서(315)는 상기 제1 전자 장치(201) 및 상기 제2 전자 장치(202; 202a~202d) 각각에 대한 적어도 하나의 기능(또는 동작)을 포함하는 능력(capability) 정보 및 각 기능(또는 동작)에 대한 연관성 판단을 위해 지정된 속성 정보 또는 연관성 판단 조건을 메모리(312)에 저장할 수 있다. 예를 들어, 상기 프로세서(315)는 메모리(312)에 하기 <표 1>과 같은 능력(capability) 정보, 속성 정보 또는 연관성 판단 조건을 테이블 형태로 저장할 수 있다.
TV(속성 : 청각적 요소 또는 시각적 요소) 에어컨(속성 : 청각적 요소)
전자 장치(예: 사용자 단말 또는 AI 스피커) TV On TV Off 볼륨 업 볼륨 다운 ON OFF
동작 중인 기능 음악재생(속성: 청각적 요소)
대기 모드 × × × ×
동작 중인 구성요소 마이크(속성 : 청각적 요소) × ×
디스플레이(속성 : 시각적 요소) × × × × × ×
센서류(속성 : 청각적 요소또는 시각적 요소) × ×
일 실시예에 따르면, 프로세서(315)는 상기 <표 1>에 미리 지정된 연관성 판단 조건에 적어도 일부 기반하여 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 연관성 판단 조건을 충족하는지 여부에 따라 연관성 여부를 판단할 수 있다. 예를 들어, 프로세서(315)는 상기 연관성 판단 조건을 충족하면 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단하고, 상기 연관성 판단 조건을 충족하지 않으면 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 없는 것으로 판단할 수 있다.
일 실시예에 따르면, 상기 <표 1>에 미리 지정된 연관성 판단 조건은 주기적으로 또는 비주기적으로 업데이트될 수 있다.
다양한 실시예에 따르면, 프로세서(315)는 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 응답을 제1 전자 장치(201)로 전송할 수 있다.
상기 프로세서(315)의 동작은 도 5 내지 18을 참조하여 상세히 설명하기로 한다.
도 4는 다양한 실시예에 따른 음성 인식 제어 서비스를 제공하는 지능형 서버의 블록도이다. 도 4에 도시된 지능형 서버(408)는 도 1에 도시된 서버(108) 또는 도 2에 도시된 지능형 서버(208)의 일부 또는 전체를 포함할 수 있다.
도 4를 참조하면, 지능형 서버(408)는 음성 인식 제어 서비스를 제공하는 지능형 서버(예: 삼성 전자의 BixbyTM 서버)로서, 예를 들어 통신 인터페이스(410), 프로세서(420) 또는 메모리(430) 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 통신 인터페이스(410)는 네트워크(예: 도 1의 네트워크(199) 또는 도 2의 제2 네트워크(299))를 통해 제1 전자 장치(예: 제1 전자 장치(201))로부터 사용자 발화에 의한 요청(또는 명령)을 포함하는 입력 음성 데이터를 수신하거나, 상기 수신된 입력 음성 데이터에 대응되는 출력 음성 데이터 또는 상기 수신된 입력 음성 데이터에 포함된 사용자의 발화에 의한 요청(또는 명령) 또는 상기 요청(또는 명령)에 대응되는 태스크에 기초하여 적어도 하나의 어플리케이션을 수행하기 위한 동작 정보(예: 패스 룰(path rule)) 또는 상기 동작 정보와 관련된 UI 정보 중 적어도 일부를 포함하는 태스크 수행 정보를 제1 전자 장치(201)로 전송할 수 있다.
일 실시예에 따르면, 통신 인터페이스(410)는 복수의 통신 회로들을 포함할 수 있으며, 예를 들어, 도 1에 도시된 통신 모듈(190)의 일부 또는 전체를 포함할 수 있다. 통신 인터페이스(410)는 통신부 또는 통신 모듈이라고 칭하거나, 상기 통신부 또는 통신 모듈을 그 일부로서 포함하거나 상기 통신부 또는 통신 모듈을 구성할 수도 있다.
다양한 실시예에 따른 프로세서(420)는 지능형 서버(408)를 전반적으로 제어할 수 있다. 프로세서(420)는 도 1에 도시된 프로세서(120)의 일부 또는 전체를 포함할 수 있다. 예를 들어, 프로세서(420)는 제1 전자 장치(201)로부터 수신된 입력 음성 데이터에 포함된 사용자 발화를 분석하여 상기 입력 음성 데이터에 대응되는 출력 음성 데이터를 생성하거나, 상기 분석된 사용자 발화에 의한 요청(또는 명령)에 대응되는 적어도 하나의 어플리케이션을 수행하기 위한 적어도 하나의 동작(예: 태스크)에 대한 정보, 상기 동작(예: 태스크)을 실행하기 위한 파라미터 정보 또는 동작 시퀀스를 포함하는 동작 정보(예: 패스 룰)를 생성할 수 있다. 예를 들어, 프로세서(420)는 자동 음성 인식(automatic speech recognition)(ASR) 모듈(421), 자연어 이해(natural language understanding)(NLU) 모듈(422), 패스 플래너(path planner) 모듈(423), 대화 매니저(dialogue manager)(DM) 모듈(424), 자연어 생성(natural language generator)(NLG) 모듈(425) 또는 텍스트 음성 변환(text to speech)(TTS) 모듈(426)을 포함할 수 있다.
본 발명의 다양한 실시예에서 언급되는 지능형 서버(408)의 여러 모듈들은 하드웨어로 구현되거나, 소프트웨어로 구현될 수 있다. 다양한 실시예에서, 지능형 서버(408)의 각 모듈에 의해 수행되는 동작은 프로세서(420)에 의해 수행되는 동작으로 이해될 수 있다.
일 실시예에 따르면, 자동 음성 인식(ASR) 모듈(421)은 제1 전자 장치(201)로부터 수신된 사용자 입력으로서의 입력 음성 데이터(예: 제1 입력 음성 데이터)를 텍스트 데이터로 변환할 수 있다. 예를 들어, 자동 음성 인식(ASR) 모듈(421)은 발화 인식 모듈을 포함할 수 있다. 상기 발화 인식 모듈은 음향(acoustic) 모델 및 언어(language) 모델을 포함할 수 있다. 예를 들어, 상기 음향 모델은 발성에 관련된 정보를 포함할 수 있고, 상기 언어 모델은 단위 음소 정보 및 단위 음소 정보의 조합에 대한 정보를 포함할 수 있다. 상기 발화 인식 모듈은 발성에 관련된 정보 및 단위 음소 정보에 대한 정보를 이용하여 상기 입력 음성 데이터에 포함된 사용자 발화를 텍스트 데이터로 변환할 수 있다. 상기 음향 모델 및 언어 모델에 대한 정보는, 예를 들어, 메모리(430)(예: 자동 음성 인식 데이터베이스(automatic speech recognition database)(ASR DB)(432))에 저장될 수 있다.
프로세서(420)의 자연어 이해(NLU) 모듈(422) 또는 패스 플래너 모듈(423)은 입력 음성 데이터(예: 제1 입력 음성 데이터)에 포함된 사용자 발화에 기초하여 적어도 하나의 어플리케이션을 수행하기 위한 적어도 하나의 동작 시퀀스를 포함하는 동작 정보(예: 패스 룰)를 생성할 수 있다.
일 실시예에 따르면, 상기 입력 음성 데이터(예: 제1 입력 음성 데이터)는 제1 전자 장치(201)(예: 도 3의 사용자 단말(310))의 동작(예: 제1 태스크 수행 동작)의 실행에 대한 명령 또는 요청(예: 제1 요청)을 포함할 수 있다.
일 실시예에 따르면, 상기 입력 음성 데이터(예: 제1 입력 음성 데이터)는 제2 전자 장치(예: 제2 전자 장치(202))(예: IoT 기기)의 동작(예: 제1 태스크 수행 동작)의 실행에 대한 명령 또는 요청(예: 제1 요청)을 포함할 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 문법적 분석(syntactic analyze) 또는 의미적 분석(semantic analyze)을 수행하여 사용자 의도(intent)를 파악할 수 있다. 상기 문법적 분석은 사용자 입력을 문법적 단위(예: 단어, 구, 또는 형태소)로 나누고, 상기 나누어진 단위가 어떤 문법적인 요소를 갖는지 파악할 수 있다. 상기 의미적 분석은 의미(semantic) 매칭, 룰(rule) 매칭, 또는 포뮬러(formula) 매칭을 이용하여 수행할 수 있다. 이에 따라, 자연어 이해(NLU) 모듈(422)은 사용자 (음성) 입력에 대응하는 도메인(domain)(예: 동작 실행의 대상 장치 또는 대상 앱), 의도(intent)(예: 실행하고자 하는 동작(예: 태스크)) 또는 상기 의도를 표현하는데 필요한 파라미터(parameter)(또는 슬롯(slot)(예: 키워드))를 얻을 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 도메인(domain), 의도(intend) 또는 상기 의도를 파악하는데 필요한 파라미터(parameter)(또는, 슬롯(slot))로 나누어진 매칭 규칙을 이용하여 사용자의 의도 또는 파라미터를 결정할 수 있다. 예를 들어, 상기 하나의 도메인(예: 알람 서비스 또는 알람 장치)은 복수의 의도(예: 알람 설정, 또는 알람 해제)를 포함할 수 있고, 하나의 의도는 복수의 파라미터(예: 시간, 반복 횟수, 또는 알람음)를 포함할 수 있다. 복수의 룰은, 예를 들어, 하나 이상의 필수 요소 파라미터를 포함할 수 있다. 상기 매칭 규칙은 자연어 인식 데이터베이스(natural language understanding database)(NLU DB)(434)에 저장될 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 형태소, 또는 구의 언어적 특징(예: 문법적 요소)을 이용하여 사용자 입력으로부터 추출된 단어(예: 슬롯(예: 키워드))의 의미를 파악하고, 상기 파악된 단어의 의미를 도메인 및 의도에 매칭시켜 사용자의 의도를 결정할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 각각의 도메인 및 의도에 사용자 입력에서 추출된 단어가 얼마나 포함되어 있는지를 계산하여 사용자 의도를 결정할 수 있다. 일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 상기 의도를 파악하는데 기초가 된 단어(예: 슬롯(예: 키워드))를 이용하여 사용자 입력의 파라미터를 결정할 수 있다. 일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 사용자 입력의 의도를 파악하기 위한 언어적 특징이 저장된 자연어 인식 데이터베이스(NLU DB)(434)를 이용하여 사용자의 의도를 결정할 수 있다. 다른 실시 예에 따르면, 자연어 이해(NLU) 모듈(422)은 개인화 언어 모델(personal language model)(PLM)을 이용하여 사용자의 의도를 결정할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 개인화된 정보(예: 연락처 리스트, 음악 리스트)를 이용하여 사용자의 의도를 결정할 수 있다. 상기 개인화 언어 모델은, 예를 들어, 자연어 인식 데이터베이스(NLU DB)(434)에 저장될 수 있다. 일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)뿐만 아니라 자동 음성 인식(ASR) 모듈(421)도 자연어 인식 데이터베이스(NLU DB)(434)에 저장된 개인화 언어 모델을 참고하여 사용자의 음성을 인식할 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 사용자 입력의 의도 및 파라미터에 기초하여 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 사용자 입력의 의도에 기초하여 실행될 앱을 선택하고, 상기 선택된 앱에서 수행될 동작을 결정할 수 있다. 상기 자연어 이해(NLU) 모듈(422)은 상기 결정된 동작에 대응되는 파라미터를 결정하여 패스 룰을 생성할 수 있다. 일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)에 의해 생성된 패스 룰은 실행될 앱, 상기 앱에서 실행될 동작(예: 적어도 하나 이상의 상태(state)) 및 상기 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함할 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 사용자 입력의 의도 및 파라미터를 기반으로 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 패스 플래너 모듈(423)로부터 사용자 (음성) 입력에 포함된 사용자 요청(또는 명령)(예: 제1 요청)에 대응되는 패스 룰 셋을 수신하고, 사용자 입력의 의도 및 파라미터를 상기 수신된 패스 룰 셋에 매핑하여 패스 룰을 결정할 수 있다.
다른 실시 예에 따르면, 자연어 이해(NLU) 모듈(422)은 사용자 입력의 의도 및 파라미터에 기초하여 실행될 앱, 상기 앱에서 실행될 동작 및 상기 동작을 실행하는데 필요한 파라미터를 결정하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 상기 사용자 요청(또는 명령)(예: 제1 요청)에 포함된 도메인에 대응되는 제1 전자 장치(201) 또는 제2 전자 장치(202; 202a~202d))의 정보를 이용하여 상기 실행될 앱 및 상기 앱에서 실행될 동작을 사용자 입력의 의도에 따라 온톨로지(ontology) 또는 그래프 모델(graph model) 형태로 배열하여 패스 룰을 생성할 수 있다. 상기 생성된 패스 룰은, 예를 들어, 패스 플래너 모듈(423)을 통해 패스 룰 데이터베이스(path rule database)(패스 룰 DB)(436)에 저장될 수 있다. 상기 생성된 패스 룰은 패스 룰 DB(436)의 패스 룰 셋에 추가될 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 생성된 복수의 패스 룰 중 적어도 하나의 패스 룰을 선택할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 상기 복수의 패스 룰 최적의 패스 룰을 선택할 수 있다. 다른 예를 들어, 자연어 이해(NLU) 모듈(422)은 사용자 발화에 기초하여 일부 동작만이 특정된 경우 복수의 패스 룰을 선택할 수 있다. 자연어 이해(NLU) 모듈(422)은 사용자의 추가 입력(예: 제2 입력 음성 데이터)에 의해 상기 복수의 패스 룰 중 하나의 패스 룰을 결정할 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422)은 제1 전자 장치(201)에 의해 획득된 사용자 입력에 대한 요청(또는 명령)으로 패스 룰을 도메인에 대응되는 대상(예: 제1 전자 장치(201) 또는 제2 전자 장치(202; 202a~202d))으로 송신할 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422)은 상기 사용자 입력에 대응되는 하나의 패스 룰을 상기 제1 전자 장치(201)(예: 도 3의 사용자 단말(310))로 송신할 수 있다. 다른 예를 들어, 자연어 이해(NLU) 모듈(422)은 제1 전자 장치(201)(예: 사용자 단말)에 의해 입력된 사용자 입력에 대응되는 복수의 패스 룰을 도메인에 대응되는 대상(예: 제1 전자 장치(201) 또는 제2 전자 장치(202; 202a~202d))으로 송신할 수 있다. 상기 복수의 패스 룰은, 예를 들어, 사용자 발화에 기초하여 일부 동작만이 특정된 경우 자연어 이해(NLU) 모듈(422)에 의해 생성될 수 있다.
일 실시예에 따르면, 패스 플래너 모듈(423)은 복수의 패스 룰 중 적어도 하나의 패스 룰을 선택할 수 있다.
일 실시예에 따르면, 패스 플래너 모듈(423)은 자연어 이해(NLU) 모듈(422)로 복수의 패스 룰을 포함하는 패스 룰 셋을 전달할 수 있다. 상기 패스 룰 셋의 복수의 패스 룰은 패스 플래너 모듈(423)에 연결된 패스 룰 데이터베이스(DB)(436)에 테이블 형태로 저장될 수 있다. 예를 들어, 패스 플래너 모듈(423)은 지능형 에이전트(예: 지능형 에이전트(322))로부터 수신된 제1 전자 장치(201)(예: 사용자 단말)의 정보(예: OS 정보, 앱 정보)에 대응되는 패스 룰 셋을 자연어 이해(NLU) 모듈(422)로 전달할 수 있다. 상기 패스 룰 데이터베이스(436)에 저장된 테이블은, 예를 들어, 도메인 또는 도메인의 버전 별로 저장될 수 있다.
일 실시예에 따르면, 패스 플래너 모듈(423)은 패스 룰 셋에서 하나의 패스 룰, 또는 복수의 패스 룰을 선택하여 자연어 이해(NLU) 모듈(422)로 전달할 수 있다. 예를 들어, 패스 플래너 모듈(423)은 사용자의 의도 및 파라미터를 제1 전자 장치(201)에 대응되는 패스 룰 셋에 매칭하여 하나의 패스 룰, 또는 복수의 패스 룰을 선택하여 자연어 이해(NLU) 모듈(422)로 전달할 수 있다.
일 실시예에 따르면, 패스 플래너 모듈(423)은 사용자 의도 및 파라미터를 이용하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 패스 플래너 모듈(423)은 사용자 의도 및 파라미터에 기초하여 실행될 앱 및 상기 앱에서 실행될 동작을 결정하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 일 실시예에 따르면, 패스 플래너 모듈(423)은 상기 생성된 패스 룰을 패스 룰 데이터베이스(436)에 저장할 수 있다.
일 실시예에 따르면, 패스 플래너 모듈(423)은 자연어 이해(NLU) 모듈(422)에서 생성된 패스 룰을 패스 룰 데이터베이스(436)에 저장할 수 있다. 상기 생성된 패스 룰은 패스 룰 데이터베이스(436)에 저장된 패스 룰 셋에 추가될 수 있다.
일 실시예에 따르면, 패스 룰 데이터베이스(DB)(436)에 저장된 테이블에는 복수의 패스 룰 또는 복수의 패스 룰 셋을 포함할 수 있다. 복수의 패스 룰 또는 복수의 패스 룰 셋은 각 패스 룰을 수행하는 장치의 종류, 버전, 타입, 또는 특성을 반영할 수 있다.
일 실시예에 따르면, 제1 입력 음성 데이터에 포함된 제1 요청이 제1 전자 장치(201)에서의 제1 태스크(예: 오디오 출력 동작 또는 시각적 데이터 출력 동작)의 수행을 포함하는 경우, 자연어 이해(NLU) 모듈(422)은 상기 제1 입력 음성 데이터의 분석 결과, 검출된 슬롯에 따른 사용자의 의도 또는 도메인에 적어도 일부 기반하여, 상기 도메인을 제1 전자 장치(201)인 것으로 판단하고, 상기 사용자 의도는 제1 태스크(예: 오디오 출력 동작 또는 시각적 데이터 출력 동작)의 수행인 것으로 판단하여, 상기 제1 전자 장치(201)에서의 상기 제1 태스크 수행 동작의 실행에 필요한 파라미터에 대응되는 적어도 하나의 패스 룰을 패스 플래너 모듈(423)로부터 수신할 수 있다.
일 실시예에 따르면, 제1 입력 음성 데이터에 포함된 제1 요청이 제2 전자 장치(202; 202a~202d) 중 특정 제2 전자 장치(예: 스마트 TV(202a))에서의 제1 태스크(예: 오디오 출력 동작 또는 시각적 출력 동작)의 수행을 포함하는 경우, 자연어 이해(NLU) 모듈(422)은 상기 제1 입력 음성 데이터의 분석 결과, 검출된 슬롯에 따른 사용자의 의도 또는 도메인에 적어도 일부 기반하여, 상기 도메인을 제2 전자 장치(예: 스마트 TV(202a))인 것으로 판단하고, 상기 사용자 의도는 제1 태스크(예: 오디오 출력 동작 또는 시각적 데이터 출력 동작)의 수행인 것으로 판단하여, 상기 제2 전자 장치(예: 스마트 TV(202a))에서의 상기 제1 태스크 수행 동작의 실행에 필요한 파라미터에 대응되는 적어도 하나의 패스 룰을 패스 플래너 모듈(423)로부터 수신할 수 있다.
일 실시예에 따르면, 대화 매니저(DM) 모듈(424)은 자연어 이해(NLU) 모듈(422)에 의해 파악된 사용자의 의도가 명확한지 여부를 판단할 수 있다. 예를 들어, 대화 매니저(DM) 모듈(424)은 파라미터의 정보가 충분한지 여부에 기초하여 사용자의 의도가 명확한지 여부를 판단할 수 있다. 대화 매니저(DM) 모듈(424)은 자연어 이해(NLU) 모듈(422)에서 파악된 파라미터가 태스크 또는 동작을 수행하는데 충분한지 여부를 판단할 수 있다. 일 실시예에 따르면, 대화 매니저(DM) 모듈(424)은 사용자의 의도가 명확하지 않은 경우 사용자에게 필요한 정보를 요청하는 피드백을 수행할 수 있다. 예를 들어, 대화 매니저(DM) 모듈(424)은 사용자의 의도를 파악하기 위한 파라미터에 대한 정보를 요청하는 피드백을 수행할 수 있다.
일 실시예에 따르면, 대화 매니저(DM) 모듈(424)은 콘텐트 제공(content provider) 모듈을 포함할 수 있다. 상기 콘텐트 제공 모듈은 자연어 이해(NLU) 모듈(422)에서 파악된 의도 및 파라미터에 기초하여 동작을 수행할 수 있는 경우, 사용자 입력에 대응되는 태스크를 수행한 결과를 생성할 수 있다. 일 실시예에 따르면, 대화 매니저(DM) 모듈(424)은 사용자 입력에 대한 응답으로 상기 콘텐트 제공 모듈에서 생성된 상기 결과를 제1 전자 장치(201)(예: 사용자 단말)로 송신할 수 있다.
일 실시예에 따르면, 자연어 생성(NLG) 모듈(425)은 지정된 정보를 텍스트 형태로 변경할 수 있다. 상기 텍스트 형태로 변경된 정보는 자연어 발화의 형태일 수 있다. 상기 지정된 정보는, 예를 들어, 추가 입력에 대한 정보, 사용자 입력에 대응되는 동작의 완료를 안내하는 정보 또는 사용자의 추가 입력을 안내하는 정보(예: 사용자 입력에 대한 피드백 정보)일 수 있다. 상기 텍스트 형태로 변경된 정보는 제1 전자 장치(201)(예: 사용자 단말)로 송신되어 표시 장치(예: 디스플레이(313))에 표시되거나, 텍스트 음성 변환(TTS) 모듈(426)로 송신되어 음성 형태로 변경될 수 있다.
일 실시예에 따르면, 텍스트 음성 변환(TTS) 모듈(426)은 텍스트 형태의 정보를 음성 형태의 정보로 변경할 수 있다. 텍스트 음성 변환(TTS) 모듈(426)은 자연어 생성(NLG) 모듈(425)로부터 텍스트 형태의 정보를 수신하고, 상기 텍스트 형태의 정보를 음성 형태의 정보로 변경하여 제1 전자 장치(201)(예: 사용자 단말(310))로 송신할 수 있다. 제1 전자 장치(201)(예: 사용자 단말)는 상기 음성 형태의 정보를 음향 출력 장치(예: 음향 출력 장치)(예: 스피커(314)) 또는 제1 전자 장치(201)(예: 사용자 단말)에 기능적으로 연결되는 기능적 연결 장치(예: AI 스피커(201b))로 출력할 수 있다.
일 실시예에 따르면, 자연어 이해(NLU) 모듈(422), 패스 플래너 모듈(423) 또는 대화 매니저(DM) 모듈(424)은 하나의 모듈로 구현될 수 있다. 예를 들어, 자연어 이해(NLU) 모듈(422), 패스 플래너 모듈(423) 또는 대화 매니저(DM) 모듈(424)은 하나의 모듈로 구현되어 사용자의 의도 및 파라미터를 결정하고, 상기 결정된 사용자의 의도 및 파라미터에 대응되는 응답(예: 패스 룰 또는 출력 음성 데이터)을 생성할 수 있다. 이에 따라, 생성된 응답은 제1 전자 장치(201)(예: 사용자 단말)로 송신될 수 있다.
일 실시예에 따르면, 프로세서(420)는 통신 인터페이스(410)를 통해 제1 전자 장치(201)로부터 사용자 음성을 수신할 수 있다. 예를 들어, 프로세서(420)는 제1 전자 장치(201)로부터, 사용자 발화에 의해 제2 전자 장치(202; 202a~202d) 중 어느 하나(예: 스마트 TV(202a))를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 동작은 상기 제1 전자 장치(201)에 의해 수행되는 오디오 출력 동작 또는 시각적 출력 동작을 포함할 수 있다. 예를 들어, 상기 제1 태스크 수행 동작은 상기 제1 전자 장치(201)의 음향 출력 장치(예: 스피커(314))를 통해 오디오 데이터를 출력하는 동작일 수 있다. 상기 제1 태스크 수행 동작은 상기 제1 전자 장치(201) 또는 제1 전자 장치(201)에 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(예: 201b)를 통해 오디오 데이터를 출력하는 동작일 수 있다. 상기 제1 태스크 수행 동작은 상기 제1 전자 장치(201)의 디스플레이(313)를 통해 시각적 데이터를 출력하는 동작일 수 있다. 상기 제1 태스크 수행 동작은 상기 제1 전자 장치(201)에 의해 제어되는 외부 표시 장치(예: TV, 모니터, 디스플레이)(미도시)를 통해 시각적 데이터를 출력하는 동작일 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 동작은 상기 제2 전자 장치(202; 202a~202d)에 의해 수행되는 오디오 출력 동작 또는 시각적 출력 동작을 포함할 수 있다. 예를 들어, 상기 제1 태스크 수행 동작은 상기 제2 전자 장치(202; 202a~202d)의 음향 출력 장치(예: 스피커(314))를 통해 오디오 데이터를 출력하는 동작일 수 있다. 상기 제1 태스크 수행 동작은 상기 제2 전자 장치(202; 202a~202d)의 표시 장치(예: 디스플레이)를 통해 시각적 데이터를 출력하는 동작일 수 있다.
일 실시예에 따르면, 상기 프로세서(420)는 통신 인터페이스(410)(예: 원거리 무선 통신)를 통해 상기 제1 전자 장치(201)로부터 상기 제1 전자 장치(201) 또는 상기 제2 전자 장치(202; 202a~202d)의 장치 정보 또는 상태 정보를 수신할 수 있다. 예를 들어, 상기 프로세서(420)는 상기 제1 전자 장치(201) 또는 제2 전자 장치(202; 202a~202d)의 장치 정보 또는 상태 정보를 주기적으로 수신하거나, 상기 프로세서(420)의 요청에 응답하여 수신할 수 있다.
일 실시예에 따르면, 상기 프로세서(420)는 통신 인터페이스(410)(예: 원거리 무선 통신)를 통해 상기 제2 전자 장치(202; 202a~202d)가 등록된 IoT 서버(209)(예: 클라우드)로부터 상기 제2 전자 장치(202; 202a~202d)의 데이터 또는 정보(예: 각자의 장치 정보 또는 상태 정보)를 송수신할 수 있다.
다양한 실시예에 따르면, 상기 프로세서(420)는 상기 수신된 제1 입력 음성 데이터에 포함된 제1 요청에 대응되는 상기 제1 태스크의 수행과 관련된 제1 태스크 수행 정보를 상기 제1 전자 장치(201)로 전송할 수 있다.
예를 들어, 상기 프로세서(420)는 상기 통신 인터페이스(410)(예: 원거리 무선 통신)를 통해 상기 제1 태스크 수행 정보를 상기 제1 전자 장치(201)로 전송할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제2 전자 장치(202; 202a~202d) 중 하나(예: 스마트 TV(202a))를 이용하여 상기 제1 태스크를 수행하기 위한 제1 동작 정보(예: 제1 패스 룰)를 포함할 수 있다. 상기 제1 동작 정보는 상기 제1 태스크의 수행 동작(예: 사용자 의도) 및 수행 대상(예: 도메인)에 대한 정보, 상기 제1 태스크의 수행 동작을 실행하기 위해 필요한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함할 수 있다. 상기 제1 태스크 수행 정보는 상기 제1 태스크 또는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
일 실시예에 따르면, 상기 프로세서(420)는 상기 제1 입력 음성 데이터를 분석하여 상기 제1 요청에 대한 도메인 정보, 의도 또는 패스 룰을 포함하는 제1 태스크 수행 정보를 생성하고, 상기 제1 태스크 수행 정보를 상기 제1 전자 장치(201)로 전송할 수 있다. 예를 들어, 상기 제1 요청에 대한 도메인 정보는 상기 제1 요청을 수행하기 위한 대상 장치 또는 대상 앱(또는 기능(동작))으로서, 상기 프로세서(420)는 상기 도메인 정보를 제2 전자 장치(202; 202a~202d) 중 하나(예: 스마트 TV(202a))로 판단할 수 있다. 상기 의도는 상기 제1 요청에 대응하여 수행하고자 하는 액션 또는 동작으로서, 상기 프로세서(420)는 상기 의도를 제2 전자 장치(예: 스마트 TV(202a))에서 실행될 제1 태스크 수행 동작으로 판단할 수 있다. 상기 패스 룰은 상기 도메인이 상기 의도를 수행하기 위한 동작 시퀀스로서, 상기 프로세서(420)는 패스 플래너 모듈(423)로부터 복수의 패스 룰 셋으로부터 선택된 상기 제2 전자 장치(예: 스마트 TV(202a))의 제1 태스크 수행 동작에 대응되는 제1 동작 시퀀스를 수신할 수 있다.
상기 제1 전자 장치(201)는 상기 제1 태스크 수행 정보가 수신되면, 상기 제1 태스크 수행 정보를 포함한 제1 커맨드를 상기 제2 전자 장치(예: 스마트 TV(202a))로 전송할 수 있으며, 상기 제2 전자 장치(예: 스마트 TV(202a))는 상기 제1 커맨드에 포함된 상기 제1 태스크 수행 동작 정보에 기반하여 상기 제1 태스크를 수행할 수 있다. 상기 제2 전자 장치(예: 스마트 TV(202a))는 상기 제1 태스크의 수행 결과를 포함하는 피드백 정보를 상기 제1 전자 장치(201)로 전송할 수 있다. 상기 제2 전자 장치(예: 스마트 TV(202a))는 상기 제1 태스크의 수행 결과를 포함하는 피드백 정보를 상기 제2 전자 장치(예: 스마트 TV(202a))가 등록된 IoT 서버(209)(예: 클라우드)를 통해 상기 지능형 서버(408)로 전송할 수도 있다.
다양한 실시예에 따르면, 상기 프로세서(420)는 상기 제1 전자 장치(201) 또는 상기 제2 전자 장치(202; 202a~202d)의 상태 정보를 수신할 수 있다.
일 실시예예 따르면, 상기 프로세서(420)는 상기 제1 전자 장치(201)로부터 통신 인터페이스(410)(예: 원거리 무선 통신)를 통해 상기 제1 전자 장치(201)의 상태 정보 또는 상기 제1 태스크를 수행중인 장치(예: 제2 전자 장치(예: 스마트 TV(202a)))의 상태 정보를 수신할 수 있다.
일 실시예에 따르면, 상기 프로세서(420)는 네트워크(299)(예: 제2 네트워크(199)(예: 원거리 무선 통신)에 연결된 상기 IoT 서버(209)(예: 클라우드)로부터 수신된 상기 제2 전자 장치(예: 스마트 TV(202a))의 상기 제1 태스크의 수행 결과를 포함하는 피드백 정보에는 상기 제2 전자 장치(예: 스마트 TV(202a))의 상태 정보가 더 포함될 수 있다.
상기 프로세서(420)는 상기 제1 전자 장치(201) 또는 상기 제2 전자 장치(202; 202a~202d)의 상태 정보를 주기적으로 수신하거나, 상기 지능형 서버(408)의 요청에 응답하여 수신할 수 있다.
다양한 실시예에 따르면, 상기 프로세서(420)는 상기 제1 전자 장치(201)의 상태 및 상기 제1 태스크 간 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(201)의 상태는 제1 전자 장치(201)에서 수행중인 기능(예: 음악 재생 또는 비디오(동영상) 재생과 같은 제1 기능)의 동작일 수 있으며, 제1 태스크는 상기 제1 입력 음성 데이터의 분석 결과 추출된 사용자 의도에 대응되어 수행될 동작일 수 있다. 예를 들어, 프로세서(420)는 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 제1 태스크의 수행 동작 간 연관성 여부를 판단할 수 있다.
일 실시예에 따르며, 프로세서(420)는 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 상기 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 연관성 여부를 판단할 수 있다. 예를 들어, 프로세서(420)는 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 상기 제1 태스크의 수행 동작이 적어도 하나의 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 서로 간섭되는 것으로 판단하여 연관성이 있는 것으로 판단할 수 있다.
예를 들어, 상기 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행하고, 상기 제1 태스크가 "TV를 켜는 동작"일 경우, 프로세서(420)는 상기 제1 전자 장치(201)의 상태가 청각적 요소를 포함하는 속성을 가지는 것으로 판단하고, 상기 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단할 수 있다. 프로세서(420)는 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 청각적 요소라는 동일한 속성을 포함하므로, 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있으며, 이에 따라 연관성이 있는 것으로 판단할 수 있다.
예를 들어, 상기 제1 전자 장치(201)가 비디오(동영상) 재생과 같은 제1 기능을 수행하고, 상기 제1 태스크가 "TV를 켜는 동작"일 경우, 프로세서(420)는 상기 제1 전자 장치(201)의 상태가 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단하고, 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소를 포함하는 속성을 가지는 것으로 판단할 수 있다. 프로세서(420)는 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 청각적 요소 또는 시각적 요소라는 동일한 속성을 포함하므로, 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있으며, 이에 따라 상기 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 프로세서(420)는 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되도록 상기 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 프로세서(420)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(예: 스마트 TV(202a)) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 제1 전자 장치(201)는 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(예: 스마트 TV(202a)) 간 거리가 임계값 미만이면, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다. 일 실시예에 따르면, 상기 임계값은 상기 제1 전자 장치(201)의 오디오 출력 또는 시각적 출력 중 적어도 하나의 동작과 상기 제1 태스크의 수행 동작이 간섭되는 최소 거리로 설정될 수 있다.
일 실시예에 따르면, 상기 프로세서(420)는 상기 제1 전자 장치(201) 및 상기 제2 전자 장치(202; 202a~202d) 각각에 대한 적어도 하나의 기능(또는 동작)을 포함하는 능력(capability) 정보 및 각 기능(또는 동작)에 대한 연관성 판단을 위해 미리 지정된 속성 정보 또는 연관성 판단 조건을 메모리(430)에 미리 저장할 수 있다. 예를 들어, 상기 프로세서(420)는 메모리(430)에 상술한 <표 1>과 같은 능력(capability) 정보, 속성 정보 또는 연관성 판단 조건을 테이블 형태로 저장할 수 있다.
일 실시예에 따르면, 프로세서(420)는 상기 <표 1>에 지정된 연관성 판단 조건에 적어도 일부 기반하여 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 상기 연관성 판단 조건을 충족하는지 여부에 따라 상기 연관성 여부를 판단할 수 있다. 예를 들어, 프로세서(420)는 상기 연관성 판단 조건을 충족하면 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단하고, 상기 연관성 판단 조건을 충족하지 않으면 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 없는 것으로 판단할 수 있다.
일 실시예에 따르면, 상기 <표 1>에 지정된 연관성 판단 조건은 주기적으로 또는 비주기적으로 업데이트될 수 있다.
다양한 실시예에 따르면, 프로세서(420)는 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 응답을 제1 전자 장치(201)로 전송할 수 있다.
상기 프로세서(420)의 동작은 도 9 내지 도 18을 참조하여 상세히 설명하기로 한다.
본 발명의 다양한 실시예 중 어느 하나에 따른 서버(예: 도 1의 서버(108) 또는 도 2의 지능형 서버(208))는 적어도 하나의 통신 인터페이스; 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 제1 전자 장치로부터, 사용자 발화(utterance)에 의해 제2 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고, 상기 제1 전자 장치의 상태를 판단하거나 수신하고, 상기 제1 전자 장치의 상태의 조절과 관련된 제1 응답을 상기 제1 전자 장치에 제공하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고, 상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고, 상기 연관성 판단 결과 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성하고, 상기 제1 출력 음성 데이터를 포함하는 상기 제1 응답을 상기 제1 전자 장치로 전송하도록 할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 연관성 판단 시, 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 간섭되는지 여부를 판단하도록 할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 연관성 판단 시, 상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 동일한 속성을 포함하는지 여부를 판단하도록 할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 간섭하도록 상기 제1 전자 장치와 상기 제2 전자 장치가 서로 근접하게 있는지를 판단하도록 할 수 있다
본 발명의 다양한 실시예에 따라, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치의 상태의 조절과 관련된 제2 태스크의 수행에 대한 후속 질문(a follow-up question)을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고, 상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고, 상기 연관성 판단 결과, 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 청각적 정보 또는 시각적 정보 중 적어도 일부를 포함하는 인디케이션을 생성하고, 상기 인디케이션을 포함하는 상기 제1 응답을 상기 제1 전자 장치로 전송하도록 할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고, 상기 분석 결과에 적어도 일부 기반하여 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 생성하고, 상기 제1 태스크 수행 정보를 상기 제2 전자 장치로 전송하도록 할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제1 태스크 수행 정보는 상기 제1 태스크를 수행하는 동작과 관련된 제1 동작 정보를 포함하며, 상기 제1 동작 정보는 상기 제1 태스크에 대한 수행 동작 및 수행 대상에 대한 정보, 상기 제1 태스크의 수행 동작에 대한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 인스트럭션들은, 상기 프로세서가, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고, 상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고, 상기 연관성 판단 결과, 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 제2 태스크를 수행하기 위한 제2 태스크 수행 정보를 생성하고, 상기 제2 태스크 수행 정보를 상기 제1 전자 장치로 전송하도록 할 수 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치(예: 도 1의 전자 장치(101, 102, 104) 또는 도 2의 전자 장치(201, 202))는 적어도 하나의 통신 인터페이스; 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치를 통해 사용자 발화(utterance)에 의해 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득하고, 상기 획득된 제1 입력 음성 데이터를 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터 상기 전자 장치의 상태의 조절과 관련된 제1 응답을 수신하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 제2 외부 전자 장치로부터, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신하고, 상기 제1 태스크 수행 정보로부터 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작을 확인하고, 상기 전자 장치의 상태 및 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하고, 상기 연관성 판단 결과 상기 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 상기 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터 상기 제1 출력 음성 데이터를 포함한 상기 제1 응답을 수신하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 연관성 판단 시, 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제1 외부 전자 장치의 오디오 출력 또는 시각적 출력 중 적어도 하나와 간섭되는지 여부를 판단하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 연관성 판단 시, 상기 전자 장치 및 상기 제1 태스크가 수행될 상기 제1 외부 전자 장치 간 거리가 임계값 미만인지 여부를 판단하되, 상기 임계값은 상기 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 상기 제1 외부 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 간섭될 수 있는 최소 거리로 설정되도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 제1 태스크 수행 정보에 기반하여 상기 제1 외부 전자 장치가 상기 제1 태스크를 수행하도록 하는 제1 커맨드를 생성하고, 상기 제1 커맨드를 상기 제1 외부 전자 장치로 전송하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치의 상태 정보를 상기 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터, 상기 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터를 포함하는 상기 제1 응답을 수신하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제1 출력 음성 데이터는 상기 전자 장치의 상태의 조절과 관련된 제2 태스크의 수행에 대한 후속 질문을 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치의 음향 출력 장치 또는 상기 전자 장치에 기능적으로 연결된 장치를 통해 상기 제1 출력 음성 데이터를 출력하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 후속 질문에 대한 사용자 입력을 수신하고, 상기 사용자 입력의 수신에 응답하여, 상기 전자 장치의 상태의 조절과 관련된 상기 제2 태스크를 수행하기 위한 제2 태스크 수행 정보에 대한 요청을 상기 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터 상기 제2 태스크 수행 정보를 수신하고, 상기 제2 태스크 수행 정보에 기반하여 상기 전자 장치의 상태를 조절하도록 상기 제2 태스크를 수행하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치의 상태 정보를 상기 제2 외부 전자 장치로 전송하고, 상기 제2 외부 전자 장치로부터, 상기 전자 장치의 상태의 조절과 관련된 청각적 정보 또는 시각적 정보 중 적어도 일부를 포함하는 인디케이션을 수신하도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치(예: 도 1의 전자 장치(101, 102, 104) 또는 도 2의 전자 장치(201, 202))는 적어도 하나의 통신 인터페이스; 상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및 상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 제1 외부 전자 장치로부터, 사용자 발화에 의해 상기 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고, 제2 외부 전자 장치의 상태를 판단하거나 수신하고, 상기 제2 외부 전자 장치의 상태의 조절과 관련된 인디케이션을 상기 제1 외부 전자 장치에 제공하도록 하는 인스트럭션들을 저장할 수 있다.
도 5는 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 제1 전자 장치(예: 제1 전자 장치(201)) 또는 상기 제1 전자 장치의 프로세서(예: 프로세서(315)) 중 적어도 하나에 의해 수행될 수 있다.
도 5를 참조하면, 동작 510에서, 예컨대, 상기 제1 전자 장치(201)는 제2 전자 장치(예: 제2 전자 장치(202; 202a-202d))를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다. 예를 들어, 제1 전자 장치(201)는 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 음성 입력 장치(예: 입력 모듈(311))(예: 마이크(311a))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 스마트폰(201a)은 상기 스마트폰(201a)과 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(201b))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 상기 제1 요청은 적어도 하나의 제2 전자 장치(예: 제2 전자 장치(202; 202a-202d)) 중 하나(예: 스마트 TV(202a))를 이용하여 제1 태스크를 수행하도록 하는 요청일 수 있다.
일 실시예에 따르면, 상기 제1 요청에 따른 제1 태스크의 수행 동작은 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행하는 동작일 수 있으며, 상기 제1 요청에 따라 제1 태스크를 수행하는 장치인 상기 제2 전자 장치(예: 스마트 TV(202a))는 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행할 수 있는 기능을 제공할 수 있다.
동작 520에서, 예컨대, 제1 전자 장치(201)는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)를 통해 상기 제1 입력 음성 데이터를 지능형 서버(예: 지능형 서버(408))(예: 음성 인식 서버)(예: 삼성 전자의 BixbyTM 서버)로 전송할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치(201)의 통신 인터페이스(예: 통신 모듈(190))(예: 원거리 무선 통신 인터페이스)를 이용하여 제2 네트워크(299)를 통해 상기 제1 입력 음성 데이터를 지능형 서버(408)로 전송할 수 있다.
동작 530에서, 예컨대, 제1 전자 장치(201)는 지능형 서버(408)로부터 제1 전자 장치(201)의 상태의 조절과 관련된 제1 응답을 수신할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는, 상기 지능형 서버(408)로부터, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신할 수 있다. 다양한 실시예에 따라, 제1 전자 장치(201)는 상기 제1 태스크 수행 정보로부터 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작을 확인하고, 상기 제1 전자 장치(201)의 상태 및 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단할 수 있다. 제1 전자 장치(201)는 상기 연관성 판단 결과 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 상기 지능형 서버(208)로 전송할 수 있다. 제1 전자 장치는 상기 지능형 서버로부터 상기 제1 출력 음성 데이터를 포함한 상기 제1 응답을 수신할 수 있다. 다양한 실시예에 따라, 제1 전자 장치(201)는 상기 지능형 서버(408)로부터 연관성 판단 결과를 수신할 수도 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제2 태스크의 수행에 대한 후속 질문을 포함할 수 있다. 예를 들어, 제1 전자 장치(201)의 상태가 제1 기능(예: 음악 재생)을 수행하고 있는 상태인 경우, 제1 전자 장치(201)는 상기 지능형 서버(208)로부터 상기 제1 전자 장치(201)의 상태(예: 음악 재생의 상태)의 조절과 관련된 제1 출력 음성 데이터(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요? 또는 "음악 재생을 종료할까요?")를 포함하는 상기 제1 응답을 수신할 수 있다.
동작 530 이후, 제1 전자 장치(201)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 6은 다양한 실시예에 따른 제1 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 제1 전자 장치(예: 도 2의 전자 장치(201)) 또는 상기 제1 전자 장치의 프로세서(예: 도 3b의 프로세서(315)) 중 적어도 하나에 의해 수행될 수 있다.
도 6을 참조하면, 동작 610에서, 예컨대, 제1 전자 장치(201)는 사용자 음성을 획득할 수 있다. 예를 들어, 제1 전자 장치(201)는 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 음성 입력 장치(예: 도 3b의 입력 모듈(311) 또는 마이크(311a))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 스마트폰(예: 도 2의 스마트폰(201a))은 상기 스마트폰(201a)과 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(201b))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 상기 제1 요청은 상기 제1 전자 장치(201)를 이용하여 제1 태스크를 수행하도록 하는 요청(예: “노래 틀어줘(Play the music)”)일 수 있다.
일 실시예에 따르면, 상기 제1 요청에 따른 제1 태스크의 수행 동작은 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행하는 동작일 수 있으며, 상기 제1 요청에 따라 제1 태스크를 수행하는 장치인 상기 제1 전자 장치(201)는 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행할 수 있는 기능을 제공할 수 있다.
동작 620에서, 예컨대, 제1 전자 장치(201)는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)를 통해 상기 제1 입력 음성 데이터를 지능형 서버(예: 지능형 서버(408))(예: 음성 인식 서버)(예: 삼성 전자의 BixbyTM 서버)로 전송할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치의 통신 인터페이스(예: 통신 모듈(190))(예: 원거리 무선 통신 인터페이스)를 이용하여 제2 네트워크(299)를 통해 상기 제1 입력 음성 데이터를 지능형 서버(예: 도 4의 지능형 서버(408))로 전송할 수 있다.
동작 630에서, 예컨대, 제1 전자 장치는 지능형 서버(408)로부터 제2 전자 장치(예: 제2 전자 장치(202; 202a~202d)(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 수신할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는, 상기 지능형 서버(408)로부터, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신할 수 있다. 다양한 실시예에 따라, 제1 전자 장치(201)는 상기 제1 태스크 수행 정보로부터 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작을 확인하고, 제1 전자 장치(201)에서 수행될 상기 제1 태스크의 수행 동작과 상기 제1 전자 장치(201) 주변의 적어도 하나의 제2 전자 장치(202)의 상태 간 연관성 여부를 판단할 수 있다. 다양한 실시예에 따라, 제1 전자 장치(201)는 상기 지능형 서버(408)로부터 연관성 판단 결과를 수신할 수도 있다.
다양한 실시예에 따라, 상기 연관성 판단 결과에 기반하여, 상기 제1 전자 장치(201)는 상기 제2 전자 장치(202)의 상태의 조절과 관련된 인디케이션을 생성하여 상기 제2 전자 장치(202)의 상태를 조절하도록 제어할 수 있다. 다양한 실시예에 따라, 상기 연관성 판단 결과에 기반하여, 상기 제1 전자 장치(201)는 상기 지능형 서버(408)로부터 상기 제2 전자 장치(202)의 상태의 조절과 관련된 인디케이션을 수신하고, 상기 수신된 인디케이션에 따라 상기 제2 전자 장치(202)의 상태를 조절하도록 제어할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 연관성 판단 결과에 기반하여 상기 제2 전자 장치(202)의 상태의 조절과 관련된 인디케이션을 생성하여 상기 제2 전자 장치(202)의 상태를 조절하도록 제어할 수 있다.
다양한 실시예에 따라, 다양한 실시예에 따라, 상기 연관성 판단 결과에 기반하여, 상기 제2 전자 장치(202)는 상기 지능형 서버(408)로부터 상기 제2 전자 장치(202)의 상태의 조절과 관련된 인디케이션을 수신하고, 상기 수신된 인디케이션에 따라 상기 제2 전자 장치(202)의 상태를 조절하도록 제어할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 연관성 판단 결과에 기반하여 상기 제2 전자 장치(202)의 상태의 조절과 관련된 인디케이션을 생성하여 상기 제2 전자 장치(202)의 상태를 조절하도록 제어할 수 있다.
일 실시예에 따르면, 상기 인디케이션은 상기 적어도 하나의 제2 전자 장치(202)의 상태의 조절과 관련된 청각적 정보 또는 시각적 정보 중 적어도 일부를 포함할 수 있다. 예를 들어, 상기 청각적 정보는 상기 적어도 하나의 제2 전자 장치(202)의 상태의 조절을 알리는 알림음 또는 상기 적어도 하나의 제2 전자 장치(202)의 상태의 조절과 관련된 후속 질문을 포함하는 제1 출력 음성 데이터(예: "TV 볼륨을 낮출까요?" 또는 "TV 볼륨을 높일까요?")를 포함할 수 있다. 제1 전자 장치(201)는 음향 출력 장치(예: 스피커(314)) 또는 상기 제1 전자 장치(201)에 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(201b))를 통해 상기 청각적 정보를 출력할 수 있다. 예를 들어, 상기 시각적 정보는 상기 적어도 하나의 제2 전자 장치(202)의 상태의 조절과 관련된 텍스트, 문자, 그림, 사진 또는 이모티콘을 포함할 수 있다. 상기 시각적 정보는 대화 어플리케이션과 같은 사용자 인터페이스(UI)를 포함할 수 있다. 상기 시각적 정보는 상기 적어도 하나의 제2 전자 장치(202)의 상태의 조절과 관련된 상기 제1 출력 음성 데이터에 포함된 상기 후속 질문 및 상기 후속 질문에 대한 사용자 입력을 수신하기 위한 적어도 하나의 입력 버튼(아이콘)을 포함하는 사용자 인터페이스(UI)일 수 있다. 상기 시각적 정보는 이에 한정되는 것은 아니며, 다양한 모든 시각적 표현(visual representation)을 포함할 수 있다. 상기 제1 전자 장치(201)는 표시 장치(예: 디스플레이(313))를 통해 상기 시각적 정보를 출력할 수 있다. 제1 전자 장치(201)는 상기 음향 출력 장치 및 상기 표시 장치를 통해 상기 청각적 정보 및 상기 시각적 정보를 동시에 출력할 수도 있다.
동작 630 이후, 제1 전자 장치(201)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 7은 다양한 실시예에 따른 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 제1 전자 장치(예: 도 2의 제1 전자 장치(201)) 또는 상기 제1 전자 장치의 프로세서(예: 도 3b의 프로세서(315)) 중 적어도 하나에 의해 수행될 수 있다. 도 7을 참조하면, 제1 전자 장치(201)에서 제2 전자 장치(예: 도 2의 제2 전자 장치(202))를 제어하기 위한 음성 입력을 수신하면, 상기 수신된 제2 전자 장치(202)를 제어하기 위한 음성 입력에 대응하는 태스크와 제1 전자 장치(201)의 상태와의 연관성을 상기 제1 전자 장치(201)에서 판단함으로써 제1 전자 장치(201)를 제어하거나 정보(예컨대, 음성 데이터)를 출력할 수 있다.
도 7을 참조하면, 동작 710에서, 제 1 전자 장치(201)는 제1 입력 음성 데이터를 획득할 수 있다. 예컨대, 제1 전자 장치(201)는 상기 제1 전자 장치(201)에 포함된 마이크(예: 도 3b의 마이크(311a))를 이용하여 사용자의 음성을 획득할 수 있다. 예를 들어, 제1 전자 장치(201)는 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 상기 제1 요청은 제1 전자 장치(201)의 통신 연결 앱(예: Samsung ConnectTM)에 등록된 적어도 하나의 제2 전자 장치(예: 제2 전자 장치(202; 202a~202d)) 중 하나(예: 스마트 TV(202a))를 이용하여 제1 태스크를 수행하기 위한 요청일 수 있다. 예를 들어, 상기 제1 요청은 상기 제1 전자 장치(201)의 통신 연결 앱에 등록된 적어도 하나의 제2 전자 장치 중 하나(예: 스마트 TV(202a))가 오디오 출력 또는 시각적 출력 중 적어도 하나를 상기 제1 태스크로서 수행하도록 하는 요청일 수 있다. 예를 들어, 상기 제1 입력 음성 데이터는 “TV 켜줘(Turn on the TV)” 와 같은 제1 요청을 포함할 수 있다.
일 실시예에 따르면, 상기 제1 전자 장치(201)는 제1 전자 장치(201)의 음성 입력 장치(예: 마이크(311a))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다. 제1 전자 장치(201)는 제1 전자 장치(201)에 기능적으로 연결(예: BT 커넥션)되는 기능적 연결 장치(예: AI 스피커(201b))의 음성 입력 장치(예: 마이크)를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수도 있다.
동작 720에서, 예컨대, 제1 전자 장치(201)는 상기 제1 입력 음성 데이터를 지능형 서버(예: 지능형 서버(408))(예: 음성 인식 서버)(예: 삼성 전자의 BixbyTM 서버)로 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 상기 제1 입력 음성 데이터를 지능형 서버(408)로 전송 시 자신의 상태 정보를 함께 전송할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 제1 전자 장치(201)로부터 상태 정보를 받는 대신, IoT 서버(209)로부터 상기 제1 전자 장치(201)의 상태 정보를 수신할 수도 있다.
동작 730에서, 예컨대, 제1 전자 장치(201)는 상기 제1 입력 음성 데이터의 전송에 응답하여, 상기 지능형 서버(408)로부터 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제1 태스크를 수행하는 동작과 관련된 제1 동작 정보(예: 제1 패스 룰)를 포함할 수 있다. 예를 들어, 상기 제1 동작 정보는 상기 제1 태스크에 대한 수행 동작 및 수행 대상에 대한 정보, 상기 제1 태스크의 수행 동작에 대한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함할 수 있다. 상기 제1 태스크 수행 정보는 상기 제1 태스크 또는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
동작 740에서, 예컨대, 상기 제1 전자 장치(201)는 상기 제1 태스크 수행 정보의 적어도 일부를 포함하는 제1 커맨드를 제2 전자 장치(예: 스마트 TV(202a))로 전송할 수 있다.
일 실시예에 따르면, 상기 제1 전자 장치(201)는 지능형 서버(408)로부터 수신한 상기 제1 태스크 수행 정보에 적어도 일부 기반하여, 상기 제1 태스크 수행 정보에 포함된 제1 동작 정보로부터 상기 제1 태스크를 수행할 대상 장치인 도메인을 확인하고, 상기 확인된 도메인에 대응되는 대상 장치를 검색할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치의 통신 연결 앱(예: Samsung ConnectTM)에 등록된 적어도 하나의 제2 전자 장치(202) 중 상기 확인된 도메인에 대응되는 장치를 검색할 수 있다. 예를 들어, 상기 확인된 도메인이 “TV”인 경우, 제1 전자 장치(201)는 상기 적어도 하나의 제2 전자 장치(202) 중 상기 확인된 도메인에 대응되는 대상 장치로서 상기 “TV”에 대응되는 제2 전자 장치(예: 스마트 TV(202a))를 검출할 수 있다. 일 실시예에 따르면, 상기 “TV”에 대응되는 제2 전자 장치(202)가 복수 개일 경우 지정된 우선 순위에 따라 우선 순위가 높은 제2 전자 장치(202)가 선택될 수 있다. 제1 전자 장치(201)는 상기 제1 태스크를 수행하기 위한 상기 제1 태스크 수행 정보에 적어도 일부 기반하여 제1 커맨드를 생성하고, 상기 확인된 도메인에 대응되는 대상 장치인 상기 검출된 제2 전자 장치(예: 스마트 TV(202a))로 상기 제1 커맨드를 전송할 수 있다.
동작 750에서, 제 1 전자 장치(201)는 제 1 전자 장치(201)의 상태와 제 1 테스크의 연관성 판단할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성을 판단할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(201)는 자신의 상태와 상기 제1 태스크의 수행 동작이 동일한 속성(예: 청각적 요소 또는 시각적 요소 중 적어도 하나)을 포함하는 경우 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있다. 예를 들어, 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행하고 있고, 제1 태스크의 수행 동작은 "TV를 켜는 동작"일 수 있다. 이 경우, 제1 전자 장치(201)의 상태는 상기 제1 기능(예: 음악 재생) 수행 동작 상태이므로 청각적 요소의 속성을 가질 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"이므로 청각적 요소 및 시각적 요소의 속성을 가질 수 있다. 제1 전자 장치(201)는 두 동작 간 청각적 요소의 동일한 속성을 가지므로, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되도록 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(202) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 제1 전자 장치(201)는 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(202) 간 거리가 임계값 미만이면, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다.
동작 760에서, 제1 전자 장치(201)는 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(201)를 제어하기 위한 제1 출력 음성 데이터에 대한 요청을 지능형 서버(408)로 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 지능형 서버(408)로 전송할 수 있다. 예를 들어, 제1 전자 장치(201)의 상태가 상기 제1 기능(예: 음악 재생)을 수행중인 경우, 상기 제1 기능(예: 음악 재생)의 수행 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 지능형 서버(408)로 전송할 수 있다.
동작 770에서, 예컨대, 제1 전자 장치(201)는 지능형 서버(408)로부터 제1 전자 장치(201)를 제어하기 위한 제1 출력 음성 데이터(예: 제1 응답)를 수신할 수 있다. 예를 들어, 제1 전자 장치(201)는 상기 제1 출력 음성 데이터에 대한 요청의 전송에 응답하여, 지능형 서버(408)로부터 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터를 수신할 수 있다.
동작 780에서, 예컨대, 제1 전자 장치(201)는 음향 출력 장치(예: 스피커(314)) 또는 상기 제1 전자 장치(201)에 기능적으로 연결된 기능적 연결 장치를 통해 수신된 제1 출력 음성 데이터를 출력할 수 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 제1 전자 장치(201)의 상태(예: 제1 기능(예: 음악 재생) 수행 동작)의 조절과 관련된 후속 질문(a follow-up question)(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요?" 또는 "음악 재생을 종료할까요?)을 포함할 수 있다.
동작 780 이후, 제1 전자 장치(201)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 8은 다양한 실시예에 따른 전자 장치의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 제1 전자 장치(예: 도 2의 제1 전자 장치(201) 또는 도 3b의 전자 장치(310)의 프로세서(315)) 중 적어도 하나에 의해 수행될 수 있다. 도 8을 참조하면, 제1 전자 장치(201)에서 제2 전자 장치(202)를 제어하기 위한 음성 입력을 수신하면, 상기 수신된 제2 전자 장치(202)를 제어하기 위한 음성 입력에 대응하는 태스크와 제1 전자 장치(201)의 상태와의 연관성을 지능형 서버(408)에서 판단함으로써 제1 전자 장치(201)를 제어하거나 정보(예컨대, 음성 데이터)를 출력할 수 있다.
도 8을 참조하면, 예컨대, 동작 810 내지 840은 도 7의 동작 710 내지 740과 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 850에서, 예컨대, 제1 전자 장치(201)는 제1 전자 장치(201)의 상태 정보를 지능형 서버(예: 도 4의 지능형 서버(408))로 전송할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 제1 전자 장치(201)의 상태 정보를 다양한 방법으로 획득할 수 있다. 예컨대, 상기 지능형 서버(408)가 상기 제1 전자 장치(201)의 상태 정보를 IoT 서버(209)를 통해 획득할 경우, 상기 동작 850은 생략될 수도 있다.
일 실시예에 따르면, 제1 전자 장치(201)는 동작 850을 주기적으로 또는 비주기적으로 수행할 수 있다. 예를 들어, 제1 전자 장치(201)는 지정된 주기에 따라 자신의 상태 정보를 지능형 서버(408)로 전송하거나, 지능형 서버(408)의 요청 시 이에 응답하여 자신의 상태 정보를 지능형 서버(408)로 전송할 수 있다. 도 8에서, 동작 850은 동작 840 이후에 수행되는 것으로 도시되었으나, 이에 한정되는 것은 아니며 어느 동작 단계에서 수행해도 무방하다. 일 실시예에 따르면, 제1 전자 장치(201)는 동작 820에서 제1 입력 음성 데이터를 지능형 서버(408)로 전송 시 자신의 상태 정보를 함께 전송한 경우, 동작 850은 생략될 수도 있다.
동작 860에서, 제1 전자 장치(201)는 지능형 서버(408)로부터 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(201)를 제어하기 위한 제1 출력 음성 데이터를 수신할 수 있다. 상기 연관성 판단의 주체가 상이함에 따라, 도 7의 동작 770은 동작 760에서의 제1 전자 장치(201)의 요청에 의해, 지능형 서버(408)로부터 제1 출력 음성 데이터가 수신되는 반면, 동작 860은 제1 전자 장치(201)의 요청 없이 지능형 서버(408)로부터 제1 출력 음성 데이터가 수신될 수 있다.
예를 들어, 지능형 서버(408)는 제1 전자 장치(201)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성 여부를 판단할 수 있다. 지능형 서버(408)는 상기 연관성 판단 결과 연관성이 있는 것으로 판단되면, 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성하여 이를 제1 전자 장치(201)로 전송할 수 있다. 이로써, 제1 전자 장치(201)는 지능형 서버(408)로부터 상기 제1 출력 음성 데이터를 수신할 수 있게 된다.
다양한 실시예에 따라, 상기 동작 820에서 상기 지능형 서버(408)가 제1 전자 장치(201)로부터 제1 입력 음성 데이터를 수신할 때, 상기 지능형 서버(408)가 상기 제1 전자 장치(201)에 대한 상태 정보를 이미 알고 있는 경우, 상기 동작 850은 생략될 수 있다. 이 경우, 상기 동작 830의 제1 태스크 수행 정보 수신과 상기 동작 860의 제1 출력 음성 데이터 수신이 동시에 또는 순차적으로 수행될 수도 있다.
동작 870은 도 7의 동작 780과 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 870 이후, 제1 전자 장치는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 9는 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 지능형 서버(예: 도 4의 지능형 서버(408)) 또는 상기 지능형 서버의 프로세서(예: 도 4의 프로세서(420)) 중 적어도 하나에 의해 수행될 수 있다.
도 9를 참조하면, 동작 910에서, 지능형 서버(408)는 제1 전자 장치(예: 제1 전자 장치(201))로부터 음성 데이터를 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201)의 음성 입력 장치(예: 마이크(311a))를 통해 획득된 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신할 수 있다.
일 실시예에 따르면, 상기 제1 요청은 적어도 하나의 제2 전자 장치(예: 제2 전자 장치(202; 202a~202d)) 중 하나(예: 스마트 TV(202a))를 이용하여 제1 태스크를 수행하도록 하는 요청(예: TV 켜줘(Turn on the TV))일 수 있다.
일 실시예에 따르면, 상기 제1 요청에 따른 제1 태스크의 수행 동작은 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행하는 동작일 수 있으며, 상기 제1 요청에 따라 제1 태스크를 수행하는 장치인 상기 제2 전자 장치(예: 스마트 TV(202a))는 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행할 수 있는 기능을 제공할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 상기 제1 입력 음성 데이터의 분석 결과에 적어도 일부 기반하여 상기 제2 전자 장치(예: 스마트 TV(202a))에서 수행될 제1 태스크의 수행 동작을 확인할 수 있다. 예를 들어, 지능형 서버(408)는 상기 제1 입력 음성 데이터를 분석하여 상기 제1 입력 음성 데이터를 분석하여 제1 요청에 따른 사용자 의도(예: 제1 태스크의 수행 동작) 또는 도메인(예: 제1 태스크의 수행 대상)을 검출할 수 있다. 예를 들어, 상기 도메인에 대응되는 장치가 제2 전자 장치(예: 스마트 TV(202a))인 경우, 지능형 서버는 상기 검출된 사용자 의도에 기반하여 상기 제1 태스크의 수행 동작을 확인할 수 있다.
동작 920에서, 지능형 서버(408)는 제 1 전자 장치(201)의 상태를 판단하거나 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제 1 전자 장치(201)로부터 제 1 전자 장치(201)의 상태 정보를 수신할 수 있다. 지능형 서버(408)는 상기 제1 전자 장치(201)의 상태 정보에 적어도 일부 기반하여 상기 제1 전자 장치(201)의 상태를 판단할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 제1 전자 장치(201)의 상태 정보를 다른 서버(예컨대, IoT 서버(209))로부터 수신할 수도 있다.
일 실시예에 따르면, 제1 전자 장치(201)의 상태 정보는 능력(capability) 정보, 실행중인 앱(또는 기능(동작)) 또는 각 구성요소의 상태 정보 또는 설정 정보 중 적어도 일부를 포함할 수 있다. 예를 들어, 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행하는 경우, 상기 상태 정보는 오디오 장치(예: 오디오 모듈(370))의 볼륨 정보를 포함할 수 있다. 다른 예를 들어, 제1 전자 장치(201)가 비디오(동영상) 재생과 같은 제1 기능을 수행하는 경우, 상기 상태 정보는 오디오 장치(예: 오디오 모듈(370))의 볼륨 정보 또는 표시 장치(예: 표시 장치(360))의 화면 조정 정보를 포함할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단할 수 있다.
동작 930에서, 지능형 서버(408)는 제1 전자 장치(201)의 상태의 조절과 관련된 제1 응답을 제1 전자 장치(201)로 전송할 수 있다. 예를 들어, 지능형 서버(408)는 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 응답을 생성하여 제1 전자 장치(210)로 전송할 수 있다.
일 실시예에 따르면, 상기 제1 응답은 상기 제1 전자 장치(210)의 상태의 조절과 관련된 제1 출력 음성 데이터를 포함할 수 있다. 예를 들어, 지능형 서버(408)는 상기 연관성 판단 결과, 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작)와 상기 제1 태스크 수행 동작 간 연관성이 있으면, 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는, 제1 전자 장치(201)에서 상기 연관성을 판단하는 경우, 상기 제1 전자 장치(201)로부터 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 수신하고, 상기 요청의 수신에 응답하여 상기 제1 출력 음성 데이터를 생성할 수도 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 제1 전자 장치(201)의 상태의 조절과 관련된 후속 질문(a follow-up question)을 포함할 수 있다. 예를 들어, 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행중인 경우, 상기 제1 출력 음성 데이터는 상기 제1 기능 수행 동작의 조절과 관련된 후속 질문(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요?" 또는 "음악 재생을 종료할까요?)을 포함할 수 있다. 상기 지능형 서버(408)는 상기 생성된 제1 출력 음성 데이터를 포함하는 제1 응답을 제1 전자 장치(201)로 전송할 수 있다.
동작 930 이후, 지능형 서버(408)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 10은 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 지능형 서버(예: 지능형 서버(408)) 또는 상기 지능형 서버의 프로세서(예: 프로세서(420)) 중 적어도 하나에 의해 수행될 수 있다.
도 10을 참조하면, 동작 1010에서, 지능형 서버(408)는 제1 전자 장치(예: 제1 전자 장치(201))로부터 음성 데이터를 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201)의 음성 입력 장치(예: 마이크(311a))를 통해 획득된 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신할 수 있다.
일 실시예에 따르면, 상기 제1 요청은 상기 제1 전자 장치(201)를 이용하여 제1 태스크를 수행하도록 하는 요청(예: 음악 틀어줘(Play on the music))일 수 있다.
일 실시예에 따르면, 상기 제1 요청에 따른 제1 태스크의 수행 동작은 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행하는 동작일 수 있으며, 상기 제1 요청에 따라 제1 태스크를 수행하는 장치인 상기 제1 전자 장치(201)는 오디오 출력 또는 시각적 출력 중 적어도 하나를 수행할 수 있는 기능을 제공할 수 있다.
일 실시예에 따르면, 지능형 서버(480)는 상기 제1 입력 음성 데이터의 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치(201)에서 수행될 제1 태스크의 수행 동작을 확인할 수 있다. 예를 들어, 지능형 서버(408)는 상기 제1 입력 음성 데이터를 분석하여 제1 요청에 따른 사용자 의도(예: 제1 태스크의 수행 동작) 또는 도메인(예: 제1 태스크의 수행 대상)을 검출할 수 있다. 예를 들어, 상기 도메인에 대응되는 장치가 상기 제1 전자 장치(201)인 경우, 지능형 서버(408)는 상기 검출된 사용자 의도에 기반하여 상기 제1 전자 장치(201)에서 수행될 상기 제1 태스크의 수행 동작을 확인할 수 있다.
동작 1020에서, 예컨대, 지능형 서버는 제2 전자 장치(예: 스마트 TV(202a))의 상태를 판단하거나 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치로부터 적어도 하나의 제2 전자 장치(202a~202d)의 상태 정보를 수신할 수 있다. 지능형 서버(408)는 상기 적어도 하나의 제2 전자 장치(202)의 상태 정보에 적어도 일부 기반하여 상기 제2 전자 장치(예: 예: 스마트 TV(202a))의 상태를 판단할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 상기 제2 전자 장치(202)의 상태 정보를 다른 서버(예컨대, IoT 서버(209))로부터 수신할 수도 있다.
일 실시예에 따르면, 상기 제2 전자 장치(예: 스마트 TV(202a))의 상태 정보는 능력(capability) 정보, 실행중인 앱(또는 기능(동작)) 또는 각 구성요소의 상태 정보 또는 설정 정보 중 적어도 일부를 포함할 수 있다. 예를 들어, 제2 전자 장치(예: 스마트 TV(202a))가 TV 방송 콘텐트 출력과 같은 제1 기능을 수행하는 경우, 상기 상태 정보는 제2 전자 장치(예: 스마트 TV(202a))의 오디오 장치(미도시)의 볼륨 정보 또는 제2 전자 장치(예: 스마트 TV(202a))의 표시 장치(미도시)의 화면 조정 정보를 포함할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 상기 제1 태스크의 수행 동작과 상기 제2 전자 장치(예: 스마트 TV(202a))의 상태 간 연관성 여부를 판단할 수 있다.
동작 1030에서, 지능형 서버(408)는 제2 전자 장치(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 제1 전자 장치(201)로 전송할 수 있다. 예를 들어, 지능형 서버(408)는 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제2 전자 장치(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 생성하여 제1 전자 장치(201)로 전송할 수 있다. 일 실시예에 따르면, 제1 전자 장치(201)는 지능형 서버(408)로부터 수신한 제2 전자 장치(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 제2 전자 장치(예: 스마트 TV(202a))로 전송할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 상기 연관성 판단 결과 상기 1 태스크의 수행 동작과 상기 제2 전자 장치(202)의 상태 간 연관성이 있는 것으로 판단되면, 상기 제2 전자 장치(202)의 상태의 조절과 관련된 청각적 정보 또는 시각적 정보 중 적어도 일부를 포함하는 상기 인디케이션을 생성할 수 있다. 예를 들어, 상기 청각적 정보는 상기 제2 전자 장치(202)의 상태의 조절을 알리는 알림음 또는 상기 제2 전자 장치(202)의 상태의 조절과 관련된 후속 질문을 포함하는 제1 출력 음성 데이터(예: "TV 볼륨을 낮출까요?" 또는 "TV 볼륨을 높일까요?)를 포함할 수 있다. 예를 들어, 상기 시각적 정보는 상기 제2 전자 장치(202)의 상태의 조절과 관련된 텍스트, 문자, 그림, 사진 또는 이모티콘을 포함할 수 있다. 상기 시각적 정보는 대화 어플리케이션과 같은 사용자 인터페이스(UI)를 포함할 수 있다. 상기 시각적 정보는 상기 제2 전자 장치(202)의 상태의 조절과 관련된 상기 제1 출력 음성 데이터에 포함된 상기 후속 질문 및 상기 후속 질문에 대한 사용자 입력을 수신하기 위한 적어도 하나의 입력 버튼(아이콘)을 포함하는 사용자 인터페이스(UI)일 수 있다. 상기 시각적 정보는 이에 한정되는 것은 아니며, 다양한 모든 시각적 표현(visual representation)을 포함할 수 있다. 상기 지능형 서버는 상기 생성된 인디케이션을 제1 전자 장치(201)로 전송할 수 있다. 동작 1030 이후, 지능형 서버(408)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 11은 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 지능형 서버(예: 지능형 서버(408)) 또는 상기 지능형 서버의 프로세서(예: 프로세서(420)) 중 적어도 하나에 의해 수행될 수 있다.
도 11을 참조하면, 동작 1110에서, 지능형 서버(408)는 제1 전자 장치(예: 제1 전자 장치(201))로부터 제1 입력 음성 데이터를 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201)의 음성 입력 장치(예: 마이크(311a))를 통해 획득된 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신할 수 있다. 동작 1110은 도 9의 동작 910 및 도 10의 동작 1010과 동일 또는 유사한 동작을 수행할 수 있으므로 이에 대한 상세한 설명은 생략하기로 한다.
동작 1120에서, 예컨대, 지능형 서버(408)는 상기 제1 입력 음성 데이터의 분석 결과에 적어도 일부 기반하여, 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 생성할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 제1 전자 장치(201)로부터 수신된 상기 제1 입력 음성 데이터를 분석할 수 있다. 예를 들어, 지능형 서버(408)는 자동 음성 인식 모듈(예: ASR 모듈(421))을 통해 상기 제1 입력 음성 데이터를 인식하여 텍스트로 변환하고, 자연어 이해 모듈(예: NLU 모듈(422))을 통해 상기 변환된 텍스트에 기반하여 상기 제1 요청에 대응되는 사용자의 의도(intent)(예: 수행하고자 하는 동작(예: 제1 태스크)) 또는 도메인(예: 수행하고자 하는 동작의 실행 대상(예: 제1 태스크를 수행하는 장치))을 검출할 수 있다. 예를 들어, 상기 제1 입력 음성 데이터가 "TV 켜줘(Turn on the TV)” 인 경우, 상기 지능형 서버(408)는 제1 입력 음성 데이터에 포함된 제1 요청을 분석한 결과 추출된 단어(슬롯)(예: "TV" 또는 "Turn on")에 기반하여, 상기 사용자의 의도(예: 제1 태스크)는 “Turn on” 동작인 것으로 판단할 수 있으며, 상기 도메인(예: 제1 태스크를 수행하는 장치)은 “TV”, 즉 적어도 하나의 제2 전자 장치(예: 제2 전자 장치(202; 202a~202d)) 중 “스마트 TV(202a)” 것으로 판단할 수 있다.
일 실시예에 따르면, 상기 지능형 서버(408)는 상기 검출된 사용자의 의도 또는 도메인에 적어도 일부 기반하여 상기 제1 요청에 대응되는 상기 제1 태스크 수행 정보를 생성할 수 있다. 예를 들어, 지능형 서버(408)는 상기 제1 입력 음성 데이터의 분석 결과, 검출된 슬롯에 따른 사용자의 의도(예: 제1 태스크의 수행 동작) 또는 도메인(예: 제1 태스크의 수행 대상)에 적어도 일부 기반하여, 패스 플래너 모듈(예: 패스 플래너 모듈(423))을 통해 패스 룰 데이터베이스(예: 패스 룰 DB(436))로부터 상기 도메인이 상기 사용자의 의도를 수행하는데 필요한 파라미터 또는 제1 동작 시퀀스를 포함하는 상기 제1 동작 정보(예: 제1 패스 룰)를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 동작 정보(예: 제1 패스 룰)는 상기 제1 요청에 대응하여 실행될 대상 장치 또는 앱, 상기 대상 장치 또는 앱에서 실행될 동작(예: 제1 태스크 또는 제1 태스크와 관련된 적어도 하나 이상의 상태) 및 상기 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함하는 제1 동작 시퀀스를 포함할 수 있다. 예를 들어, 상기 제1 입력 음성 데이터에 포함된 제1 요청이 "TV 켜줘(Turn on the TV)” 인 경우, 상기 지능형 서버(408)는 상기 제2 전자 장치들 중 스마트 TV(202a)를 상기 제1 요청에 대응하여 실행될 대상 장치로 포함하고, 상기 스마트 TV(202a)의 "턴 온"동작을 상기 대상 장치에서 실행될 동작(예: 제1 태스크)으로 포함하며, 상기 스마트 TV(202a)가 턴 온하는데 필요한 파라미터 또는 동작 순서에 대한 정보를 상기 제1 동작 시퀀스로 포함하는 제1 동작 정보를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
동작 1130에서, 예컨대, 지능형 서버(408)는 상기 제1 태스크 수행 정보를 제1 전자 장치(201)로 전송할 수 있다.
동작 1140에서, 예컨대, 지능형 서버(408)는 제1 전자 장치(201)로부터 연관성 판단 결과에 대응되는 제1 출력 음성 데이터에 대한 요청을 수신할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201)로부터, 제1 전자 장치(201)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성 판단 결과에 대응되는 상기 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 수신할 수 있다. 상기 제1 출력 음성 데이터에 대한 요청에는 상기 연관성 판단 결과를 포함할 수 있다.
동작 1150에서, 예컨대, 지능형 서버(408)는 제1 전자 장치(201)로부터의 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(201)를 제어하기 위한 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(408)는 상기 제1 출력 음성 데이터에 대한 요청이 수신되면, 상기 요청으로부터 검출된 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 지능형 서버(408)는, 제1 전자 장치(201)로부터 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크 수행 동작 간 연관성이 있는 것으로 판단된 연관성 판단 결과가 수신되면, 상기 제1 전자 장치(201)의 상태 정보에 기반하여 상기 제1 전자 장치(201)의 상태를 판단하고, 자연어 생성 모듈(예: NLG 모듈(425))을 통해, 상기 판단된 제1 전자 장치(201)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(408)는 상기 제1 전자 장치(201)의 상태의 판단 결과, 상기 제1 전자 장치(201)의 상태가 제1 기능 수행(예: 음악 재생) 상태일 경우, 상기 자연어 생성 모듈을 이용하여 상기 제1 기능 수행 동작(예: 음악 재생)의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치(201)의 상태(예: 제1 기능 수행 동작(예: 음악 재생))의 조절과 관련된 후속 질문(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요? " 또는 "음악 재생을 종료할까요?)을 포함할 수 있다. 다양한 실시예에 따라, 상기 제1 출력 음성 데이터는 음악 재생과 관련된 오디오 출력 경로(path)의 변경을 위한 후속 질문(예: "음악 출력을 블루투스 헤드셋으로 변경할까요?")을 포함할 수 있다.
동작 1160에서, 예컨대, 지능형 서버(408)는 상기 제1 출력 음성 데이터(예: 제1 응답)를 제1 전자 장치(201)로 전송할 수 있다.
동작 1160 이후, 지능형 서버(408)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 12는 다양한 실시예에 따른 지능형 서버의 음성 인식 제어 방법을 나타내는 흐름도이다. 상기 방법은 지능형 서버(예: 지능형 서버(408)) 또는 상기 지능형 서버의 프로세서(예: 프로세서(420)) 중 적어도 하나에 의해 수행될 수 있다.
도 12를 참조하면, 예컨대, 동작 1210 내지 1230은 도 11의 동작 1110 내지 1130과 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1240에서, 예컨대, 지능형 서버(408)는 제1 전자 장치(예: 제1 전자 장치(201))로부터 제1 전자 장치(201)의 상태 정보를 수신할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 동작 1240을 주기적으로 또는 비주기적으로 수행할 수 있다. 예를 들어, 지능형 서버(408)는 지정된 주기에 따라 제1 전자 장치(201)로부터 제1 전자 장치(201)의 상태 정보를 수신하거나, 지능형 서버)의 요청 시 이에 응답하여 제1 전자 장치(201)로부터 제1 전자 장치(201)의 상태 정보를 수신할 수 있다. 도 12에서, 동작 1240은 동작 1230 이후에 수행되는 것으로 도시되었으나, 이에 한정되는 것은 아니며 다양한 실시예에 따라 어느 동작 단계에서 수행하는 것도 가능할 수 있다. 일 실시예에 따르면, 지능형 서버(408)는 동작 1210에서 제1 전자 장치(201)로부터 제1 입력 음성 데이터의 수신 시 제1 전자 장치(201)의 상태 정보가 함께 수신된 경우, 동작 1240은 생략될 수도 있다. 다양한 실시예에 따라, 상기 지능형 서버(408)는 동작 1240에서 상기 제1 전자 장치(201)로부터 상태 정보뿐만 아니라 연관성 판단 요청을 수신할 수도 있다.
동작 1250에서, 예컨대, 지능형 서버(408)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작 간 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(201)의 상태와 지능형 서버(408)는 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성을 판단할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 판단된 상기 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201) 또는 IoT 서버(209)(예: 클라우드)로부터 수신한 제1 전자 장치(201)의 상태 정보와 상기 제1 태스크의 수행 동작이 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있다. 예를 들어, 제1 전자 장치(201)가 음악 재생과 같은 제1 기능을 수행하고 있는 경우, 상기 판단된 제1 전자 장치(201)의 상태는 곧 상기 제1 기능의 수행 상태일 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"일 수 있다. 이 경우, 상기 판단된 제1 전자 장치(201)의 상태는 상기 제1 기능 수행 동작(예: 음악 재생) 상태이므로 청각적 요소의 속성을 가질 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"이므로 청각적 요소 또는 시각적 요소의 속성을 가질 수 있다. 지능형 서버(408)는 두 동작 간 청각적 요소의 동일한 속성을 가지므로, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 지능형 서버(408)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되도록 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 지능형 서버(408)는 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(예: 스마트 TV(202a)) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 지능형 서버(408)는 제1 전자 장치(201)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(202)간 거리가 임계값 미만이면, 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다. 일 실시예에 따르면, 상기 임계값은 상기 제1 전자 장치(201)의 상태와 상기 제1 태스크의 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다. 예를 들어, 상기 임계값은 상기 제1 전자 장치(201)의 상태 중 오디오 출력 또는 비디오 출력과 관련된 기능 수행 동작과, 상기 제1 태스크 수행 동작 중 오디오 출력 또는 비디오 출력과 관련된 제1 태스크 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다.
동작 1260에서, 지능형 서버(408)는 상기 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(201)를 제어하기 위한 제1 출력 음성 데이터를 생성할 수 있다. 동작 1260은 도 11의 동작 1150과 제1 전자 장치(201)의 상태와 제1 태스크의 수행 동작 간 연관성을 판단하는 주체가 상이하다는 점을 제외하면, 동일하므로, 동작 1260에 대한 상세한 설명은 생략하기로 한다.
동작 1270은 도 11의 동작 1160과 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1270 이후, 지능형 서버(408)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 13은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 13에서, 제1 전자 장치(1301)(예: 제1 전자 장치(201))와 제2 전자 장치(1302)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신할 수 있고, 제1 전자 장치(1301)와 지능형 서버(1308)(예: 지능형 서버(408))는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)를 통해 통신할 수 있으며, 제2 전자 장치(1302)와 지능형 서버(1308)는 제1 전자 장치(1301)를 통해 데이터 또는 정보를 송수신할 수 있다.
도 13을 참조하면, 동작 1312에서, 예컨대, 제1 전자 장치(1301)는 사용자로부터 제1 입력 음성을 획득할 수 있다. 예를 들어, 제1 전자 장치(1301)는 사용자 발화에 의한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 음성 입력 장치(예: 마이크(311a))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수 있다. 제1 전자 장치(1301)는 제1 전자 장치(1301)에 기능적으로 연결되는 기능적 연결 장치(예: AI 스피커(201b))의 음성 입력 장치(예: 마이크(311a))를 통해 상기 제1 요청을 포함하는 제1 입력 음성 데이터를 획득할 수도 있다.
일 실시예에 따르면, 상기 제1 요청은 상기 제2 전자 장치(1302)(예: 스마트 TV(202a))를 이용하여 상기 제1 요청에 대응되는 제1 태스크를 수행하기 위한 요청일 수 있다. 예를 들어, 상기 제1 요청은 상기 제1 전자 장치(1301)와 통신 가능한 제2 전자 장치(1302)가 오디오 출력 또는 시각적 출력 중 적어도 하나를 상기 제1 태스크로서 수행하도록 하는 요청일 수 있다.
동작 1314에서, 예컨대, 제1 전자 장치(1301)는 제2 네트워크(299)(예: 원거리 무선 통신)를 통해 상기 제1 입력 음성 데이터를 지능형 서버(1308)로 전송할 수 있다. 예를 들어, 제1 전자 장치(1301)는 전자 장치(1301)의 통신 인터페이스(예: 제2 통신 인터페이스(314))(예: 원거리 무선 통신 인터페이스)를 이용하여 상기 제1 입력 음성 데이터를 지능형 서버(1308)로 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1301)는 상기 제1 입력 음성 데이터를 지능형 서버(1308)로 전송 시 상기 제1 입력 음성 데이터에 상기 제1 전자 장치(1301)의 상태 정보를 포함시켜 함께 전송할 수 있다.
동작 1316에서, 예컨대, 지능형 서버(1308)는 제1 전자 장치(1301)로부터 수신된 제1 입력 음성 데이터의 분석 결과에 적어도 일부 기반하여, 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 생성할 수 있다.
일 실시예에 따르면, 지능형 서버(1308)는 상기 제1 입력 음성 데이터를 분석할 수 있다. 예를 들어, 지능형 서버(1308)는 자동 음성 인식 모듈(예: ASR 모듈(421))을 통해 상기 제1 입력 음성 데이터를 인식하여 텍스트로 변환하고, 자연어 이해 모듈(예: NLU 모듈(422))을 통해 상기 변환된 텍스트에 기반하여 상기 제1 요청에 대응되는 사용자의 의도(intent)(예: 수행하고자 하는 동작(예: 제1 태스크 수행 동작)) 또는 도메인(예: 수행하고자 하는 동작의 실행 대상(예: 제1 태스크를 수행하는 장치))을 검출할 수 있다. 예를 들어, 상기 제1 입력 음성 데이터가 "TV 켜줘(Turn on the TV)” 인 경우, 상기 지능형 서버(1308)는 상기 제1 입력 음성 데이터에 포함된 제1 요청을 분석한 결과 추출된 단어(슬롯)(예: "TV" 또는 "Turn on")에 기반하여, 상기 사용자의 의도(예: 제1 태스크)는 “Turn on” 동작인 것으로 판단할 수 있으며, 상기 도메인(예: 제1 태스크를 수행하는 장치)은 “TV”, 즉 제2 전자 장치(1302)(예: 스마트 TV(202a))인 것으로 판단할 수 있다. 지능형 서버(1308)는 상기 검출된 사용자의 의도 또는 도메인에 적어도 일부 기반하여 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제1 요청에 대응되는 제1 태스크를 수행하기 위한 제1 동작 정보(예: 제1 패스 룰)를 포함할 수 있다. 예를 들어, 지능형 서버(1308)는 상기 제1 입력 음성 데이터의 분석 결과, 상기 검출된 사용자의 의도 또는 도메인에 기반하여, 패스 플래너 모듈(예: 패스 플래너 모듈(423))을 통해 패스 룰 데이터베이스(예: 패스 룰 DB(436))로부터 상기 도메인이 상기 사용자의 의도를 수행하는데 필요한 파라미터 또는 동작 순서에 대응되는 제1 동작 시퀀스를 선택하거나 생성할 수 있다.
일 실시예에 따르면, 상기 제1 동작 정보(예: 제1 패스 룰)는 상기 제1 요청에 대응하여 실행될 대상 장치 또는 앱, 상기 대상 장치 또는 앱에서 실행될 동작(예: 제1 태스크 또는 제1 태스크와 관련된 적어도 하나 이상의 상태) 및 상기 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함하는 제1 동작 시퀀스를 포함할 수 있다. 예를 들어, 상기 제1 입력 음성 데이터에 포함된 제1 요청이 "TV 켜줘(Turn on the TV)” 인 경우, 상기 지능형 서버(1308)는 상기 제2 전자 장치(1302)(예: 스마트 TV(202a))를 상기 제1 요청에 대응하여 실행될 대상 장치로 포함하고, 상기 제2 전자 장치(1302)(예: 스마트 TV(202a))의 "턴 온"동작을 상기 대상 장치에서 실행될 동작(예: 제1 태스크)으로 포함하며, 상기 제2 전자 장치(1302)(예: 스마트 TV(202a))가 턴 온하는데 필요한 파라미터 또는 동작 순서에 대한 정보를 상기 제1 동작 시퀀스로 포함하는 제1 동작 정보를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 태스크 수행 정보는 상기 제1 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
동작 1318에서, 예컨대, 지능형 서버(1308)는 제2 네트워크(299)(예: 원거리 무선 통신)를 통해 상기 제1 태스크 수행 정보를 제1 전자 장치(1301)로 전송할 수 있다. 예를 들어, 지능형 서버(1308)는 지능형 서버(1308)의 통신 인터페이스(예: 통신 인터페이스(410))를 이용하여 상기 제1 태스크 수행 정보를 제1 전자 장치(1301)로 전송할 수 있다.
동작 1320에서, 예컨대, 제1 전자 장치(1301)는 지능형 서버(1308)로부터 수신된 상기 제1 태스크 수행 정보에 적어도 일부 기반하여 생성된 제1 커맨드를 제2 전자 장치(1302)(예: 스마트 TV(202a))로 전송할 수 있다.
예를 들어, 제1 전자 장치(1301)는 상기 제1 태스크 수행 정보가 수신되면, 상기 제1 태스크 수행 정보에 포함된 제1 동작 정보로부터 상기 제1 태스크를 수행할 대상 장치인 도메인을 확인하고, 상기 확인된 도메인에 대응되는 대상 장치를 확인할 수 있다. 예를 들어, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 통신 연결 앱(예: Samsung ConnectTM)에 등록된 적어도 하나의 제2 전자 장치(1302)(예: 적어도 하나의 제2 전자 장치(202a-202d)) 중 상기 확인된 도메인에 대응되는 장치를 확인할 수 있다. 예를 들어, 상기 확인된 도메인이 “TV”인 경우, 제1 전자 장치(1301)는 상기 도메인에 대응하는 제2 전자 장치(1302)(예: 제2 전자 장치(202; 202a~202d))를 확인할 수 있다. 다양한 실시예에 따라, 상기 “TV”에 대응되는 제2 전자 장치가 복수 개일 경우 지정된 우선 순위에 따라 우선 순위가 높은 제2 전자 장치가 선택될 수 있다. 제1 전자 장치(1301)는 상기 제1 동작 정보에 기반하여 상기 검출된 제2 전자 장치(1302)(예: 스마트 TV(202a))로 제1 커맨드를 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1301)는 상기 제1 전자 장치(1301)의 통신 인터페이스(예: 통신 모듈(190))(예: 근거리 무선 통신 인터페이스)를 이용하여 제1 네트워크(298)를 통해 상기 제1 커맨드를 상기 대상 장치인 제2 전자 장치(1302)(예: 스마트 TV(202a))로 전송할 수 있다.
동작 1322에서, 예컨대, 제2 전자 장치(1302)는 제1 전자 장치(1301)로부터 수신된 상기 제1 커맨드에 기반하여 상기 제1 태스크를 수행할 수 있다. 상기 제 1 커맨드는 제1 전자 장치(1301)가 획득한 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 제1 태스크(예: 제2 전자 장치(1302)(예: 스마트 TV(202a))를 “Turn on” 하는 동작)의 수행과 관련된 제1 태스크 수행 정보를 포함할 수 있다. 상기 제2 전자 장치(1302)(예: 스마트 TV(202a))는 상기 제1 커맨드에 포함된 상기 제1 태스크 수행 정보의 제1 동작 정보에 기반하여 상기 제1 요청에 대응되는 상기 제1 태스크를 수행할 수 있다. 제2 전자 장치(1302)(예: 스마트 TV(202a))는 상기 제1 태스크 수행 정보에 포함된 상기 제1 동작 정보와 관련된 UI 정보에 기반하여 상기 제1 태스크의 수행과 관련된 사용자 인터페이스(UI)를 제2 전자 장치(1302)(예: 스마트 TV(202a))의 표시 장치(예: 디스플레이(313)) 상에 더 표시할 수 있다.
동작 1324에서, 일 실시예에 따르면, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(1301)는 자신의 상태와 상기 제1 태스크의 수행 동작이 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 상기 제1 전자 장치(1301)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있다. 예를 들어, 제1 전자 장치(1301)가 음악 재생과 같은 제1 기능을 수행하고 있는 경우 제1 전자 장치(1301)의 상태는 곧 상기 제1 기능 수행 동작 상태일 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"일 수 있다. 이 경우, 제1 전자 장치(1301)의 상태는 상기 제1 기능(예: 음악 재생) 수행 동작 상태이므로 청각적 요소의 속성을 가질 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"이므로 청각적 요소 또는 시각적 요소의 속성을 가질 수 있다. 제1 전자 장치(1301)는 제1 전자 장치(1301)의 상태(제 1 기능 수행 동작)와 상기 제1 태스크의 수행 동작이 청각적 요소의 동일한 속성을 가지므로, 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 상태와 제1 태스크의 수행 동작이 서로 간섭되도록 제1 전자 장치(1301)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(1302)(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(1301)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(1302)(예: 스마트 TV(202a)) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 제1 전자 장치(1301)는 제1 전자 장치(1301)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(1302)(예: 스마트 TV(202a)) 간 거리가 임계값 미만이면, 제1 전자 장치(1301)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다. 일 실시예에 따르면, 상기 임계값은 상기 제1 전자 장치(1301)의 상태와 상기 제1 태스크의 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다. 예를 들어, 상기 임계값은 상기 제1 전자 장치(1301)의 상태 중 오디오 출력 또는 비디오 출력과 관련된 기능 수행 동작과, 상기 제1 태스크 수행 동작 중 오디오 출력 또는 비디오 출력과 관련된 제1 태스크 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다.
동작 1326에서, 예컨대, 제1 전자 장치(1301)는 제1 전자 장치(1301)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 제1 전자 장치(1301)의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 지능형 서버(1308)로 전송할 수 있다.
동작 1328에서, 예컨대, 지능형 서버(1308)는 제1 전자 장치(1301)로부터 수신한 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(1301)를 제어하기 위한 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1308)는 상기 제1 출력 음성 데이터에 대한 요청이 수신되면, 상기 요청으로부터 검출된 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 전자 장치(1301)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 지능형 서버(1308)는, 제1 전자 장치(1301)로부터 상기 제1 전자 장치(1301)의 상태와 상기 제1 태스크 수행 동작 간 연관성이 있는 것으로 판단된 연관성 판단 결과가 수신되면, 상기 제1 전자 장치(1301)의 상태 정보에 기반하여 상기 제1 전자 장치(1301)의 상태를 판단하고, 자연어 생성 모듈(예: NLG 모듈(425))을 통해, 상기 판단된 제1 전자 장치(1301)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1308)는 상기 제1 전자 장치(1301)의 상태의 판단 결과, 상기 제1 전자 장치(1301)의 상태가 제1 기능 수행(예: 음악 재생) 상태일 경우, 상기 자연어 생성 모듈(425)을 이용하여 상기 제1 기능(예: 음악 재생) 수행 동작의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치(1301)의 상태(예: 제1 기능(예: 음악 재생)) 수행 동작)의 조절과 관련된 후속 질문(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요?" 또는 "음악 재생을 종료할까요?)을 포함할 수 있다.
동작 1330에서, 예컨대, 지능형 서버(1308)는 제1 출력 음성 데이터를 제1 전자 장치(1301)로 전송할 수 있다. 예를 들어, 지능형 서버(1308)는 통신 인터페이스(410)를 이용하여 제2 네트워크(299)를 통해 제1 출력 음성 데이터를 제1 전자 장치(1301)로 전송할 수 있다.
동작 1332에서, 예컨대, 제1 전자 장치(1301)는 제1 출력 음성 데이터를 출력할 수 있다. 예를 들어, 제1 전자 장치(1301)는 음향 출력 장치(예: 음향 출력 장치(340))(예: 스피커)를 통해 수신된 제1 출력 음성 데이터를 출력할 수 있다.
동작 1332 이후, 제1 전자 장치(1301), 지능형 서버(1308) 또는 제2 전자 장치(1302)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 14는 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 14에서, 제1 전자 장치(1401)(예: 제1 전자 장치(201))와 제2 전자 장치(1402)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신 가능하며, 제1 전자 장치(1401)와 지능형 서버(1408)(예: 지능형 서버(408))는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)를 통해 통신 가능할 수 있으며, 제2 전자 장치(1402)와 지능형 서버(1408)는 제1 전자 장치(1401)를 통해 데이터 또는 정보를 송수신할 수 있다. 도 14에서, 연관성 판단의 주체가 지능형 서버(1408)인 것을 제외하면, 도 13과 동일하므로 상이한 동작을 중심으로 설명하기로 한다.
동작 1412 내지 1420은 도 13의 동작 1312 내지 1320과 동일하므로, 이에 대한 설명은 생략하기로 한다.
동작 1424에서, 예컨대, 제1 전자 장치(1401)는 자신의 상태 정보를 지능형 서버(1408)로 전송할 수 있다. 예를 들어, 제1 전자 장치(1401)는 제2 통신 인터페이스(예: 제2 통신 인터페이스(314))(예: 원거리 무선 통신 인터페이스)를 이용하여 제2 네트워크(299)를 통해 자신의 상태 정보를 지능형 서버(1408)로 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1401)는 동작 1424를 주기적으로 또는 비주기적으로 수행할 수 있다. 예를 들어, 제1 전자 장치(1401)는 지정된 주기에 따라 자신의 상태 정보를 지능형 서버(1408)로 전송하거나, 지능형 서버(1408)의 요청 시 이에 응답하여 자신의 상태 정보를 지능형 서버(1408)로 전송할 수 있다. 도 14에서, 동작 1424은 동작 1420 이후에 수행되는 것으로 도시되었으나, 이에 한정되는 것은 아니며 어느 동작 단계에서 수행해도 무방하다. 일 실시예에 따르면, 제1 전자 장치(1401)는 동작 1414에서 제1 입력 음성 데이터를 지능형 서버(1408)로 전송 시 자신의 상태 정보를 함께 전송한 경우, 동작 1424는 생략될 수도 있다.
동작 1426에서, 예컨대, 지능형 서버(1408)는 제1 전자 장치(1401)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성을 판단할 수 있다.
일 실시예에 따르면, 지능형 서버(1408)는 판단된 상기 제1 전자 장치(1401)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 지능형 서버(1408)는 제1 전자 장치(1401)의 상태 정보에 적어도 일부 기반하여 제1 전자 장치(1401)의 상태를 판단하고, 상기 판단된 제1 전자 장치(1401)의 상태와 상기 제1 태스크의 수행 동작이 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 상기 제1 전자 장치(1401)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있다. 예를 들어, 제1 전자 장치(1401)가 음악 재생과 같은 제1 기능을 수행하고 있는 경우, 상기 판단된 제1 전자 장치(1401)의 상태는 곧 상기 제1 기능의 수행 상태일 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"일 수 있다. 이 경우, 상기 판단된 제1 전자 장치(1401)의 상태는 상기 제1 기능 수행 동작(예: 음악 재생) 상태이므로 청각적 요소의 속성을 가질 수 있으며, 상기 제1 태스크의 수행 동작은 "TV를 켜는 동작"이므로 청각적 요소 또는 시각적 요소의 속성을 가질 수 있다. 지능형 서버(1408)는 제1 기능 수행 동작과 제1 태스크의 수행 동작이 청각적 요소의 동일한 속성을 가지므로, 제1 전자 장치(1401)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다.
일 실시예에 따르면, 지능형 서버(1408)는 제1 전자 장치(1401)의 상태와 제1 태스크의 수행 동작이 서로 간섭되도록 제1 전자 장치(1401)와 상기 제1 태스크를 수행하는 대상 장치(예: 제2 전자 장치(1402)(예: 스마트 TV(202a))가 서로 근접해 있는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 지능형 서버(1408)는 제1 전자 장치(1401)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단되면, 제1 전자 장치(1401)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(1402)(예: 스마트 TV(202a)) 간 거리가 임계값 미만인지 여부를 판단할 수 있다. 지능형 서버(1408)는 제1 전자 장치(1401)와 상기 제1 태스크를 수행하는 대상 장치인 제2 전자 장치(1402)(예: 스마트 TV(202a)) 간 거리가 임계값 미만이면, 제1 전자 장치(1401)의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단할 수 있다. 일 실시예에 따르면, 상기 임계값은 상기 제1 전자 장치(1401)의 상태와 상기 제1 태스크의 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다. 예를 들어, 상기 임계값은 상기 제1 전자 장치(1401)의 상태 중 오디오 출력 또는 비디오 출력과 관련된 기능 수행 동작과, 상기 제1 태스크 수행 동작 중 오디오 출력 또는 비디오 출력과 관련된 제1 태스크 수행 동작이 간섭될 수 있는 최소 거리로 설정될 수 있다.
동작 1428에서, 예컨대, 지능형 서버(1408)는 상기 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(1401)를 제어하기 위한 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1408)는 상기 연관성 판단 결과에 적어도 일부 기반하여 상기 제1 전자 장치(1401)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 예를 들어, 지능형 서버(1408)는 상기 연관성 판단 결과, 상기 제1 전자 장치(1401)의 상태와 상기 제1 태스크 수행 동작 간 연관성이 있는 것으로 판단되면, 자연어 생성 모듈(예: NLG 모듈(425))을 통해, 상기 판단된 제1 전자 장치(1401)의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1408)는 상기 제1 전자 장치(1401)의 상태의 판단 결과, 상기 제1 전자 장치(1401)의 상태가 제1 기능 수행(예: 음악 재생) 상태일 경우, 상기 자연어 생성 모듈(425)을 이용하여 상기 제1 기능(예: 음악 재생) 수행 동작의 조절과 관련된 제1 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치(1401)의 상태(예: 제1 기능(예: 음악 재생)) 수행 동작)의 조절과 관련된 후속 질문(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요?" 또는 "음악 재생을 종료할까요?)을 포함할 수 있다.
동작 1430 및 1432는 도 13의 동작 1330 및 1332와 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1432 이후, 제1 전자 장치(1401), 지능형 서버(1408) 또는 제2 전자 장치(1402)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 15는 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 15에서, 제1 전자 장치(1501)(예: 제1 전자 장치(201))와 제2 전자 장치(1502)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신할 수 있다. 제2 전자 장치(1502)는 스마트 홈 서비스를 제공하기 위한 서버(예: 홈 네트워크 서버(202S))(예: AP 또는 라우터)에 등록되어 홈 네트워크(1502N)(예: 홈 네트워크(202N))를 형성할 수 있으며, 제1 전자 장치(1501)는 IoT 서버(1509)(예: 도 2의 IoT 서버(209))와 연동되어 제2 전자 장치(1502)를 제어할 수도 있다. 제1 전자 장치(1501)와 지능형 서버(1508)(예: 지능형 서버(408))(예: BixbyTM)와 IoT 서버(1509)는 서로 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)을 통해 통신할 수 있으며, 제2 전자 장치(1502)는 제1 전자 장치(1501) 또는 IoT 서버(1509)를 통해 지능형 서버(1508)와 데이터 또는 정보를 송수신할 수 있다. 도 15는 일부 동작을 제외하면 도 13의 동작과 동일하므로 상이한 동작을 중심으로 설명하기로 한다.
도 15 참조하면, 동작 1512 내지 1516은 도 13의 동작 1312 내지 1314와 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1518에서, 예컨대, 지능형 서버(1508)는 제2 네트워크(299)(예: 원거리 무선 통신)를 통해 제1 태스크 수행 정보를 IoT 서버(1509)로 전송할 수 있다. 예를 들어, 지능형 서버(1508)는 지능형 서버(1508)의 통신 인터페이스(예: 통신 인터페이스(410))를 이용하여 상기 제1 태스크 수행 정보를 IoT 서버(1509)로 전송할 수 있다.
동작 1520에서, IoT 서버(1509)는 지능형 서버(1508)로부터 수신된 상기 제1 태스크 수행 정보의 적어도 일부를 포함하는 제1 커맨드를 제2 전자 장치(1502)(예: 스마트 TV(202a))로 전송할 수 있다.
일 실시예에 따르면, IoT 서버(1509)는 상기 제1 태스크 수행 정보에 적어도 일부 기반하여, 상기 제1 태스크 수행 정보에 포함된 제1 동작 정보로부터 상기 제1 태스크를 수행할 대상 장치인 도메인을 확인하고, 상기 확인된 도메인에 대응되는 대상 장치를 검색할 수 있다. 예를 들어, IoT 서버(1509)는 IoT 서버(1509)에 등록된 적어도 하나의 제2 전자 장치(예: 적어도 하나의 제2 전자 장치(202; 202a~202d)) 중 상기 확인된 도메인에 대응되는 장치를 검색할 수 있다. 예를 들어, 상기 확인된 도메인이 “TV”인 경우, IoT 서버(1509)는 상기 적어도 하나의 제2 전자 장치(202; 202a~202d)를 검색하여 상기 확인된 도메인에 대응되는 장치로 상기 “TV”에 대응되는 스마트 TV(202a)를 검출할 수 있다. 예를 들어, 상기 “TV”에 대응되는 제2 전자 장치가 복수 개일 경우 지정된 우선 순위에 따라 우선 순위가 높은 제2 전자 장치가 선택될 수 있다. IoT 서버(1509)는 상기 검출된 제2 전자 장치(1502)(예: 스마트 TV(202a))가 상기 제1 태스크 수행 정보에 포함된 제1 동작 시퀀스를 수행하도록 하는 제1 커맨드를 생성하여 상기 확인된 도메인에 대응되는 상기 검출된 제2 전자 장치(1502)(예: 스마트 TV(202a))로 전달할 수 있다.
동작 1522에서, 예컨대, 제2 전자 장치(1502)(예: 스마트 TV(202a))는 IoT 서버(1509)로부터 수신된 상기 제1 커맨드에 기반하여 상기 제1 요청에 대응되는 제1 태스크 수행 동작(예: 제2 전자 장치(1502)(예: 스마트 TV(202a))를 “Turn on” 하는 동작)을 실행할 수 있다. 예를 들어, 제2 전자 장치(1502)(예: 스마트 TV(202a))는 상기 제1 커맨드에 따라 상기 제1 태스크 수행 정보의 제1 동작 정보에 포함된 제1 동작 시퀀스에 기반하여 상기 제1 요청에 대응되는 제1 태스크를 수행할 수 있다. 다양한 실시예에 따라, 상기 제1 전자 장치(1501)는 상기 제1 태스크의 수행 결과와 관련된 정보(예: “TV를 켰습니다.”)를 디스플레이(예: 디스플레이(313))를 통해 출력할 수 있다.
동작 1524 내지 1532는 도 13의 동작 1324 내지 1332와 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1532 이후, 제1 전자 장치(1501), 지능형 서버(1508), IoT 서버(1509) 또는 제2 전자 장치(1502)는 적어도 하나의 후속 동작을 더 수행할 수 있으며, 상기 적어도 하나의 후속 동작에 대해서는 도 17 및 18을 참조하여 더욱 상세히 설명하기로 한다.
도 16은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 16에서, 제1 전자 장치(1601)(예: 제1 전자 장치(201))와 제2 전자 장치(1602)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신할 수 있다. 제2 전자 장치(1602)는 스마트 홈 서비스를 제공하기 위한 서버(예: 홈 네트워크 서버(202S))(예: AP 또는 라우터)에 등록되어 홈 네트워크(1602N)(예: 홈 네트워크(202N))를 형성할 수 있으며, 제1 전자 장치(1601)는 IoT 서버(1609)(예: 도 2의 IoT 서버(209))와 연동되어 제2 전자 장치(1602)를 제어할 수도 있다. 제1 전자 장치(1601)와 지능형 서버(1608)(예: 지능형 서버(408))(예: BixbyTM 서버)와 IoT 서버(1609)는 서로 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)을 통해 통신할 수 있으며, 제2 전자 장치(1602)는 제1 전자 장치(1601) 또는 IoT 서버(1609)를 통해 지능형 서버(1608)와 데이터 또는 정보를 송수신할 수 있다. 도 16에서, 연관성 판단의 주체가 지능형 서버(1608)인 것을 제외하면, 도 15와 동일하므로 상이한 동작을 중심으로 설명하기로 한다.
동작 1612 내지 1622는 도 15의 동작 1512 내지 1522와 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1624에서, 예컨대, 제1 전자 장치(1601)는 자신의 상태 정보를 지능형 서버(1608)로 전송할 수 있다. 예를 들어, 제1 전자 장치(1601)는 제2 통신 인터페이스(예: 원거리 무선 통신 인터페이스)를 이용하여 제2 네트워크(299)를 통해 자신의 상태 정보를 지능형 서버(1608)로 전송할 수 있다. 다양한 실시예에 따라, 상기 지능형 서버(1608)는 상기 제1 전자 장치(1601)로부터 상태 정보를 받는 대신, IoT 서버(1609)로부터 상기 제1 전자 장치(1601)의 상태 정보를 수신할 수도 있다. 다양한 실시예에 따라, 상기 제1 전자 장치(1601)가 IoT 서버(1609)에 등록되어 있는 상태일 경우, 상기 제1 전자 장치(1601)의 상태 정보를 주기적으로 또는 요청에 의해 IoT 서버(1609)에 업데이트 할 수 있다. 예컨대, 상기 제1 전자 장치(1601)는 상기 제1 전자 장치(1601)의 상태 정보를 IoT 서버(1609)로 전송하고, 상기 지능형 서버(1608)는 IoT 서버(1609)로 상기 제1 전자 장치(1601)의 상태 정보를 요청할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1601)는 동작 1624를 주기적으로 또는 비주기적으로 수행할 수 있다. 예를 들어, 제1 전자 장치(1601)는 지정된 주기에 따라 자신의 상태 정보를 지능형 서버(1608)로 전송하거나, 지능형 서버(1608)의 요청 시 이에 응답하여 자신의 상태 정보를 지능형 서버(1608)로 전송할 수 있다. 도 16에서, 동작 1624은 동작 1620 이후에 수행되는 것으로 도시되었으나, 이에 한정되는 것은 아니며 어느 동작 단계에서 수행해도 무방하다. 일 실시예에 따르면, 제1 전자 장치(1601)는 동작 1614에서 제1 입력 음성 데이터를 지능형 서버(1808)로 전송 시 자신의 상태 정보를 함께 전송한 경우, 동작 1624는 생략될 수도 있다.
동작 1626에서, 예컨대, 지능형 서버(1608)는 제1 전자 장치(1601)의 상태와 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 의해 수행될 제1 태스크의 수행 동작 간 연관성을 판단할 수 있다.
일 실시예에 따르면, 지능형 서버(1608)는 판단된 상기 제1 전자 장치(1601)의 상태와 제1 태스크의 수행 동작이 서로 간섭되는지 여부에 따라 상기 연관성을 판단할 수 있다. 예를 들어, 지능형 서버(1608)는 제1 전자 장치(1601)의 상태 정보에 적어도 일부 기반하여 제1 전자 장치(1601)의 상태를 판단하고, 상기 판단된 제1 전자 장치(1601)의 상태와 상기 제1 태스크의 수행 동작이 동일한 속성(예: 청각적 요소 또는 시각적 요소)을 포함하는 경우 상기 제1 전자 장치(1601)의 상태와 상기 제1 태스크의 수행 동작이 서로 간섭되는 것으로 판단할 수 있다.
동작 1628 내지 1632는 도 15의 동작 1528 내지 1532와 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
도 17은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 17에서, 제1 전자 장치(1701)(예: 제1 전자 장치(201))와 제2 전자 장치(1702)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신할 수 있고, 제1 전자 장치(1701)와 지능형 서버(1708)(예: 지능형 서버(408))는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)을 통해 통신할 수 있으며, 제2 전자 장치(1702)와 지능형 서버(1708)는 제1 전자 장치(1701)를 통해 데이터 또는 정보를 송수신할 수 있다.
도 17을 참조하면, 동작 1712에서, 제1 전자 장치(1701)는 제1 전자 장치(1701) 또는 제2 전자 장치(1702)의 상태의 조절과 관련된 인디케이션을 출력할 수 있다. 예를 들어, 제1 전자 장치(1701)는 제1 전자 장치(1701) 또는 제2 전자 장치(예: 스마트 TV(202a))의 상태와 제1 전자 장치(1701)에 의해 획득된 제1 입력 음성 데이터의 제1 요청에 대응되는 음성 인식 제어에 따라 수행될 제1 태스크의 수행 동작 간 연관성 판단 결과에 적어도 일부 기반하여, 제1 전자 장치(1701) 또는 제2 전자 장치(1702)의 상태를 조절하기 위한 인디케이션을 출력할 수 있다.
일 실시예에 따르면, 상기 연관성 판단의 주체가 지능형 서버(1708)일 경우, 제1 전자 장치(1701)는, 지능형 서버(1708)로부터, 상기 연관성 판단 결과에 적어도 일부 기반하여 생성된 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 수신하여 출력할 수 있다.
일 실시예에 따르면, 상기 연관성 판단의 주체가 제1 전자 장치(1701)일 경우, 제1 전자 장치(1701)는 상기 연관성 판단 결과에 적어도 일부 기반하여 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 인디케이션을 생성할 수 있다.
일 실시예에 따르면, 상기 인디케이션은 상기 연관성 판단 결과, 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태와, 상기 1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 시각적 정보 또는 청각적 정보 중 적어도 일부를 포함할 수 있다.
예를 들어, 제1 전자 장치(1701)는 상기 연관성 판단 결과 제1 전자 장치(1701)의 상태와 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))에서 수행될 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 시각적 정보 또는 청각적 정보 중 적어도 일부를 포함하는 인디케이션(예: 제1 인디케이션)을 수신하거나, 지능형 서버(408)로부터 상기 제1 인디케이션을 수신할 수 있다.
예를 들어, 제1 전자 장치(1701)는 상기 연관성 판단 결과 제1 전자 장치(1701)의 상태와 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))에서 수행될 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 시각적 정보 또는 청각적 정보 중 적어도 일부를 포함하는 인디케이션(예: 제2 인디케이션)을 수신하거나, 지능형 서버(408)로부터 상기 제2 인디케이션을 수신할 수 있다.
예를 들어, 제1 전자 장치(1701)는 상기 연관성 판단 결과 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태와 상기 제1 전자 장치(1701)에서 수행될 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 시각적 정보 또는 청각적 정보 중 적어도 일부를 포함하는 인디케이션(예: 제3 인디케이션)을 수신하거나, 지능형 서버(408)로부터 상기 제3 인디케이션을 수신할 수 있다.
예를 들어, 제1 전자 장치(1701)는 상기 연관성 판단 결과 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태와 상기 제1 전자 장치(1701)에서 수행될 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 시각적 정보 또는 청각적 정보 중 적어도 일부를 포함하는 인디케이션(예: 제4 인디케이션)을 수신하거나, 지능형 서버(408)로부터 상기 제4 인디케이션을 수신할 수 있다.
일 실시예에 따르면, 상기 청각적 정보는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절을 알리는 알림음 또는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 후속 질문을 포함하는 제1 출력 음성 데이터를 포함할 수 있다. 예를 들어, 상기 제1 전자 장치(1701)가 상기 제1 또는 제4 인디케이션을 출력하는 경우, 상기 제1 출력 음성 데이터는 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 후속 질문(예: "음악 소리를 낮출까요?", "음악 소리를 높일까요?" 또는 "음악 재생을 종료할까요?)을 포함할 수 있다. 다른 예를 들어, 제1 전자 장치(1701)가 상기 제2 또는 제3 인디케이션을 출력하는 경우, 상기 제1 출력 음성 데이터는 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 후속 질문(예: "TV 볼륨을 낮출까요?" 또는 "TV 볼륨을 높일까요?")을 포함할 수 있다. 제1 전자 장치(1701)는 음향 출력 장치(예: 스피커(314))를 통해 상기 청각적 정보를 출력할 수 있다.
일 실시예에 따르면, 상기 시각적 정보는 상기 제1 전자 장치(1701) 또는 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 텍스트, 문자, 그림, 사진 또는 이모티콘을 포함할 수 있다. 상기 시각적 정보는 대화 어플리케이션과 같은 사용자 인터페이스(UI)를 포함할 수 있다. 상기 시각적 정보는 상기 제1 전자 장치(1701) 또는 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 상기 제1 출력 음성 데이터에 포함된 상기 후속 질문 및 상기 후속 질문에 대한 사용자 입력을 수신하기 위한 적어도 하나의 입력 버튼(아이콘)을 포함하는 사용자 인터페이스(UI)일 수 있다. 상기 시각적 정보는 이에 한정되는 것은 아니며, 다양한 모든 시각적 표현(visual representation)을 포함할 수 있다. 상기 제1 전자 장치(1701)는 표시 장치(예: 디스플레이(313))를 통해 상기 시각적 정보를 출력할 수 있다. 제1 전자 장치(1701)는 상기 음향 출력 장치(예: 스피커(314)) 및 상기 표시 장치를 통해 상기 청각적 정보 및 상기 시각적 정보를 동시에 출력할 수도 있다.
동작 1714에서, 예컨대, 제1 전자 장치(1701)는 상기 인디케이션을 통해 출력된 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 제2 태스크의 수행에 대한 사용자 입력을 수신할 수 있다. 예를 들어, 제1 전자 장치(1701)는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 후속 질문에 대한 사용자 입력을 수신할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1701)는 음성 입력 장치(예: 마이크(311a)), 입력 모듈(예: 입력 모듈(311)) 내 키 입력 장치 또는 디스플레이(313) 내 터치스크린을 통해 상기 사용자 입력을 수신할 수 있다. 예를 들어, 제1 전자 장치(1701)는 사용자 발화에 의한 음성 입력 장치(예: 마이크(311a))를 통해 획득된 음성 데이터(예: 제2 입력 음성 데이터)를 상기 사용자 입력으로 수신하거나, 키 입력 장치를 통해 선택된 키의 신호를 상기 사용자 입력으로 수신하거나, 상기 터치스크린을 통해 획득된 사용자 터치를 상기 사용자 입력으로 수신할 수 있다.
동작 1716에서, 예컨대, 제1 전자 장치(1701)는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 제2 태스크를 수행하기 위한 제2 태스크 수행 정보에 대한 요청을 지능형 서버(1708)로 전송할 수 있다. 예를 들어, 제1 전자 장치(1701)는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 후속 질문에 대해 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태를 조절하도록 상기 제2 태스크의 수행을 요청하는 사용자 입력이 수신되면, 상기 제2 태스크 수행 정보에 대한 요청을 지능형 서버(1708)로 전송할 수 있다.
일 실시예에 따르면, 상기 제2 태스크 수행 정보에 대한 요청은 상기 제2 태스크의 수행과 관련된 제2 입력 음성 데이터를 포함할 수 있다. 예를 들어, 상기 제2 입력 음성 데이터는 상기 후속 질문에 대한 응답(예: “Yes”) 또는 상기 제1 전자 장치(1701) 또는 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 제2 요청(또는 명령)을 포함할 수 있다.
예를 들어, 제1 전자 장치(1701)가 상기 제1 또는 제4 인디케이션에 대한 사용자 입력으로서 상기 제2 입력 음성 데이터를 수신하는 경우, 상기 제2 입력 음성 데이터는 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 제2 요청(또는 명령)(예: “음악 소리를 줄여줘”, “음악 소리를 높여줘” 또는 “음악 재생을 종료해줘”)를 포함할 수 있다. 다른 예를 들어, 제1 전자 장치(1701)가 상기 제2 또는 제3 인디케이션에 대한 사용자 입력으로서 상기 제2 입력 음성 데이터를 수신하는 경우, 상기 제2 입력 음성 데이터는 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))의 상태의 조절과 관련된 제2 요청(또는 명령)(예: “TV 볼륨을 줄여줘” 또는 “TV 볼륨을 높여줘”)을 포함할 수 있다.동작 1718에서, 예컨대, 지능형 서버(1708)는 제1 전자 장치(1701)로부터 수신된 상기 제2 태스크 수행 정보에 대한 요청(예: 제2 입력 음성 데이터의 제2 요청)의 분석 결과에 적어도 일부 기반하여, 상기 제2 태스크를 수행하기 위한 제2 태스크 수행 정보를 생성할 수 있다.
일 실시예에 따르면, 지능형 서버(1708)는 상기 제2 태스크 수행 정보에 대한 요청을 분석할 수 있다. 예를 들어, 지능형 서버(1708)는 상기 제2 태스크 수행 정보에 대한 요청에 상기 제2 입력 음성 데이터가 포함된 경우, 상기 제2 입력 음성 데이터에 포함된 상기 제2 요청을 분석할 수 있다. 예를 들어, 지능형 서버(1708)는 자동 음성 인식 모듈(예: ASR 모듈(421))를 통해 상기 제2 입력 음성 데이터의 상기 제2 요청을 인식하여 텍스트로 변환하고, 자연어 이해 모듈(예: NLU 모듈(422))을 통해 상기 변환된 텍스트에 기반하여 상기 제2 입력 음성 데이터에 포함된 제2 요청에 대응되는 사용자의 의도(intent)(예: 수행하고자 하는 동작(예: 제2 태스크 수행 동작)) 또는 도메인(예: 수행하고자 하는 동작의 실행 대상(예: 제2 태스크를 수행하는 장치))을 검출할 수 있다. 지능형 서버(1708)는 상기 검출된 사용자의 의도 또는 도메인에 적어도 일부 기반하여 상기 제2 요청에 대응되는 상기 제2 태스크를 수행하기 위한 제2 태스크 수행 정보를 생성할 수 있다.
일 실시예에 따르면, 상기 제2 태스크 수행 정보는 상기 제2 요청에 대응되는 제2 태스크를 수행하기 위한 제2 동작 정보(예: 제2 패스 룰)를 포함할 수 있다. 예를 들어, 지능형 서버(1708)는 상기 제2 입력 음성 데이터의 분석 결과, 상기 검출된 사용자의 의도 또는 도메인에 기반하여, 패스 플래너 모듈(예: 패스 플래너 모듈(423))을 통해 패스 룰 데이터베이스(예: 패스 룰 DB(436))로부터 상기 도메인이 상기 사용자의 의도를 수행하는데 필요한 파라미터 또는 동작 순서에 대응되는 제2 동작 시퀀스를 선택하거나 생성할 수 있다.
일 실시예에 따르면, 상기 제2 동작 정보(예: 제2 패스 룰)는 상기 제2 요청에 대응하여 실행될 대상 장치 또는 앱, 상기 대상 장치 또는 앱에서 실행될 동작(예: 제2 태스크 또는 제2 태스크와 관련된 적어도 하나 이상의 상태) 및 상기 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함하는 제2 동작 시퀀스를 포함할 수 있다.
예를 들어, 상기 제2 입력 음성 데이터에 포함된 제2 요청이 "음악 소리를 줄여줘(Reduce the sound of music)” 인 경우, 상기 지능형 서버(1708)는 상기 제1 전자 장치(1701)의 음악 재생 어플리케이션을 상기 제2 요청에 대응하여 실행될 대상 장치로 포함하고, "음악 소리를 줄여줘"동작을 상기 대상 장치의 앱에서 실행될 동작(예: 제2 태스크)으로 포함하며, 상기 제1 전자 장치(1701)의 음악 재생 어플리케이션이 음악 소리를 줄이는데 필요한 파라미터 또는 동작 순서에 대한 정보를 상기 제2 동작 시퀀스로 포함하는 제2 태스크 수행 정보를 생성할 수 있다.
예를 들어, 상기 제2 입력 음성 데이터에 포함된 제2 요청이 "TV 볼륨을 줄여줘(Reduce the volume of the TV)” 인 경우, 상기 지능형 서버(1708)는 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))(또는 상기 제2 전자 장치(1702)가 수행중인 방송 콘텐트 출력과 같은 기능)을 상기 제2 요청에 대응하여 실행될 대상 장치 또는 대상 앱(기능)으로 포함하고, "TV 볼륨을 줄여줘"동작을 상기 대상 장치 또는 앱(기능)에서 실행될 동작(예: 제2 태스크)으로 포함하며, 상기 제2 전자 장치(1702)(예: 스마트 TV(202a))가 방송 콘텐트 출력의 볼륨을 줄이는데 필요한 파라미터 또는 동작 순서에 대한 정보를 상기 제2 동작 시퀀스로 포함하는 제2 동작 정보를 생성할 수 있다.
일 실시예에 따르면, 상기 제2 태스크 수행 정보는 상기 제2 태스크 또는 제2 동작 정보와 관련된 사용자 인터페이스(UI) 정보를 더 포함할 수 있다.
동작 1720에서, 예컨대, 지능형 서버(1708)는 제2 네트워크(299)(예: 원거리 무선 통신)를 통해 상기 제2 태스크 수행 정보를 제1 전자 장치(1701)로 전송할 수 있다. 예를 들어, 지능형 서버(1708)는 지능형 서버(1708)의 통신 인터페이스(예: 통신 인터페이스(410))를 이용하여 상기 제2 태스크 수행 정보를 제1 전자 장치(1701)로 전송할 수 있다.
동작 1722에서, 예컨대, 제1 전자 장치(1701)는 지능형 서버(1708)로부터 수신된 상기 제2 태스크 수행 정보에 기반하여 상기 제2 태스크를 수행할 수 있다. 예를 들어, 제1 전자 장치(1701)는 제1 또는 제4 인디케이션에 대한 사용자 입력으로 상기 제1 전자 장치(1701)의 상태의 조절에 대응되는 입력을 수신한 경우, 상기 제2 태스크 수행 정보에 포함된 제2 동작 정보로부터 상기 제2 태스크를 수행할 동작 또는 수행 대상을 확인하여 제2 동작 시퀀스에 따라 상기 제2 태스크를 수행할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1701)는 지능형 서버(1708)로부터 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 제2 태스크를 수행하기 위한 제2 태스크 수행 정보를 수신할 수 있다.
예를 들어, 상기 제2 태스크 수행 정보는 상기 제1 전자 장치(1701)가 획득한 제2 입력 음성 데이터에 포함된 상기 제2 요청에 대응되는 상기 제2 태스크(예: 제1 전자 장치(1701)의 음악 재생 어플리케이션의 음악 소리를 줄이는 동작)의 수행과 관련된 제2 동작 정보를 포함할 수 있다. 상기 제1 전자 장치(1701)는 상기 제2 태스크 수행 정보에 포함된 제2 동작 정보에 기반하여 상기 제2 요청에 대응되는 상기 제2 태스크를 수행할 수 있다. 제1 전자 장치(1701)는 상기 제2 태스크 수행 정보에 포함된 상기 제2 동작 정보와 관련된 UI 정보에 기반하여 상기 제2 태스크의 수행과 관련된 사용자 인터페이스(UI)를 표시 장치(예: 디스플레이(360)) 상에 더 표시할 수 있다.
동작 1724에서, 예컨대, 제1 전자 장치(1701)는 제2 태스크의 수행 결과와 관련된 제2 출력 음성 데이터에 대한 요청을 지능형 서버(1708)로 전송할 수 있다.
동작 1726에서, 예컨대, 지능형 서버(1708)는 상기 제2 태스크의 수행 결과와 관련된 제2 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1708)는 상기 제2 출력 음성 데이터에 대한 요청이 수신되면, 상기 제2 태스크의 수행 결과에 적어도 일부 기반하여, 자연어 생성 모듈(예: NLG 모듈(425))을 통해, 상기 제1 전자 장치(1701)의 상태의 조절과 관련된 상기 제2 태스크의 수행 결과에 대응되는 제2 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1708)는 상기 제1 전자 장치(1701)의 상태의 조절이 제1 기능 수행(예: 음악 재생) 상태의 조절일 경우, 상기 자연어 생성 모듈(425)을 이용하여 상기 제1 기능(예: 음악 재생) 수행 동작의 조절 결과에 대응되는 제2 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 제2 출력 음성 데이터는 상기 제1 전자 장치(1701)의 상태(예: 제1 기능(예: 음악 재생)) 수행 동작)의 조절 결과(예: "음악 소리를 낮췄습니다", "음악 소리를 높였습니다" 또는 "음악 재생을 종료했습니다")를 포함할 수 있다.
동작 1728에서, 예컨대, 지능형 서버(1708)는 제2 출력 음성 데이터를 제1 전자 장치(1701)로 전송할 수 있다. 예를 들어, 지능형 서버(1708)은 통신 인터페이스(410)를 이용하여 제2 네트워크(299)를 통해 제2 출력 음성 데이터를 제1 전자 장치(1701)로 전송할 수 있다.
동작 1730에서, 예컨대, 제1 전자 장치(1701)는 음향 출력 장치(340)(예: 스피커)를 통해 상기 수신된 제2 출력 음성 데이터를 출력할 수 있다.
도 18은 다양한 실시예에 따른 음성 인식 제어 시스템의 제어 방법을 나타내는 흐름도이다. 도 18에서, 제1 전자 장치(1801)(예: 제1 전자 장치(201))와 제2 전자 장치(1802)(예: 제2 전자 장치(202; 202a~202d))는 제1 네트워크(예: 제1 네트워크(298))(예: 근거리 무선 통신)를 통해 통신할 수 있고, 제1 전자 장치(1801)와 지능형 서버(1808)(예: 지능형 서버(408))는 제2 네트워크(예: 제2 네트워크(299))(예: 원거리 무선 통신)를 통해 통신할 수 있으며, 제2 전자 장치(1802)와 지능형 서버(1808)는 제1 전자 장치(1801)를 통해 데이터 또는 정보를 송수신할 수 있다.
도 18을 참조하면, 동작 1812 내지 1820은 도 17의 동작 1712 내지 1720과 동일하므로, 이에 대한 상세한 설명은 생략하기로 한다.
동작 1822에서, 예컨대, 제1 전자 장치(1801)는 지능형 서버(1808)로부터 수신된 제2 태스크 수행 정보에 적어도 일부 기반하여 생성된 제2 커맨드를 제2 전자 장치(1802)(예: 스마트 TV(202a))로 전송할 수 있다. 예를 들어, 제1 전자 장치(1801)는 제2 또는 제3 인디케이션에 대한 사용자 입력으로 상기 제2 전자 장치(1802)(예: 스마트 TV(202a))의 상태의 조절에 대응되는 입력을 수신한 경우, 상기 제2 태스크 수행 정보에 포함된 제2 동작 정보로부터 상기 제2 태스크를 수행할 대상 장치인 도메인을 확인하고, 상기 확인된 도메인에 대응되는 대상 장치를 검색할 수 있다. 예를 들어, 제1 전자 장치(1801)는 제1 전자 장치(1801)의 통신 연결 앱(예: Samsung ConnectTM)에 등록된 적어도 하나의 제2 전자 장치(1802)(예: 적어도 하나의 제2 전자 장치(202a-202d)) 중 상기 도메인에 대응되는 장치를 확인할 수 있다. 예를 들어, 상기 도메인이 “TV”인 경우, 제1 전자 장치(1801)는 상기 적어도 하나의 제2 전자 장치(1802)(예: 제2 전자 장치(202; 202a~202d))를 확인하여 상기 도메인에 대응되는 대상 장치로서 상기 “TV”에 대응되는 제2 전자 장치(1802)(예: 스마트 TV(202a))를 확인할 수 있다. 다양한 실시예에 따라, 상기 “TV”에 대응되는 제2 전자 장치가 복수 개일 경우 지정된 우선 순위에 따라 우선 순위가 높은 제2 전자 장치가 선택될 수 있다. 제1 전자 장치(1801)는 상기 제2 동작 정보에 기반하여 상기 검출된 제2 전자 장치(1802)(예: 스마트 TV(202a))가 상기 제2 태스크를 수행하도록 하는 제2 커맨드를 생성하고 상기 확인된 도메인에 대응되는 상기 검출된 제2 전자 장치(1802)(예: 스마트 TV(202a))로 상기 제2 커맨드를 전송할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1801)는 상기 제1 전자 장치(1801)의 통신 인터페이스(예: 통신 모듈(190))(예: 근거리 무선 통신 인터페이스)를 이용하여 제1 네트워크(298)를 통해 상기 제2 커맨드를 상기 대상 장치인 제2 전자 장치(1802)(예: 스마트 TV(202a))로 전송할 수 있다.
일 실시예에 따르면, 상기 동작 1820 및 1822에서, 제1 전자 장치(1801)가 지능형 서버(1808)로부터 상기 제2 태스크 수행 정보를 수신하여 상기 제2 커맨드를 상기 제2 전자 장치(1802)로 전송하는 것으로 설명하였으나, 이에 한정되는 것은 아니며, 상기 제2 전자 장치(1802)가 IoT 서버(예: IoT 서버(209))에 등록된 경우, 상기 지능형 서버(1808)는 상기 제2 태스크 수행 정보를 상기 IoT 서버(209)로 전송하고, 상기 IoT 서버(209)가 상기 제2 태스크 수행 정보에 적어도 일부 기반하여 제2 커맨드를 생성하고 이를 상기 제2 전자 장치(1802)로 전송할 수도 있다.
동작 1824에서, 예컨대, 제2 전자 장치(1802)(예: 스마트 TV(202a))는 제1 전자 장치(1801)로부터 수신된 상기 제2 커맨드에 포함된 상기 제2 태스크 수행 정보에 기반하여 상기 제2 태스크를 수행할 수 있다. 상기 제 2 커맨드는 제1 전자 장치(1801)가 획득한 제2 입력 음성 데이터에 포함된 상기 제2 요청에 대응되는 제2 태스크(예: 제2 전자 장치(1802)(예: 스마트 TV(202a))의 볼륨을 줄이는 동작)의 수행과 관련된 제2 태스크 수행 정보를 포함할 수 있다. 상기 제2 전자 장치(1802)(예: 스마트 TV(202a))는 상기 제2 커맨드에 포함된 상기 제2 태스크 수행 정보의 제2 동작 정보에 기반하여 상기 제2 요청에 대응되는 상기 제2 태스크를 수행할 수 있다. 제2 전자 장치(1802)(예: 스마트 TV(202a))는 상기 제2 태스크 수행 정보에 포함된 상기 제2 동작 정보와 관련된 UI 정보에 기반하여 상기 제2 태스크의 수행과 관련된 사용자 인터페이스(UI)를 제2 전자 장치(1202)(예: 스마트 TV(202a))의 표시 장치(미도시) 상에 더 표시할 수 있다.
동작 1826에서, 예컨대, 제2 전자 장치(1802)는 상기 제2 전자 장치(1802)의 상태의 조절과 관련된 상기 제2 태스크의 수행 결과에 적어도 일부 기반하여 생성된 피드백 정보를 제1 전자 장치(1801)로 전송할 수 있다. 예를 들어, 제2 전자 장치(1802)는 통신 인터페이스(예: 통신 모듈(190))(예: 근거리 통신 인터페이스)를 이용하여 제1 통신 네트워크(298)를 통해 상기 피드백 정보를 제1 전자 장치(1801)로 전송할 수 있다.
일 실시예에 따르면, 동작 1826에서, 제2 전자 장치(1802)가 상기 피드백 정보를 제1 전자 장치(1801)로 직접 전송하는 것으로 설명하였으나, 이에 한정되는 것은 아니며, 상기 제2 전자 장치(1802)가 상기 IoT 서버(209)에 등록된 경우, 상기 제2 전자 장치(1802)는 상기 피드백 정보를 IoT 서버(209)로 전송한 후, 상기 IoT 서버(209)가 상기 피드백 정보를 상기 제1 전자 장치(1801)로 전송하거나, 상기 IoT 서버(209)가 상기 피드백 정보를 상기 지능형 서버(1808)로 전송한 후, 상기 지능형 서버(1808)가 상기 피드백 정보를 상기 제1 전자 장치(1801)로 전송할 수도 있다.
동작 1828에서, 예컨대, 제1 전자 장치(1801)는 제2 태스크의 수행 결과와 관련된 제2 출력 음성 데이터에 대한 요청을 지능형 서버(1808)로 전송할 수 있다.
동작 1830에서, 예컨대, 지능형 서버(1808)는 상기 제2 태스크의 수행 결과와 관련된 제2 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1808)는 상기 제2 출력 음성 데이터에 대한 요청이 수신되면, 상기 제2 태스크의 수행 결과에 적어도 일부 기반하여, 자연어 생성 모듈(예: NLG 모듈(425))을 통해, 상기 제2 전자 장치(1802)의 상태의 조절과 관련된 상기 제2 태스크의 수행 결과에 대응되는 제2 출력 음성 데이터를 생성할 수 있다. 예를 들어, 지능형 서버(1808)는 상기 제2 전자 장치(1802)의 상태의 조절이 볼륨 조절일 경우, 상기 자연어 생성 모듈(425)을 이용하여 상기 볼륨 조절 결과에 대응되는 제2 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 상기 제2 출력 음성 데이터는 상기 제2 전자 장치(1802)의 상태의 조절 결과(예: "TV 볼륨을 낮췄습니다" 또는 "TV 볼륨을 높였습니다")를 포함할 수 있다.
동작 1832에서, 예컨대, 지능형 서버(1808)는 제2 출력 음성 데이터를 제1 전자 장치(1801)로 전송할 수 있다. 예를 들어, 지능형 서버(1808)은 통신 인터페이스(410)를 이용하여 제2 네트워크(299)를 통해 제2 출력 음성 데이터를 제1 전자 장치(1801)로 전송할 수 있다.
동작 1834에서, 예컨대, 제1 전자 장치(1801)는 음향 출력 장치(예: 스피커(314))를 통해 상기 수신된 제2 출력 음성 데이터를 출력할 수 있다.
도 19는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다.
도 19를 참조하면, 제1 전자 장치(1901)(예: 제1 전자 장치(201))가 사용자 입력으로서의 사용자 발화(1980a)에 의한 음성 신호를 수신하여 지능형 에이전트(예: 지능형 에이전트(315a))와 연동된 지능형 앱(예: 음성 인식 앱)을 실행시키는 것을 나타낸 것이다.
일 실시예에 따르면, 제1 전자 장치(1901)는 키 입력 장치(예: 입력 모듈(311))의 특정 하드웨어 키(1954a)(예: 음성 인식 제어 서비스를 제공하는 버튼)를 통해 사용자 음성을 인식하기 위한 지능형 앱(예: BixbyTM)을 실행시킬 수 있다. 예를 들어, 제1 전자 장치(1901)는 상기 특정 하드웨어 키(1954a)를 통해 사용자 입력으로서의 키 입력 신호를 수신한 경우 표시 장치(1960)(예: 표시 장치(160) 또는 디스플레이(313))에 지능형 앱의 UI(user interface)로서 채팅창(1961)을 표시할 수 있다. 사용자는, 예를 들어, 상기 하드웨어 키(1954a)를 누른 다음, 음성 입력 장치(1952)(예: 마이크(311a))를 통해 사용자 발화에 의한 음성(1980a)을 입력하면 지능형 앱의 채팅창(1961)이 표시 장치(1960)에 표시될 수 있다. 사용자는, 예를 들어, 지능형 앱의 채팅창(1961)가 표시된 상태에서 음성(1980b)을 입력하기 위해 지능형 앱의 채팅창(1961)에 포함된 음성인식 버튼(1962)을 터치할 수 있다. 사용자는, 다른 예를 들어, 음성(1980b)을 입력하기 위해 상기 하드웨어 키(1954a)를 지속적으로 누른 상태에서 음성(1980b)을 입력할 수 있다.
일 실시예에 따르면, 제1 전자 장치(1901)는 음성 입력 장치(1952)(예: 마이크)를 통해 음성(1980a, 1980b)을 인식하기 위한 지능형 앱을 실행시킬 수 있다. 예를 들어, 제1 전자 장치(1901)는 음성 입력 장치(1952)(예: 마이크)를 통해 지정된 음성(1980a)(예: wake up!)이 입력된 경우 표시 장치(1960)에 지능형 앱의 채팅창(1961)을 표시할 수 있다.
일 실시예에 따르면, 지능형 앱의 UI는 채팅 어플리케이션과 같은 다이얼로그 화면(예: 채팅창(1961))일 수 있으며, 상기 다이얼로그 화면에는 웰컴 메시지(예: “What Bixby greeting” 또는 “I'm all ear's”)(1961a) 또는 ASR(automatic speech recognition)을 거친 사용자 발화(1980b)(예: “Call my……”)에 대응되는 내용이 표시될 수 있다. 또한, 지능형 앱의 채팅창(1961)에는 사용자 발화를 돕기 위한 적어도 하나의 커맨드 힌트(1961b)(예: “Share my location” 또는 “Schedule a meetimg” )가 표시될 수 있다.
도 20a는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다. 도 20b는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다. 도 20c는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다. 도 20d는 다양한 실시예에 따른 제1 전자 장치의 사용자 인터페이스 화면의 일례를 나타낸 도면이다.
도 20a 내지 20d를 참조하면, 제1 전자 장치(2001)(예: 제1 전자 장치(201))가 사용자 입력으로서의 사용자 발화(2080a 또는 2080b)에 의한 음성 신호를 수신하여 지능형 에이전트(예: 지능형 에이전트(315a))와 연동된 지능형 앱(예: 음성 인식 앱)을 실행시키는 것을 나타낸 것이다.
도 20a를 참조하면, 제1 전자 장치(2001)는 키 입력 장치(예: 입력 모듈(311))의 특정 하드웨어 키(2054a)(예: 음성 인식 제어 서비스를 제공하는 버튼)를 통해 사용자 음성을 인식하기 위한 지능형 앱(예: BixbyTM)을 실행시킬 수 있다. 예를 들어, 제1 전자 장치(2001)는 상기 특정 하드웨어 키(2054a)를 통해 사용자 입력으로서의 키 입력 신호를 수신한 경우 표시 장치(2060)(예: 디스플레이(313))에 지능형 앱의 UI(user interface)로서 채팅창(2061)을 표시할 수 있다. 사용자는, 예를 들어, 상기 하드웨어 키(2054a)를 누른 다음, 음성 입력 장치(2052)(예: 입력 모듈(311))(예: 마이크(311a))를 통해 사용자 발화(2080a)에 의한 제1 입력 음성(예: “Turn on the TV”)을 입력하면 지능형 앱의 채팅창(2061)에 표시될 수 있다. 사용자는, 예를 들어, 지능형 앱의 채팅창(2061)이 표시된 상태에서 음성(2080a)을 입력하기 위해 지능형 앱의 채팅창(2061)에 포함된 음성인식 버튼(2062)을 터치할 수 있다. 사용자는, 다른 예를 들어, 음성(2080a)을 입력하기 위해 상기 하드웨어 키(2054a)를 지속적으로 눌러서 상기 제1 입력 음성(2080a)(예: “Turn on the TV”) 을 입력할 수 있다.
일 실시예에 따르면, 지능형 앱의 UI는 채팅 어플리케이션과 같은 채팅창(2061)일 수 있으며, 사용자 발화(2080a)에 의한 상기 제1 입력 음성(예: “Turn on the TV”)이 입력되면 상기 채팅창(2061)에는 웰컴 메시지(예: “What Bixby greeting” 또는 “I'm all ear's”)(2061a)가 표시되고, 지능형 앱의 채팅창(2061)에 음성인식 버튼(2062)이 위치한 필드에 현재 입력되는 사용자 발화(2080a)에 의한 제1 입력 음성(예: “Turn on the TV”)이 표시될 수 있다. 다양한 실시예에 따라, 지능형 앱의 채팅창(2061)에는 사용자 발화를 돕기 위한 적어도 하나의 커맨드 힌트(2061b)가 표시될 수 있다. 예컨대, 상기 지능형 앱의 채팅창(2061)에는 “Share my location” 또는 “Schedule a meeting” 가 커맨드 힌트(2061b)로서 표시될 수 있다.
도 20b를 참조하면, 제1 전자 장치(2001)는 상기 지능형 앱의 UI의 채팅창(2061)에 상기 제1 입력 음성(예: “Turn on the TV”)에 대응되는 텍스트(2061c)를 표시할 수 있다. 제1 전자 장치(2001)는 상기 제1 입력 음성(예: “Turn on the TV”)에 대응되는 태스크(예: 제1 태스크)의 수행이 완료되면, 해당 태스크(예: 제1 태스크)의 실행 결과에 대응하는 출력 음성(예: “I turned on the TV”)이 제1 전자 장치(2001)의 음향 출력 장치(예: 음향 출력 장치(340))(예: 내장 스피커) 또는 제1 전자 장치(2001)에 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(201b))를 통해 출력될 수 있다. 또한, 제1 전자 장치(2001)는 상기 출력 음성(예: “I turned on the TV”)에 대응되는 텍스트(2061d)를 상기 채팅창(2061)에 표시할 수 있다.
도 20c를 참조하면, 제1 전자 장치(2001)는 상기 제1 입력 음성(예: “Turn on the TV”)에 대응되는 태스크(예: 제1 태스크)가 수행된 후, 상기 제1 태스크의 실행에 따른 추가적인 제어(예: 제2 태스크의 수행)가 필요하다고 판단된 경우, 상기 제2 태스크의 수행과 관련된 출력 음성(예: “Do you want to reduce the sound of music?”)을 출력할 수 있다. 제1 전자 장치(2001)는 상기 출력 음성(예: “Do you want to reduce the sound of music?”)에 대응되는 텍스트(2061e)를 상기 채팅창(2061)에 표시할 수 있다. 상기 출력 음성(예: “Do you want to reduce the sound of music?”)은 상기 제2 태스크의 수행에 대한 후속 질문을 포함할 수 있다. 제1 전자 장치(2001)는 상기 출력 음성에 대응하는 사용자 입력으로서 사용자 발화(2080c)에 의한 제2 입력 음성(예: “Yes”)을 수신할 수 있다.
도 20d를 참조하면, 제1 전자 장치(2001)는 상기 제2 입력 음성(예: “Yes”)에 대응되는 텍스트(2061f)를 상기 채팅창(2061)에 표시할 수 있다. 제1 전자 장치(2001)는 상기 제2 입력 음성(예: “Yes”)에 대응되는 태스크(예: 제2 태스크)의 수행이 완료되면, 해당 태스크(예: 제2 태스크)의 실행 결과에 대응하는 출력 음성(예: “I reduced the sound of music”)이 제1 전자 장치(2001)의 음향 출력 장치(예: 음향 출력 장치(340))(예: 내장 스피커) 또는 제1 전자 장치(2001)에 기능적으로 연결된 기능적 연결 장치(예: AI 스피커(201b))를 통해 출력될 수 있다. 또한, 제1 전자 장치(2001)는 상기 출력 음성(예: “I reduced the sound of music”)에 대응되는 텍스트(2061g)를 상기 채팅창(2061)에 표시할 수 있다.
본 문서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 문서에서 기재된 기술의 범위를 한정하는 것은 아니다. 따라서, 본 문서의 범위는, 본 문서의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.

Claims (15)

  1. 서버에 있어서,
    적어도 하나의 통신 인터페이스;
    상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및
    상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    제1 전자 장치로부터, 사용자 발화(utterance)에 의해 제2 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고,
    상기 제1 전자 장치의 상태를 판단하거나 수신하고,
    상기 제1 전자 장치의 상태의 조절과 관련된 제1 응답을 상기 제1 전자 장치에 제공하도록 하는 인스트럭션들을 저장하는 서버.
  2. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고,
    상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고,
    상기 연관성 판단 결과 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터를 생성하고,
    상기 제1 출력 음성 데이터를 포함하는 상기 제1 응답을 상기 제1 전자 장치로 전송하도록 하는 서버.
  3. 제2항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 연관성 판단 시, 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 간섭되는지 여부를 판단하도록 하는 서버.
  4. 제3항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 연관성 판단 시, 상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 동일한 속성을 포함하는지 여부를 판단하도록 하는 서버.
  5. 제3항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 제1 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 상기 제2 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 간섭하도록 상기 제1 전자 장치와 상기 제2 전자 장치가 서로 근접하게 있는지를 판단하도록 하는 서버.
  6. 제2항에 있어서,
    상기 제1 출력 음성 데이터는 상기 제1 전자 장치의 상태의 조절과 관련된 제2 태스크의 수행에 대한 후속 질문(a follow-up question)을 포함하는 서버.
  7. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고,
    상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고,
    상기 연관성 판단 결과, 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 청각적 정보 또는 시각적 정보 중 적어도 일부를 포함하는 인디케이션을 생성하고,
    상기 인디케이션을 포함하는 상기 제1 응답을 상기 제1 전자 장치로 전송하도록 하는 서버.
  8. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고,
    상기 분석 결과에 적어도 일부 기반하여 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 생성하고,
    상기 제1 태스크 수행 정보를 상기 제2 전자 장치로 전송하도록 하며,
    상기 제1 태스크 수행 정보는 상기 제1 태스크를 수행하는 동작과 관련된 제1 동작 정보를 포함하며, 상기 제1 동작 정보는 상기 제1 태스크에 대한 수행 동작 및 수행 대상에 대한 정보, 상기 제1 태스크의 수행 동작에 대한 파라미터 정보 또는 상기 제1 태스크의 수행 동작에 대한 제1 동작 시퀀스를 포함하는 서버.
  9. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제1 입력 음성 데이터에 포함된 상기 제1 요청을 분석하고,
    상기 분석 결과에 적어도 일부 기반하여 상기 제1 전자 장치의 상태 및 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하거나, 상기 제1 전자 장치로부터 상기 연관성 판단 결과를 수신하고,
    상기 연관성 판단 결과, 상기 제1 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 제1 전자 장치의 상태의 조절과 관련된 제2 태스크를 수행하기 위한 제2 태스크 수행 정보를 생성하고,
    상기 제2 태스크 수행 정보를 상기 제1 전자 장치로 전송하도록 하는 서버.
  10. 전자 장치에 있어서,
    적어도 하나의 통신 인터페이스;
    상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및
    상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 전자 장치를 통해 사용자 발화(utterance)에 의해 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 획득하고,
    상기 획득된 제1 입력 음성 데이터를 제2 외부 전자 장치로 전송하고,
    상기 제2 외부 전자 장치로부터 상기 전자 장치의 상태의 조절과 관련된 제1 응답을 수신하도록 하는 인스트럭션들을 저장하는 전자 장치.
  11. 제10항에 있어서,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 제2 외부 전자 장치로부터, 상기 제1 입력 음성 데이터에 포함된 상기 제1 요청에 대응되는 상기 제1 태스크를 수행하기 위한 제1 태스크 수행 정보를 수신하고,
    상기 제1 태스크 수행 정보로부터 상기 제1 요청에 기반하여 수행될 상기 제1 태스크의 수행 동작을 확인하고,
    상기 전자 장치의 상태 및 상기 제1 태스크의 수행 동작 간 연관성 여부를 판단하고,
    상기 연관성 판단 결과 상기 전자 장치의 상태와 상기 제1 태스크의 수행 동작 간 연관성이 있는 것으로 판단되면, 상기 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터에 대한 요청을 상기 제2 외부 전자 장치로 전송하고,
    상기 제2 외부 전자 장치로부터 상기 제1 출력 음성 데이터를 포함한 상기 제1 응답을 수신하도록 하는 인스트럭션들을 저장하는 전자 장치.
  12. 제11항에 있어서,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 연관성 판단 시, 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 오디오 출력 또는 시각적 출력을 제공하도록 구성된 상기 제1 외부 전자 장치의 오디오 출력 또는 시각적 출력 중 적어도 하나와 간섭되는지 여부를 판단하며,
    상기 연관성 판단 시, 상기 전자 장치 및 상기 제1 태스크가 수행될 상기 제1 외부 전자 장치 간 거리가 임계값 미만인지 여부를 판단하되,
    상기 임계값은 상기 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나가 상기 제1 외부 전자 장치의 상기 오디오 출력 또는 상기 시각적 출력 중 적어도 하나와 간섭될 수 있는 최소 거리로 설정되도록 하는 인스트럭션들을 저장하는 전자 장치.
  13. 제11항에 있어서,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 제1 태스크 수행 정보에 기반하여 상기 제1 외부 전자 장치가 상기 제1 태스크를 수행하도록 하는 제1 커맨드를 생성하고,
    상기 제1 커맨드를 상기 제1 외부 전자 장치로 전송하도록 하는 인스트럭션들을 저장하는 전자 장치.
  14. 제10항에 있어서,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 전자 장치의 상태 정보를 상기 제2 외부 전자 장치로 전송하고,
    상기 제2 외부 전자 장치로부터, 상기 전자 장치의 상태의 조절과 관련된 제1 출력 음성 데이터를 포함하는 상기 제1 응답을 수신하도록 하는 인스트럭션들을 저장하며,
    상기 제1 출력 음성 데이터는 상기 전자 장치의 상태의 조절과 관련된 제2 태스크의 수행에 대한 후속 질문을 포함하며,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 전자 장치의 음향 출력 장치 또는 상기 전자 장치에 기능적으로 연결된 장치를 통해 상기 제1 출력 음성 데이터를 출력하며,
    상기 후속 질문에 대한 사용자 입력을 수신하고,
    상기 사용자 입력의 수신에 응답하여, 상기 전자 장치의 상태의 조절과 관련된 상기 제2 태스크를 수행하기 위한 제2 태스크 수행 정보에 대한 요청을 상기 제2 외부 전자 장치로 전송하고,
    상기 제2 외부 전자 장치로부터 상기 제2 태스크 수행 정보를 수신하고,
    상기 제2 태스크 수행 정보에 기반하여 상기 전자 장치의 상태를 조절하도록 상기 제2 태스크를 수행하도록 하는 인스트럭션들을 저장하는 전자 장치.
  15. 전자 장치에 있어서,
    적어도 하나의 통신 인터페이스;
    상기 통신 인터페이스에 작동적으로 연결된 적어도 하나의 프로세서; 및
    상기 프로세서에 작동적으로 연결된 적어도 하나의 메모리를 포함하며,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    제1 외부 전자 장치로부터, 사용자 발화에 의해 상기 제1 외부 전자 장치를 이용하여 제1 태스크를 수행하기 위한 제1 요청을 포함하는 제1 입력 음성 데이터를 수신하고,
    제2 외부 전자 장치의 상태를 판단하거나 수신하고,
    상기 제2 외부 전자 장치의 상태의 조절과 관련된 인디케이션을 상기 제1 외부 전자 장치에 제공하도록 하는 인스트럭션들을 저장하는 전자 장치.
PCT/KR2019/003181 2018-03-23 2019-03-19 전자 장치 및 전자 장치의 음성 인식 제어 방법 WO2019182325A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/982,939 US11443744B2 (en) 2018-03-23 2019-03-19 Electronic device and voice recognition control method of electronic device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0034002 2018-03-23
KR1020180034002A KR102710808B1 (ko) 2018-03-23 2018-03-23 전자 장치 및 전자 장치의 음성 인식 제어 방법

Publications (1)

Publication Number Publication Date
WO2019182325A1 true WO2019182325A1 (ko) 2019-09-26

Family

ID=67987359

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/003181 WO2019182325A1 (ko) 2018-03-23 2019-03-19 전자 장치 및 전자 장치의 음성 인식 제어 방법

Country Status (3)

Country Link
US (1) US11443744B2 (ko)
KR (1) KR102710808B1 (ko)
WO (1) WO2019182325A1 (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
DE112014000709B4 (de) 2013-02-07 2021-12-30 Apple Inc. Verfahren und vorrichtung zum betrieb eines sprachtriggers für einen digitalen assistenten
EP3937002A1 (en) 2013-06-09 2022-01-12 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10546583B2 (en) * 2017-08-30 2020-01-28 Amazon Technologies, Inc. Context-based device arbitration
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US20210329369A1 (en) * 2018-11-14 2021-10-21 Orfeo Soundworks Corporation Earset having utterer voice restoration function
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
CN110968362B (zh) * 2019-11-18 2023-09-26 北京小米移动软件有限公司 应用运行方法、装置及存储介质
WO2021112639A1 (en) 2019-12-05 2021-06-10 Samsung Electronics Co., Ltd. Electronic device performing operation based on user speech in multi device environment and operating method thereof
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11917092B2 (en) * 2020-06-04 2024-02-27 Syntiant Systems and methods for detecting voice commands to generate a peer-to-peer communication link
US11269667B2 (en) * 2020-07-16 2022-03-08 Lenovo (Singapore) Pte. Ltd. Techniques to switch between different types of virtual assistance based on threshold being met
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN112767937B (zh) * 2021-01-15 2024-03-08 宁波方太厨具有限公司 多设备语音控制方法、系统、设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4533845B2 (ja) * 2003-12-05 2010-09-01 株式会社ケンウッド オーディオ機器制御装置、オーディオ機器制御方法及びプログラム
US20150243287A1 (en) * 2013-04-19 2015-08-27 Panasonic Intellectual Property Corporation Of America Control method for household electrical appliance, household electrical appliance control system, and gateway
EP3079372A1 (en) * 2015-04-10 2016-10-12 Thomson Licensing Tv control by natural language input
KR20170006958A (ko) * 2015-07-10 2017-01-18 주식회사 엘지유플러스 확장 음성 인식 서비스를 제공하는 포터블 디바이스 및 도킹 스테이션
US20170053666A1 (en) * 2014-02-20 2017-02-23 Harman International Industries, Inc. Environment sensing intelligent apparatus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014098477A1 (ko) 2012-12-18 2014-06-26 삼성전자 주식회사 홈 네트워크 시스템에서 홈 디바이스를 원격으로 제어하는 방법 및 장치
KR101678606B1 (ko) 2015-06-15 2016-12-06 (주)엔텔스 IoT 디바이스를 이용한 서비스 제공 방법 및 IoT 디바이스를 이용한 서비스 제공 시스템
KR20170004497A (ko) 2015-07-02 2017-01-11 주식회사 스마트올웨이즈온 리모컨 신호 및 음성 명령의 딥-러닝을 통해 클라우드 데이터베이스를 사용함으로써 다양한 전자 장치를 제어하거나 제어하도록 지원하기 위한 방법
US10446166B2 (en) * 2016-07-12 2019-10-15 Dolby Laboratories Licensing Corporation Assessment and adjustment of audio installation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4533845B2 (ja) * 2003-12-05 2010-09-01 株式会社ケンウッド オーディオ機器制御装置、オーディオ機器制御方法及びプログラム
US20150243287A1 (en) * 2013-04-19 2015-08-27 Panasonic Intellectual Property Corporation Of America Control method for household electrical appliance, household electrical appliance control system, and gateway
US20170053666A1 (en) * 2014-02-20 2017-02-23 Harman International Industries, Inc. Environment sensing intelligent apparatus
EP3079372A1 (en) * 2015-04-10 2016-10-12 Thomson Licensing Tv control by natural language input
KR20170006958A (ko) * 2015-07-10 2017-01-18 주식회사 엘지유플러스 확장 음성 인식 서비스를 제공하는 포터블 디바이스 및 도킹 스테이션

Also Published As

Publication number Publication date
US20210012775A1 (en) 2021-01-14
KR102710808B1 (ko) 2024-09-27
US11443744B2 (en) 2022-09-13
KR20190111624A (ko) 2019-10-02

Similar Documents

Publication Publication Date Title
WO2019182325A1 (ko) 전자 장치 및 전자 장치의 음성 인식 제어 방법
WO2021071115A1 (en) Electronic device for processing user utterance and method of operating same
WO2020045950A1 (en) Method, device, and system of selectively using multiple voice data receiving devices for intelligent service
WO2020222444A1 (en) Server for determining target device based on speech input of user and controlling target device, and operation method of the server
WO2020246844A1 (en) Device control method, conflict processing method, corresponding apparatus and electronic device
WO2019078576A1 (ko) 음성 신호를 제어하기 위한 전자 장치 및 방법
WO2020017849A1 (en) Electronic device and method for providing artificial intelligence services based on pre-gathered conversations
WO2019078588A1 (ko) 전자 장치 및 그의 동작 방법
WO2019039834A1 (en) METHOD FOR PROCESSING VOICE DATA AND ELECTRONIC DEVICE SUPPORTING SAID METHOD
WO2020060368A2 (en) Method and apparatus for providing notification by interworking plurality of electronic devices
WO2020166995A1 (en) Apparatus and method for managing schedule in electronic device
WO2020263016A1 (ko) 사용자 발화를 처리하는 전자 장치와 그 동작 방법
WO2019078608A1 (ko) 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법
WO2019221440A1 (ko) 사용자 발화를 처리하는 시스템 및 그 시스템의 제어 방법
WO2019112295A1 (ko) 외부 장치의 네트워크 셋업을 위한 전자 장치 및 그의 동작 방법
WO2021029627A1 (en) Server that supports speech recognition of device, and operation method of the server
WO2019017715A1 (en) ELECTRONIC DEVICE AND SYSTEM FOR DETERMINING SPEECH INPUT RECEIVING TIME BASED ON CONTEXTUAL INFORMATION
WO2019212213A1 (en) Electronic device and method of executing function of electronic device
AU2019319322B2 (en) Electronic device for performing task including call in response to user utterance and operation method thereof
WO2019017665A1 (en) ELECTRONIC APPARATUS FOR PROCESSING A USER STATEMENT FOR CONTROLLING AN EXTERNAL ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING THE APPARATUS
WO2018174445A1 (ko) 파셜 랜딩 후 사용자 입력에 따른 동작을 수행하는 전자 장치
EP3830821A1 (en) Method, device, and system of selectively using multiple voice data receiving devices for intelligent service
WO2019039873A1 (ko) Tts 모델을 생성하는 시스템 및 전자 장치
WO2022124493A1 (ko) 전자 장치 및 전자 장치에서 기억 서비스를 제공하는 방법
WO2021075774A1 (en) Method for controlling iot device and electronic device therefor

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

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

Country of ref document: EP

Kind code of ref document: A1