KR20220009963A - 다수의 음성 어시스턴트를 위한 활성화 관리 - Google Patents
다수의 음성 어시스턴트를 위한 활성화 관리 Download PDFInfo
- Publication number
- KR20220009963A KR20220009963A KR1020217037769A KR20217037769A KR20220009963A KR 20220009963 A KR20220009963 A KR 20220009963A KR 1020217037769 A KR1020217037769 A KR 1020217037769A KR 20217037769 A KR20217037769 A KR 20217037769A KR 20220009963 A KR20220009963 A KR 20220009963A
- Authority
- KR
- South Korea
- Prior art keywords
- voice assistant
- voice
- keyword
- applications
- assistant applications
- Prior art date
Links
- 230000004913 activation Effects 0.000 title claims description 96
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000001514 detection method Methods 0.000 claims abstract description 19
- 230000004044 response Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 10
- 230000003213 activating effect Effects 0.000 abstract description 3
- 238000001994 activation Methods 0.000 description 83
- 230000008569 process Effects 0.000 description 21
- 230000005236 sound signal Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000009849 deactivation Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/32—Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Telephonic Communication Services (AREA)
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
시스템 및 방법은, 복수의 음성 키워드 중 한 키워드의 사용자 발언을 검출하는 것 ― 복수의 음성 키워드의 각각은 각자의 음성 어시스턴트 애플리케이션과 연관됨 ― 과, 복수의 개별 음성 키워드 중 한 키워드의 검출에 응답하여 복수의 음성 어시스턴트 애플리케이션 중 임의의 것이 중단 불가능으로 지정되는지 여부를 판정하는 것과, 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 복수의 음성 어시스턴트 애플리케이션 중 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션을 활성화 하는 것을 포함한다.
Description
음성 어시스턴트는 모뎀 컴퓨팅 장치에서 빠르게 보편화되고 있다. 사용자는 컴퓨팅 장치의 기능을 제어하기 위해 음성 어시스턴트와 상호작용할 수 있다. 컴퓨팅 장치가 음성 어시스턴트와 연관된 음성 키워드를 수신하고 인식할 때, 음성 어시스턴트는 음성 기반 컴퓨팅 경험에 사용자를 참여시키기 위해 활성화되고 시작된다.
다양한 컴퓨팅 플랫폼은 그들 자신의 각자의 음성 어시스턴트를 제공한다. 각 음성 어시스턴트는 하나 이상의 단어로 구성될 수 있는 전용 키워드에 응답하여 활성화된다. 예를 들어, 윈도우(Windows) 운영 체제에서 음성 어시스턴트인 코타나(Cortana)는 "헤이 코타나(Hey Cortana)"라는 키워드로 활성화되고, 구글(Google) 장치에서 음성 어시스턴트는 "오케이 구글(OK Google)"이라는 키워드로 활성화되며, 아마존(Amazon) 장치에서 음성 어시스턴트는 "알렉사(Alexa)"라는 키워드로 활성화된다.
컴퓨팅 플랫폼은 둘 이상의 음성 어시스턴트를 지원하도록 구성될 수 있다. 따라서, 그러한 컴퓨팅 플랫폼은 지원되는 각 음성 어시스턴트의 각 키워드를 검출하고 이에 응답하여 작동될 수 있어야 한다. 또한, 음성 어시스턴트들 중 하나가 활성화된 상태에서 하나 이상의 어시스턴트에 대한 키워드가 수신되는 경우 시스템은 활성화를 관리해야 한다. 다중 어시스턴트 플랫폼에서 음성 어시스턴트 활성화 관리의 어려움을 효율적으로 해결하는 시스템이 요구된다.
도 l은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 2는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 3은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 4는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 5는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 6은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 7은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 8은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 9는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 10은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 11은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼에서 음성 어시스턴트 활성화를 관리하기 위한 프로세스의 흐름도이다.
도 12는 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼에서 음성 어시스턴트 활성화를 관리하기 위한 프로세스의 흐름도이다.
도 13은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼의 소프트웨어 구성요소의 블록도이다.
도 14는 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼을 지원할 수 있는 장치를 도시한다.
도 15는 일부 실시예에 따른 다중 음성 어시스턴트를 지원하는 클라우드 컴퓨팅 시스템의 블록도이다.
도 16은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼을 구현하는 컴퓨팅 시스템의 블록도이다.
도 2는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 3은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 4는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 5는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 6은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 7은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 8은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 9는 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 10은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼의 블록도이다.
도 11은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼에서 음성 어시스턴트 활성화를 관리하기 위한 프로세스의 흐름도이다.
도 12는 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼에서 음성 어시스턴트 활성화를 관리하기 위한 프로세스의 흐름도이다.
도 13은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼의 소프트웨어 구성요소의 블록도이다.
도 14는 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼을 지원할 수 있는 장치를 도시한다.
도 15는 일부 실시예에 따른 다중 음성 어시스턴트를 지원하는 클라우드 컴퓨팅 시스템의 블록도이다.
도 16은 일부 실시예에 따른 다중 음성 어시스턴트 플랫폼을 구현하는 컴퓨팅 시스템의 블록도이다.
다음의 설명은 당업자로 하여금 설명된 실시예를 제조하고 사용할 수 있게 하기 위해 제공된다. 그러나, 다양한 변형이 당업자에게 명백할 것이다.
본 명세서에 설명된 일부 실시예는 단일 컴퓨팅 플랫폼에 의해 제공되는 다수의 음성 어시스턴트의 활성화를 관리하는 기술적 문제에 대한 기술적 솔루션을 제공한다. 일부 실시예에 따르면, 주어진 시간에 오직 하나의 음성 어시스턴트만 활성화된다. 하나의 음성 어시스턴트가 활성화된 상태에서 다른 음성 어시스턴트의 음성 키워드가 검출되면, 다른 음성 어시스턴트는 활성화되지 않고 활성화된 음성 어시스턴트는 중단되지 않는다.
이에 의해 일부 실시예는 주변 소음으로 인한 또는 현재 어시스턴트와의 대화에서 사용되는 키워드의 검출로 인한 임의의 활성화로부터 사용자 경험을 보호한다. 후자와 관련하여, 사용자가 "헤이 코타나(Hey Cortana), 내 아내 알렉사(Alexa)에게 전화하라고 내게 상기시켜 줘"라고 말하는 예가 고려된다. 일부 실시예에 따르면, "Hey Cortana"라는 키워드는 Cortana 음성 어시스턴트의 활성화를 야기하고, Alexa라는 키워드는 Alexa 음성 어시스턴트의 활성화를 야기하지 않는다. 여러 대안적 구현에 대한 세부사항은 아래에 제공된다.
도 1은 일부 실시예에 따른 동작 동안의 다중 어시스턴트 플랫폼(100)의 블록도이다. 플랫폼(100)은 활성화 서버(110), 음성 어시스턴트(120) 및 음성 어시스턴트(130)로 구성된다. 일반적으로, 사용자(140)는 키워드(150)를 말하고, 활성화 서버(110)는 키워드(150)를 검출하여 키워드(150) 및 본 명세서에 설명되는 로직에 기초하여 음성 어시스턴트(120)와 음성 어시스턴트(130) 중 하나를 활성화한다.
플랫폼(100)은 임의의 적절한 컴퓨팅 장치 또는 장치들에 의해 구현될 수 있다. 일부 실시예에서, 플랫폼(100)은 활성화 서버(110)가 구성요소인 운영 체제를 실행하는 개인용 컴퓨터이다. 음성 어시스턴트(120) 및 음성 어시스턴트(130)는, 운영 체제와 호환되고 다양한 API(application programming interfaces)를 통해 활성화 서버(110)와 통신할 수 있는 애플리케이션을 포함할 수 있다. 본 명세서에 설명된 각 구성요소는 실행 코드에 의해 구현될 수 있다.
후술하는 바와 같이, 플랫폼(100)은 스마트폰 또는 스마트 스피커와 같이 운영 체제를 실행하는 다른 장치에서 구현될 수 있다. 활성화 서버(110), 음성 어시스턴트(120) 및 음성 어시스턴트(130) 중 하나 이상은, 예를 들어 클라우드 기반 배포에서 플랫폼(100)의 다른 구성요소로부터 원격으로 위치될 수 있다.
활성화 서버(110), 음성 어시스턴트(120) 및 음성 어시스턴트(130) 중 하나 이상은 장치 펌웨어로 구현될 수 있다. 활성화 서버(110), 음성 어시스턴트(120) 및 음성 어시스턴트(130) 중 둘 이상은 상이한 소프트웨어 벤더(vendor)에 의해 제공될 수 있다.
도 1의 점선은 음성 어시스턴트(120) 및 음성 어시스턴트(130)가 본 예에서 사용자(140)에 의한 키워드(150)의 발언 시에 초기에 비활성화됨을 나타낸다. 본 예의 목적을 위해, 키워드(150)는 음성 어시스턴트(120)와 연관된 음성 활성화 키워드이다. 일부 실시예에 따르면, 키워드(150)를 나타내는 오디오 신호는 플랫폼(100)의 오디오 입력 장치(예를 들어, 마이크로폰)에 의해 수신되고, 플랫폼(100)의 다른 구성요소는 오디오 신호를 처리하여 키워드(150)를 식별하고, 키워드(150)가 음성 어시스턴트(120)와 연관되어 있다고 판정하고, 대응하는 메시지를 활성화 서버(110)에 전송한다. 일부 실시예에서, 다른 구성요소가 오디오 신호를 처리하여 키워드(150)를 식별하고, 키워드(150)가 등록된 음성 어시스턴트와 연관되어 있다고 판정하고, 키워드(150)를 활성화 서버(110)에 전달한다. 그런 다음, 활성화 서버(110)는 키워드(150)가 음성 어시스턴트(120)와 연관되어 있다고 판정한다.
위에서 언급된 바와 같이, 음성 어시스턴트(120)와 음성 어시스턴트(130)의 각각은 각자의 전용 키워드와 연관될 수 있고, "키워드"는 하나 이상의 단어로 구성될 수 있다. 일부 실시예에서, 음성 어시스턴트(120)와 음성 어시스턴트(130) 중 하나 또는 둘 모두는 둘 이상의 각자의 키워드와 연관될 수 있는데, 각각의 키워드는 둘 이상의 단어를 포함할 수 있다. 둘 이상의 음성 어시스턴트가 동일한 키워드 또는 키워드들을 공유하는 일부 실시예가 고려된다.
활성화 서버(110)가 음성 어시스턴트(120)의 음성 키워드가 수신되었음을 어떻게 판정하는지에 관계없이, 활성화 서버(110)는 도 2에 도시된 바와 같이 활성화 신호를 음성 어시스턴트(120)에 전송한다. 음성 어시스턴트(120)의 후속 활성화는 굵은 실선을 사용하여 표시된다. 아래에서 설명되는 바와 같이, 음성 어시스턴트(120)는 키워드(150)가 수신된 것(즉, 수신된 오디오 신호가 키워드(150)를 나타내는 것)을 확인하기 위해 활성화 이전에 수신된 오디오 신호의 이차적 검사를 수행할 수 있다.
도 3에 도시된 바와 같이, 활성화된 음성 어시스턴트(120)는 음성 어시스턴트(120)가 중단 불가능하다는 신호를 (예컨대, 활성화 서버(110)에 의해 노출된 API를 사용하여) 전송할 수 있다. 따라서, 활성화 서버(110)는 음성 어시스턴트(120)가 중단 불가능하다는 것을 나타내는 플래그를 설정하거나 다른 데이터를 저장한다.
그런 다음, 당업계에 공지된 바와 같이 활성화된 음성 어시스턴트(120)와 사용자(140) 사이에 대화 세션이 수행된다. 도 4는 단순화를 위해 사용자(140)와 음성 어시스턴트(120) 사이에서 직접 발생하는 그러한 대화 세션을 도시하지만, 일반적으로 몇몇 하드웨어 및 소프트웨어 구성요소는 공지된 시스템에 따라 대화 세션을 용이하게 할 수 있다. 일부 예에서, 대화 세션은 음성 어시스턴트(120)가 플랫폼(100)의 다른 구성요소(예를 들어, "오전 6시에 알람을 설정하십시오.") 및/또는 외부 서비스(예를 들어, "오늘의 일기 예보는 무엇입니까?")에 액세스하도록 요구할 수 있는데, 명료함을 위해 그에 대한 세부사항은 본 명세서에서 생략된다.
도 5는 활성화된 음성 어시스턴트(120)와 진행 중인 대화 세션 동안 사용자(140)에 의한 키워드(160)의 발언을 나타낸다. 예를 들어, 음성 어시스턴트(120)가 "Hey Cortana"라는 키워드와 연관되고 음성 어시스턴트(130)가 "Alexa"라는 키워드와 연관된다고 가정하면, 도 1 내지 도 5는 "헤이 코타나(Hey Cortana), 내 아내 알렉사(Alexa)에게 전화해"라는 발언 동안의 플랫폼(100)의 동작을 도시할 수 있다.
도 6에 도시된 바와 같이, 음성 어시스턴트(120)는 음성 어시스턴트(130)와 연관된 키워드(160)의 수신 후에도 활성화된 상태를 유지하고 사용자(140)와의 대화 세션에 있다. 아래에 상세히 설명되는 바와 같이, 일부 실시예에서, 키워드(160)의 발언은 활성화 서버(110)로 하여금 키워드(160)의 표시를 수신하게 한다. 이에 응답하여, 활성화 서버(110)는 음성 어시스턴트(120)가 활성화 상태이고 중단 불가능으로 표시된 것으로 판정한다. 따라서, 활성화 서버(110)는 비록 플랫폼(100)이 음성 어시스턴트(130)와 연관된 키워드(160)를 수신 및 검출하더라도 활성화 신호를 음성 어시스턴트(130)에 전송하지 않는다.
도 7은 사용자(140)와 음성 어시스턴트(120) 사이의 대화 세션의 종료를 도시한다. 구체적으로, 음성 어시스턴트(120)는 음성 어시스턴트(120)가 비활성화되고 있음을 나타내는 신호를 활성화 서버(110)에 전송한다. 일부 실시예에서, 세션의 최종 말하기 상태(final speaking state)에 들어갈 때, 음성 어시스턴트(120)는 음성 어시스턴트(120)가 더 이상 중단 불가능이 아님을 표시하는 신호(예컨대, "중단 가능" 신호)를 활성화 서버에 전송하고, 그런 다음 도 7에 도시된 바와 같이 비활성화된다. 이러한 실시예는 음성 어시스턴트(120)가 비활성화되기 전에 다른 음성 어시스턴트의 활성화를 허용한다.
도 8은 음성 어시스턴트(120)가 활성화 서버(110)에 자신의 비활성화를 표시한 후의 플랫폼(100)의 상태를 도시한다. 음성 어시스턴트(120) 및 음성 어시스턴트(130)는 비활성화되고 사용자(140)와의 어떠한 대화 세션도 진행되지 않는다.
이제, 사용자(140)가 도 9에 도시된 바와 같이 키워드(160)를 발언하고 키워드(160)가 음성 어시스턴트(130)와 연관된 음성 활성화 키워드라고 가정한다. 다시, 키워드(160)를 나타내는 오디오 신호는 플랫폼(100)의 오디오 입력 장치에 의해 수신될 수 있고, 플랫폼(100)의 도시되지 않은 다른 구성요소는 오디오 신호를 처리하여 키워드(160)를 식별하고, 키워드(160)가 음성 어시스턴트(130)와 연관되어 있다고 판정하고, 대응하는 메시지를 활성화 서버(110)에 전송할 수 있다. 대안적으로, 다른 구성요소가 오디오 신호를 처리하여 키워드(160)를 식별하고, 키워드(160)가 등록된 음성 어시스턴트와 연관되어 있다고 판정하고, 키워드(160)를 활성화 서버(110)에 전달한다. 활성화 서버(110)는 수신된 키워드(160)가 음성 어시스턴트(130)와 연관되어 있다고 판정한다.
음성 어시스턴트의 음성 키워드(160)가 수신되었다는 판정에 응답하여, 활성화 서버(110)는 도 10에 도시된 바와 같이 활성화 신호를 음성 어시스턴트(130)로 전송한다. 음성 어시스턴트(130)는 활성화 신호를 수신하고 이에 응답하여 활성화된다. 음성 어시스턴트(130)는 또한 수신된 오디오 신호가 키워드(160)를 나타내는지 확인하기 위해 활성화 이전에 수신된 오디오 신호의 이차적 검사를 수행할 수 있다.
도 11은 일부 실시예에 따른 프로세스(1100)의 흐름도이다. 프로세스(1100) 및 본 명세서에 설명된 다른 프로세스는 하드웨어와 소프트웨어의 임의의 적절한 조합을 사용하여 수행될 수 있다. 이러한 프로세스를 구현하는 소프트웨어 프로그램 코드는, 고정 디스크, 휘발성 또는 비휘발성 랜덤 액세스 메모리, DVD, 플래시 드라이브, 또는 자기 테이프를 포함하는 임의의 비일시적인 유형적 매체에 저장될 수 있으며, 프로세서, 프로세서 코어 및 프로세서 스레드를 포함하지만 이에 제한되지 않는 임의의 수의 처리 유닛에 의해 실행될 수 있다. 실시예는 후술되는 예에 제한되지 않는다.
프로세스(1100)는 플랫폼(100)의 활성화 서버(110)와 같은 활성화 서버에 의해 수행될 수 있지만, 실시예는 이에 제한되지 않는다. 프로세스(1100)는 둘 이상의 음성 어시스턴트를 지원하는 플랫폼에 의해 수행될 수 있다.
음성 어시스턴트와 연관된 키워드가 검출될 때까지 흐름은 S1110에서 순환한다. 플랫폼 실행 프로세스(1100)의 음성 어시스턴트들 중 하나 이상은 둘 이상의 키워드와 연관될 수 있다. S1110에서의 키워드 검출은 플랫폼의 다른 구성요소로부터 키워드 검출 신호를 수신하는 것을 포함할 수 있다. S1110에서의 키워드 검출은 (예컨대, 주변 오디오 환경의 수동 모니터링을 통해) 오디오 신호를 수신하는 것, 및 수신된 오디오 신호가 플랫폼에 등록된 음성 어시스턴트와 연관된 키워드를 나타낸다고 판정하는 것을 포함할 수 있다. 판정은 오디오 신호에 대한 스피치-텍스트 처리(speech-to-text processing) 및 등록된 음성 어시스턴트와 연관된 키워드 목록과 결과 텍스트의 비교를 포함할 수 있다.
음성 어시스턴트와 연관된 키워드가 검출되면 흐름은 S1110에서 S1120로 진행한다. S1120에서는, 임의의 등록된 음성 어시스턴트가 현재 중단 불가능한지 여부가 판정된다. 위에서 설명된 바와 같이, 이전에 활성화된 음성 어시스턴트는 예를 들어 활성화 서버에 의해 노출된 API를 사용하여 중단 불가능한 것으로 자신을 표시할 수 있다. 이 표시는 저장되고 S1120에서의 판정에 사용될 수 있다.
일부 실시예에 따르면, 음성 어시스턴트의 중단 불가능성의 판정은 음성 어시스턴트의 상태에 기초한다. 예를 들어, 음성 어시스턴트는 비활성화 상태 또는 활성화 상태일 수 있다. 활성화 상태는 말하기, 듣기 및 생각하기와 같은 상태를 포함할 수 있다. S1120에서, 음성 어시스턴트가 "생각하기" 활성화 상태에 있기 때문에 플랫폼의 음성 어시스턴트가 중단 불가능하다고 판정될 수 있다.
S1120에서의 판정은 음성 어시스턴트 상태 정보 및/또는 중단 불가능 플래그의 임의의 적절한 조합에 기초할 수 있다.
S1120에서 임의의 현재 등록된 음성 어시스턴트가 중단 불가능하다고 판정되면, 위에서 설명된 바와 같이, 검출된 키워드에 응답하여 활성화가 전송되지 않고 흐름은 키워드의 검출을 대기하기 위해 S1110로 복귀한다.
어떠한 등록된 음성 어시스턴트도 중단 불가능하지 않은 것으로 판정되면 흐름은 S1120에서 S1130으로 진행한다. S1130에서, 검출된 키워드와 연관된 음성 어시스턴트에 활성화가 전송된다. 그런 다음, 흐름은 키워드의 검출을 기다리기 위해 S1110로 복귀한다. 한편, 활성화를 수신한 음성 어시스턴트는 활성화되어 사용자와의 대화 세션을 시작할 수 있다. 위에서 설명된 바와 같이, 이 음성 어시스턴트는 또한 S1120에서의 임의의 후속 판정을 위해 자신이 중단 불가능함을 표시할 수 있다.
도 12는 다중 음성 어시스턴트 플랫폼의 활성화 서버에 의해 수행될 수 있는 대안적인 프로세스(1200)를 도시한다. 프로세스(1200)는 수신된 키워드에 기초하여 음성 어시스턴트의 활성화를 관리하기 위해 수행될 수 있다.
먼저, S1210에서, 등록된 음성 어시스턴트와 연관된 키워드가 검출되었는지 여부가 판정된다. 그러한 키워드가 검출될 때까지 흐름은 S1210에서 순환한다. 위에서 언급한 바와 같이, 키워드의 검출은 예를 들어 플랫폼의 다른 구성요소로부터 키워드 검출 신호를 수신하는 것 또는 오디오 신호를 수신하고 수신된 오디오 신호가 플랫폼에 등록된 음성 어시스턴트와 연관된 키워드를 나타낸다고 판정하는 것을 포함할 수 있다.
음성 어시스턴트와 연관된 키워드가 검출되면, S1220에서, 연관된 음성 어시스턴트가 활성 상태인지 여부가 판정된다. 이 판정은 연관된 음성 어시스턴트의 보고되고 모니터링된 상태에 기초할 수 있다. 연관된 음성 어시스턴트가 활성 상태가 아닌 경우, 흐름은 S1230으로 진행하여 플랫폼의 임의의 음성 어시스턴트가 현재 중단 불가능으로 표시되어 있는지 여부를 판정한다.
음성 어시스턴트의 중단 불가능성의 평가는 음성 어시스턴트가 중단 불가능함을 표시하는 플래그가 현재 설정되어 있는지 여부에 기초할 수 있다. 이러한 플래그는 음성 어시스턴트로부터 이전에 수신된 중단 불가능성의 표시에 응답하여 설정될 수 있다. 중단 불가능성의 판정은 또한 또는 대안적으로 음성 어시스턴트의 현재 상태에 기초할 수 있다. 일부 실시예에 따르면, 자신을 중단 불가능으로 표시했지만 이후 비활성화되는 음성 어시스턴트는 더 이상 중단 불가능한 것으로 간주되지 않는다. 일부 실시예에서, 음성 어시스턴트는 비활성화되기 전에 중단 가능한 것을 표시하도록 요구된다.
S1230에서 어떠한 등록된 음성 어시스턴트도 중단 불가능하지 않은 것으로 판정되면, 검출된 키워드와 연관된 음성 어시스턴트에 활성화가 전송된다. 그런 다음, 음성 어시스턴트는 본 기술분야에 알려진 바와 같이 활성화되고 대화 세션에 들어간다. 활성화된 음성 어시스턴트는 대화 세션 동안 중단 불가능한 것으로 자신을 표시할 수 있다. 한편, 흐름은 S1210으로 복귀하여 키워드의 검출을 기다린다.
S1220으로 복귀하여, 검출된 키워드와 연관된 음성 어시스턴트가 활성 상태이면, 흐름은 S1240으로 진행하여 활성화를 음성 어시스턴트에 전송한다. 이러한 동작을 통해 음성 어시스턴트는 자신의 키워드의 검출에 기초하여 현재 대화 세션을 중단할지 여부, 중단 불가능한 것으로 자신을 표시할지 여부를 판정할 수 있다.
실시예는 활성화된 음성 어시스턴트를 그것의 연관된 키워드 또는 다른 음성 어시스턴트와 연관된 키워드의 검출에 응답하여 중단시키거나 중단시키지 않기 위해 임의의 다른 원하는 로직을 지원할 수 있다.
도 13은 실시예를 구현하는 컴퓨팅 시스템의 소프트웨어 아키텍처(1300)를 도시한다. 이러한 실시예는 도 13에 도시된 것과 다른 소프트웨어 구성요소를 포함할 수 있다. 소프트웨어 아키텍처(1300)는, 예를 들어, 개인용 컴퓨터, 스마트폰, 및 스마트 스피커와 같은 운영 체제를 실행하는 사물 인터넷 에지 장치를 포함하는 임의의 적절한 컴퓨팅 플랫폼에 의해 구현될 수 있다. 소프트웨어 아키텍처(1300) 또는 그 일부는 임베디드 시스템 내에서 구현될 수 있다. 소프트웨어 아키텍처(1300)의 하나 이상의 구성요소는 클라우드 기반 서버의 가상 머신에 의해 배포될 수 있다. 소프트웨어 아키텍처(1300)의 각 구성요소는 실행가능한 코드에 의해 구현될 수 있다.
활성화 런타임 사용자 서비스(1310)는 운영 체제 구성요소를 포함할 수 있다. 활성화 런타임 사용자 서비스(1310)는 활성화 이벤트가 검출될 때 소프트웨어 아키텍처(1300) 내에 등록된 음성 어시스턴트 애플리케이션을 활성화하는 역할을 한다.
예를 들어, 마이크로폰(1311)은 오디오 신호를 수신할 수 있고, 키워드 검출 구성요소(1312)는 오디오 신호 내에 표현된 등록된 음성 키워드를 검출할 수 있다. 검출은 음성 활성화 관리자(1313)를 통해 활성화 런타임 사용자 서비스(1310)에 표출(surface)된다.
활성화 런타임 사용자 서비스(1310)는 휴먼 인터페이스 장치 서비스(Human Interface Device service)(1314)를 통한 버튼 누름과 같은 다른 활성화 이벤트를 검출할 수 있다. 블루투스를 통해 수신된 활성화 이벤트는 또한 블루투스 서비스(1315)를 통한 버튼 누름으로 표출될 수 있다. 버튼 누름 활성화 이벤트에 기초하여 음성 어시스턴트 애플리케이션에 활성화를 전송할지 여부를 판정하기 위해 임의의 적절한 로직이 구현될 수 있다. 일부 실시예에서, 활성화 런타임 사용자 서비스(1310)는, 임의의 활성화 음성 어시스턴트의 활성화 또는 비활성화 상태에 관계없이 또는 임의의 음성 어시스턴트가 중단 불가능으로 표시되었는지 여부에 관계없이, 수신된 버튼 누름 활성화 이벤트에 응답하여 대응하는 음성 어시스턴트에 활성화를 전송한다. 이러한 실시예는 버튼 누름에 의해 추론될 수 있는 의도의 정도를 고려하여 사용자 의도를 반영하도록 의도된다.
일부 실시예에 따르면, 대화 세션 관리자(1316)는 수신된 활성화 이벤트에 기초하여 활성화를 음성 어시스턴트 애플리케이션에 전송할지 여부를 판정하기 위해 프로세스(1100) 또는 프로세스(1200)를 실행할 수 있다. 본 예에서는 음성 어시스턴트 애플리케이션(1320) 및 음성 어시스턴트 애플리케이션(1330)이 활성화되지 않은 시점에 음성 어시스턴트 애플리케이션(1320)과 연관된 음성 키워드가 수신되는 것으로 가정한다. 따라서, 활성화 관리자(1317)는 음성 트리거(1322)를 활성화하기 위해 음성 어시스턴트 애플리케이션(1320)에 활성화를 전송하는데, 이는 음성 어시스턴트 애플리케이션(1320)과 연관된 백그라운드 작업이다.
음성 트리거(1322)의 활성화에 응답하여, 음성 어시스턴트 애플리케이션(1320)은 자신의 키워드가 수신되었음을 검증한다. 이와 관련하여, 음성 어시스턴트 애플리케이션(1320)은 어시스턴트-특정 키워드 검출기(1324)를 포함한다. 어시스턴트-특정 키워드 검출기(1324)는 연관된 키워드의 발언을 확인하기 위해 수신된 활성화에 대한 검증 패스(verification pass)를 수행한다. 이러한 검증 패스는 검출 구성요소(1312)로 하여금 그렇지 않으면 요구되는 것보다 덜 강인한(robust) 검출 모델을 구현할 수 있게 하여 플랫폼 자원을 보존할 수 있다.
검증 패스가 성공적이면 대화 세션 클라이언트(1326)가 생성된다. 그런 다음, 대화 세션 클라이언트(1326)는 자신의 상태 및 중단 가능성 정보를 대화 세션 관리자(1316)에 제공할 수 있다. 예를 들어, 대화 세션 클라이언트(1326)는 자신이 활성화되고, 청취 중이며 중단 불가능함을 표시할 수 있다. 대화 세션 관리자(1316)는 이 정보의 기록을 유지한다.
따라서, 다른 키워드 검출을 수신하면, 대화 세션 관리자(1316)는 소프트웨어 아키텍처(1300)의 모든 음성 어시스턴트 애플리케이션의 상태 및/또는 중단 불가능성 정보에 기초하여 연관된 음성 어시스턴트 애플리케이션에 활성화를 전송할지 여부를 판정할 수 있다. 이 판정은 프로세스(1100, 1200)와 관련하여 위에서 설명된 로직 및/또는 임의의 다른 적절한 로직을 따를 수 있다. 활성화된 음성 어시스턴트가 (예컨대, 대화 세션 클라이언트(1326)와 대화 세션 관리자(1316) 사이의 통신을 통해) 자신을 중단 가능한 것으로 표시하지 않는 경우, 키워드가 검출될 때마다 단순히 대응하는 음성 어시스턴트에 활성화를 전송하도록 판정될 수 있다.
도 14는 일부 실시예에 따른 시스템을 구현할 수 있는 컴퓨팅 장치를 도시한다. 도 14의 컴퓨팅 장치들은 실시예가 구현될 수 있는 시스템의 완전한 집합을 구성하는 것은 아니다.
장치들(1410 내지 1450)의 각각은 전술한 바와 같이 활성화 관리자를 포함하는 운영 체제를 실행할 수 있다. 운영 체제는 또한 하나 이상의 음성 지원 애플리케이션의 등록을 허용할 수 있다. 개인용 컴퓨터(1410) 및 랩톱 컴퓨터(1420)는 데스크톱 운영 체제를 실행할 수 있는 반면, 스마트폰(1440) 및 스마트워치(1450)는 모바일 운영 체제를 실행할 수 있다. 스마트 스피커(1430)는 모바일 운영체제 또는 전용 스마트 장치 운영 체제를 실행할 수 있다. 다시 말하지만, 실시예는 이러한 설명으로 제한되지 않는다.
도 15는 일부 실시예에 따른 분산 시스템(1500)을 도시한다. 분산 시스템(1500)은 다중 음성 어시스턴트 기능이 탑재되지 않은 장치에 이러한 기능을 제공할 수 있다. 시스템(1500)의 클라우드 기반 구성요소는 주문형 가상 머신, 가상 서버 및 클라우드 저장 인스턴스를 사용하여 구현될 수 있다.
도 15의 예에 따르면, 클라이언트 장치(1510, 1520)는 클라우드 서비스(1530)에 선택적으로 접속하여 검출된 키워드를 그에 전송할 수 있다. 일부 실시예에서, 클라이언트 장치들(1510 및 1520) 중 하나 또는 둘 모두는 수신된 오디오 신호에 존재하게 될 임의의 키워드에 기초하여 음성 어시스턴트 서비스를 수신하기 위해 모든 수신된 오디오 신호를 클라우드 서비스(1530)로 전송한다.
어시스턴트 활성화 서비스(1532)는 수신된 오디오 신호 또는 키워드 검출 이벤트에 기초하여 음성 어시스턴트 애플리케이션의 활성화를 제공하는 클라우드 서비스로서 구현될 수 있다. 클라우드 서비스(1530)는 어시스턴트 활성화 서비스(1532)에 의해 활성화될 수 있는 음성 어시스턴트 애플리케이션(1534)을 포함할 수 있다. 클라우드 서비스(1530)를 동작시키는 서비스 제공자와 상이한 서비스 제공자에 의해 동작될 수 있는 클라우드 서비스(1550)는 음성 어시스턴트 애플리케이션(1552)을 제공할 수 있다. 음성 어시스턴트 애플리케이션(1552)은 또한 클라이언트 장치(1510 및/또는 1520)로부터 수신된 신호에 기초하여 어시스턴트 활성화 서비스(1532)에 의해 활성화될 수 있다.
음성 어시스턴트 애플리케이션(1534) 및 음성 어시스턴트 애플리케이션(1552)의 각각은 자신을 중단 가능한 것으로 표시하기 위해 어시스턴트 활성화 서비스(1532)와 통신할 수 있다. 따라서, 어시스턴트 활성화 서비스(1532)는 음성 어시스턴트 애플리케이션(1534)과 음성 어시스턴트 애플리케이션(1552) 중 어느 하나에 활성화를 전송할지 여부를 선택적으로 판정하기 위해 본 명세서에 설명된 바와 같이 동작할 수 있다.
도 16은 일부 실시예에 따른 시스템(1600)의 블록도이다. 시스템(1600)은 임의의 적절한 컴퓨팅 시스템을 포함할 수 있고, 본 명세서에 설명된 바와 같이 음성 어시스턴트를 제공하기 위해 프로그램 코드를 실행할 수 있다.
시스템(1600)은, 통신 장치(1620), 영구 데이터 저장 시스템(1630), 하나 이상의 입력 장치(1640), 하나 이상의 출력 장치(1650) 및 휘발성 메모리(1660)에 동작가능하게 결합된 처리 유닛(1610)을 포함한다. 처리 유닛(1610)은 프로그램 코드를 실행하기 위한 하나 이상의 프로세서, 처리 코어 등을 포함할 수 있다. 통신 인터페이스(1620)는 외부 네트워크와의 통신을 용이하게 할 수 있다. 입력 장치(들)(1640)는, 예를 들어, 키보드, 키패드, 마우스 또는 다른 포인팅 장치, 마이크로폰, 터치 스크린, 및/또는 눈 추적 장치를 포함할 수 있다. 출력 장치(들)(1650)는, 예를 들어, 디스플레이 및/또는 스피커를 포함할 수 있다.
데이터 저장 시스템(1630)은 자기 저장 장치(예컨대, 자기 테이프, 하드 디스크 드라이브 및 플래시 메모리), 광학 저장 장치, ROM(Read Only Memory) 장치 등의 조합을 포함하는 임의의 수의 적절한 영구 저장 장치를 포함할 수 있다. 메모리(1660)는 RAM(Random Access Memory), SCM(Storage Class Memory) 또는 임의의 다른 고속 액세스 메모리를 포함할 수 있다.
음성 어시스턴트 애플리케이션(1632)은, 처리 유닛(1610)에 의해 실행되어 시스템(1600)으로 하여금 사용자와의 대화 세션을 실행하게 하는 프로그램 코드를 포함할 수 있다. 음성 어시스턴트 애플리케이션(1632) 각각은 본 명세서에 설명된 활성화에 사용되는 음성 키워드와 연관된다. 운영 체제(1634)는 본 기술 분야에 알려진 운영 체제 구성요소를 포함하고, 본 명세서에 설명된 바와 같이 음성 어시스턴트 애플리케이션(1632)을 선택적으로 활성화하기 위한 활성화 서비스도 포함할 수 있다. 데이터(1636)는 시스템(1600)의 임의의 시스템 또는 애플리케이션에 의해 사용되는 임의의 데이터를 포함할 수 있다. 이러한 데이터는 본 명세서에 설명된 세션 상태 정보 및/또는 중단 불가능 플래그를 포함할 수 있다.
본 명세서에 설명된 각각의 기능적 구성요소는 컴퓨터 하드웨어로, 프로그램 코드로 및/또는 당업계에 공지된 그러한 프로그램 코드를 실행하는 하나 이상의 컴퓨팅 시스템으로 적어도 부분적으로 구현될 수 있다. 그러한 컴퓨팅 시스템은 메모리 시스템에 저장된 프로세서 실행가능 프로그램 코드를 실행하는 하나 이상의 처리 유닛을 포함할 수 있다.
전술한 도면들은 일부 실시예에 따른 프로세스를 설명하기 위한 논리적 아키텍처를 나타내며, 실제 구현은 다른 방식으로 배열된 더 많거나 상이한 구성요소를 포함할 수 있다. 다른 토폴로지가 다른 실시예와 함께 사용될 수 있다. 더 나아가, 본 명세서에 설명된 각각의 구성요소 또는 장치는 임의의 수의 다른 공용 및/또는 사설 네트워크를 통해 통신하는 임의의 수의 장치에 의해 구현될 수 있다. 이러한 컴퓨팅 장치들 중 둘 이상은 서로 원격으로 위치할 수 있고, 임의의 알려진 방식의 네트워크(들) 및/또는 전용 접속을 통해 서로 통신할 수 있다. 각각의 구성요소 또는 장치는 본 명세서에 설명된 기능뿐만 아니라 임의의 다른 기능을 제공하기에 적합한 임의의 수의 하드웨어 및/또는 소프트웨어 요소를 포함할 수 있다. 예를 들어, 일부 실시예에 따른 시스템의 구현에 사용되는 임의의 컴퓨팅 장치는 컴퓨팅 장치가 본 명세서에 설명된 바와 같이 동작하도록 프로그램 코드를 실행하는 프로세서를 포함할 수 있다.
본 명세서에서 논의된 모든 시스템 및 프로세스는 하나 이상의 비일시적 컴퓨터 판독가능 매체에 저장된 프로그램 코드로 구현될 수 있다. 이러한 매체는, 예를 들어, 하드 디스크, DVD-ROM, 플래시 드라이브, 자기 테이프, 솔리드 스테이트 RAM(Random Access Memory) 또는 ROM(Read Only Memory) 저장 유닛을 포함할 수 있다. 따라서 실시예는 하드웨어와 소프트웨어의 특정 조합으로 제한되지 않는다.
당업자는 청구범위를 벗어나지 않으면서 전술한 실시예의 다양한 조정 및 수정이 구성될 수 있음을 이해할 것이다. 따라서, 청구범위는 본 명세서에 구체적으로 기재된 것과 다르게 실시될 수 있음이 이해되어야 한다.
Claims (15)
- 컴퓨팅 시스템으로서,
프로세서 실행가능 프로그램 코드를 실행하여 상기 컴퓨팅 시스템으로 하여금,
복수의 음성 어시스턴트 애플리케이션을 실행하게 하고 ― 상기 복수의 음성 어시스턴트 애플리케이션의 각각은 각자의 음성 키워드와 연관됨 ―,
복수의 각자의 음성 키워드 중 한 키워드를 검출하게 하고,
상기 복수의 각자의 음성 키워드 중 한 키워드의 검출에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능(uninterruptable)으로 지정되는지 여부를 판정하게 하고,
상기 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션으로 활성화(activation)를 전송하게 하는
하나 이상의 처리 유닛을 포함하는,
컴퓨팅 시스템.
- 제1항에 있어서,
프로세서 실행가능 프로그램 코드를 실행하여 상기 컴퓨팅 시스템으로 하여금, 상기 복수의 음성 어시스턴트 애플리케이션 중 하나의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하지 않게 하는 하나 이상의 처리 유닛을 포함하는,
컴퓨팅 시스템.
- 제2항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 것은,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션이 활성 상태인지 여부를 판정하는 것과,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션이 활성 상태인 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 것을 포함하는,
컴퓨팅 시스템.
- 제1항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 것은, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 자신을 중단 불가능으로 표시했는지 여부를 판정하는 것을 포함하는,
컴퓨팅 시스템.
- 제1항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 것은, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 활성 상태이고 중단 불가능으로 지정되는지 여부를 판정하는 것을 포함하는,
컴퓨팅 시스템.
- 제1항에 있어서,
프로세서 실행가능 프로그램 코드를 실행하여 상기 컴퓨팅 시스템으로 하여금,
상기 복수의 각자의 음성 키워드 중 제2 키워드를 검출하게 하고,
상기 복수의 각자의 음성 키워드 중 상기 제2 키워드의 검출에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하게 하고,
상기 복수의 각자의 음성 키워드 중 상기 제2 키워드의 검출에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 제2 키워드와 연관된 제2 음성 어시스턴트 애플리케이션으로 활성화를 전송하게 하는
하나 이상의 처리 유닛을 포함하는,
컴퓨팅 시스템.
- 제1항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 것은,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션이 활성 상태인지 여부를 판정하는 것과,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션이 활성 상태인 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 것을 포함하는,
컴퓨팅 시스템.
- 복수의 음성 어시스턴트 애플리케이션을 제공하는 컴퓨팅 장치를 위한 방법으로서,
상기 복수의 음성 어시스턴트 애플리케이션의 각각은 각자의 음성 키워드와 연관되며, 상기 방법은,
복수의 각자의 음성 키워드 중 한 키워드를 검출하는 단계와,
상기 복수의 각자의 음성 키워드 중 한 키워드의 검출에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 한 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계와,
상기 복수의 음성 어시스턴트 애플리케이션 중 한 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하지 않는 단계를 포함하는,
방법.
- 제8항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 단계를 포함하는,
방법.
- 제9항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계는,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션이 활성 상태인지 여부를 판정하는 단계와,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션이 활성 상태인 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 단계를 포함하는,
방법.
- 제8항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계는, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 자신을 중단 불가능으로 표시했는지 여부를 판정하는 단계를 포함하는,
방법.
- 제8항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계는, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 활성 상태이고 중단 불가능으로 지정되는지 여부를 판정하는 단계를 포함하는,
방법.
- 제8항에 있어서,
상기 복수의 각자의 음성 키워드 중 제2 키워드를 검출하는 단계와,
상기 복수의 각자의 음성 키워드 중 상기 제2 키워드를 검출하는 것에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계와,
상기 복수의 각자의 음성 키워드 중 상기 제2 키워드를 검출하는 것에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 제2 키워드와 연관된 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 단계를 더 포함하는,
방법.
- 제8항에 있어서,
상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하는 단계는,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 하나의 음성 어시스턴트 애플리케이션이 활성 상태인지 여부를 판정하는 단계와,
상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션이 활성 상태인 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 상기 하나의 음성 어시스턴트 애플리케이션으로 활성화를 전송하는 단계를 포함하는,
방법.
- 시스템으로서,
복수의 음성 어시스턴트 애플리케이션 ― 상기 복수의 음성 어시스턴트 애플리케이션의 각각은 각자의 음성 키워드와 연관되고, 상기 각자의 음성 키워드에 응답하여 사용자 대화 세션을 실행함 ― 과,
음성 어시스턴트 활성화 구성요소를 포함하되,
상기 음성 어시스턴트 활성화 구성요소는,
복수의 각자의 음성 키워드 중 한 키워드의 사용자 발언(utterance)을 검출하고,
상기 복수의 각자의 음성 키워드 중 한 키워드의 검출에 응답하여, 상기 복수의 음성 어시스턴트 애플리케이션 중 임의의 음성 어시스턴트 애플리케이션이 중단 불가능으로 지정되는지 여부를 판정하고,
상기 복수의 음성 어시스턴트 애플리케이션 중 어느 것도 중단 불가능으로 지정되지 않는 것으로 판정되면, 상기 복수의 음성 어시스턴트 애플리케이션 중 상기 검출된 키워드와 연관된 음성 어시스턴트 애플리케이션에 활성화되도록 지시하는,
시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/419,503 | 2019-05-22 | ||
US16/419,503 US11189279B2 (en) | 2019-05-22 | 2019-05-22 | Activation management for multiple voice assistants |
PCT/US2020/025066 WO2020236309A1 (en) | 2019-05-22 | 2020-03-26 | Activation management for multiple voice assistants |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220009963A true KR20220009963A (ko) | 2022-01-25 |
Family
ID=70296136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217037769A KR20220009963A (ko) | 2019-05-22 | 2020-03-26 | 다수의 음성 어시스턴트를 위한 활성화 관리 |
Country Status (12)
Country | Link |
---|---|
US (2) | US11189279B2 (ko) |
EP (1) | EP3973389A1 (ko) |
JP (1) | JP2022533308A (ko) |
KR (1) | KR20220009963A (ko) |
CN (2) | CN117542360A (ko) |
AU (1) | AU2020279846A1 (ko) |
BR (1) | BR112021021554A2 (ko) |
CA (1) | CA3138926A1 (ko) |
IL (1) | IL288130A (ko) |
MX (1) | MX2021014190A (ko) |
SG (1) | SG11202110928TA (ko) |
WO (1) | WO2020236309A1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903763B (zh) * | 2019-01-11 | 2022-02-22 | 百度在线网络技术(北京)有限公司 | 服务控制方法、装置及设备 |
KR20210064594A (ko) * | 2019-11-26 | 2021-06-03 | 삼성전자주식회사 | 전자장치 및 그 제어방법 |
KR20210089295A (ko) * | 2020-01-07 | 2021-07-16 | 엘지전자 주식회사 | 인공지능 기반의 정보 처리 방법 |
US11557278B2 (en) * | 2020-12-10 | 2023-01-17 | Google Llc | Speaker dependent follow up actions and warm words |
CN115346523A (zh) * | 2021-05-14 | 2022-11-15 | 联发科技(新加坡)私人有限公司 | 语音设备的语音交互方法及装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8374879B2 (en) * | 2002-02-04 | 2013-02-12 | Microsoft Corporation | Systems and methods for managing interactions from multiple speech-enabled applications |
US7139713B2 (en) * | 2002-02-04 | 2006-11-21 | Microsoft Corporation | Systems and methods for managing interactions from multiple speech-enabled applications |
US11164570B2 (en) | 2017-01-17 | 2021-11-02 | Ford Global Technologies, Llc | Voice assistant tracking and activation |
US10748531B2 (en) | 2017-04-13 | 2020-08-18 | Harman International Industries, Incorporated | Management layer for multiple intelligent personal assistant services |
US20190013019A1 (en) | 2017-07-10 | 2019-01-10 | Intel Corporation | Speaker command and key phrase management for muli -virtual assistant systems |
US20190130898A1 (en) * | 2017-11-02 | 2019-05-02 | GM Global Technology Operations LLC | Wake-up-word detection |
CN107919123B (zh) | 2017-12-07 | 2022-06-03 | 北京小米移动软件有限公司 | 多语音助手控制方法、装置及计算机可读存储介质 |
CN111357048A (zh) * | 2017-12-31 | 2020-06-30 | 美的集团股份有限公司 | 用于控制家庭助手装置的方法和系统 |
TWI683306B (zh) * | 2018-08-28 | 2020-01-21 | 仁寶電腦工業股份有限公司 | 多語音助理之控制方法 |
US10996919B2 (en) * | 2018-09-28 | 2021-05-04 | Microsoft Technology Licensing, Llc | Providing historical captured audio data to applications |
US11315556B2 (en) * | 2019-02-08 | 2022-04-26 | Sonos, Inc. | Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification |
-
2019
- 2019-05-22 US US16/419,503 patent/US11189279B2/en active Active
-
2020
- 2020-03-26 EP EP20720281.3A patent/EP3973389A1/en active Pending
- 2020-03-26 MX MX2021014190A patent/MX2021014190A/es unknown
- 2020-03-26 KR KR1020217037769A patent/KR20220009963A/ko unknown
- 2020-03-26 CN CN202311513748.7A patent/CN117542360A/zh active Pending
- 2020-03-26 WO PCT/US2020/025066 patent/WO2020236309A1/en unknown
- 2020-03-26 CA CA3138926A patent/CA3138926A1/en active Pending
- 2020-03-26 CN CN202080037174.9A patent/CN113841118B/zh active Active
- 2020-03-26 AU AU2020279846A patent/AU2020279846A1/en active Pending
- 2020-03-26 JP JP2021559653A patent/JP2022533308A/ja active Pending
- 2020-03-26 BR BR112021021554A patent/BR112021021554A2/pt unknown
- 2020-03-26 SG SG11202110928TA patent/SG11202110928TA/en unknown
-
2021
- 2021-11-15 IL IL288130A patent/IL288130A/en unknown
- 2021-11-23 US US17/533,615 patent/US11626114B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN113841118B (zh) | 2023-11-03 |
MX2021014190A (es) | 2022-01-06 |
US20220139391A1 (en) | 2022-05-05 |
SG11202110928TA (en) | 2021-10-28 |
US11189279B2 (en) | 2021-11-30 |
JP2022533308A (ja) | 2022-07-22 |
CN113841118A (zh) | 2021-12-24 |
CA3138926A1 (en) | 2020-11-26 |
CN117542360A (zh) | 2024-02-09 |
US11626114B2 (en) | 2023-04-11 |
AU2020279846A1 (en) | 2021-11-18 |
IL288130A (en) | 2022-01-01 |
WO2020236309A1 (en) | 2020-11-26 |
EP3973389A1 (en) | 2022-03-30 |
US20200372907A1 (en) | 2020-11-26 |
BR112021021554A2 (pt) | 2022-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20220009963A (ko) | 다수의 음성 어시스턴트를 위한 활성화 관리 | |
JP6474762B2 (ja) | 発話者の検証のための動的な閾値 | |
JP6630765B2 (ja) | 個別化されたホットワード検出モデル | |
US9953654B2 (en) | Voice command recognition apparatus and method | |
JP6480568B2 (ja) | 音声アプリケーション・アーキテクチャ | |
US20210241775A1 (en) | Hybrid speech interface device | |
EP3035329A1 (en) | Executing a voice command during voice input | |
US11074912B2 (en) | Identifying a valid wake input | |
JP7463469B2 (ja) | 自動通話システム | |
US20230297321A1 (en) | Handling of noise and interruption during online meetings | |
RU2817625C2 (ru) | Управление активацией для нескольких голосовых помощников | |
US20230061929A1 (en) | Dynamically configuring a warm word button with assistant commands | |
US20230059979A1 (en) | Artificial Intelligence Based Smart Device for Contact Centers Solutions | |
US20230197072A1 (en) | Warm word arbitration between automated assistant devices | |
US20240203411A1 (en) | Arbitration between automated assistant devices based on interaction cues | |
WO2017119901A1 (en) | System and method for speech detection adaptation | |
KR20240094013A (ko) | 호출 속성에 기초한 다수의 자동 어시스턴트 사이에서의 선택 | |
JP2024031012A (ja) | 情報処理装置、音声認識支援方法、及び音声認識支援プログラム | |
CN115699167A (zh) | 当确定是否从某些客户端设备卸载助理相关处理任务时补偿硬件差异 |