KR20210002648A - 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용 - Google Patents

사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용 Download PDF

Info

Publication number
KR20210002648A
KR20210002648A KR1020207033967A KR20207033967A KR20210002648A KR 20210002648 A KR20210002648 A KR 20210002648A KR 1020207033967 A KR1020207033967 A KR 1020207033967A KR 20207033967 A KR20207033967 A KR 20207033967A KR 20210002648 A KR20210002648 A KR 20210002648A
Authority
KR
South Korea
Prior art keywords
user
subset
client device
content
distance
Prior art date
Application number
KR1020207033967A
Other languages
English (en)
Other versions
KR102574277B1 (ko
Inventor
투안 응우엔
케네스 믹스터
유안 유안
Original Assignee
구글 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 엘엘씨 filed Critical 구글 엘엘씨
Priority to KR1020237029180A priority Critical patent/KR20230128586A/ko
Publication of KR20210002648A publication Critical patent/KR20210002648A/ko
Application granted granted Critical
Publication of KR102574277B1 publication Critical patent/KR102574277B1/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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • G06K9/00335
    • G06K9/6215
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

자동화된 어시스턴트 콘텐츠를 렌더링하는 자동화된 어시스턴트 인터페이스에 대한 사용자의 거리에 따라 자동화된 어시스턴트 콘텐츠를 생성 및/또는 적응시키기 위한 방법, 장치, 시스템 및 컴퓨터 판독가능 매체가 제공된다. 예를 들어, 자동화된 어시스턴트는 클라이언트 디바이스가 렌더링할 데이터를 제공할 수 있다. 클라이언트 디바이스는 사용자가 클라이언트 디바이스에 더 가깝거나 더 멀리 이동할 때 추가 데이터를 요청할 수 있다. 일부 구현예에서, 추가 데이터에 대한 요청은 사용자와 클라이언트 디바이스 사이의 거리를 식별할 수 있다. 이러한 방식으로 요청 내의 거리에 따라 추가 데이터를 생성하거나 선택할 수 있다. 다른 구현예는 자동화된 어시스턴트가 환경의 사용자 그룹으로부터 활성 사용자를 결정하고, 임의의 렌더링된 콘텐츠가 활성 사용자에 맞게 조정될 수 있도록 활성 사용자와 클라이언트 디바이스 사이의 거리를 결정하게 할 수 있다.

Description

사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용
본 발명은 자동화된 어시스턴트 콘텐츠를 렌더링하는 자동화된 어시스턴트 인터페이스에 대한 사용자의 거리에 따라 자동화된 어시스턴트 콘텐츠를 생성 및/또는 조정하기 위한 방법, 장치, 시스템 및 컴퓨터 판독가능 매체에 대한 것이다.
인간은 본 명세서에서 "자동화된 어시스턴트"("디지털 에이전트", "챗봇", "대화형 개인 어시스턴트", "지능형 개인 어시스턴트" , "어시스턴트 어플리케이션","대화형 에이전트" 기타 등등이라고도 함)라고 지칭되는 대화형 소프트웨어 어플리케이션을 사용하여 인간 대 컴퓨터 대화에 참여할 수 있다. 예를 들어, 인간(자동화된 어시스턴트와 상호작용할 때는 "사용자"로 지칭됨)은 발음된 자연어 입력(예: 발화)을 사용하여 자동화된 어시스턴트에게 명령 및/또는 요청을 제공할 수 있으며(이는 경우에 따라 텍스트로 변환된 다음 프로세싱될 수 있으며) 및/또는 텍스트형(예컨대, 타이핑된) 자연어 입력을 제공할 수도 있다. 자동화된 어시스턴트는 청각 및/또는 시각적 사용자 인터페이스 출력을 포함할 수 있는 반응형 사용자 인터페이스 출력을 제공하여 이러한 요청에 응답한다.
출원인은 다음과 같은 점을 인식하였는바, 자동화된 어시스턴트가 사용자에게 제공하기 위해 사용자 인터페이스 출력을 렌더링할 때(예를 들어, 사용자의 요청에 대한 응답으로서), 일반적으로 사용자 인터페이스 출력은 콘텐츠를 렌더링하는 사용자 인터페이스 출력 디바이스(들)에 대한 사용자의 거리에 관계없이 렌더링된다. 그 결과, 사용자는 자신의 현재 위치에서 사용자 인터페이스 출력을 인식하지 못할 수도 있다(예컨대, 디스플레이된 출력이 너무 작거나 가청 출력이 너무 낮은 볼륨일 수 있다). 이로 인해 사용자는 다른 곳으로 이동하여 출력을 다시 한번 렌더링하도록 요청하는 사용자 인터페이스 입력을 제공해야만할 수 있다. 이러한 사용자 인터페이스 입력을 프로세싱하는 것 및/또는 콘텐츠를 다시 렌더링하는 것은, 컴퓨팅 리소스 및/또는 네트워크 리소스의 과도한 소비를 유발할 수 있다. 더구나, 숙련되지 않은 사용자(user with low dexterity)의 경우, 손재주가 낮은 사용자의 경우 사용자 인터페이스 입력이 인식될 수 있는 위치로 다시 이동하는데 어려움을 겪을 수 있다. 추가적으로 또는 대안적으로, 사용자의 거리에 상관없이 출력을 렌더링한 결과로서, 자동화된 어시스턴트로부터의 사용자 인터페이스 출력은 필요한 것보다 더 많은 계산 자원을 소모하는 방식으로 렌더링될 수 있다. 예를 들어, 가청 출력은 필요한 것보다 더 높은 볼륨에서 렌더링될 수 있으며 및/또는 디스플레이된 출력은 더 긴 지속기간을 위한 다수의 프레임들을 통해 디스플레이될 수 있다(다수의 프레임들의 콘텐츠가 단일 프레임을 통해 대신 디스플레이되는 것에 비하여).
더욱이, 출원인은 다음과 같은 점을 인식하였는바, 사용자 인터페이스 출력이 렌더링될 때, 사용자는 다른 곳으로 이동할 수 있으며, 이는 자동화된 어시스턴트로부터의 추가 출력을 인지하는 사용자의 능력을 잠재적으로 방해할 수도 있다. 또한, 자동화된 어시스턴트가 특정 클라이언트 디바이스로 하여금 출력을 제공하게하고 그리고 사용자가 상기 클라이언트 디바이스에 더 가까이 이동하는 경우, 사용자는 클라이언트 디바이스의 특정 인터페이스에 대한 근접성 때문에 더 많은 출력을 인식하기를 원할 수 있다. 하지만, 많은 자동화된 어시스턴트들은 일반적으로 사용자 거리를 고려하지 않기 때문에, 이들 자동화된 어시스턴트들은 사용자가 인식할 수 없는 출력을 렌더링하는데 컴퓨팅 리소스들을 낭비하고 있을 수 있다. 또한, 사용자가 출력을 인식할 수 있는 다양한 방식들을 고려하면, 렌더링된 출력이 근방의 사용자에 대해 조정되지 않은 경우, 컴퓨팅 리소스들이 효율적으로 이용되지 않을 수 있다.
본 명세서에 개시된 구현예들은 자동화된 어시스턴트 콘텐츠를 렌더링하는 자동화된 어시스턴트 인터페이스에 대한 적어도 하나의 사용자의 거리에 따라 자동화된 어시스턴트 콘텐츠를 생성 및/또는 조정하기 위한 방법, 장치 및 컴퓨터 판독가능 매체(일시적 및 비일시적)에 관한 것이다. 적어도 하나의 사용자의 거리에 따라 자동화된 어시스턴트 콘텐츠를 생성하는 일부 구현예들은 사용자의 현재 결정된 거리에 기초한 거리 메트릭을 포함하는 에이전트 요청을 생성하는 것에 기초하여 콘텐츠를 생성한다. 사용자의 현재 거리는 비전 센서(예컨대, 모노그래픽 카메라, 스테레오그래픽 카메라), 전용 거리 센서(예컨대, 레이저 거리계), 마이크로폰(예컨대, 빔 포밍 및/또는 기타 기술을 사용함)과 같은 하나 이상의 센서(들)로부터의 신호(들)에 기초하여 결정될 수 있다. 또한, 에이전트 요청이 해당 에이전트에 제출되고, 해당 에이전트는 거리 메트릭에 맞게 조정된 에이전트 데이터로 에이전트 요청에 응답한다. 이후, 자동화된 어시스턴트는 사용자에게 렌더링하기 위한 콘텐츠로서 에이전트 데이터(또는 그 변환물)를 제공할 수 있다. 콘텐츠가 거리 메트릭에 맞게 조정되고 그리고 사용자의 현재 거리에서 사용자에 의해 쉽게 인식될 수 있으므로, 자동화된 어시스턴트와의 사용자 상호작용이 향상될 수 있다. 또한, 에이전트 데이터는 요청에 사용할 수 있는 후보 에이전트 데이터의 서브세트일 수 있으며, 여기서 서브세트는 에이전트 요청의 거리 메트릭에 대한 서브세트의 적합성에 기초하여 에이전트에 의해 선택된다. 이러한 방식들과 다른 방식들에서는, 후보 에이전트 데이터 전체(전송에 더 많은 네트워크 리소스가 필요함) 대신에, 오직 후보 에이전트 데이터의 서브세트만이 에이전트에 의해 제공된다. 또한, 콘텐츠를 렌더링하는 자동화된 어시스턴트 클라이언트 디바이스는 후보 에이전트 데이터 전체(또는 변환물) 대신에 에이전트 데이터의 서브세트(또는 변환물)만을 수신할 수 있다. 거리 메트릭에 맞게 조정된 콘텐츠의 특정한 성질은, 자동화된 어시스턴트를 구동하는 사용자 디바이스와 같은 컴퓨팅 장치에서 컴퓨팅 및 기타 하드웨어 리소스의 효율적인 사용을 보장할 수 있다. 이는 적어도 사용자가 인식할 수 없는 어시스턴트의 잠재적으로 계산 비용이 많이 드는 기능들의 구현이 방지되기 때문이다. 예를 들어, 네트워크 리소스들(예를 들어, 서브세트만을 클라이언트 디바이스로 전송함), 클라이언트 디바이스의 메모리 리소스들(예를 들어, 클라이언트 디바이스의 서브세트만을 버퍼링함), 및/또는 클라이언트 디바이스의 프로세서 및/또는 전력 리소스들(예를 들어, 서브세트의 일부 또는 전부만을 렌더링함)이 보존될 수 있다.
사용자의 거리에 따라 자동화된 어시스턴트 콘텐츠를 생성하는 비제한적인 일례로서, 사용자가 어시스턴트 인터페이스를 갖는 클라이언트 디바이스의 디스플레이로부터 7 피트 떨어져 있다고 가정하자. 또한, 사용자가 "지역 날씨 예보" 라는 음성 발화(spoken utterance)를 제공한다고 가정하자. 사용자의 추정 거리는 클라이언트 디바이스의 센서(들) 및/또는 클라이언트 디바이스에 근접한 다른 센서(들)로부터의 신호에 기초하여 결정될 수 있다. 음성 발화가 프로세싱되어 에이전트 요청(예컨대, "날씨 예보"의 의도 및 클라이언트 디바이스의 위치에 해당하는 위치 값을 특정함)을 생성할 수 있으며 그리고 사용자의 추정 거리에 기초하는 거리 메트릭이 에이전트 요청에 포함될 수 있다. 에이전트 요청은 해당 에이전트로 전송될 수 있으며, 이에 응답하여 해당 에이전트는 그 위치에 대한 3 일치 날씨 예보의 그래픽적 표현만을 포함하는 그래픽 콘텐츠를 반환할 수 있다. 3 일 날씨 예보의 그래픽적 표현은 클라이언트 디바이스로 전송되어 클라이언트 디바이스의 디스플레이를 통해 그래픽적으로 렌더링될 수 있다. 해당 에이전트는 3 일치 날씨 예보의 그래픽적 표현에 대한 거리 메트릭의 대응관계에 기초하여 3 일치 날씨 예보의 그래픽적 표현을 선택할 수 있다(예컨대, 1 일치, 5 일치 또는 기타 변형된 날씨 예보 대신에).
상기 일례의 변형으로서, 사용자가 디스플레이로부터 20 피트 떨어져 있고 그리고 "지역 날씨 예보" 라는 동일한 음성 발화를 제공한다라고 가정하자. 이러한 변형예에서, 에이전트 요청에 포함된 거리 메트릭은 20 피트 거리 추정치를 반영할 것이며(7 피트 거리 추정치 대신에), 결과적으로, 요청에 응답하여 에이전트에 의해 반환된 콘텐츠는 해당 지역에 대한 3 일치 날씨 예보를 전달하는 텍스트 콘텐츠 또는 가청 콘텐츠를 포함할 수 있으며 그리고 임의의 그래픽적 콘텐츠를 제외할 수 있다. 가청 콘텐츠(또는 텍스트 콘텐츠 또는 텍스트 콘텐츠의 텍스트 음성 변환인 오디오)는 임의의 날씨 관련 그래픽 콘텐츠가 시각적으로 렌더링됨이 없이, 클라이언트 디바이스의 스피커를 통해 청각적으로 렌더링되도록 클라이언트 디바이스로 전송될 수 있다. 해당 에이전트는 3 일치 텍스트 또는 가청 날씨 예보에 대한 거리 메트릭의 대응관계에 기초하여, 3 일치 텍스트 또는 가청 날씨 예보를 선택할 수 있다 (예컨대, 날씨 예보의 그래픽적 표현 대신에).
상기 일례의 또 다른 변형으로서, 사용자가 디스플레이로부터 12 피트 떨어져 있고, "현지 날씨 예보"라는 동일한 음성 발화를 제공한다라고 가정하자. 이러한 추가적인 변형예에서, 에이전트 요청에 포함된 거리 메트릭은 12 피트 거리 추정치를 반영할 것이므로, 요청에 응답하여 에이전트에 의해 반환된 콘텐츠는 그 지역에 대한 3 일치 날씨 예보를 전달하는 텍스트 또는 가청 콘텐츠를 포함할 수 있으며, 그 지역에 대한 오직 하루치의 예보(즉, 당일의 예보) 전달하는 그래픽 콘텐츠를 포함할 수도 있다. 가청 콘텐츠(또는 텍스트 콘텐츠 또는 텍스트 콘텐츠의 텍스트 음성 변환인 오디오)는 클라이언트 디바이스의 스피커를 통해 청각적으로 렌더링되기 위해 클라이언트 디바이스로 전송될 수 있으며 그리고 1 일치 날씨 그래픽 콘텐츠가 또한 클라이언트 디바이스의 디스플레이를 통한 그래픽 렌더링을 위해 전송될 수 있다. 다시 한번 설명하면, 해당 에이전트는 반환된 콘텐츠에 대한 거리 메트릭의 대응관계에 기초하여 반환된 콘텐츠를 선택할 수 있다.
일부 구현예에서, 클라이언트 디바이스에 의해 렌더링되는 자동화된 어시스턴트 콘텐츠는 추가적으로 또는 대안적으로 사용자의 거리에 따라 조정(또는 적응)될 수 있다. 예를 들어, 자동화된 어시스턴트가 특정 자동화된 어시스턴트 액션을 수행하고 있을 때, 자동화된 어시스턴트는 콘텐츠를 렌더링하는 클라이언트 디바이스에서 로컬적으로 이용될 수 있는 후보 자동화된 어시스턴트 콘텐츠의 서브세트(예를 들어, 클라이언트 디바이스의 로컬 메모리에 저장된 후보 자동화된 어시스턴트 콘텐츠)와 같은, 후보 자동화 어시스턴트 콘텐츠의 상이한 서브세트들을 렌더링하는 것 사이에서 "스위칭"할 수 있다. 자동화된 어시스턴트는 소정 시간에서의 거리 측정치를 사용할 수 있는데, 이는 상기 소정 시간에서 클라이언트 디바이스에서 렌더링하기 위해 이용될 후보 자동화된 어시스턴트 콘텐츠의 서브세트를 선택하기 위한 것이다. 후보 자동화된 어시스턴트 콘텐츠는 예를 들어, 자동화된 어시스턴트 액션과 관련된 요청을 원격 디바이스가 수신하는 것에 응답하여, 원격 디바이스로부터 클라이언트 디바이스에 제공될 수 있다. 제공된 콘텐츠는 사용자의 여러 다른 위치들 및/또는 거리들에 대하여 클라이언트 디바이스에 의해 조정될 수 있는 자동화된 어시스턴트 콘텐츠에 대응할 수 있다. 이러한 방식으로, 사용자가 대응하는 위치들 및/또는 거리들에 따라 이동하는 한, 자동화된 어시스턴트는 사용자 위치 및/또는 사용자 거리의 변화에 따라 자동화된 어시스턴트 콘텐츠의 렌더링 또는 프리젠테이션이 조정되게 할 수 있다. 사용자가 렌더링된 콘텐츠의 임의의 적절한 조정에 대응하지 않는 위치 및/또는 장소로 이동하는 경우(및/또는 그러한 위치 및/또는 장소에 가깝게 이동하는 경우), 자동화된 어시스턴트는 클라이언트 디바이스로 하여금 그 위치 및/또는 장소에 대한 추가적인 자동화된 어시스턴트 콘텐츠를 요청하게 할 수 있다. 그런 다음 추가적인 자동화된 어시스턴트 콘텐츠가 이용되어 클라이언트 디바이스에서 보다 적절한 콘텐츠를 렌더링할 수 있다.
일례로서, 자동화된 어시스턴트는 다수의 서로 다른 액션들을 포함하는 루틴을 수행할 수 있다. 자동화된 어시스턴트는 사용자 명령(예컨대, 음성 발화, 사용자 인터페이스 요소의 탭)에 응답하여 및/또는 하나 이상의 조건의 발생에 응답하여(예컨대, 사용자의 존재를 검출함에 응답하여, 하루 중 특정 시간이 됨에 응답하여, 또는 기상 알람이 사용자에 의해 해제됨에 응답하여), 루틴을 수행할 수 있다. 일부 구현예에서, 루틴의 다수의 상이한 액션들 중 하나는 팟캐스트(podcast)에 대응하는 콘텐츠를 렌더링하는 것을 포함할 수 있다. 콘텐츠는 클라이언트 디바이스에서 로컬적으로 이용될 수 있는 데이터를 사용하여 렌더링될 수 있으며, 그리고 클라이언트 디바이스에 대한 사용자의 거리에 따라 조정될 수 있다. 예를 들어, 사용자가 클라이언트 디바이스로부터 제 1 거리에 있는 경우, 자동화된 어시스턴트는 사용가능한 데이터의 일부가 가청 콘텐츠로 제한된 콘텐츠로 렌더링되도록할 수 있다. 또한, 사용자가 제 1 거리보다 짧은 제 2 거리로 이동하는 경우, 자동화된 어시스턴트는 렌더링된 콘텐츠가 비디오 콘텐츠를 포함하도록 조정할 수 있고 및/또는 가청 콘텐츠를 더 높은 볼륨으로 렌더링할 수 있다. 예를 들어, 비디오 콘텐츠는 오디오 콘텐츠가 도출되는 인터뷰의 비디오 녹화에 해당할 수 있다. 가청 콘텐츠 및 비디오 콘텐츠에 대한 기초를 제공하는 데이터는, 루틴의 초기화에 응답하여 클라이언트 디바이스로 전송될 수 있고(예컨대, 원격 자동 어시스턴트 컴포넌트에 의해) 및/또는 루틴의 초기화에 앞서서 클라이언트에 의해 선제적으로 다운로드될 수 있다 (예컨대, 이러한 콘텐츠의 자동 다운로드를 사용자가 선호함을 나타내는 구독 데이터 또는 사용자 선호도에 따른 자동화된 어시스턴트의 지시에 따라).
이러한 방식들 및 다른 방식들에서, 렌더링된 콘텐츠는 사용자가 이동할 때마다 추가적인 데이터를 반드시 요청하지 않고도, 사용자 위치 및/또는 사용자 장소의 변화에 맞게 조정될 수 있다. 이렇게하면 렌더링된 콘텐츠를 조정할 때 대기 시간을 줄일 수 있다. 로컬적으로 이용가능한 데이터에 대응하지 않는 위치 또는 장소로 사용자가 이동하는 경우, 자동화된 어시스턴트는 클라이언트 디바이스가 추가 데이터에 대한 요청을 생성하게 할 수 있고 및/또는 자동화된 어시스턴트는 추가 데이터에 대한 요청을 생성할 수 있다. 선택적으로, 요청은 거리 측정치에 기초하는 정보를 포함할 수 있다. 클라이언트 디바이스가 응답으로 추가 데이터를 수신하면(예컨대, 팟캐스트 데이터를 호스팅하는 서버로부터), 자동화된 어시스턴트는 추가 데이터를 이용하고 거리 데이터에 기초하여, 클라이언트 디바이스가 콘텐츠를 렌더링하게 할 수 있다.
일부 구현예에서, 클라이언트 디바이스는 특정한 렌더링 콘텐츠에 대응하는 위치로 사용자가 이동할 것을 예상하여, 콘텐츠를 선제적으로 요청 및/또는 버퍼링할 수 있다. 예를 들어, 클라이언트 디바이스는 사용자가 클라이언트 디바이스로부터 5 내지 10 피트 거리에 있을 때 로컬적으로 이용가능한 데이터를 가질 수 있다. 사용자가 클라이언트 디바이스로부터 5 내지 10 피트 이내에 있지만 여전히 클라이언트 디바이스를 향해 움직이고 있는 경우, 클라이언트 디바이스는 로컬적으로 이용가능한 가능한 데이터를 렌더링할 수 있으며 그리고 추가 데이터를 선제적으로 요청할 수 있다. 추가 데이터는 클라이언트 디바이스로부터 2 내지 5 피트 거리에 대응할 수 있으며 따라서, 사용자가 상기 2 내지 5 피트 영역에 들어가면 클라이언트 디바이스는 추가 데이터를 렌더링할 수 있다. 이렇게 하면, 사용자가 클라이언트 디바이스를 향하거나 또는 클라이언트 디바이스로부터 멀어질 때 렌더링할 데이터의 서브세트들 사이에서 스위칭하는 대기 시간이 감소될 수 있다.
일례로서, 사용자는 "어시스턴트, 내 노래를 재생해줘" 라는 음성 발성을 제공할 수 있다. 이에 응답하여, 클라이언트 디바이스는 다양한 거리들과 관련된 데이터를 요청하고, 클라이언트 디바이스와 사용자 사이의 검출된 거리에 기초하여, 상기 검출된 거리에 기초하여 렌더링될 콘텐츠를 결정할 수 있다. 예를 들어, 사용자가 클라이언트 디바이스로부터 20 피트 떨어져 있는 경우, 클라이언트 디바이스는 오디오로 국한된 콘텐츠를 렌더링할 수 있으며 그리고 사용자가 20 피트 보다는 작지만 12 피트 보다는 큰 거리에 있을 때 렌더링되도록 미리-설정된 음악 앨범을 선제적으로 로딩할 수 있다. 일부 구현예에서, 사용자가 12 피트와 20 피트 사이의 위치로 이동할 때, 음악 앨범은 클라이언트 디바이스에서 임의의 이전 그래픽 콘텐츠(예를 들어, 가사)를 대체할 수 있다. 대안적으로 또는 추가적으로, 사용자가 6 피트와 12 피트 사이의 거리에 있을 때, 클라이언트 디바이스는 비디오를 렌더링할 수 있으며 그리고 렌더링되는 오디오와 동기화시킬 수 있다. 일부 구현예에서, 렌더링된 비디오는 사용자가 20 피트 떨어져 있을 때 로컬적으로 이용할 수 없었지만 사용자가 클라이언트 디바이스를 향한 궤적을 따라 이동하고 있다는 결정에 응답하여 클라이언트 디바이스에 의해 요청된 데이터에 기초할 수 있다. 이러한 방식으로, 요청된 데이터는 렌더링된 오디오 데이터에 대한 기반으로 제공되는 데이터와 상호배타적일 수 있으며 그리고 렌더링된 비디오는 사용자가 클라이언트 디바이스로부터 6 내지 12 피트 사이의 거리에 도달하기 전에 렌더링되었던 임의의 그래픽 콘텐츠를 대체할 것이다. 더 나아가, 사용자가 6 피트 미만의 거리에 있을 때, 클라이언트 디바이스는 계속해서 비디오를 렌더링할 수 있지만, 터치가능한 미디어 컨트롤들(예를 들어, 뒤로 재생, 일시 중지, 및/또는 앞으로 재생 등과 같은 대화형 제어 요소)을 추가적으로 시각적으로 렌더링할 수 있다. 반면에, 이들 콘트롤들은 사용자가 6 피트 미만의 거리에 있기 전에는 렌더링되지 않을 것이다.
일부 구현예에서, 여러 사용자들이 자동화된 어시스턴트에 액세스할 수 있는 클라이언트 디바이스에 의해 공유되는 환경에 있을 수 있다. 따라서, 거리 측정치를 결정하는 것은 "활성(active)" 이거나 그렇지않으면 자동화된 어시스턴트와 직접적으로 또는 간접적으로 관여하는 적어도 한 명의 사용자에 따라 달라질 수 있다. 예를 들어, 클라이언트 디바이스와 통신하는 하나 이상의 센서들을 사용하여, 사용자가 여러 사람들의 그룹 중 활성 사용자인지의 여부를 검출할 수 있다. 예를 들어 시각 센서(예컨대, 클라이언트 디바이스의 카메라)의 출력으로부터 생성된 데이터가 프로세싱되어, 예를 들어, 활성 사용자의 포즈, 시선 및/또는 입 움직임에 기초하여 복수의 사용자들 중에서 활성 사용자를 결정할 수 있다. 하나의 특정 일례로서, 클라이언트 디바이스를 향하고 있는 사용자의 포즈 및 시선에 기초하여, 그리고 클라이언트 디바이스를 향하고 있지 않은 다른 사용자들의 포즈 및 시선에 기초하여, 단일 사용자가 활성 사용자로 결정될 수 있다. 특정 일례에서, 거리 측정치는 상기 단일 사용자의 결정된 거리에 기초할 수 있다(이는 시각 센서(들)로부터의 출력 및/또는 다른 센서(들)로부터의 출력에 기초하여 결정될 수 있음). 또 다른 특정 일례로서, 클라이언트 디바이스를 향하고 있는 2 명의 사용자의 포즈 및 시선에 기초하여, 상기 2 명의 사용자가 활성 사용자로 결정될 수 있다. 이러한 또 다른 특정 일례에서, 거리 측정치는 2 명의 사용자들의 결정된 거리들에 기초할 수 있다(예를 들어, 2 개의 거리들의 평균)
대안적으로 또는 추가적으로, 트랜스듀서(들)(예를 들어, 클라이언트 디바이스의 마이크로폰(들))의 출력으로부터 생성된 가청 데이터는 빔 포밍, 음성 식별 및/또는 복수의 사용자들 중 활성 사용자를 식별하는 다른 기법들을 사용하여 프로세싱될 수 있다. 예를 들어, 음성 발화를 빔 포밍을 이용하여 프로세싱하여, 음성 발화를 제공하는 사용자의 거리를 추정할 수 있으며, 음성 발화를 제공하는 사용자가 활성 사용자로 고려되고 그리고 추정된 거리가 활성 사용자에 대한 거리로서 이용될 수 있다. 또한, 예를 들어, 음성 발화의 음성 식별은 음성 발화에 부합하는 사용자 프로필을 식별하기 위해 활용될 수 있으며, 그리고 캡처된 이미지(들)의 활성 사용자는 사용자 프로파일의 대응하는 피처(들)에 부합하는 활성 사용자의 얼굴 및/또는 다른 피처(들)에 기초하여 결정될 수 있다. 또 다른 예로서, 음성 발화를 제공하는 사용자의 방향을 추정하기 위하여 빔 포밍을 사용하여 음성 발화를 프로세싱할 수 있으며, 캡처된 이미지(들)에서 및/또는 기타 센서 데이터에서 그 방향에 있는 활성 사용자에 기초하여 음성 발화를 제공하는 활성 사용자가 결정될 수 있다. 이러한 방식들 및 다른 방식들에서, 클라이언트 디바이스의 환경 내에 있는 다수의 사용자들 중에서 활성 사용자가 식별될 수 있고, 그리고 환경의 다른 사용자(들) 대신에 그 활성 사용자에 대하여 콘텐츠가 생성 및/또는 조정될 수 있다. 이후, 이러한 정보는 그 사용자를 위해 콘텐츠를 생성 및/또는 조정하는 토대로 사용될 수 있다. 다른 구현예에서, 사용자에 대한 음성 특징(voice signature) 또는 음성 식별자(ID)가 검출될 수 있으며, 상기 음성 특징 및/또는 음성 ID는 사용자의 상태를 식별하기 위해 카메라로부터의 하나 이상의 이미지들과 조합되어 프로세싱될 수 있다. 예를 들어, 마이크로폰의 출력에 기초하여 수집된 오디오 데이터는 음성 특징들을 검출하기 위해 프로세싱될 수 있으며 그리고 자동화된 어시스턴트가 액세스할 수 있는 하나 이상의 프로필과 상기 음성 특징들을 비교할 수 있다. 음성 특징들과 가장 관련이 있는 프로필은, 사용자를 위해 콘텐츠를 생성 및/또는 조정하는 방법을 결정하는데 사용될 수 있다.
전술한 설명은 본 발명의 일부 실시예들에 대한 개요로서 제공된다. 이들 구현예들 및 다른 구현예들에 대한 추가적인 설명은 아래에서 더 자세히 서술된다.
일부 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법이 제공되며, 이는 액션의 수행을 초기화하도록 자동화된 어시스턴트에 대한 요청을 수신하는 단계를 포함한다. 자동화된 어시스턴트는 디스플레이 디바이스 및 센서와 통신하는 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스를 통해 액세스가능하며, 상기 센서는 디스플레이 디바이스에 대한 사용자의 거리를 나타내는 출력을 제공한다. 상기 방법은 또한, 센서의 출력에 기초하여, 상기 디스플레이 디바이스에 대한 사용자의 추정된 거리에 대응하는 거리 측정치를 결정하는 단계를 포함한다. 상기 방법은 또한, 수신된 요청에 기초하여, 액션을 완료하기 위한 에이전트를 식별하는 단계를 포함한다. 에이전트는 자동화된 어시스턴트에 액세스가능하고 그리고 디스플레이 디바이스에 대한 사용자의 추정된 거리에 기초하여 클라이언트 디바이스에 대한 데이터를 제공하도록 구성된다. 상기 방법은 또한, 요청을 수신하고 수신된 요청에 기초하여 에이전트를 식별하는 것에 응답하여, 액션을 촉진하는 콘텐츠 아이템들을 제공하도록, 식별된 에이전트에 대한 에이전트 요청을 생성하는 단계를 포함한다. 에이전트 요청은 결정된 거리 측정치를 식별한다. 상기 방법은 또한, 후보 콘텐츠 아이템들의 서브세트와 에이전트 요청에 포함된 거리 측정치 사이의 대응관계에 기초하여 상기 액션에 대한 콘텐츠 아이템들의 서브세트를 에이전트가 선택하도록, 에이전트 요청을 에이전트에 전송하는 단계를 포함한다. 후보 콘텐츠 아이템들의 서브세트는 콘텐츠 아이템들의 서브세트로부터 제외된 다른 콘텐츠 아이템들에 비해 고유하게 클라이언트 디바이스에서 렌더링되도록 구성된다. 상기 방법은 또한, 상기 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게하는 단계를 포함한다.
본 발명의 이들 및 다른 구현예들은 다음과 같은 하나 이상의 특징들을 포함할 수 있다.
일부 구현예에서, 콘텐츠 아이템들의 서브세트는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트, 및 제 2 거리 범위에 대응하는 제 2 서브세트를 포함한다. 상기 제 2 거리 범위는 상기 추정된 거리를 제외하고 상기 제 1 거리 범위와 공통 경계(common boundary)를 갖는다. 이러한 구현예에서, 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게하는 단계는, 상기 클라이언트 디바이스로 하여금 처음에 오직 제 1 서브세트만을 렌더링하게하는 단계; 및 상기 클라이언트 디바이스로 하여금 제 2 서브세트를 버퍼링하게하고, 그리고 사용자가 상기 제 2 거리 범위에 속하는 새로운 거리로 이동했다라고 결정함에 응답하여 제 2 서브세트를 렌더링하게하는 단계를 포함한다. 이러한 구현예의 일부 버전들에서, 상기 클라이언트 디바이스로 하여금 상기 제 2 서브세트를 렌더링하게하는 단계는, 사용자가 상기 새로운 거리로 이동했다라고 결정함에 응답하여 상기 클라이언트 디바이스로 하여금 상기 제 1 서브세트를 상기 제 2 서브세트로 대체하게하는 단계를 포함한다. 일부 버전들에서, 상기 제 2 서브세트는 선택적으로는 상기 제 1 서브세트에 포함된 임의의 콘텐츠를 갖지 않을 수 있다. 이러한 구현예의 일부 버전들에서, 상기 제 1 서브세트는 오디오 데이터를 포함하고, 상기 제 2 서브세트는 그래픽 콘텐츠를 포함하며, 상기 클라이언트 디바이스로 하여금 처음에 오직 제 1 서브세트만을 렌더링하게하는 단계는, 상기 클라이언트 디바이스가 상기 오디오 데이터를 청각적으로 렌더링하게하는 단계를 포함하고, 상기 클라이언트 디바이스로 하여금 상기 제 2 서브세트를 렌더링하게하는 단계는, 상기 클라이언트 디바이스가 상기 오디오 데이터의 청각적 렌더링과 함께 그래픽 콘텐츠를 렌더링하게하는 단계를 포함한다. 일부 다른 버전들에서, 그래픽 콘텐츠는 이미지이거나 또는 상기 오디오 데이터와 동기화되어 렌더링되는 비디오이다. 일부 추가적인 혹은 대안적인 버전들에서, 에이전트는 거리 측정치에 대응하는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트에 기초하여 제 1 서브세트를 선택하고, 그리고 상기 에이전트는 제 2 서브세트에 대응하는 제 2 거리 범위의 임계 거리 내에 있는 사용자의 추정된 거리에 기초하여 제 2 서브세트를 선택한다. 또 다른 추가적인 혹은 대안적인 버전들에서, 상기 방법은 센서로부터의 출력에 기초하여, 상기 추정된 거리의 추정된 변화율을 결정하는 단계; 및 상기 추정된 변화율에 대한 표시를 에이전트 요청에 포함시키는 단계를 더 포함한다. 이들 다른 추가적인 혹은 대안적인 버전들에서, 에이전트는 상기 거리 측정치에 대응하는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트에 기초하여 제 1 서브세트를 선택하고, 상기 에이전트는 추정된 변화율에 대한 표시에 기초하여 제 2 서브세트를 선택한다.
일부 구현예에서, 상기 사용자 및 하나 이상의 추가 사용자들이 상기 클라이언트 디바이스가 있는 환경에 존재하고, 상기 방법은 또한, 상기 사용자가 자동화된 어시스턴트의 현재 활성 사용자인지를 결정하는 단계를 더 포함한다. 일부 구현예에서, 상기 사용자의 추정된 거리에 대응하는 거리 측정치를 결정하는 단계는, 상기 사용자가 자동화된 어시스턴트의 현재 활성 사용자라고 결정함에 응답하여, 하나 이상의 추가 사용자들 대신에 상기 사용자의 거리 측정치를 결정하는 단계를 포함한다. 일부 구현예에서, 상기 사용자가 현재 활성 사용자라고 결정하는 것은, 센서로부터의 출력 및 적어도 하나의 추가 센서로부터의 추가 출력 중 하나 또는 둘 모두에 기초한다. 예를 들어, 상기 센서 또는 상기 추가 센서는 카메라를 포함하고, 상기 출력 또는 추가 출력은 하나 이상의 이미지들을 포함하며, 상기 사용자가 현재 활성 사용자라고 결정하는 것은, 하나 이상의 이미지들에 기초하여 결정된 사용자의 포즈 및 하나 이상의 이미지에 기초하여 결정된 사용자의 시선 중 하나 또는 둘 모두에 기초할 수 있다.
일부 구현예에서, 상기 방법은 또한, 에이전트 요청을 에이전트로 전송하고 그리고 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게한 이후에: 디스플레이 디바이스에 대한 사용자의 거리가 변경되었음을 나타내는 별도의 거리 측정치를 결정하는 단계; 별도의 거리 측정치를 결정함에 응답하여, 식별된 에이전트에 대한 별도의 에이전트 요청을 생성하는 단계, 상기 별도의 에이전트 요청은 별도의 거리 측정치를 포함하고; 에이전트 요청에 포함된 별도의 거리 측정치와 후보 콘텐츠 아이템들의 별도의 서브세트 사이의 대응관계에 기초하여 액션에 대한 후보 콘텐츠 아이템들의 별도의 서브세트를 에이전트가 선택하도록 별도의 에이전트 요청을 에이전트로 전송하는 단계; 및 후보 콘텐츠 아이템들의 선택된 별도의 서브세트를 클라이언트 디바이스가 렌더링하게하는 단계를 더 포함한다.
일부 구현예에서, 상기 수신된 요청은 자동화된 어시스턴트 인터페이스에서 수신된 음성 발화에 기초하고 그리고 사용자의 음성 특징(voice signature)을 내재하는 오디오 데이터를 포함하며, 상기 방법은 또한, 사용자의 음성 특징에 기초하여, 근접 적응형 콘텐츠(proximity-adaptive content)와 연관된 사용자 선호도를 나타내는 사용자 프로파일을 선택하는 단계를 더 포함한다. 일부 구현예에서, 콘텐츠 아이템들의 서브세트는 사용자 선호도에 기초하여 선택된다.
일부 구현예에서, 상기 거리 측정치는 수신된 요청에 내재되거나 또는 수신된 요청과는 별도로 수신된다.
일부 구현예에서, 상기 클라이언트 디바이스는 센서의 출력으로부터 거리 측정치를 생성하고 그리고 상기 요청에서 또는 추가적인 전송에서 상기 거리 측정치를 전송하며, 거리 측정치를 결정하는 것은 서버 디바이스에서 수행된다. 예를 들어, 서버 디바이스는 상기 요청에 또는 추가적인 전송에 상기 거리 측정치를 포함시킨 것에 기초하여 거리 측정치를 결정할 수 있으며, 그리고 서버 디바이스는 센서의 출력에 직접적으로 액세스함이 없이 거리 측정치를 결정할 수 있다.
일부 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법이 제공되며, 상기 방법은, 사용자와 자동화된 어시스턴트 간의 상호작용 동안 사용자가 이전에 요청한 액션을 촉진하기 위해 제 1 콘텐츠를 렌더링하는 단계를 포함한다. 상기 자동화된 어시스턴트는 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스를 통해 액세스가능하며 그리고 제 1 콘텐츠는 클라이언트 디바이스에 로컬적으로 저장된 콘텐츠 아이템들의 제 1 서브세트에 기초하여 렌더링된다. 상기 방법은 또한, 클라이언트 디바이스에 연결된 센서의 출력에 기초하여 그리고 클라이언트 디바이스가 제 1 콘텐츠를 렌더링하는 동안, 사용자의 위치가 제 1 위치로부터 제 2 위치로 변경되었음을 결정하는 단계를 포함한다. 상기 방법은 또한, 센서의 출력에 기초하여, 액션을 촉진하기 위해 제 2 콘텐츠를 렌더링할 콘텐츠 아이템들의 제 2 서브세트를 식별하는 단계를 포함한다. 콘텐츠 아이템들의 제 2 서브세트는 콘텐츠 아이템들의 제 1 서브세트와는 배타적이며 클라이언트 디바이스에 로컬적으로 저장된 데이터를 포함한다. 상기 방법은 또한, 콘텐츠 아이템들의 식별된 제 2 서브세트에 기초하여 제 2 콘텐츠를 렌더링하는 단계를 포함한다. 상기 방법은 또한, 클라이언트 디바이스가 제 2 콘텐츠를 렌더링하는 동안 센서의 후속 출력을 모니터링하는 단계를 포함한다. 그리고 센서의 후속 출력이 사용자가 제 1 위치 및 제 2 위치와는 다른 제 3 위치로 이동했음을 나타내는 경우: 사용자가 제 3 위치에 있을 때 제 3 콘텐츠가 렌더링될 콘텐츠 아이템들의 제 3 서브세트가 클라이언트 디바이스에서 로컬적으로 이용불가능함을 결정하는 단계; 및 자동화된 어시스턴트가 액세스할 수 있는 원격 서버 디바이스로부터 콘텐츠 아이템들의 제 3 서브세트를 수신하기 위한 요청을 생성하는 단계를 포함한다.
본 발명의 이들 및 다른 구현예들은 다음과 같은 하나 이상의 특징들을 포함할 수 있다.
일부 구현예에서, 상기 제 3 위치는 상기 제 1 위치 및 상기 제 2 위치보다 클라이언트 디바이스에 더 근접하고, 상기 방법은 또한, 콘텐츠 아이템들의 제 3 서브세트를 수신하는 단계; 및 콘텐츠 아이템들의 제 3 서브세트에 기초하여 제 3 콘텐츠를 렌더링하는 단계를 더 포함한다. 일부 구현예에서, 제 1 콘텐츠는 제 1 양식(modality)을 통해 렌더링되고, 제 3 콘텐츠는 제 1 양식과 다른 제 2 양식을 통해 렌더링된다. 일부 버전들에서, 상기 제 3 콘텐츠를 렌더링하는 단계는 제 2 콘텐츠를 제 3 콘텐츠로 대체하는 단계를 포함하고 및/또는 상기 제 1 양식은 오디오 양식이고 상기 제 1 콘텐츠는 클라이언트 디바이스에 연결된 하나 이상의 스피커를 통해 렌더링되며, 상기 제 2 양식은 디스플레이 양식이고 상기 제 3 콘텐츠는 클라이언트 디바이스에 연결된 디스플레이 디바이스를 통해 렌더링된다.
일부 구현예에서, 상기 방법은 또한, 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스에서 음성 발화를 수신하는 단계를 더 포함하고, 센서는 자동화된 어시스턴트 인터페이스에 통합되고 사용자로부터의 가청 입력에 응답하도록 구성된 하나 이상의 마이크로폰을 포함한다. 일부 구현예에서, 상기 방법은 또한, 수신된 음성 발화에 대응하는 오디오 데이터에 기초하여, 액션을 수행할 타겟 어플리케이션 및 클라이언트 디바이스에 대한 사용자의 방향을 결정하는 단계를 포함한다.
일부 구현예에서, 상기 센서는 카메라를 포함하고, 상기 방법은 또한, 센서의 후속 출력이 사용자가 제 3 위치로 이동했음을 나타내는 경우: 카메라에 의해 캡처된 하나 이상의 이미지에 기초하여, 사용자가 활성 사용자인지의 여부를, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 포즈, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 시선 방향, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 입의 움직임, 및 하나 이상의 이미지에 대한 프로세싱에 기초하여 검출된 사용자의 제스처 중 하나 또는 다수에 기초하여 결정하는 단계를 더 포함한다.
일부 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법이 제공되며, 상기 방법은, 원격 자동화된 어시스턴트 시스템에서, 디스플레이 디바이스를 포함하는 클라이언트 디바이스에 의해 전송된 자동화된 어시스턴트 요청을 수신하는 단계를 포함한다. 상기 방법은 또한, 원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 요청의 콘텐츠에 기초하여: 자동화된 어시스턴트 요청에 대한 자동화된 어시스턴트 에이전트, 및 클라이언트 디바이스와 같은 환경에 있는 사용자와 클라이언트 디바이스 간의 현재 거리를 나타내는 사용자 거리 측정치를 결정하는 단계를 포함한다. 상기 방법은 또한, 원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 요청에 대해 결정된 자동화된 어시스턴트 에이전트로, 상기 사용자 거리 측정치를 포함하는 에이전트 요청을 전송하는 단계를 포함한다. 상기 방법은 또한, 상기 에이전트 요청에 응답하여, 원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 에이전트로부터, 상기 사용자 거리 측정치에 대해 조정된 콘텐츠 아이템들을 수신하는 단계를 포함한다. 상기 방법은 또한, 자동화된 어시스턴트 요청에 응답하여 원격 자동화된 어시스턴트로부터 클라이언트 디바이스로, 상기 사용자 거리 측정치에 대해 조정된 콘텐츠 아이템들을 전송하는 단계를 포함한다. 응답형 콘텐츠를 전송하는 것은 클라이언트 디바이스로 하여금 클라이언트 디바이스의 디스플레이 디바이스를 통해 응답형 콘텐츠를 렌더링하게한다.
본 발명의 이들 및 다른 구현예들은 다음과 같은 하나 이상의 특징들을 포함할 수 있다.
일부 구현예에서, 사용자 거리 측정치를 결정하는 단계는, 상기 사용자 거리 측정치가 제 1 거리 임계값 및 제 2 거리 임계값을 충족하는지를 결정하는 단계를 포함하고, 상기 콘텐츠 아이템들은 상기 제 1 거리 임계값에 대해 조정된 콘텐츠 아이템들의 제 1 서브세트 및 상기 제 2 거리 임계값에 대해 조정된 콘텐츠 아이템들의 제 2 서브세트를 포함한다. 일부 구현예의 일부 버전들에서, 상기 클라이언트 디바이스는 사용자 거리 측정치를 결정하고 그리고 콘텐츠 아이템들의 제 1 서브세트 및 콘텐츠 아이템들의 제 2 서브세트 중 하나로부터 응답형 콘텐츠를 렌더링하기위한 데이터를 선택하도록 구성된다. 일부 버전들에서, 상기 클라이언트 디바이스는 또한 상기 사용자 거리 측정치가 상기 제 1 거리 임계값을 배타적으로 만족할 때 콘텐츠 아이템들의 제 1 서브세트에 기초하여 응답형 콘텐츠를 렌더링하고, 그리고 상기 사용자 거리 측정치가 상기 제 2 거리 임계값을 배타적으로 만족할 때 콘텐츠 아이템들의 제 2 서브세트에 기초하여 응답형 콘텐츠를 렌더링하도록 구성된다. 상기 콘텐츠 아이템들의 제 1 서브세트는 상기 콘텐츠 아이템들의 제 2 서브세트로부터 생략된 데이터 포맷으로 구현되는 데이터를 포함할 수 있다.
일부 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법이 제공되고, 상기 방법은, 환경 내의 클라이언트 디바이스와 연관된 하나 이상의 센서로부터의 출력에 기초하여, 상기 환경 내의 다수의 사용자들 중에서 소정 사용자가, 클라이언트 디바이스를 통해 액세스할 수 있는 자동화된 어시스턴트의 현재 활성 사용자인지를 결정하는 단계를 포함한다. 상기 방법은 또한, 하나 이상의 센서로부터의 출력에 기초하여 및/또는 추가 출력(하나 이상의 센서 및/또는 다른 센서(들)로부터의)에 기초하여, 클라이언트 디바이스에 대한 상기 소정 사용자의 거리에 대응하는 거리 측정치를 결정하는 단계를 더 포함한다. 상기 방법은 또한, 소정 사용자의 거리에 맞게 조정된 콘텐츠가 클라이언트 디바이스에 의해 렌더링되게하는 단계를 더 포함할 수 있다. 상기 소정 사용자가 자동화된 어시스턴트에 대한 현재 활성 사용자라는 결정에 기초하여, 상기 콘텐츠는 환경 내의 다른 사용자(들) 대신 상기 소정 사용자의 거리에 맞게 조정된다.
본 발명의 이들 및 다른 구현예들은 다음과 같은 하나 이상의 특징들을 포함할 수 있다.
일부 구현예에서, 상기 방법은 또한, 소정 사용자의 거리에 맞게 조정된 콘텐츠를 생성하는 단계를 더 포함할 수 있으며, 여기서 소정 사용자의 거리에 맞게 조정된 콘텐츠를 생성하는 단계는 상기 소정 사용자가 자동화된 어시스턴트에 대한 현재 활성 사용자라고 결정하는 것에 기초한다. 일부 구현예에서, 소정 사용자의 거리에 맞게 조정된 콘텐츠를 생성하는 단계는, 에이전트 요청을 소정 에이전트에 전송하는 단계, 여기서 에이전트 요청은 거리 측정치를 포함하고; 그리고 에이전트 요청의 전송에 응답하여 상기 소정 에이전트로부터 콘텐츠를 수신하는 단계를 포함한다.
일부 구현예에서, 상기 방법은 또한, 콘텐츠를 렌더링하는 동안, 소정 사용자가 이동하였고 그리고 클라이언트 디바이스에 대해 새로운 추정된 거리에 있다고 결정하는 단계를 포함한다. 일부 구현예에서, 상기 방법은 또한, 상기 소정 사용자가 현재 활성 사용자인 것에 기초하여, 그리고 상기 소정 사용자가 이동하였고 그리고 클라이언트 디바이스에 대해 새로운 추정된 거리에 있다고 결정함에 응답하여, 새로운 추정된 거리에 맞게 조정된 제 2 콘텐츠가 클라이언트 디바이스에 의해서 렌더링되게하는 단계를 더 포함할 수 있다. 이러한 구현예의 일부 버전에서, 제 2 콘텐츠가 클라이언트 디바이스에 의해서 렌더링되게하는 단계는, 클라이언트 디바이스가 콘텐츠를 제 2 콘텐츠로 대체하는 것을 포함할 수 있다. 이러한 구현예의 일부 다른 버전에서, 상기 콘텐츠는 가청 콘텐츠만을 포함할 수 있고, 제 2 콘텐츠는 그래픽 콘텐츠를 포함할 수 있으며, 제 2 콘텐츠가 클라이언트 디바이스에 의해서 렌더링되게하는 단계는, 제 2 콘텐츠가 상기 콘텐츠와 함께 렌더링되도록하는 것을 포함할 수있다.
일부 구현예에서, 소정 사용자의 거리에 맞게 조정된 콘텐츠가 클라이언트 디바이스에 의해 렌더링되게하는 단계는, 선택된 콘텐츠가 거리 측정치에 대응하고 그리고 다른 후보 콘텐츠는 거리 측정치에 대응하지 못함에 기초하여, 다른 후보 콘텐츠 대신에 상기 콘텐츠를 선택하는 단계를 포함할 수 있다.
다른 구현예들은 전술한 및/또는 본 명세서의 다른 곳에서 설명된 하나 이상의 방법들과 같은 방법을 수행하도록, 하나 이상의 프로세서들(예를 들어, 중앙 처리 유닛(CPU), 그래픽 프로세싱 유닛(GPU), 및/또는 텐서 프로세싱 유닛(TPU))에 의해 실행가능한 명령들을 저장하는 비일시적인 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 또 다른 구현예들은, 전술한 및/또는 본 명세서의 다른 곳에서 설명된 하나 이상의 방법들과 같은 방법을 수행하기 위해 저장된 명령들을 실행하도록 동작가능한 하나 이상의 프로세서들을 포함하는 하나 이상의 컴퓨터들 및/또는 하나 이상의 로봇들의 시스템을 포함할 수 있다.
다음을 유의해야 하는바, 본 명세서에 보다 상세히 설명된 전술한 개념들 및 추가적인 개념들의 모든 조합은 본 발명의 일부인 것으로 고려된다. 예를 들어, 본 개시물의 말미에 나타나는 청구된 주제의 모든 조합들은 본 발명의 일부인 것으로 고려된다.
도 1은 클라이언트 디바이스 및/또는 자동화된 어시스턴트 인터페이스에 대한 사용자의 거리에 따른 반응형 콘텐츠를 적응시키는 일례를 제공하는 도면을 예시한다.
도 2a, 도 2b, 및 도 2c는 클라이언트 디바이스에 대한 사용자의 거리에 기초하여 렌더링되는 콘텐츠의 일례를 제공하는 도면이다.
도 3은 사용자와 자동화된 어시스턴트 인터페이스 사이의 거리에 따라 자동화된 어시스턴트 콘텐츠를 렌더링하는 방법을 예시한다.
도 4는 자동화된 어시스턴트 인터페이스에 대한 사용자의 위치에 기초하여 자동화된 어시스턴트 콘텐츠를 적응시키는 방법을 예시한다.
도 5는 클라이언트 디바이스 및/또는 자동화된 어시스턴트 인터페이스에 대한 사용자의 거리에 따라 반응형 콘텐츠를 적응시키기 위한 시스템을 도시한다.
도 6은 예시적인 컴퓨터 시스템의 블록도이다.
도 1은 클라이언트 디바이스(104) 및/또는 자동화된 어시스턴트 인터페이스에 대한 사용자(102)의 거리에 따라, 반응형 콘텐츠를 적응시키는 일례를 제공하는 도면(100)을 예시한다. 본 명세서에서 논의되는 구현예들은 자동화된 어시스턴트를 통해 콘텐츠에 직접적으로 또는 간접적으로 액세스를 시도하는 사용자(102)의 위치 변화에 따라 콘텐츠를 생성 및/또는 적응시키는 것과 관련된다. 일반적으로, 컴퓨팅 디바이스는 컴퓨팅 디바이스에 대한 사용자의 거리에 따라 콘텐츠를 조정할 수 있다. 그러나 이러한 콘텐츠는 컴퓨팅 디바이스에서 로컬로 이용될 수 있는 콘텐츠로 제한될 수 있다. 또한, 로컬적으로 액세스될 수 있는 데이터의 가용성에 대한 이러한 제한은, 보다 적합한 데이터가 외부 소스로부터(가령, 원격 서버로부터) 신속하게 검색될 수 있는 경우, 컴퓨팅 디바이스의 효율성을 저해할 수 있다. 예를 들어, 디스플레이 패널과 스피커를 구비한 컴퓨팅 디바이스에 더 가까운 사용자는 디스플레이 패널에 표시되는 주간 날씨 예보와 같은 데이터를, 스피커를 통해 오디오로 투사되는 경우에 비하여, 더 쉽고 빠르게 이해할 수 있다. 따라서, 컴퓨팅 디바이스에 대한 사용자의 근접성에 따라 이러한 데이터를 조정함으로써, 컴퓨팅 디바이스는 컴퓨팅 디바이스의 스피커와 같은 인터페이스에 특정 출력이 제시되는 시간을 감소시킬 수 있다.
본 명세서에서 논의되는 일부 구현예에서, 사용자(102)는 자동화된 어시스턴트에 의해 수행되거나 초기화될 액션을 요청할 수 있으며, 그리고 이에 응답하여, 요청을 이행하기 위해 제공되는 임의의 데이터는 클라이언트 디바이스(104)에 대한 사용자(102)의 위치 또는 위치 변화에 따라 조정될 수 있다. 자동화된 어시스턴트는 태블릿 컴퓨팅 디바이스와 같은(이에 한정되지 않음) 클라이언트 디바이스(104)의 자동화된 어시스턴트 인터페이스를 통해 사용자에 의해 액세스될 수 있으며, 클라이언트 디바이스(104)는 자동화된 어시스턴트 인터페이스로서 동작하거나 및/또는 클라이언트 디바이스(104)와 사용자 사이의 거리를 결정하기 위한 출력을 제공하는 하나 이상의 센서를 포함할 수 있다. 자동화된 어시스턴트를 호출하기 위해, 사용자는 예를 들어 "어시스턴트, 오늘 날씨는 어때?”와 같은 음성 발화(spoken utterance)을 제공할 수 있다. 이에 응답하여, 클라이언트 디바이스(104)는 상기 음성 발화를 오디오 데이터로 변환할 수 있으며, 이는 클라이언트 디바이스(104)에서 프로세싱되거나 및/또는 프로세싱을 위해 원격 디바이스(116)(예를 들어, 원격 서버)로 전송될 수 있다. 또한, 음성 발화 수신에 응답하여, 클라이언트 디바이스(104)는 사용자(102)와 클라이언트 디바이스(104) 사이의 거리 또는 클라이언트 디바이스(104)와 통신하는 주변 디바이스와 사용자(102) 사이의 거리에 대응하는 거리 측정치를 결정할 수 있다. 클라이언트 디바이스(104)는 오디오 데이터 및 거리 측정치를 원격 디바이스(116)에 전송할 수 있으며, 이는 사용자가 자동화된 어시스턴트를 통해 초기화하고자 하는 액션 및/또는 어플리케이션을 원격 디바이스(116)가 결정하기 위한 것이다.
다양한 구현예들에서, 클라이언트 디바이스(104)는 하나 이상의 센서들로부터의 출력에 기초하여 거리 측정치를 로컬적으로 결정한다. 예를 들어, 클라이언트 디바이스(104)는 클라이언트 디바이스(104)의 모노그래픽 카메라에 의해 캡처된 이미지(들)를 프로세싱하여, 사용자의 거리를 추정할 수 있다. 예를 들어, 클라이언트 디바이스(104)는 인간의 머리를 포함할 가능성이 있는 것으로 이미지의 영역을 분류하기 위해 이미지를 프로세싱함으로써(예를 들어, 하나 이상의 로컬 머신 러닝 모델을 사용하여) 사용자의 거리를 추정할 수 있고, 그리고 이미지에서 사용자 머리의 사이즈(예컨대, 영역의 사이즈에 기초하여) 사용자의 거리를 추정할 수 있다. 다른 예로서, 클라이언트 디바이스(104)는 깊이 채널을 포함하는 입체 이미지와 같은 클라이언트 디바이스(104)의 입체 카메라로부터의 출력에 기초하여 사용자의 거리를 추정할 수 있다. 예를 들어, 클라이언트 디바이스(104)는 이미지를 프로세싱하여(예를 들어, 하나 이상의 로컬 머신 러닝 모델을 사용하여) 인간을 포함할 가능성이 있는 것으로 입체 이미지의 영역을 분류할 수 있고 그리고 그 영역에 대한 깊이 값(들)에 기초하여 그 사람에 대한 거리를 추정할 수 있다(예컨대, 평균, 중앙값 또는 여러 깊이 값들에 대한 기타 통계적인 측정에 기초하여). 또 다른 예로서, 클라이언트 디바이스(104)는 클라이언트 디바이스(104)의 마이크로폰(들)로부터의 출력에 기초하여 사용자의 거리를 추정할 수 있다. 예를 들어, 클라이언트 디바이스는 빔 포밍 및/또는 사용자의 거리를 추정하는 다른 기술을 사용하여 사용자의 음성 발화에 대응하는 오디오 데이터를 분석할 수 있다. 또 다른 예로서, 클라이언트 디바이스(104)는 비전 센서로부터의 출력에 기초하고 마이크로폰(들)로부터의 출력에 기초하는 것과 같이 센서들의 조합으로부터의 출력에 기초하여 거리를 추정할 수 있다. 전용 거리 센서, 광 검출 및 레인징(LIDAR: Light Detection and Ranging) 센서 등과 같은 추가적인 및/또는 대안적인 센서(들)이 사용될 수 있다. 또한, 일부 구현예에서, 클라이언트 디바이스(104)는 클라이언트 디바이스(104)의 외부에 있지만 클라이언트 디바이스(104)와 통신하는 하나 이상의 센서들로부터의 출력에 의존할 수 있다. 또한, 다양한 구현예에서, 클라이언트 디바이스(104)는 선택적으로 센서(들)로부터의 출력들(및/또는 그 변환물들)을 원격 디바이스(116 )로 제공할 수 있으며, 원격 디바이스(116)는 그러한 제공된 데이터에 기초하여 거리 측정치를 선택적으로 결정할 수 있다.
결정된 액션은 콘텐츠 아이템들과 관련될 수 있으며, 콘텐츠 아이템들은 자동화된 어시스턴트, 클라이언트 디바이스에 액세스할 수 있는 어플리케이션 및/또는 별도의 원격 디바이스(116)에서 호스팅되는 제3자(또는 제1자) 에이전트에 의해 제공될 수 있다. 일부 구현예에서, 원격 디바이스(116)는 수신된 거리 측정치를 하나 이상의 거리 임계값(예컨대, 제 1 거리 임계값(108) 및 제 2 거리 임계값(110)에 대응하는 임계값들)과 비교하여, 사용자를 위해 콘텐츠를 렌더링하는데 사용될 수 있는 콘텐츠 아이템들의 적절한 서브세트를 결정할 수 있다. 대안적으로 또는 추가적으로, 원격 디바이스(116)는 콘텐츠 아이템을 제공하는 임무를 수행하게될 어플리케이션에게 거리 측정치를 제공할 수 있고, 상기 어플리케이션은 하나 이상의 거리 임계값들과 거리 측정치의 비교를 수행하여 콘텐츠 아이템의 적절한 서브세트를 식별할 수 있다. 대안적으로 또는 추가적으로, 어플리케이션은 거리 측정치를 수신할 수 있으며 그리고 하나 이상의 값을 제공하도록 구성된 모델에 대한 입력으로서 상기 거리 측정치를 제공할 수 있으며, 이는 콘텐츠 아이템들의 서브세트를 생성 및/또는 선택할 수 있는 기초를 제공할 수 있다.
특정한 거리 측정치에 대한 콘텐츠 아이템들의 적절한 서브세트는 다른 거리 측정에 기초하여 렌더링된 콘텐츠에 비하여, 사용자(102)에 의해 보다 용이하게 인식되는 콘텐츠를 렌더링하는데 사용될 수 있는 것일 수 있다. 예를 들어, 사용자(102)의 위치가 클라이언트 디바이스에 가장 가깝거나 또는 클라이언트 디바이스의 가시 범위(viewable range) 내에 있는 제 1 거리 임계값(108)에 대응하는 경우(예를 들어, 클라이언트 디바이스로부터 N의 거리만큼 멀리 있는 경우, 여기서 N은 디바이스의 가시 범위의 한계를 정의할 수 있는 임의의 거리일 수 있음), 제 1 콘텐츠(112)를 렌더링하기 위해 선택된 콘텐츠 아이템들의 서브세트는 비디오 데이터(예를 들어, 날씨 예보를 제공하는 이미지 또는 비디오)를 포함할 수 있다. 또한, 사용자(102)의 위치가 클라이언트 디바이스의 비가시 범위(non-viewable range)에 가까운 제 2 거리 임계값(110)에 대응하는 경우(예를 들어, N 과 N+m 사이의 거리, 여기서 m은 임의의 양의 실수임), 제 2 콘텐츠(114)를 렌더링하기 위해 선택된 콘텐츠 아이템들의 서브세트는 이미지 데이터 및/또는 전술한 비디오 데이터에 비해 더 낮은 품질의 비디오 데이터를 포함할 수 있다(예를 들어, 전술한 이미지 또는 비디오에 비해 더 크거나 더 적은 그래픽 요소들을 포함하는 이미지 또는 비디오). 또한, 사용자의 위치가 클라이언트 디바이스의 비가시 범위 내에 속하는 제 3 거리 임계값(118)에 대응하는 경우(예를 들어, N+m 과 N+p 사이의 거리, 여기서 p는 m 보다 큰 임의의 양의 실수임), 콘텐츠를 렌더링하기 위해 선택된 콘텐츠 아이템들의 서브세트는 오디오 데이터를 포함할 수 있다(예를 들어, 날씨 예보를 제공하는 사람의 음성 녹음). 콘텐츠 아이템들의 서브세트가 거리 측정에 기초하여 선택되는 경우, 콘텐츠 아이템들의 서브세트는 원격 디바이스(116)로부터 클라이언트 디바이스(104)로 전송될 수 있는데, 이는 클라이언트 디바이스(104)가 콘텐츠 아이템들의 선택된 서브세트를 사용하여 콘텐츠를 렌더링할 수 있게하기 위한 것이다. 다음을 유의해야 하는바, 라벨 "A" 및 "B"는 각각의 거리 임계값(즉, 제 1 거리 임계값 108 및 제 2 거리 임계값 110)과 각각의 렌더링된 콘텐츠(즉, 제 1 콘텐츠 112 및 제 2 콘텐츠 114) 사이의 상관관계를 나타낸다.
일부 구현예에서, 콘텐츠 아이템들의 선택된 서브세트를 사용하여 제 1 콘텐츠(112)를 렌더링하는 동안, 사용자(102)는 제 1 위치(120)로부터 제 2 위치(122)로 이동할 수 있다(relocate). 사용자(102)의 거리 변화 또는 사용자(102)의 가장 최근 거리는, 클라이언트 디바이스(104)에서 검출될 수 있고, 추가적인 거리 측정치가 클라이언트 디바이스(104) 및/또는 원격 디바이스(116)에서 생성될 수 있다. 이후, 추가적인 거리 측정치는 사용자가 제 2 위치(122)에 남아있는 동안 사용자(102)를 위해 추가 콘텐츠를 렌더링하기 위한 콘텐츠 아이템들의 추가 서브세트를 선택하는데 사용될 수 있다. 예를 들어, 클라이언트 디바이스(104)가 날씨 예보에 대응하는 시각적 콘텐츠(즉, 제 1 콘텐츠 112)를 렌더링하고 그리고 사용자가 클라이언트 디바이스(104)의 가시 범위(예컨대, 제 1 임계값(108)에 대응하는 영역) 내에 있는 동안, 사용자(102)는 제 1 위치(120)로부터 제 2 위치(122)로 이동할 수 있으며, 이는 사용자가 클라이언트 디바이스를 볼 수 없게 한다(예를 들어, 제 3 임계값(118)에 대응하는 위치). 이에 응답하여, 클라이언트 디바이스(104)는 검출된 또는 추정된 거리 측정치를 생성할 수 있으며, 이것은 원격 디바이스(116)에 제공될 수 있다.
원격 디바이스(116)는 이전에 콘텐츠 아이템들의 서브세트를 선택하였던 어플리케이션이 사용자(102)를 위해 추가 콘텐츠를 렌더링하기 위해 콘텐츠 아이템들의 추가 서브세트를 선택하도록 허용할 수 있다. 콘텐츠 아이템들의 추가 서브세트는 예를 들어, 추가 콘텐츠를 렌더링하는데 이용될 수 있는 오디오 데이터일 수 있으며, 이는 제 2 위치(122)로 이주했음에도 불구하고 사용자(102)에 의해 인식될 수 있다. 이러한 방식으로, 클라이언트 디바이스(104)는 사용자 거리의 변화들에 적응하기 위해 로컬 데이터에 엄격하게 제한되지 않으며, 오히려 콘텐츠 렌더링에 더 적합한 데이터를 식별하기 위해 원격 서비스 및/또는 어플리케이션을 채용할 수 있다. 또한, 이것은 임의의 렌더링된 콘텐츠가 상대적인 위치를 변경하는 사용자에 맞게 조정될 수 있도록, 자동화된 어시스턴트가 액션의 수행 중에 데이터를 대체할 수 있게 한다.
일부 구현예에서, 사용자(102)는 다수의 거리 임계값들에 대응하는 허용오차 또는 중첩 범위 값들에 해당하는 위치로 이주할 수 있다. 결과적으로, 콘텐츠를 렌더링할 콘텐츠 아이템들의 서브세트를 선택하는 작업을 수행하는 어플리케이션 또는 디바이스는 콘텐츠 아이템들의 다수의 서브세트들을 선택할 수 있다. 이러한 방식으로, 사용자가 제 1 거리 임계값을 만족하는 제 1 위치에서 제 2 거리 임계값을 만족하는 제 2 위치로 이동하면, 클라이언트 디바이스(104)는 사용자 위치의 변화에 따라 임의의 렌더링된 콘텐츠를 로컬적으로 적응시킬 수 있다. 일부 구현예들에서, 사용자가 이동(106)중일 때 실시간으로 렌더링된 콘텐츠를 적응시키기 위하여, 사용자의 궤적 및/또는 속도는 콘텐츠를 렌더링할 콘텐츠 아이템들의 여러 상이한 서브세트들을 선택하는데 유사하게 이용될 수 있다. 예를 들어, 사용자(102)는 사용자가 텔레비전 또는 디스플레이 프로젝터를 향해 걸어가면서, 음악 재생을 자동화된 어시스턴트에게 요청할 수 있으며(예를 들어, "어시스턴트, 내 텔레비전에서 내가 좋아하는 노래를 재생해줘"), 그리고 이에 응답하여, 텔레비전 또는 디스플레이 프로젝터에서 콘텐츠를 렌더링하기 위해 콘텐츠 아이템들의 제 1 서브세트 및 제 2 서브세트가 선택될 수 있다. 콘텐츠 아이템들의 제 1 서브세트는 오디오 데이터에 대응할 수 있으며, 이는 사용자가 재배치 중에 텔레비전 또는 디스플레이 프로젝터에서 가장 멀리 떨어져있을 때 텔레비전 또는 디스플레이 프로젝터에 의해 렌더링될 수 있다. 콘텐츠 아이템들의 제 2 서브세트는 오디오-비디오 데이터에 대응할 수 있으며, 이는 사용자가 텔레비전 또는 디스플레이 프로젝터에 가장 가까이 있을 때 텔레비전 또는 디스플레이 프로젝터에 의해 렌더링될 수 있다. 이러한 방식으로, 콘텐츠 아이템들의 제 2 서브세트는 콘텐츠 아이템들의 제 1 서브세트를 소정 분량의 상호배타적인 데이터로 보충할 것인데, 왜냐하면 콘텐츠 아이템들의 제 1 서브세트는 비디오 데이터를 포함하지 않았기 때문이다. 일부 구현예에서, 거리를 결정하는 것에 추가하여 또는 그 대신에, 사용자의 포지션 또는 위치의 변화율 및/또는 사용자의 궤적이, 클라이언트 디바이스 및/또는 자동화된 어시스턴트에 의해 결정될 수 있다. 이러한 방식으로, 사용자의 포지션 또는 위치의 변화율 및/또는 사용자의 궤적에 따라, 콘텐츠가 선제적으로(pre-emptively) 요청 및/또는 버퍼링될 수 있다. 예를 들어, 사용자가 특정 변화율 임계값을 만족하는 변화율로 이동하고 있다라고 결정되거나 및/또는 적어도 부분적으로 클라이언트 디바이스를 향하거나 멀어지는 궤적을 나타내는 것으로 결정되면, 클라이언트 디바이스는 이러한 결정에 응답하여 다른 콘텐츠를 렌더링할 수 있거나 및/또는 사용자가 클라이언트 디바이스를 향해 움직이거나 또는 클라이언트 디바이스로부터 멀어짐에 따라 다른 콘텐츠가 렌더링될 수 있는 추가 데이터를 요청할 수 있다.
도 2a 내지 도 2c는 클라이언트 디바이스(204)에 대한 사용자의 거리에 기초하여 렌더링되는 콘텐츠의 일례를 제공하는 도면들이다. 특히, 도 2a는 환경(218)(가령, 부엌)에 위치한 클라이언트 디바이스(210)로 접근하는 사용자(208)에 대한 도면(200)을 예시한다. 사용자(208)는 하나 이상의 액션을 수행하기 위해 자동화된 어시스턴트를 초기화한 이후에 클라이언트 디바이스(210)로 접근할 수 있다. 예를 들어, 사용자(208)는 사용자(208)가 주방에 설치한 센서를 트리거할 수 있으며, 센서가 트리거되는 것에 응답하여 자동화된 어시스턴트는 액션의 수행을 초기화할 수 있다. 대안적으로, 사용자(208)는 본 명세서에서 논의되는 바와 같이 클라이언트 디바이스(210)의 자동화된 어시스턴트 인터페이스를 통해 자동화된 어시스턴트를 호출할 수 있다.
자동화된 어시스턴트의 초기화에 응답하여 수행되는 액션은 가령, 음악과 같은 미디어 콘텐츠를 사용자(208)에게 제시하는 것을 포함할 수 있다. 처음에, 자동화된 어시스턴트는 클라이언트 디바이스(210)로 하여금 제 1 콘텐츠(212)를 렌더링하게 하는데, 제 1 콘텐츠(212)는 그래픽 콘텐츠를 조금만 제공(혹은 제공하지 않으며)하는 대신, 청각적 콘텐츠를 제공한다. 이것은 사용자(208)가 클라이언트 디바이스(210)로부터 멀리 떨어져 있고 따라서 그래픽 콘텐츠를 인지할 수 없다는 점을 감안할 때, 컴퓨팅 리소스 및/또는 네트워크 리소스를 보존할 수 있다.
다이어그램(204)에 제공된 바와 같이, 사용자(208)가 클라이언트 디바이스(210)에 더 가깝게 이동함에 따라, 클라이언트 디바이스(210)는 하나 이상의 신호를 수신 및/또는 처리할 수 있으며, 이는 사용자(208)가 도 2a에 비해 클라이언트 디바이스(210)에 더 가깝게 이동했다는 표시를 제공할 수 있다. 이에 응답하여, 자동화된 어시스턴트는 상기 하나 이상의 신호에 기초하는 소정 분량의 데이터를 수신할 수 있으며, 그리고 클라이언트 디바이스(210)로 하여금 제 2 콘텐츠(214)를 클라이언트 디바이스(210)에서 렌더링하게할 수 있다. 제 2 콘텐츠(214)는 제 1 콘텐츠(212)보다 더 많은 그래픽 콘텐츠, 제 1 콘텐츠(212)에 비해 더 높은 볼륨 콘텐츠를 포함할 수 있고, 및/또는 제 1 콘텐츠(212)에 비해 더 높은 비트 레이트를 갖는 콘텐츠를 제공할 수 있다. 일부 구현예에서, 제 2 콘텐츠(214)는 제 1 콘텐츠(212)와 배타적인 적어도 소정 분량의 콘텐츠를 포함할 수 있다. 추가적으로 또는 대안적으로, 제 2 콘텐츠(214)는 사용자(208)가 도 2a에 대응하는 위치에 있을 때에는 클라이언트 디바이스(210)에서 로컬적으로 이용가능하지 않았지만 사용자(208)가 도 2b에 대응하는 위치로 이동함에 응답하여 검색되는 데이터에 기초하여 렌더링될 수 있다.
또한, 다이어그램(206)은 사용자(208)가 도 2a 및 2b에서의 사용자(208)에 비해 클라이언트 디바이스(210)에 더 근접한 위치로 이동함에 따라, 클라이언트 디바이스(210)에서 제 3 콘텐츠(216)가 어떻게 렌더링될 수 있는지를 예시한다. 구체적으로, 제 3 콘텐츠(216)는 클라이언트 디바이스(210)에 가장 근접한 사용자를 위해 맞춤화된 콘텐츠를 포함할 수 있다. 예를 들어, 자동화된 어시스턴트는 사용자(208)가 도 2a 및 2b에 비하여, 클라이언트 디바이스(210)에 대해 훨씬 더 근접한 것으로 결정할 수 있으며 그리고 클라이언트 디바이스(210)로 하여금 텍스트형 콘텐츠(예컨대, "[CONTENT]")를 렌더링하게 할 수 있다. 텍스트형 콘텐츠에 대한 토대를 제공하는 데이터는 사용자(208)가 멀리 떨어져있을 때 로컬적으로 이용가능하거나 또는, 클라이언트 디바이스(210)를 향하는 궤적을 갖는 사용자(208)에 응답하여 원격 디바이스로부터 클라이언트 디바이스(210)에 의해 요청될 수 있다. 이러한 방식으로, 자동화된 어시스턴트의 지시로 제공되는 콘텐츠는 클라이언트 디바이스(210)와 사용자(208) 사이의 거리에 따라 동적일 수 있다. 또한, 클라이언트 디바이스(210)는 클라이언트 디바이스(210)에 대하여 사용자(208)가 어디에 위치하는지에 따라 고유한 콘텐츠를 렌더링할 수 있다.
도 3은 사용자와 자동화된 어시스턴트 인터페이스 사이의 거리에 따라 자동화된 어시스턴트 콘텐츠를 렌더링하기 위한 방법(300)을 예시한다. 방법(300)은 하나 이상의 컴퓨팅 디바이스, 어플리케이션 및/또는 자동화된 어시스턴트와 상호작용할 수 있는 임의의 다른 디바이스 또는 모듈에 의해 수행될 수 있다. 방법(300)은 액션의 수행을 초기화하기 위해 자동화된 어시스턴트에 대한 요청을 수신하는 동작(302)을 포함할 수 있다. 자동화된 어시스턴트는 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스를 통해 액세스할 수 있으며, 클라이언트 디바이스는 디스플레이 디바이스 및 센서를 포함하거나 이와 통신할 수 있다. 센서는 디스플레이 디바이스에 대한 사용자의 거리가 결정될 수 있는 출력을 제공할 수 있다. 예를 들어, 센서는 사용자와 디스플레이 디바이스 사이의 거리를 결정하기 위해 이미지가 생성될 수 있는 출력을 제공하는 카메라일 수 있다. 대안적으로 또는 추가적으로, 클라이언트 디바이스는 하나 이상의 음향 센서를 포함할 수 있고, 음향 센서로부터의 출력이 분석되어(예를 들어, 빔 포밍 기술을 사용하여), 클라이언트 디바이스에 대한 사용자의 위치를 식별할 수 있다.
상기 방법(300)은 또한 수신된 요청에 기초하여, 액션을 완료하기 위한 에이전트를 식별하는 동작(304)을 포함할 수 있다. 에이전트는 자동화된 어시스턴트에 액세스할 수 있고 그리고 자동화된 어시스턴트를 관리하는 엔티티와는 별개인 제3자와 연관되는 하나 이상의 어플리케이션들 또는 모듈들일 수 있다. 추가적으로, 에이전트는 디스플레이 디바이스에 대한 사용자의 거리에 기초하여, 클라이언트 디바이스에 데이터를 제공하도록 구성될 수 있다. 일부 구현예에서, 에이전트는 사용자의 직접적인 지시(예컨대, "어시스턴트, [액션]을 수행해") 또는 간접적인 지시(예컨대, 학습된 사용자 스케줄의 일부로서 수행되는 액션)에 기초하여 수행되는 하나 이상의 액션들의 촉진하기 위해 자동화 어시스턴트에 의해 호출될 수 있는 여러 개의 상이한 에이전트들 중 하나일 수 있다.
방법(300)은 또한 클라이언트 디바이스에 대한 사용자의 추정 거리에 대응하는 거리 측정치를 결정하는 동작(306)을 포함할 수 있다. 거리 측정치는 클라이언트 디바이스가 제공한 데이터를 기반으로 결정될 수 있다. 예를 들어, 클라이언트 디바이스의 센서는 센서에 대한 사용자의 위치에 관한 정보를 내재하는 출력을 제공할 수 있다. 출력은 자동화된 어시스턴트가 액션의 수행을 초기화하도록 요청에 처리되고 구현될 수 있다. 일부 구현예에서, 거리 측정치는 사용자의 위치 및/또는 포지션의 특성들이 결정될 수 있는 다양한 데이터에 해당할 수 있다. 예를 들어, 거리 측정치는 또한, 사용자와 클라이언트 디바이스 사이의 거리 및 클라이언트 디바이스에 대한 사용자의 방향(예컨대, 사용자가 클라이언트 디바이스를 향하고 있는지 여부)을 나타낼 수 있다.
상기 방법(300)은 결정된 거리 측정치에 기초하여 수행될 액션을 촉진하기 위해 콘텐츠 아이템을 제공하도록, 식별된 에이전트에 대한 에이전트 요청을 생성하는 동작(308)을 더 포함할 수 있다. 에이전트 요청은 자동화된 어시스턴트에 의해 생성될 수 있으며, 식별된 에이전트에 의해 프로세싱될 하나 이상의 슬롯 값들을 포함할 수 있다. 예를 들어, 에이전트 요청 내의 슬롯 값은 거리 측정치, 수신된 요청과 관련된 컨텍스트 데이터(예컨대, 시각, 사용자 선호도, 과거의 에이전트 요청에 기반한 이력 데이터 및/또는 에이전트 어플리케이션에 의해 프로세싱될 수 있는 임의의 다른 데이터)를 식별할 수 있다.
상기 방법(300)은 또한 에이전트로 하여금 상기 요청 및 결정된 거리 측정치에 기초하여 콘텐츠 아이템들의 서브세트를 선택하게하기 위해 상기 요청을 에이전트로 전송하는 동작(310)을 포함할 수 있다. 에이전트에 의해 선택된 콘텐츠의 서브세트는 사용자 거리 임계값에 대응할 수 있다. 더욱이, 콘텐츠의 서브세트는 사용자 거리 임계값과 거리 측정치 간의 대응에 기초하여, 다른 콘텐츠 아이템에 비하여, 클라이언트 디바이스에 의해 고유하게 렌더링될 수 있다. 즉, 비록 에이전트가 콘텐츠 아이템들의 그룹으로부터 콘텐츠 아이템들의 서브세트를 선택할 수 있지만, 선택한 서브세트는 결정된 거리 측정치에 맞게 조정된다. 따라서, 다른 거리 측정치가 결정된다면, 콘텐츠 아이템들의 다른 서브세트가 선택될 것이며, 클라이언트 디바이스는 콘텐츠 아이템들의 다른 서브세트에 기초하여 상이한 콘텐츠를 렌더링할 것이다.
상기 방법(300)은 또한, 클라이언트 디바이스로 하여금 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게하는 동작(312)을 포함할 수 있다. 콘텐츠 아이템들의 선택된 서브세트는 클라이언트 디바이스의 디스플레이 디바이스에 제시되는 콘텐츠로서 렌더링될 수 있다. 하지만, 일부 구현예에서, 콘텐츠 아이템들의 선택된 서브세트는 가청 콘텐츠, 비디오 콘텐츠, 오디오-비디오 콘텐츠, 정적 이미지(들), 햅틱 피드백 콘텐츠, 콘트롤 신호(들), 및/또는 사람에 의해 인지될 수 있는 임의의 다른 출력으로서 렌더링될 수 있다. 일부 구현예에서, 비록 에이전트가 콘텐츠 아이템들의 선택된 서브세트를 생성 및/또는 적응시켰지만, 클라이언트 디바이스는 클라이언트 디바이스에서 이용가능한 컨텍스트 데이터에 따라 콘텐츠 아이템들의 선택된 서브세트를 추가로 적응시킬 수 있다. 예를 들어, 클라이언트 디바이스는 사용자의 위치, 사용자의 표현, 시간, 클라이언트 디바이스와 사용자가 공유하는 환경의 점유, 클라이언트 디바이스의 지리적 위치, 사용자의 스케줄, 및/또는 사용자가 자동화된 어시스턴트와 상호작용하는 컨텍스트를 나타낼 수 있는 기타 정보에 따라 콘텐츠 아이템들의 서브세트를 추가로 조정할 수 있다. 예를 들어, 비록 수행될 액션이 가청 콘텐츠의 렌더링을 포함할 수 있고 그리고 사용자가 클라이언트 디바이스의 가청 범위 내에 있기 때문에 콘텐츠 아이템들의 선택된 서브세트가 오디오 데이터를 포함할 수 있다 하여도, 클라이언트 디바이스는 환경 내 다른 사람의 존재에 따라 및/또는 사용자가 통화 중인지 또는 별도의 액션을 위해 클라이언트 디바이스의 오디오 서브시스템을 사용하는지 여부에 따라, 임의의 렌더링된 오디오의 볼륨을 동적으로 조정할 수 있다. 대안적으로 또는 추가적으로, 비록 수행될 액션이 가청 콘텐츠의 렌더링을 포함할 수 있고 그리고 사용자가 클라이언트 디바이스의 가청 범위 내에 있기 때문에 콘텐츠 아이템들의 선택된 서브세트가 오디오 데이터를 포함할 수 있다 하여도, 클라이언트 디바이스는 사용자가 다른 클라이언트 디바이스에 보다 더 가깝게 이동했음을 컨텍스트 데이터가 나타내는 경우, 상기 다른 클라이언트 디바이스가 오디오 데이터를 렌더링하게 할 수 있다(즉, 거리 측정치에 의해서 이전에 표시된 거리 보다 더 먼 별도의 거리).
도 4는 자동화된 어시스턴트 인터페이스에 대한 사용자의 위치에 기초하여 자동화된 어시스턴트 콘텐츠를 조정하기 위한 방법(400)을 예시한다. 방법(400)은 하나 이상의 컴퓨팅 디바이스, 어플리케이션 및/또는 자동화된 어시스턴트와 상호작용할 수 있는 임의의 다른 디바이스 또는 모듈에 의해 수행될 수 있다. 방법(400)은 사용자와 자동화된 어시스턴트 간의 상호작용 동안 사용자에 의해 이전에 요청된 동작을 촉진하기 위해 제 1 콘텐츠를 렌더링하는 동작(402)을 포함할 수 있다. 제 1 콘텐츠는 터치 디스플레이 패널, 스피커, 햅틱 피드백 디바이스, 및/또는 컴퓨팅 디바이스에 의해 사용될 수 있는 다른 인터페이스 등과 같은 클라이언트 디바이스의 하나 이상의 다른 양식들을 통해 클라이언트 디바이스에 의해 렌더링될 수 있다. 또한, 제 1 콘텐츠는 클라이언트 디바이스에서 로컬적으로 이용가능한 콘텐츠 아이템들의 제 1 서브세트에 기초하여 렌더링될 수 있다. 예를 들어, 제 1 콘텐츠는 자동화된 어시스턴트의 지시에 따라 수행될 루틴을 초기화하는 사용자에 응답하여 원격 서버 디바이스로부터 검색되는 콘텐츠 아이템들의 서브세트일 수 있다. 예를 들어, 상기 루틴은 사용자가 아침에 부엌에 들어가면 초기화되는 "모닝" 루틴일 수 있으며, 부엌의 클라이언트 디바이스에 연결된 센서는 사용자의 존재를 나타낼 수 있다. "모닝" 루틴의 일부로서, 자동화된 어시스턴트는 사용자의 스케줄에 대응하는 콘텐츠 아이템들을 다운로드할 수 있다. 따라서, 상기 제 1 콘텐츠 아이템은 사용자의 스케줄에 연관될 수 있으며, 그리고 렌더링된 제 1 콘텐츠는 k 개의 디스플레이 요소들을 구비한 그래픽 사용자 인터페이스(GUI)에 대응할 수 있다(k는 임의의 양의 정수임).
상기 방법(400)은 또한, 클라이언트 디바이스에 연결된 하나 이상의 센서의 출력에 기초하여, 그리고 클라이언트 디바이스가 제 1 콘텐츠를 렌더링하는 동안, 사용자의 근접성이 제 1 위치에서 제 2 위치로 변경되었는지를 결정하는 동작(402)을 포함할 수 있다. 예를 들어, 센서들은 사용자의 위치를 식별하기 위해 빔 포밍 기술을 사용하기 위한 다수의 마이크로폰들을 포함할 수 있다. 대안적으로 또는 추가적으로, 센서들은 또한 사용자의 방향, 시선(gaze) 및/또는 위치가 결정될 수 있는 카메라를 포함할 수 있다. 센서들로부터의 정보를 사용하여, 자동화된 어시스턴트는 환경 내의 복수의 사용자들 중에서 활성인(active) 하나 이상의 사용자들의 서브세트를 식별할 수 있는바, 이는 이들 활성인 사용자(들)에 대한 콘텐츠를 생성 및/또는 조정하기 위한 것이다. 예를 들어, 콘텐츠는 활성 사용자(들)로 결정된 서브세트에 포함되지 않은 사용자(들)의 거리(들)에 관계없이 활성 사용자(들)의 거리에 기초하여 생성될 수 있다. 또한, 센서로부터의 정보는 자동화된 어시스턴트 인터페이스, 클라이언트 디바이스 및/또는 클라이언트 디바이스와 통신할 수 있는 임의의 다른 디바이스로부터 사용자의 거리를 결정하는데 사용될 수 있다. 예를 들어, 사용자가 렌더링된 제 1 콘텐츠를 보는 동안, 사용자는 제 1 콘텐츠가 렌더링되는 디스플레이 패널쪽으로 또는 그로부터 멀어질 수 있다.
방법(400)은 또한 센서의 출력에 기초하여 액션을 촉진하기 위해 제 2 콘텐츠를 렌더링할 콘텐츠 아이템의 제 2 서브세트를 식별하는 동작(406)을 포함할 수 있다. 예를 들어, 동작이 "모닝" 루틴과 관련되고 그리고 콘텐츠 아이템이 사용자의 스케줄과 관련되는 경우, 콘텐츠 아이템의 제 2 서브세트는 콘텐츠 아이템의 제 2 서브세트를 인식하는 사용자의 능력에 따라 선택될 수 있다. 더 구체적으로, 제 2 위치가 제 1 위치보다 자동화된 어시스턴트 인터페이스(예컨대, 디스플레이 패널)에 더 가까운 경우, 콘텐츠 아이템의 제 2 서브세트는 사용자가 더 많은 정보를 인식할 수 있는 추가적인 그래픽 요소들을 포함할 수 있다. 결과적으로, 사용자는 자동화된 어시스턴트 인터페이스에 더 가까이 다가가면서 스케줄에 대한 보다 자세한 정보를 수집할 수 있다. 또한, 제 2 위치가 제 1 위치보다 인터페이스에 더 근접한 것에 응답하여 트리거링될 수 있는 추가적인 그래픽 요소들을 렌더링하는데 이용되는 컴퓨팅 리소스들은 상기 논의된 바에 따라 효율적인 방식으로 사용된다.
방법(400)은 콘텐츠 아이템들의 식별된 제 2 서브세트에 기초하여 제 2 콘텐츠를 렌더링하는 동작(408)을 더 포함할 수 있다. 렌더링된 제 2 콘텐츠는 l 개의 디스플레이 요소들을 구비한 GUI에 해당할 수 있으며, 여기서 l 은 k보다 크거나 작은 양의 정수이다. 예를 들어, 렌더링된 제 1 콘텐츠는 몇 시간 동안의 사용자의 스케줄에 해당하는 k 개의 디스플레이 요소들을 포함할 수 있다. 또한, 렌더링된 제 2 콘텐츠는 하루 종일 동안의 사용자의 스케줄에 대응하는 l 개의 디스플레이 요소들을 포함할 수 있다. 이러한 방식으로, 콘텐츠 아이템들의 제 2 서브세트는 콘텐츠 아이템들의 제 1 서브세트와 상호배타적인 하나 이상의 콘텐츠 아이템들을 가질 것이다. 결과적으로, 사용자는 디스플레이 패널에 더 가까이 다가가면서 상이한 그래픽 요소들을 보게될 것이다.
방법(400)은 제 2 콘텐츠를 렌더링하는 동안 클라이언트 디바이스가 센서의 후속 출력을 모니터링하는 동작(410)을 더 포함할 수 있다. 일부 구현예에서, 자동화된 어시스턴트는 사용자가 자동화된 어시스턴트 인터페이스로부터 더 멀리 이동했는지 또는 자동화된 어시스턴트 인터페이스에 더 가깝게 이동했는지를 결정하기 위해, 사용자의 허가를 받아 센서의 출력을 모니터링할 수 있다. 이러한 방식으로, 자동화된 어시스턴트는 콘텐츠가 사용자에 의해 더 효율적으로 인식될 수 있도록, 렌더링된 콘텐츠가 추가로 조정되게할 수 있다. 방법(400)의 동작(412)에서, 사용자가 제 1 위치 및 제 2 위치와는 다른 제 3 위치로 이동했는지에 대한 결정이 이루어진다. 사용자가 제 3 위치로 이동하지 않은 경우, 자동화된 어시스턴트는 적어도 동작(410)에 따라 센서의 출력을 계속해서 모니터링할수 있다. 사용자가 제 3 위치로 이동한 경우, 상기 방법(400)은 동작(414)으로 진행한다.
방법(400)의 동작(414)에서, 제 3 콘텐츠가 클라이언트 디바이스에서 국부적으로 이용가능한지에 대한 결정이 이루어진다. 제 3 콘텐츠는 클라이언트 디바이스에서 렌더링된다면, 사용자에게 스케줄에 대한 추가 정보를 제공하는 콘텐츠 아이템들의 제 3 서브세트에 해당할 수 있다. 예를 들어, 콘텐츠 아이템들의 제 3 서브세트는 콘텐츠 아이템들의 제 1 서브세트 및/또는 콘텐츠 아이템들의 제 2 서브세트에 포함되지 않은 사용자의 스케줄(스케줄)에 대한 정보를 포함할 수 있다. 구체적으로, 콘텐츠 아이템들의 제 3 서브세트는 콘텐츠 아이템들의 제 1 서브세트 및 콘텐츠 아이템들의 제 2 서브세트에 대해 상호배타적인 적어도 소정 분량의 데이터를 포함할 수 있다. 예를 들어, 콘텐츠 아이템들의 제 3 서브세트는 콘텐츠 아이템들의 제 1 서브세트 및/또는 콘텐츠 아이템들의 제 2 서브세트에 포함되지 않은, 가령 이미지 및/또는 비디오와 같은 다른 유형들의 데이터를 포함할 수 있다. 콘텐츠 아이템들의 제 3 서브세트는 사용자의 다음 주 또는 다음 달에 대한 스케줄과 관련된 데이터를 포함할 수 있으므로, 사용자가 자동화된 어시스턴트 인터페이스에 더 가까워짐에 따라 스케줄에 대한 추가적인 정보를 인식할 수 있다.
콘텐츠 아이템의 제 3 서브세트가 클라이언트 디바이스에서 국부적으로 이용 가능하지 않은 경우, 방법(400)은 동작(416)으로 진행할 수 있으며, 동작(416)은 콘텐츠 아이템의 제 3 서브세트를 수신하기 위한 요청을 생성하는 동작을 포함할 수 있다. 요청은 콘텐츠 아이템들의 제 3 서브세트를 수신하기 위해 인터넷과 같은 네트워크를 통해 원격 서버 디바이스로 전송될 수 있다. 예를 들어, 원격 서버 디바이스는 자동화된 어시스턴트가 액세스할 수 있는 스케줄 어플리케이션과 연관된 에이전트를 호스팅할 수 있다. 에이전트는 요청을 수신하고 요청과 관련된 추가 콘텐츠 아이템을 식별할 수 있다. 그 후 에이전트는 콘텐츠 아이템의 제 3 서브세트로서 추가 콘텐츠 아이템을 자동화된 어시스턴트 및/또는 클라이언트 디바이스에 전송할 수 있다. 그 후, 방법(400)은 동작(418)으로 진행할 수 있고, 이는 콘텐츠 아이템의 제 3 서브세트에 기초하여 제 3 콘텐츠를 렌더링하는 것을 포함할 수 있다. 대안적으로, 제 3 콘텐츠 아이템의 서브세트가 클라이언트 디바이스에서 국부적으로 이용가능한 경우, 동작(416)은 우회될 수 있으며, 방법(400)은 동작(414)에서 동작(418)으로 진행할 수 있다.
도 5는 클라이언트 디바이스(516) 및/또는 자동화된 어시스턴트 인터페이스(518)에 대한 사용자의 거리에 따라 반응형 콘텐츠를 적응시키기 위한 시스템(500)을 도시한다. 자동화된 어시스턴트 인터페이스(518)는 사용자가 자동화된 어시스턴트(504)와 통신할 수 있게하며, 이는 클라이언트 디바이스(516)(예를 들어, 태블릿 디바이스, 독립형 스피커 디바이스 및/또는 임의의 다른 컴퓨팅 디바이스)와 같은 하나 이상의 컴퓨팅 디바이스 및/또는 서버 디바이스(502)와 같은 원격 컴퓨팅 디바이스(512)에서 제공되는 어시스턴트 어플리케이션의 일부로서 동작할 수 있다. 자동화된 어시스턴트 인터페이스(518)는 하나 이상의 마이크로폰, 카메라, 터치스크린 디스플레이, 사용자 인터페이스, 및/또는 사용자와 어플리케이션 간의 인터페이스를 제공할 수 있는 임의의 다른 장치 또는 장치들의 조합을 포함할 수 있다. 예를 들어, 사용자는 자동화된 어시스턴트(504)가 기능을 수행하도록(예를 들어, 데이터 제공, 주변 디바이스 제어, 에이전트 또는 제3자 어플리케이션에 액세스), 어시스턴트 인터페이스에 구두(verbal), 텍스트 및/또는 그래픽 입력을 제공함으로써 자동화 어시스턴트(504)를 초기화할 수 있다. 클라이언트 디바이스(516)는 디스플레이 디바이스를 포함할 수 있으며, 디스플레이 디바이스는 사용자가 터치 인터페이스를 통해 클라이언트 디바이스(516)의 어플리케이션을 제어할 수 있도록 하는 터치 입력 및/또는 제스처를 수신하기 위한 터치 인터페이스를 포함하는 디스플레이 패널일 수 있다.
클라이언트 디바이스(516)는 인터넷과 같은 네트워크(514)를 통해 원격 컴퓨팅 디바이스(512)와 통신할 수 있다. 클라이언트 디바이스(516)는 클라이언트 디바이스(516)에서 컴퓨팅 리소스를 보존하기 위해 계산 작업을 원격 컴퓨팅 디바이스(512)로 떠넘길수 있다(offload). 예를 들어, 원격 컴퓨팅 디바이스(512)는 자동화된 어시스턴트(504)를 호스팅할 수 있고, 클라이언트 디바이스(516)는 하나 이상의 어시스턴트 인터페이스(518)에서 수신된 입력을 원격 컴퓨팅 디바이스(512)로 전송할 수 있다. 그러나 일부 구현예에서 자동화된 어시스턴트(504)는 클라이언트 디바이스(516)에서 호스팅될 수 있다. 다양한 구현예에서, 자동화된 어시스턴트(504)의 전부 또는 일부 양상들은 클라이언트 디바이스(516)에서 구현될 수 있다. 일부 구현예에서, 자동화된 어시스턴트(504)의 양상들은 클라이언트 디바이스(516)의 로컬 어시스턴트 어플리케이션을 통해 구현될 수 있으며, 로컬 어시스턴트 어플리케이션은 자동화된 어시스턴트(504)의 다른 양상들을 구현하기 위해 원격 컴퓨팅 디바이스(512)와 인터페이스할 수 있다. 선택적으로, 원격 컴퓨팅 디바이스(512)는 다수의 스레드들을 통해 다수의 사용자들 및 관련 어시스턴트 어플리케이션들을 서비스할 수 있다. 자동화된 어시스턴트(504)의 전부 또는 일부 양상들이 클라이언트 디바이스(516)의 로컬 어시스턴트 어플리케이션을 통해 구현되는 일부 구현예에서, 로컬 어시스턴트 어플리케이션은 클라이언트 디바이스(516)의 운영 체제와는 별개인 어플리케이션(예를 들어, 운영 체제의 "위에(on top)" 설치됨)이 될 수 있거나, 또는 대안적으로는 제 1 클라이언트 디바이스(516)의 운영 체제에 의해 직접 구현될 수도 있다(예컨대, 운영 체제와 통합되지만, 운영 체제의 어플리케이션으로 간주되는).
일부 구현예에서, 원격 컴퓨팅 디바이스(512)는 음성-텍스트 엔진(voice to text engine)(506)을 포함할 수 있으며, 음성-텍스트 엔진(506)은 오디오 데이터에 내재된 텍스트를 식별하기 위해 어시스턴트 인터페이스에서 수신된 오디오 데이터를 프로세싱할 수 있다. 오디오 데이터를 텍스트로 변환하는 프로세스는 음성 인식 알고리즘을 포함할 수 있으며, 이는 단어 또는 구에 대응하는 오디오 데이터 그룹을 식별하기 위한 뉴럴 네트워크, word2vec 알고리즘 및/또는 통계 모델을 사용할 수 있다. 오디오 데이터로부터 변환된 텍스트는 텍스트 파서 엔진(508)에 의해 파싱될 수 있고, 사용자로부터 명령 구문을 생성 및/또는 식별하는데 사용될 수 있는 텍스트 데이터로서 자동화된 어시스턴트(504)에 이용가능하게될 수 있다.
일부 구현예에서, 자동화된 어시스턴트(504)는 클라이언트 디바이스(516) 및 자동화된 어시스턴트(104)에 액세스할 수 있는 에이전트(532)에 대한 콘텐츠를 조정할 수 있다. 사용자와 자동화된 어시스턴트(504) 사이의 상호작용 동안, 사용자 데이터(506) 및/또는 콘텍스트 데이터(522)는 클라이언트 디바이스(516), 서버 디바이스(502) 및/또는 사용자와 연관될 수 있는 임의의 다른 디바이스에서 수집될 수 있다. 사용자 데이터(506) 및/또는 컨텍스트 데이터(522)는 사용자의 허가를 받아, 클라이언트 디바이스(516)와 통합되거나 이에 액세스할 수 있는 하나 이상의 어플리케이션 또는 디바이스에 의해 이용될 수 있다. 예를 들어, 컨텍스트 데이터(522)는 시간 데이터, 위치 데이터, 이벤트 데이터, 미디어 데이터 및/또는 사용자와 자동화된 어시스턴트(504) 간의 상호작용과 관련될 수 있는 임의의 데이터에 대응하는 데이터를 포함할 수 있다. 추가적으로, 사용자 데이터는 계정 정보, 메시지 정보, 칼렌다 정보, 사용자 선호사항, 사용자와 자동화된 어시스턴트(504) 간의 이력 상호작용 데이터, 클라이언트 디바이스(516)에 액세스가능한 어플리케이션들 및/또는에이전트와 관련된 콘텐츠 아이템들, 및/또는 사용자와 관련될 수 있는 임의의 다른 데이터를 포함할 수 있다.
자동화된 어시스턴트(504)가 콘텐츠가 사용자에 대하여 조정되도록하기 위하여, 자동화된 어시스턴트(504)는 에이전트(532)와 상호작용할 수 있고, 에이전트(532)는 자동화된 어시스턴트 인터페이스(518)에서 콘텐츠를 렌더링하기 위해 에이전트 데이터(536)(즉, 콘텐츠 아이템)를 원격 디바이스(512) 및/또는 클라이언트 디바이스(516)에 제공할 수 있다. 본 명세서에서 사용되는 "에이전트”는 자동화된 어시스턴트와는 별개인 하나 이상의 컴퓨팅 디바이스 및/또는 소프트웨어를 나타낸다. 일부 상황에서, 에이전트는 자동화된 어시스턴트를 관리하는 당사자와는 별개인 당사자에 의해 관리된다는 점에서, 제3자(3P) 에이전트일 수 있다. 일부 구현예에서, 자동화된 어시스턴트(504)는 사용자로부터의 직접 또는 간접 요청에 응답하여 특정 액션을 수행하기 위해 다수의 상이한 에이전트들 중에서 에이전트를 선택하기 위해 에이전트 선택 엔진(528)을 사용할 수 있다. 선택된 에이전트는 자동화된 어시스턴트로부터 요청을 수신하도록 구성될 수 있다(예를 들어, 네트워크를 통해 및/또는 API를 통해). 요청을 수신하는 것에 응답하여, 에이전트는 상기 요청에 기초하여 응답형 콘텐츠를 생성하고 그리고 응답형 콘텐츠를 기반으로 하는 출력 제공을 위해 상기 응답형 콘텐츠를 전송한다. 예를 들어, 에이전트(532)는자동화된 어시스턴트(504) 및/또는 클라이언트 디바이스(516)에 의한 출력 제공을 위해 자동화된 어시스턴트(504)로 상기 응답형 콘텐츠를 전송할 수 있으며, 이러한 출력은 응답형 콘텐츠에 기초한다. 다른 일례로서, 에이전트(538)는 자체적으로 출력을 제공할 수 있다. 예를 들어, 사용자는 클라이언트 디바이스(516)를 통해 자동화된 어시스턴트(504)와 상호작용할 수 있으며(예를 들어, 자동화된 어시스턴트는 클라이언트 디바이스 상에 구현되거나 및/또는 클라이언트 디바이스와 네트워크 통신할 수 있다) 그리고 에이전트(538)는 클라이언트 디바이스(516)에 설치된 어플리케이션이 될 수 있거나 또는 클라이언트 디바이스(516)로부터 원격으로 실행가능하지만 클라이언트 디바이스(516) 상에서 "스트리밍가능한" 어플리케이션일 수 있다. 어플리케이션이 호출될 때, 어플리케이션은 클라이언트 디바이스(516)에 의해 실행될 수 있거나 및/또는 클라이언트 디바이스에 의해 최전방(forefront)으로 가져올 수 있다(예를 들어, 그 콘텐츠가 클라이언트 디바이스의 디스플레이를 인수할 수 있음).
에이전트를 호출하는 것은, 호출 파라미터 값(예를 들어, 인텐트 파라미터 값, 인텐트 슬롯(intent slot) 파라미터 값, 및/또는 다른 파라미터 값)을 포함하고 그리고 하나 이상의 사용자 인터페이스 출력 디바이스(예를 들어, 하나 이상의 자동화된 어시스턴트와의 대화에서 사용되는 사용자 인터페이스 출력 디바이스)를 통해 사용자에게 제시하기 위해 에이전트로 하여금 콘텐츠를 생성하게하는 요청을 전송하는 것을 포함할 수 있다 (예컨대, 어플리케이션 프로그래밍 인터페이스(API)를 이용하여). 에이전트에 의해 생성된 응답형 콘텐츠는 요청의 파라미터들 맞게 조정될 수 있다. 예를 들어, 자동화된 어시스턴트(504)는 클라이언트 디바이스(516)에서 하나 이상의 센서로부터의 출력에 기초하여 생성된 데이터를 사용하여 하나 이상의 거리 측정치를 생성할 수 있다. 거리 측정치는 에이전트 데이터(546)(즉, 응답형 콘텐츠)가 거리 측정치에 기초하여 생성, 선택, 및/또는 달리 조정될 수 있도록, 에이전트(538)에 대한 요청의 파라미터로 구현될 수 있다. 일부 구현예에서, 에이전트(538)는 원격 디바이스(512) 및/또는 클라이언트 디바이스(516)로부터 수신된 요청들의 적어도 하나의 파라미터에 기초하여 에이전트 데이터(536)를 생성, 선택 및/또는 적응시키는 에이전트 데이터 선택 엔진(534)을 포함할 수 있다. 이러한 방식으로, 클라이언트 디바이스(516)는 적어도 사용자에 대응하는 거리 측정치에 따라 에이전트(532)에 의해 제공되는 에이전트 데이터(536)의 서브세트에 기초하여 사용자를 위해 콘텐츠를 렌더링할 수 있다.
도 6은 예시적인 컴퓨터 시스템(610)의 블록도이다. 컴퓨터 시스템(610)은 일반적으로 버스 서브시스템(612)을 통해 다수의 주변 디바이스들과 통신하는 적어도 하나의 프로세서(614)를 포함한다. 이러한 주변 디바이스들은 예를 들어, 메모리(625) 및 파일 저장 서브 시스템(626)을 포함하는 저장 서브 시스템(624), 사용자 인터페이스 출력 디바이스(620), 사용자 인터페이스 입력 디바이스(622) 및 네트워크 인터페이스 서브시스템(616)을 포함할 수 있다. 입력 및 출력 디바이스는 컴퓨터 시스템(610)과 사용자가 상호작용을 할 수 있게 한다. 네트워크 인터페이스 서브시스템(616) 외부 네트워크에 대한 인터페이스를 제공하고 다른 컴퓨터 시스템의 해당 인터페이스 디바이스에 연결된다.
사용자 인터페이스 입력 디바이스(622)는 키보드, 마우스, 트랙볼, 터치 패드 또는 그래픽 태블릿과 같은 포인팅 디바이스, 스캐너, 디스플레이에 통합된 터치 스크린, 음성 인식 시스템과 같은 오디오 입력 디바이스, 마이크 및/또는 다른 유형의 입력 디바이스를 포함할 수 있다. 일반적으로, "입력 디바이스" 라는 용어의 사용은 컴퓨터 시스템(610) 또는 통신 네트워크에 정보를 입력하는 모든 가능한 유형의 디바이스 및 방법을 포함하도록 의도된다.
사용자 인터페이스 출력 디바이스(620)는 디스플레이 서브시스템, 프린터, 팩스 기계, 또는 오디오 출력 디바이스와 같은 비시각적 디스플레이를 포함할 수 있다. 디스플레이 서브시스템은 음극선관(CRT), 액정 디스플레이(LCD)와 같은 평판 디바이스, 프로젝션 디바이스, 또는 가시적 이미지를 생성하기 위한 다른 메커니즘을 포함할 수 있다. 디스플레이 서브시스템은 또한 오디오 출력 디바이스를 통해 비시각적 디스플레이를 제공할 수 있다. 일반적으로, "출력 디바이스"라는 용어의 사용은 컴퓨터 시스템(610)으로부터 사용자 또는 다른 기계 또는 컴퓨터 시스템으로 정보를 출력하는 모든 가능한 유형의 디바이스 및 방법을 포함하도록 의도된다.
저장 서브시스템(624)은 여기에 설명된 모듈의 일부 또는 전부의 기능을 제공하는 프로그래밍 및 데이터 구조를 저장한다. 예를 들어, 저장 서브 시스템(624)은 방법(300), 방법(400)의 선택된 양상들을 수행하거나 클라이언트 디바이스(104), 원격 디바이스(116), 클라이언트 디바이스(516), 서버 디바이스(502), 원격 디바이스(512), 원격 디바이스(530), 자동화된 어시스턴트(504), 에이전트(532), 및/또는 본 명세서에서 논의된 임의의 다른 디바이스 또는 동작 중 하나 이상을 구현하는 로직을 포함할 수 있다.
이러한 소프트웨어 모듈은 일반적으로 프로세서(614)에 의해 단독으로 또는 다른 프로세서들과 결합하여 실행된다. 저장 서브시스템(624)에서 사용되는 메모리(625)는 프로그램 실행 동안 명령 및 데이터를 저장하기 위한 메인 랜덤 액세스 메모리(RAM)(630) 및 고정 명령들이 저장되는 판독 전용 메모리(ROM)(632)를 포함하는 다수의 메모리를 포함할 수 있다. 파일 저장 서브시스템(626)은 프로그램 및 데이터 파일에 대한 영구 저장을 제공할 수 있으며, 하드 디스크 드라이브, 플로피 디스크 드라이브 및 이와 관련된 이동식 매체, CD-ROM 드라이브, 광학 드라이브 또는 이동식 미디어 카트리지를 포함할 수 있다. 특정 구현예의 기능을 구현하는 모듈들은 저장 서브 시스템(624)의 파일 저장 서브 시스템(626)에 의해 또는 프로세서(들)(614)에 의해 액세스가능한 다른 기계에 저장될 수 있다.
버스 서브시스템(612)은 컴퓨터 시스템의 다양한 구성요소들 및 서브시스템들이 서로 통신할 수 있게하는 메커니즘을 제공한다. 버스 서브시스템(612)이 비록 단일 버스로서 개략적으로 도시되어 있지만, 버스 서브시스템의 대안적인 구현예는 다중 버스를 사용할 수도 있다.
컴퓨터 시스템(610)은 워크 스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버, 서버 팜, 또는 임의의 다른 데이터 처리 시스템 또는 컴퓨팅 디바이스를 포함하는 다양한 유형일 수 있다. 컴퓨터 및 네트워크의 끊임없이 변화하는 특성으로 인해, 도 6에 도시된 컴퓨터 시스템(610)의 설명은 일부 구현예를 설명하기 위한 특정 일례로서만 의도된다. 컴퓨터 시스템(610)의 다른 많은 구성들은 도 6에 도시된 컴퓨터 시스템보다 더 많거나 더 적은 구성요소를 가질 수 있다.
여기에 설명된 시스템이 사용자(또는 여기에서 "참가자"라고도 함)에 대한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 상황에서, 사용자는 프로그램들 또는 피처들이 사용자 정보(예: 사용자의 소셜 네트워크, 소셜 활동 또는 활동들, 직업, 사용자의 선호도 또는 사용자의 현재 지리적 위치에 대한 정보)를 수집하는 것을 제어할 수 있는 기회 또는 사용자와 보다 관련이 있을 수도 있는 콘텐츠를 콘텐츠 서버로부터 수신할 수 있는지 여부 및/또는 방법을 제어할 수 있는 기회를 제공받는다. 또한, 특정 데이터는 저장 또는 사용 전에 개인 식별 정보가 제거되도록, 하나 이상의 방법으로 처리될 수 있다. 예를 들어, 사용자에 대한 개인 식별 정보를 확인할 수 없도록 사용자의 신원을 처리할 수 있다. 또는 사용자의 지리적 위치를 일반화하여 지리적 위치 정보(예: 도시, 우편 번호 또는 주 수준)를 얻을 수 있으므로 사용자의 특정 지리적 위치를 결정할 수 없다. 따라서, 사용자는 사용자에 대한 정보 수집 및/또는 사용 방법을 제어할 수 있다.
비록, 여러 구현예들이 본 명세서에 설명 및 예시되었지만, 기능을 수행하고 및/또는 본 명세서에 서술된 결과들 및/또는 하나 이상의 장점들을 획득하기 위한 다양한 다른 수단들 및/또는 구조들이 활용될 수 있으며, 이들 변형예들 및 수정예들 각각은 본 명세서에 서술된 구현예들의 범위 내에 속하는 것으로 간주된다. 보다 일반적으로, 여기에 설명된 모든 파라미터들, 치수들, 물질들 및 구성들은 예시적인 것이며 실제 파라미터들, 치수들, 물질들 및 구성들은 교시 내용이 적용되는 특정 응용예 또는 응용예들에 따라 달라질 것이다. 당업자는 단지 일상적인 실험을 사용하여 본 명세서에 설명된 특정 구현에 대한 많은 등가물을 인식하거나 확인할 수 있을 것이다. 그러므로, 전술한 구현예는 단지 일례로서 제시되었으며, 첨부된 청구 범위 및 그에 상응하는 범위 내에서, 구현은 구체적으로 설명되고 청구된 것과 달리 실행될 수 있다. 본 개시 내용의 구현은 본원에 기재된 각각의 개별적인 특징, 시스템, 물품, 재료, 키트 및/또는 방법에 관한 것이다. 또한, 그러한 특징, 시스템, 물품, 재료, 키트 및/또는 방법이 서로 일치하지 않는 경우, 이러한 특징, 시스템, 물품, 재료, 키트 및/또는 방법의 임의의 조합은 본 개시의 범위 내에 속한다.

Claims (28)

  1. 하나 이상의 프로세서에 의해 구현되는 방법으로서,
    액션의 수행을 초기화하도록 자동화된 어시스턴트에 대한 요청을 수신하는 단계, 상기 자동화된 어시스턴트는 디스플레이 디바이스 및 센서와 통신하는 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스를 통해 액세스가능하며, 상기 센서는 디스플레이 디바이스에 대한 사용자의 거리를 나타내는 출력을 제공하고;
    센서의 출력에 기초하여, 상기 디스플레이 디바이스에 대한 사용자의 추정된 거리에 대응하는 거리 측정치를 결정하는 단계;
    수신된 요청에 기초하여, 액션을 완료하기 위한 에이전트를 식별하는 단계, 상기 에이전트는 자동화된 어시스턴트에 액세스가능하고 그리고 디스플레이 디바이스에 대한 사용자의 추정된 거리에 기초하여 클라이언트 디바이스에 대한 데이터를 제공하도록 구성되고;
    요청을 수신하고 수신된 요청에 기초하여 에이전트를 식별하는 것에 응답하여, 액션을 촉진하는 콘텐츠 아이템들을 제공하도록, 식별된 에이전트에 대한 에이전트 요청을 생성하는 단계, 에이전트 요청은 결정된 거리 측정치를 식별하고;
    후보 콘텐츠 아이템들의 서브세트와 에이전트 요청에 포함된 거리 측정치 사이의 대응관계에 기초하여 상기 액션에 대한 콘텐츠 아이템들의 서브세트를 에이전트가 선택하도록, 에이전트 요청을 에이전트에 전송하는 단계, 상기 후보 콘텐츠 아이템들의 서브세트는 콘텐츠 아이템들의 서브세트로부터 제외된 다른 콘텐츠 아이템들에 비해 고유하게 클라이언트 디바이스에서 렌더링되도록 구성되고; 및
    상기 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게하는 단계
    를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  2. 제1항에 있어서,
    상기 콘텐츠 아이템들의 서브세트는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트, 및 제 2 거리 범위에 대응하는 제 2 서브세트를 포함하고, 상기 제 2 거리 범위는 상기 추정된 거리를 제외하고 상기 제 1 거리 범위와 공통 경계(common boundary)를 가지며, 상기 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게하는 단계는,
    상기 클라이언트 디바이스로 하여금 처음에 오직 제 1 서브세트만을 렌더링하게하는 단계; 및
    상기 클라이언트 디바이스로 하여금 제 2 서브세트를 버퍼링하게하고, 그리고 사용자가 상기 제 2 거리 범위에 속하는 새로운 거리로 이동했다라고 결정함에 응답하여 제 2 서브세트를 렌더링하게하는 단계
    를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  3. 제2항에 있어서,
    상기 클라이언트 디바이스로 하여금 상기 제 2 서브세트를 렌더링하게하는 단계는, 사용자가 상기 새로운 거리로 이동했다라고 결정함에 응답하여 상기 클라이언트 디바이스로 하여금 상기 제 1 서브세트를 상기 제 2 서브세트로 대체하게하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  4. 제3항에 있어서,
    상기 제 2 서브세트는 상기 제 1 서브세트에 포함된 임의의 콘텐츠를 갖지 않는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  5. 제2항에 있어서,
    상기 제 1 서브세트는 오디오 데이터를 포함하고, 상기 클라이언트 디바이스로 하여금 처음에 오직 제 1 서브세트만을 렌더링하게하는 단계는, 상기 클라이언트 디바이스가 상기 오디오 데이터를 청각적으로 렌더링하게하는 단계를 포함하고,
    상기 제 2 서브세트는 그래픽 콘텐츠를 포함하고, 상기 클라이언트 디바이스로 하여금 상기 제 2 서브세트를 렌더링하게하는 단계는, 상기 클라이언트 디바이스가 상기 오디오 데이터의 청각적 렌더링과 함께 그래픽 콘텐츠를 렌더링하게하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  6. 제5항에 있어서,
    상기 그래픽 콘텐츠는 이미지이거나 또는 상기 오디오 데이터와 동기화되어 렌더링되는 비디오인 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  7. 제2항 내지 제6항 중 어느 한 항에 있어서,
    상기 에이전트는 상기 거리 측정치에 대응하는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트에 기초하여 제 1 서브세트를 선택하고, 그리고 상기 에이전트는 제 2 서브세트에 대응하는 제 2 거리 범위의 임계 거리 내에 있는 사용자의 추정된 거리에 기초하여 제 2 서브세트를 선택하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  8. 제2항 내지 제6항 중 어느 한 항에 있어서,
    센서로부터의 출력에 기초하여, 상기 추정된 거리의 추정된 변화율을 결정하는 단계; 및
    상기 추정된 변화율에 대한 표시를 에이전트 요청에 포함시키는 단계
    를 더 포함하고,
    상기 에이전트는 상기 거리 측정치에 대응하는 사용자의 추정된 거리를 포함하는 제 1 거리 범위에 대응하는 제 1 서브세트에 기초하여 제 1 서브세트를 선택하고, 상기 에이전트는 추정된 변화율에 대한 표시에 기초하여 제 2 서브세트를 선택하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  9. 제1항에 있어서,
    상기 사용자 및 하나 이상의 추가 사용자들이 상기 클라이언트 디바이스가 있는 환경에 존재하고, 상기 방법은,
    상기 사용자가 자동화된 어시스턴트의 현재 활성 사용자인지를 결정하는 단계를 더 포함하며,
    상기 사용자의 추정된 거리에 대응하는 거리 측정치를 결정하는 단계는, 상기 사용자가 자동화된 어시스턴트의 현재 활성 사용자라고 결정함에 응답하여, 하나 이상의 추가 사용자들 대신에 상기 사용자의 거리 측정치를 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  10. 제9항에 있어서,
    상기 사용자가 현재 활성 사용자라고 결정하는 것은, 센서로부터의 출력 및 적어도 하나의 추가 센서로부터의 추가 출력 중 하나 또는 둘 모두에 기초하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  11. 제10항에 있어서,
    상기 센서 또는 상기 추가 센서는 카메라를 포함하고, 상기 출력 또는 추가 출력은 하나 이상의 이미지들을 포함하며,
    상기 사용자가 현재 활성 사용자라고 결정하는 것은, 하나 이상의 이미지들에 기초하여 결정된 사용자의 포즈 및 하나 이상의 이미지에 기초하여 결정된 사용자의 시선 중 하나 또는 둘 모두에 기초하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  12. 제1항 내지 제9항 중 어느 한 항에 있어서,
    에이전트 요청을 에이전트로 전송하고 그리고 클라이언트 디바이스로 하여금 후보 콘텐츠 아이템들의 선택된 서브세트를 렌더링하게한 이후에,
    디스플레이 디바이스에 대한 사용자의 거리가 변경되었음을 나타내는 별도의 거리 측정치를 결정하는 단계;
    별도의 거리 측정치를 결정함에 응답하여, 식별된 에이전트에 대한 별도의 에이전트 요청을 생성하는 단계, 상기 별도의 에이전트 요청은 별도의 거리 측정치를 포함하며;
    에이전트 요청에 포함된 별도의 거리 측정치와 후보 콘텐츠 아이템들의 별도의 서브세트 사이의 대응관계에 기초하여 액션에 대한 후보 콘텐츠 아이템들의 별도의 서브세트를 에이전트가 선택하도록 별도의 에이전트 요청을 에이전트로 전송하는 단계; 및
    후보 콘텐츠 아이템들의 선택된 별도의 서브세트를 클라이언트 디바이스가 렌더링하게하는 단계
    를 더 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  13. 제1항에 있어서,
    상기 수신된 요청은 자동화된 어시스턴트 인터페이스에서 수신된 음성 발화에 기초하고 그리고 사용자의 음성 특징(voice signature)을 내재하는 오디오 데이터를 포함하며, 상기 방법은,
    사용자의 음성 특징에 기초하여, 근접 적응형 콘텐츠(proximity-adaptive content)와 연관된 사용자 선호도를 나타내는 사용자 프로파일을 선택하는 단계를 더 포함하고, 콘텐츠 아이템들의 서브세트는 사용자 선호도에 기초하여 선택되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  14. 제1항에 있어서,
    상기 거리 측정치는 수신된 요청에 내재되거나 또는 수신된 요청과는 별도로 수신되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  15. 제1항에 있어서,
    상기 클라이언트 디바이스는 센서의 출력으로부터 거리 측정치를 생성하고 그리고 상기 요청에서 또는 추가적인 전송에서 상기 거리 측정치를 전송하며,
    거리 측정치를 결정하는 것은 서버 디바이스에서 수행되고, 서버 디바이스는 상기 요청에 또는 추가적인 전송에 상기 거리 측정치를 포함시킨 것에 기초하여 거리 측정치를 결정하고, 그리고 서버 디바이스는 센서의 출력에 직접적으로 액세스함이 없이 거리 측정치를 결정하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  16. 하나 이상의 프로세서에 의해 구현되는 방법으로서,
    사용자와 자동화된 어시스턴트 간의 상호작용 동안 사용자가 이전에 요청한 액션을 촉진하기 위해 제 1 콘텐츠를 렌더링하는 단계, 상기 자동화된 어시스턴트는 클라이언트 디바이스의 자동화된 어시스턴트 인터페이스를 통해 액세스가능하며 그리고 제 1 콘텐츠는 클라이언트 디바이스에 로컬적으로 저장된 콘텐츠 아이템들의 제 1 서브세트에 기초하여 렌더링되며;
    클라이언트 디바이스에 연결된 센서의 출력에 기초하여 그리고 클라이언트 디바이스가 제 1 콘텐츠를 렌더링하는 동안, 사용자의 위치가 제 1 위치로부터 제 2 위치로 변경되었음을 결정하는 단계;
    센서의 출력에 기초하여, 액션을 촉진하기 위해 제 2 콘텐츠를 렌더링할 콘텐츠 아이템들의 제 2 서브세트를 식별하는 단계, 콘텐츠 아이템들의 제 2 서브세트는 콘텐츠 아이템들의 제 1 서브세트와는 배타적이며 클라이언트 디바이스에 로컬적으로 저장된 데이터를 포함하고;
    콘텐츠 아이템들의 식별된 제 2 서브세트에 기초하여 제 2 콘텐츠를 렌더링 하는 단계;
    클라이언트 디바이스가 제 2 콘텐츠를 렌더링하는 동안 센서의 후속 출력을 모니터링하는 단계; 및
    센서의 후속 출력이 사용자가 제 1 위치 및 제 2 위치와는 다른 제 3 위치로 이동했음을 나타내는 경우:
    사용자가 제 3 위치에 있을 때 제 3 콘텐츠가 렌더링될 콘텐츠 아이템들의 제 3 서브세트가 클라이언트 디바이스에서 로컬적으로 이용불가능함을 결정하는 단계;
    자동화된 어시스턴트가 액세스할 수 있는 원격 서버 디바이스로부터 콘텐츠 아이템들의 제 3 서브세트를 수신하기 위한 요청을 생성하는 단계
    를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  17. 제16항에 있어서,
    상기 제 3 위치는 상기 제 1 위치 및 상기 제 2 위치보다 클라이언트 디바이스에 더 근접하고, 상기 방법은,
    콘텐츠 아이템들의 제 3 서브세트를 수신하는 단계; 및
    콘텐츠 아이템들의 제 3 서브세트에 기초하여 제 3 콘텐츠를 렌더링하는 단계를 더 포함하고,
    제 1 콘텐츠는 제 1 양식(modality)을 통해 렌더링되고, 제 3 콘텐츠는 제 1 양식과 다른 제 2 양식을 통해 렌더링되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  18. 제17항에 있어서,
    상기 제 3 콘텐츠를 렌더링하는 단계는 제 2 콘텐츠를 제 3 콘텐츠로 대체하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  19. 제18항에 있어서,
    상기 제 1 양식은 오디오 양식이고 상기 제 1 콘텐츠는 클라이언트 디바이스에 연결된 하나 이상의 스피커를 통해 렌더링되며, 상기 제 2 양식은 디스플레이 양식이고 상기 제 3 콘텐츠는 클라이언트 디바이스에 연결된 디스플레이 디바이스를 통해 렌더링되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  20. 제16항에 있어서,
    클라이언트 디바이스의 자동화된 어시스턴트 인터페이스에서 음성 발화를 수신하는 단계, 센서는 자동화된 어시스턴트 인터페이스에 통합되고 사용자로부터의 가청 입력에 응답하도록 구성된 하나 이상의 마이크로폰을 포함하고; 및
    수신된 음성 발화에 대응하는 오디오 데이터에 기초하여, 액션을 수행할 타겟 어플리케이션 및 클라이언트 디바이스에 대한 사용자의 방향을 결정하는 단계
    를 더 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  21. 제16항에 있어서,
    상기 센서는 카메라를 포함하고, 상기 방법은,
    센서의 후속 출력이 사용자가 제 3 위치로 이동했음을 나타내는 경우:
    카메라에 의해 캡처된 하나 이상의 이미지에 기초하여, 사용자가 활성 사용자인지의 여부를, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 포즈, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 시선 방향, 하나 이상의 이미지에 대한 프로세싱에 기초하여 결정된 사용자의 입의 움직임, 및 하나 이상의 이미지에 대한 프로세싱에 기초하여 검출된 사용자의 제스처 중 하나 또는 다수에 기초하여 결정하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  22. 하나 이상의 프로세서에 의해 구현되는 방법으로서,
    원격 자동화된 어시스턴트 시스템에서, 디스플레이 디바이스를 포함하는 클라이언트 디바이스에 의해 전송된 자동화된 어시스턴트 요청을 수신하는 단계;
    원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 요청의 콘텐츠에 기초하여:
    자동화된 어시스턴트 요청에 대한 자동화된 어시스턴트 에이전트, 및
    클라이언트 디바이스와 사용자 간의 현재 거리를 나타내는 사용자 거리 측정치를 결정하는 단계, 상기 사용자는 클라이언트 디바이스와 같은 환경에 있으며;
    원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 요청에 대해 결정된 자동화된 어시스턴트 에이전트로, 상기 사용자 거리 측정치를 포함하는 에이전트 요청을 전송하는 단계;
    상기 에이전트 요청에 응답하여, 원격 자동화된 어시스턴트 시스템에 의해서 그리고 자동화된 어시스턴트 에이전트로부터, 상기 사용자 거리 측정치에 대해 조정된 콘텐츠 아이템들을 수신하는 단계; 및
    상기 사용자 거리 측정치에 대해 조정된 콘텐츠 아이템들을 전송하는 단계
    를 포함하고,
    상기 콘텐츠 아이템들은 자동화된 어시스턴트 요청에 응답하여 원격 자동화된 어시스턴트로부터 클라이언트 디바이스로 전송되고,
    응답형 콘텐츠를 전송하는 것은 클라이언트 디바이스로 하여금 클라이언트 디바이스의 디스플레이 디바이스를 통해 응답형 콘텐츠를 렌더링하게하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  23. 제22항에 있어서,
    사용자 거리 측정치를 결정하는 단계는, 상기 사용자 거리 측정치가 제 1 거리 임계값 및 제 2 거리 임계값을 충족하는지를 결정하는 단계를 포함하고,
    상기 콘텐츠 아이템들은 상기 제 1 거리 임계값에 대해 조정된 콘텐츠 아이템들의 제 1 서브세트 및 상기 제 2 거리 임계값에 대해 조정된 콘텐츠 아이템들의 제 2 서브세트를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  24. 제23항에 있어서,
    상기 클라이언트 디바이스는 사용자 거리 측정치를 결정하고 그리고 콘텐츠 아이템들의 제 1 서브세트 및 콘텐츠 아이템들의 제 2 서브세트 중 하나로부터 응답형 콘텐츠를 렌더링하기위한 데이터를 선택하도록 구성되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  25. 제24항에 있어서,
    상기 클라이언트 디바이스는 또한 상기 사용자 거리 측정치가 상기 제 1 거리 임계값을 배타적으로 만족할 때 콘텐츠 아이템들의 제 1 서브세트에 기초하여 응답형 콘텐츠를 렌더링하고, 그리고 상기 사용자 거리 측정치가 상기 제 2 거리 임계값을 배타적으로 만족할 때 콘텐츠 아이템들의 제 2 서브세트에 기초하여 응답형 콘텐츠를 렌더링하도록 구성되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  26. 제23항에 있어서,
    상기 콘텐츠 아이템들의 제 1 서브세트는 상기 콘텐츠 아이템들의 제 2 서브세트로부터 생략된 데이터 포맷으로 구현되는 데이터를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  27. 적어도 하나의 프로세서 및 상기 적어도 하나의 프로세서에 의해서 실행가능한 명령들을 저장하는 적어도 하나의 메모리를 포함하는 시스템으로서, 상기 명령들을 실행될 때, 상기 적어도 하나의 프로세서로 하여금 제1항 내지 제26항 중 어느 한 항의 방법을 수행하게하는 것을 특징으로 하는 시스템.
  28. 컴퓨터 실행가능 명령들을 포함하는 컴퓨터 프로그램으로서,
    상기 명령들은 적어도 하나의 컴퓨팅 장치에 의해 실행될 때, 상기 적어도 하나의 컴퓨팅 장치로 하여금 제1항 내지 제26항 중 어느 한 항의 방법을 수행하게하는 것을 특징으로 하는 컴퓨터 프로그램.
KR1020207033967A 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용 KR102574277B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237029180A KR20230128586A (ko) 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/031163 WO2019212566A1 (en) 2018-05-04 2018-05-04 Generating and/or adapting automated assistant content according to a distance between user(s) and an automated assistant interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237029180A Division KR20230128586A (ko) 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용

Publications (2)

Publication Number Publication Date
KR20210002648A true KR20210002648A (ko) 2021-01-08
KR102574277B1 KR102574277B1 (ko) 2023-09-04

Family

ID=62555161

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207033967A KR102574277B1 (ko) 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용
KR1020237029180A KR20230128586A (ko) 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237029180A KR20230128586A (ko) 2018-05-04 2018-05-04 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용

Country Status (6)

Country Link
US (3) US10878279B2 (ko)
EP (2) EP4361777A2 (ko)
JP (2) JP7081045B2 (ko)
KR (2) KR102574277B1 (ko)
CN (1) CN112204500A (ko)
WO (1) WO2019212566A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7081045B2 (ja) 2018-05-04 2022-06-06 グーグル エルエルシー ユーザと自動化されたアシスタントインターフェースとの間の距離に応じて自動化されたアシスタントのコンテンツを生成するおよび/または適応させること
KR102661487B1 (ko) 2018-05-04 2024-04-26 구글 엘엘씨 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출
CN112236739B (zh) * 2018-05-04 2024-05-17 谷歌有限责任公司 基于检测到的嘴运动和/或凝视的适配自动助理
EP4130941A1 (en) 2018-05-04 2023-02-08 Google LLC Hot-word free adaptation of automated assistant function(s)
US10783428B2 (en) * 2018-07-05 2020-09-22 Accenture Global Solutions Limited Holographic virtual assistant
US11164585B2 (en) * 2019-06-07 2021-11-02 Mitsubishi Electric Automotive America, Inc. Systems and methods for virtual assistant routing
KR20190106921A (ko) * 2019-08-30 2019-09-18 엘지전자 주식회사 커뮤니케이션 로봇 및 그의 구동 방법
CN111273833B (zh) * 2020-03-25 2022-02-01 北京百度网讯科技有限公司 人机交互的控制方法、装置和系统、电子设备
US11308962B2 (en) * 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
CN112954437B (zh) * 2021-02-02 2022-10-28 深圳市慧鲤科技有限公司 一种视频资源处理方法、装置、计算机设备及存储介质
TW202240461A (zh) * 2021-03-03 2022-10-16 美商元平台公司 使用輔助系統的語音和手勢輸入之文字編輯
CN116075885A (zh) * 2021-07-19 2023-05-05 谷歌有限责任公司 用于第三方数字助理动作的基于位向量的内容匹配

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016157662A1 (ja) * 2015-03-31 2016-10-06 ソニー株式会社 情報処理装置、制御方法、およびプログラム
US20170289766A1 (en) * 2016-03-29 2017-10-05 Microsoft Technology Licensing, Llc Digital Assistant Experience based on Presence Detection
WO2017184587A1 (en) * 2016-04-18 2017-10-26 Google Inc. Automated assistant invocation of appropriate agent

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0348866A (ja) * 1989-07-18 1991-03-01 Ricoh Co Ltd 複写機のガイダンス制御装置
US6971072B1 (en) * 1999-05-13 2005-11-29 International Business Machines Corporation Reactive user interface control based on environmental sensing
US7203911B2 (en) * 2002-05-13 2007-04-10 Microsoft Corporation Altering a display on a viewing device based upon a user proximity to the viewing device
EP1387350A1 (en) 2002-07-25 2004-02-04 Sony International (Europe) GmbH Spoken man-machine interface with speaker identification
US7134080B2 (en) * 2002-08-23 2006-11-07 International Business Machines Corporation Method and system for a user-following interface
US20050229200A1 (en) * 2004-04-08 2005-10-13 International Business Machines Corporation Method and system for adjusting a display based on user distance from display device
JP2006236013A (ja) 2005-02-25 2006-09-07 Nippon Telegr & Teleph Corp <Ntt> 環境的情報提示装置、環境的情報提示方法およびこの方法のプログラム
US8203577B2 (en) 2007-09-25 2012-06-19 Microsoft Corporation Proximity based computer display
KR101472844B1 (ko) 2007-10-23 2014-12-16 삼성전자 주식회사 적응적 문서 디스플레이 장치 및 방법
JP2010049313A (ja) 2008-08-19 2010-03-04 Sony Corp 画像処理装置、画像処理方法、プログラム
CN101742282A (zh) 2008-11-24 2010-06-16 深圳Tcl新技术有限公司 一种调整显示设备视频内容参数的方法、系统及设备
US20110298980A1 (en) 2010-06-08 2011-12-08 Sony Corporation Resizing tv graphic elements and reorienting graphics plane for user position
US9274744B2 (en) * 2010-09-10 2016-03-01 Amazon Technologies, Inc. Relative position-inclusive device interfaces
JP2012181748A (ja) 2011-03-02 2012-09-20 Dainippon Printing Co Ltd 図柄表示具、及び合成画像表示システム
US9390317B2 (en) * 2011-03-21 2016-07-12 Hewlett-Packard Development Company, L.P. Lip activity detection
US20120246678A1 (en) 2011-03-24 2012-09-27 Tobe Barksdale Distance Dependent Scalable User Interface
KR101818024B1 (ko) * 2011-03-29 2018-01-12 퀄컴 인코포레이티드 각각의 사용자의 시점에 대해 공유된 디지털 인터페이스들의 렌더링을 위한 시스템
US8782716B2 (en) 2011-07-29 2014-07-15 Google Inc. Systems and methods for rendering user interface objects in accordance with a variable scaling factor
US20130113879A1 (en) * 2011-11-04 2013-05-09 Comcast Cable Communications, Llc Multi-Depth Adaptation For Video Content
WO2013074547A1 (en) * 2011-11-15 2013-05-23 Trimble Navigation Limited Extensible web-based 3d modeling
US9046917B2 (en) 2012-05-17 2015-06-02 Sri International Device, method and system for monitoring, predicting, and accelerating interactions with a computing device
US9674331B2 (en) * 2012-06-08 2017-06-06 Apple Inc. Transmitting data from an automated assistant to an accessory
US9164580B2 (en) 2012-08-24 2015-10-20 Microsoft Technology Licensing, Llc Calibration of eye tracking system
US8659703B1 (en) 2012-10-23 2014-02-25 Sony Corporation Adapting layout and text font size for viewer distance from TV
US9804820B2 (en) 2013-12-16 2017-10-31 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US20160345039A1 (en) * 2013-12-30 2016-11-24 Thomson Licensing Proximity dependent media playback
US20150309580A1 (en) 2014-04-25 2015-10-29 Wipro Limited Method and computing unit for facilitating interactions of a group of users with gesture-based application
US9588408B1 (en) * 2014-05-15 2017-03-07 Autofuss Methods and systems for projecting a target portion of an image at a higher resolution
JP2017144521A (ja) 2016-02-18 2017-08-24 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US11227017B2 (en) * 2016-05-17 2022-01-18 Google Llc Providing suggestions for interaction with an automated assistant in a multi-user message exchange thread
JP2018055155A (ja) 2016-09-26 2018-04-05 トヨタ自動車株式会社 音声対話装置および音声対話方法
US10467510B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Intelligent assistant
US10853911B2 (en) * 2018-04-17 2020-12-01 Google Llc Dynamic adaptation of images for projection, and/or of projection parameters, based on user(s) in environment
JP7081045B2 (ja) 2018-05-04 2022-06-06 グーグル エルエルシー ユーザと自動化されたアシスタントインターフェースとの間の距離に応じて自動化されたアシスタントのコンテンツを生成するおよび/または適応させること

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016157662A1 (ja) * 2015-03-31 2016-10-06 ソニー株式会社 情報処理装置、制御方法、およびプログラム
US20170289766A1 (en) * 2016-03-29 2017-10-05 Microsoft Technology Licensing, Llc Digital Assistant Experience based on Presence Detection
WO2017184587A1 (en) * 2016-04-18 2017-10-26 Google Inc. Automated assistant invocation of appropriate agent

Also Published As

Publication number Publication date
JP2022119878A (ja) 2022-08-17
JP2021522636A (ja) 2021-08-30
WO2019212566A1 (en) 2019-11-07
EP3616034A1 (en) 2020-03-04
EP3616034B1 (en) 2024-04-10
JP7081045B2 (ja) 2022-06-06
CN112204500A (zh) 2021-01-08
US20240028108A1 (en) 2024-01-25
US11789522B2 (en) 2023-10-17
EP4361777A2 (en) 2024-05-01
KR102574277B1 (ko) 2023-09-04
US20210117720A1 (en) 2021-04-22
KR20230128586A (ko) 2023-09-05
US20200167597A1 (en) 2020-05-28
US10878279B2 (en) 2020-12-29

Similar Documents

Publication Publication Date Title
KR102574277B1 (ko) 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용
KR102661487B1 (ko) 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출
CN112119379B (zh) 在执行自动助理例程期间在客户端设备之间传输该例程
CN112236739B (zh) 基于检测到的嘴运动和/或凝视的适配自动助理
US20210082083A1 (en) Dynamic adaptation of images for projection, and/or of projection parameters, based on user(s) in environment
JP2023089115A (ja) ホットワードを用いない自動アシスタント機能の適応
EP3714355B1 (en) Expanding physical motion gesture lexicon for an automated assistant
US11727925B2 (en) Cross-device data synchronization based on simultaneous hotword triggers
US20240169989A1 (en) Multimodal responses
CN115769298A (zh) 缺少自动化助理应用编程接口功能的外部应用的自动化助理控制
US20230031461A1 (en) Providing certain reasoning with respect to fulfillment of an assistant command
US11164576B2 (en) Multimodal responses
US20230197071A1 (en) Accelerometer-based endpointing measure(s) and /or gaze-based endpointing measure(s) for speech processing
US20230230583A1 (en) Mitigating false positives and/or false negatives in hot word free adaptation of automated assistant
US20230230587A1 (en) Dynamic adaptation of parameter set used in hot word free adaptation of automated assistant
KR20230153450A (ko) 자동 스피치 인식의 로컬 실행을 위한 디바이스 중재
KR20240067114A (ko) 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant