KR20210145283A - 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안 - Google Patents

제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안 Download PDF

Info

Publication number
KR20210145283A
KR20210145283A KR1020217036951A KR20217036951A KR20210145283A KR 20210145283 A KR20210145283 A KR 20210145283A KR 1020217036951 A KR1020217036951 A KR 1020217036951A KR 20217036951 A KR20217036951 A KR 20217036951A KR 20210145283 A KR20210145283 A KR 20210145283A
Authority
KR
South Korea
Prior art keywords
data
vehicle
application
automated assistant
content
Prior art date
Application number
KR1020217036951A
Other languages
English (en)
Other versions
KR102696778B1 (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 KR1020247027362A priority Critical patent/KR20240129085A/ko
Publication of KR20210145283A publication Critical patent/KR20210145283A/ko
Application granted granted Critical
Publication of KR102696778B1 publication Critical patent/KR102696778B1/ko

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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
    • 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
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Navigation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Traffic Control Systems (AREA)

Abstract

본 명세서에 설명된 구현예는 로컬 애플리케이션 간의 통신에 대한 제한을 사용하는 OEM 차량 컴퓨팅 디바이스를 통해 액세스 가능한 OEM 애플리케이션 및/또는 서드파티 애플리케이션에서 제안 요소들을 제공하는 자동화된 어시스턴트에 관한 것이다. 자동화된 어시스턴트는 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션을 통해 제안들을 제공하고, 제약에도 불구하고 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션을 통해 수행할 액션들을 초기화할 수 있다. 제안들은 차량의 그래픽 사용자 인터페이스에서 렌더링될 수 있으며, 사용자가 말할 때 자동화된 어시스턴트가 그러한 액션들을 초기화하게 하는 콘텐츠를 포함할 수 있다. 자동화된 어시스턴트에 의해 제안된 액션들은 제안을 렌더링하는 서드파티 애플리케이션과 상이한 서드파티 애플리케이션에 의해 수행될 수 있다. 이러한 방식으로, 차량 애플리케이션 간의 통신 제한의 차이에도 불구하고 다양한 차량 컴퓨팅 디바이스를 통해 공통의 자동화된 어시스턴트가 무차별적으로 사용가능해질 수 있다.

Description

제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안
컴퓨팅 디바이스 및 각각의 애플리케이션은 일반적으로 사용자가 다양한 작업을 수행하도록 지원하는 강력한 기능을 제공한다. 특정한 애플리케이션의 제공자 또는 디바이스는 사용자가 초기 사용 중에 모든 기능을 사용하기를 기대하지 않고, 시간이 지남에 따라 애플리케이션 또는 디바이스의 기능을 학습할 수 있다. 특정한 디바이스가 자동화된 어시스턴트에 대한 액세스를 제공할 때, 자동화된 어시스턴트는 사용자가 특정한 디바이스 및/또는 애플리케이션의 하나 이상의 액션들을 제어하도록 지시하는 제안을 사용하여 다양한 기능에 익숙해지도록 작동할 수 있다. 그러나, 차량 컴퓨팅 디바이스 또는 다른 OEM 컴퓨팅 디바이스와 같은 일부 경우에서, 자동화된 어시스턴트는 차량 컴퓨팅 디바이스를 통해 액세스할 수 있지만 차량 컴퓨팅 디바이스의 동작으로부터 수집될 수 있는 데이터 유형으로 제한된다. 그 결과, 자동화된 어시스턴트에 의해 이루어진 임의의 제안은 차량 및/또는 차량 컴퓨팅 디바이스의 보다 효과적이고 및/또는 효율적인 사용을 가능하게 할 수 있는 차량 컴퓨팅 디바이스 및/또는 다른 애플리케이션의 기능에 적합하게 맞춤화되지 않을 수 있다.
더욱이, 이러한 제한은 사용자가 차량 컴퓨팅 디바이스의 안전 기능에 대해 더 빨리 학습하는 것을 방해할 수 있다. 다시 말해, 차량 컴퓨팅 디바이스는 사용자가 즉시 인식할 것으로 합리적으로 기대할 수 없는 과다한 안전 기능을 제공할 수 있기 때문에, 이러한 구성에 대한 학습이 지연되면 차량의 안전 및/또는 유용성이 제한될 수 있다. 또한, 사용자는 기능을 학습하지 않고 탐색하기 위해 차량을 제어하는데 많은 시간을 할애할 수 있으므로, 사용자는 전력 소비 감소 및 효율성 증가와 같은 이점을 얻을 수 없다. 이것은 차량 컴퓨팅 디바이스가 사용자에게 기능을 제안하는 것에 대해 배타적으로 능동적이지 않을 때 특히 명백할 수 있다. 이러한 이점은 사용자가 컴퓨팅 디바이스에 다양한 작업을 아웃소싱할 때 종종 실현되기 때문이다.
본 명세서에 기술된 구현예는 차량 애플리케이션을 통해 제안을 렌더링하고 차량 애플리케이션을 통해 액션을 초기화할 수 있는 자동화된 어시스턴트를 또한 포함하는 차량 컴퓨팅 디바이스에 제공되는 차량 애플리케이션의 계층에 관한 것이다. 차량 애플리케이션은 차량의 차량 컴퓨팅 디바이스에 로드될 수 있고, 내비게이션, 통신, 미디어 및/또는 컴퓨팅 디바이스에 의해 제공될 수 있는 임의의 다른 유형의 서비스와 관련된 다양한 기능을 제공할 수 있다. 차량 컴퓨팅 디바이스는 차량 컴퓨팅 디바이스에 로드되고 하나 이상의 OEM(Original Equipment Manufacturer) 애플리케이션을 포함하는 운영 체제에 따라 동작할 수 있다. OEM 애플리케이션은 차량을 제공하는 엔터티 또는 소스에 의해 제공될 수 있다. 또한, 차량 컴퓨팅 디바이스는 서드파티 소스(즉, 기본 차량 애플리케이션이 아닌 서드파티 애플리케이션)에 의해 제공되는 하나 이상의 차량 애플리케이션 및 서드파티 소스와 별개의 소스에 의해 제공되는 자동화된 어시스턴트를 포함할 수 있다. 자동화된 어시스턴트와 다른 애플리케이션 간의 통신은 차량 컴퓨팅 디바이스를 통해 발생하는 통신으로 제한될 수 있으며, 이는 차량 시스템의 신뢰성을 향상시킬 수 있다. 자동화된 어시스턴트는 차량 컴퓨팅 디바이스에서 멀리 떨어져 있을 수 있다. 자동화된 어시스턴트에 의해 제안된 하나 이상의 액션들은 로컬 차량 애플리케이션(네이티브 OEM 애플리케이션이든 서드파티 애플리케이션이든)에 의해 수행될 수 있으며, 이는 특히 자율 주행 차량 환경과 같은 시스템과 같이 차량이 완전한 제어를 유지하는 것이 바람직한 상황에서 차량 성능의 신뢰성을 향상시킬 수 있다. 하나 이상의 액션들이 원격 자동화된 어시스턴트에 의해 수행될 수 있으며, 이는 사용자 데이터 및 자동화된 어시스턴트와 연관된 정보(어시스턴트 데이터)를 보호할 수 있으며, 따라서 로컬 차량 애플리케이션이 사용자 데이터에 액세스하는 것을 방지함으로써 사용자 프라이버시 및 데이터 보안을 향상시킬 수 있다.
일부 구현예에서, 사용자가 차량에 타고 있는 동안, OEM 차량 애플리케이션 및/또는 자동화된 어시스턴트는 하나 이상의 다른 차량 애플리케이션으로부터의 데이터에 기초한 다양한 상이한 콘텐츠를 포함하는 그래픽 사용자 인터페이스를 렌더링할 수 있다. 예를 들어, 그래픽 사용자 인터페이스는 내비게이션 관련 콘텐츠를 렌더링하기 위한 제1 영역, 통신 관련 콘텐츠를 렌더링하기 위한 제2 영역, 및/또는 자동화된 어시스턴트 콘텐츠를 렌더링하기 위한 제3 영역을 포함할 수 있다. 사용자가 차량 컴퓨팅 디바이스 및/또는 차량 애플리케이션의 다양한 기능을 학습하기 위해, 자동화된 어시스턴트는 그래픽 사용자 인터페이스의 각 영역에서 제안을 제공하거나 및/또는 렌더링하게 할 수 있다. 결과적으로, 다양한 상이한 차량을 통해 자동화된 어시스턴트에 액세스할 수 있음에도 불구하고, 차량 컴퓨팅 디바이스에서 제공되는 하나 이상의 다른 차량 애플리케이션들의 데이터를 사용하여, 자동화된 어시스턴트는 그럼에도 불구하고 자동화된 어시스턴트가 동작하는 차량에 관계없이 사용자에게 제안을 제공할 수 있다.
일부 구현예에서, 그래픽 사용자 인터페이스가 적어도 제1 영역 및 제2 영역을 디스플레이하고 있을 때, OEM 차량 애플리케이션은 사용자 인터페이스에서 제공되는 것을 특징화하는 데이터를 생성할 수 있고, 이 생성된 데이터를 자동화된 어시스턴트에 제공할 수 있다. 데이터는 자동화된 어시스턴트가 제안을 생성할 수 있는 컨텍스트를 제공하기 위해, 그래픽 사용자 인터페이스에서 제공되는 콘텐츠의 일부 또는 전부를 특징화하거나 본 명세서에 사용된 바와 같이 표시할 수 있다. 예를 들어, 제1 영역이 목적지에 대한 내비게이션 길안내를 디스플레이하고 있고, 제2 영역이 수신 전화에 관한 알림을 디스플레이하고 있는 경우, OEM 차량 애플리케이션은 수신 전화의 상태 및 목적지까지의 내비게이션의 상태를 특징화하는(또는 표시하는) 데이터를 생성할 수 있다. 일부 구현예에서, 자동화된 어시스턴트는 데이터를 사용하여 자동화된 어시스턴트 및/또는 차량 컴퓨팅 디바이스를 통해 액세스 가능한 임의의 다른 애플리케이션에 의해 수행될 하나 이상의 제안 또는 액션을 생성할 수 있다.
예를 들어, 자동화된 어시스턴트는 수신 전화의 소스인 사람에게 예상 도착 시간을 제공하기 위해 메시징 애플리케이션을 호출하기 위해 그래픽 사용자 인터페이스에서 제안 요소를 제공할 수 있다. 자동화된 어시스턴트는 제안이 통신과 관련되기 때문에 그래픽 사용자 인터페이스의 제2 영역에서 제안 요소가 제공되게 할 수 있다. 제안 요소는 "메간에게 내 예상 도착 시간을 보내줘"와 같이 어시스턴트가 취할 수 있는 임의의 액션을 특징화하는(또는 표시하는) 자연어 콘텐츠를 포함할 수 있다. 자연어 콘텐츠는 제안 요소에서 제공되는 텍스트일 수 있고, 제안 요소와 연관된 액션을 수행하기 위해 자동화된 어시스턴트를 호출하기 위한 예시적 발언일 수 있고 및/또는 자동화된 어시스턴트를 호출하기 위해 발화된 발언을 특징화할 수 있다. 예를 들어, 자동화된 어시스턴트를 호출하여 메시지가 전송되도록 하기 위해 사용자는 제안 요소가 렌더링되는 위치에서 디스플레이 패널을 탭하고 및/또는 그래픽 사용자 인터페이스에서 렌더링된 발화된 발언의 적어도 일부(예: "어시스턴트, 메간에게 내 ETA를 나타내는 메시지를 보내줘")를 포함하는 음성 입력을 제공할 수 있다. 다른 예에서, 음성 입력은 제안 요소의 자연어 콘텐츠와 동일한 의미 또는 의도를 가질 수 있다.
일부 구현예에서, OEM 차량 애플리케이션은 적어도 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링되는 콘텐츠의 변경에 응답하여, 시간 경과에 따라 다양한 데이터를 자동화된 어시스턴트에 제공할 수 있다. 후속 데이터가 OEM 차량 애플리케이션으로부터 자동화된 어시스턴트에 의해 수신됨에 따라, 자동화된 어시스턴트는 추가 제안을 생성하고 및/또는 다양한 상이한 속성에 따라 제안의 순위를 지정할 수 있다. 일부 경우에, 자동화된 어시스턴트에 의해 제공되는 제안 요소는 OEM 차량 애플리케이션에 의해 제공되는 차량 애플리케이션 데이터와 어시스턴트 데이터 간의 상관 강도에 따라 순위가 매겨질 수 있다. 예를 들어, 디스플레이 패널에 디스플레이된 목적지를 특징화하는 차량 애플리케이션 데이터는 목적지를 식별하는 어시스턴트 데이터와 더 강한 상관관계를 가질 수 있으며, 이 "더 강한" 상관관계는 차량 애플리케이션 데이터가 어시스턴트 데이터에 의해 식별된 목적지를 식별하지 못하는 경우에 상대적일 수 있다.
특정한 유형의 애플리케이션 및/또는 활동과 연관된 그래픽 사용자 인터페이스의 각 영역에 대해 제안 요소들의 세트가 생성될 수 있다. 각 제안 요소들의 세트에 대해, 제안 요소들의 세트의 각 제안 요소에 대해 순위가 할당될 수 있다. 이와 같이, 제안 요소가 그래픽 사용자 인터페이스의 특정한 영역에서 렌더링되어야 하는 경우, 렌더링되도록 선택된 제안 요소는 특정한 영역에 대응하는 제안 요소들의 세트 중 가장 높은 순위의 제안 요소일 수 있다. 일부 구현예에서, 특정한 제안 요소에 대한 순위는 전체 그래픽 사용자 인터페이스의 콘텐츠, 사용자와 자동화된 어시스턴트 간의 이전 인터렉션, 사용자의 허가를 받아 자동화된 어시스턴트가 사용할 수 있는 서드파티 애플리케이션 데이터, 차량의 하나 이상의 동작들을 특징화하는 차량 데이터, 및/또는 제안에 대한 순위가 기초할 수 있는 임의의 다른 정보에 기초할 수 있다.
일부 구현예에서, 자동화된 어시스턴트는 렌더링할 서드파티 차량 애플리케이션에 대한 제안을 제공할 수 있으며, 이러한 제안은 OEM 차량 애플리케이션의 정보에 기초하여 생성될 수 있다. 예를 들어, 다수의 상이한 서드파티 애플리케이션은 차량 컴퓨팅 디바이스를 통해 액세스할 수 있으며, 데이터를 전송 및/또는 수신하기 위해 OEM 차량 애플리케이션과 통신할 수 있다. 일부 구현예에서, OEM 차량 애플리케이션은 차량 컴퓨팅 디바이스 상의 다른 애플리케이션들 간의 통신을 제한할 수 있다. 따라서 서드파티 애플리케이션은 로컬에서 자동화된 어시스턴트와 통신할 수 없고, 오히려 차량 컴퓨팅 디바이스를 통해 독점적으로 통신할 수 있다. 자동화된 어시스턴트는 따라서 서드파티 애플리케이션과 직접 통신하는 대신 OEM 차량 애플리케이션에 의해 제공되는 데이터를 사용하여 서드파티 애플리케이션에 의해 수행되는 동작을 인식할 수 있다.
예를 들어, 서드파티 애플리케이션이 차량 컴퓨팅 디바이스의 디스플레이 패널에서 콘텐츠를 렌더링할 때, OEM 차량 애플리케이션은 콘텐츠를 특징화하는 데이터를 생성하고 자동화된 어시스턴트에 상기 데이터를 제공할 수 있다. 대안적으로 또는 추가적으로, 서드파티 애플리케이션은 (예를 들어, 자동화된 어시스턴트 애플리케이션 프로그래밍 인터페이스(API)를 사용하여) 데이터를 자동화된 어시스턴트에 제공하기 위해 서버와 같은 원격 컴퓨팅 디바이스와 통신할 수 있다. 그 다음, 자동화된 어시스턴트를 통해 제안 데이터가 생성될 수 있고, 그 후 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션과 연결된 원격 디바이스와 공유될 수 있다. 그 다음, 제안 데이터에 기초하여 서드파티 애플리케이션의 그래픽 사용자 인터페이스에 하나 이상의 제안 요소들이 제시될 수 있다. 이러한 방식으로, OEM 차량 애플리케이션이 로컬 애플리케이션 간의 통신을 차량 컴퓨팅 디바이스를 통해서만 발생하는 통신으로 제한함에도 불구하고, 그럼에도 불구하고 자동화된 어시스턴트는 사용자가 인식하지 못할 수 있는 다양한 액션들에 대한 제안을 적어도 차량 컴퓨팅 디바이스 및/또는 차량과 관련하여 제공할 수 있다.
일부 구현예에서, 자동화된 어시스턴트는 서드파티 애플리케이션 및/또는 OEM 차량 애플리케이션을 통해 사용자의 지시에 따라 최근에 수행된 액션들과 관련된 제안을 제공하는 것을 우회할 수 있다. 예를 들어, 서드파티 애플리케이션이 차량 유지 관리 애플리케이션에 대응하고, 차량 유지 관리 애플리케이션이 차량의 일부에 주의가 필요함을 나타내는 알림을 제공하는 경우, 자동화된 어시스턴트는 OEM 차량 애플리케이션을 통해 이 알림을 알릴 수 있다. 예를 들어, 차량 유지 관리 애플리케이션이 차량에 연료 및/또는 충전이 필요하다고 표시하면, 차량 유지 관리 애플리케이션은 차량에 연료를 보급할 주변 장소에 대한 알림을 제공할 수 있다. OEM 차량 애플리케이션은 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되는 알림 및/또는 콘텐츠에 기초하여 데이터를 생성할 수 있고, 생성된 데이터를 자동화된 어시스턴트에 제공할 수 있다. 자동화된 어시스턴트는 데이터를 사용하여 제안을 생성할 수 있으며, 이는 사용자에게 이미 제시된 것에 따라 순위화되거나 필터링될 수 있다.
예를 들어, 생성된 제안이 주변 차량 주유 장소에 해당하는 경우 생성된 제안은 차량 주유 장소에 대응하지 않는 별도의 제안보다 낮은 순위로 순위화(즉, 우선순위화)될 수 있다. 결과적으로, 예를 들어 차량에 대한 다른 정보를 얻기 위한 발화된 발언에 관한 다른 제안(예: "어시스턴트, 갤런당 고속도로 마일은 얼마야?")이 연료를 보급할 근처 장소와 관련된 제안보다 우선순위가 더 높을 수 있다. 대안적으로 또는 추가적으로, 서드파티 애플리케이션의 콘텐츠에 기초하는 데이터와 어시스턴트 데이터 간의 비교에 기초하여 다른 제안이 생성될 수 있고, 어시스턴트 데이터는 사용자와 자동화된 어시스턴트 간의 인터렉션과 연관되는 데이터이다. 예를 들어, 어시스턴트 데이터는 사용자와 자동화된 어시스턴트 사이의 이전 인터렉션의 콘텐츠, 사용자의 계정에 링크되거나 이와 연관되고 자동화된 어시스턴트를 통해 사용자에 의해 인터렉션하는 연락처 정보 또는 캘린더 정보를 포함할 수 있고 및/또는 어시스턴트 데이터는 자동화된 어시스턴트와의 사용자 인터렉션의 시간 및/또는 위치와 연관된 시간 및/또는 위치 정보를 포함할 수 있다. 일 예시에서, OEM 차량 애플리케이션으로부터의 데이터는 서드파티 애플리케이션으로부터의 알림이 차량의 동작 특성과 연관되는지를 결정하기 위해 어시스턴트 데이터와 비교될 수 있다. 이 결정에 기초하여, 자동화된 어시스턴트는 사용자가 차량의 동작 특징에 관한 자동화된 어시스턴트와의 대화 세션에 이전에 참여했을 때를 결정할 수 있다.
예를 들어, 사용자는 차량에 적절한 타이어 공기압이 얼마인지 알아보기 위해 자동화된 어시스턴트에게 문의했을 수 있다. 따라서, 자동화된 어시스턴트는 OEM 차량 애플리케이션으로부터 데이터를 수신하는 것에 대한 응답으로 "어시스턴트, 내 차량의 타이어 공기압은 얼마야?"와 같은 발화된 발언을 특징화하는 제안을 생성할 수 있다. 이 제안에 대응하는 제안 데이터는 자동화된 어시스턴트에서 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션으로 전송될 수 있으며, 그러면 서드파티 애플리케이션은 차량의 연료 상태를 특징짓는 콘텐츠와 함께 그래픽 사용자 인터페이스에 제안을 제시할 수 있다. 이러한 방식으로 사용자는 차량 주유에 대해 알림을 받는 동안 유사한 대화 세션을 수행하여 차량과 관련된 다른 문제를 확인하는 방법을 학습할 수 있으므로, 이러한 문제가 더 빨리 해결될 수 있으므로 차량 정비의 건강한 일상을 촉진할 수 있다.
다른 구현예들은 하나 이상의 프로세서(예를 들어, 중앙 프로세싱 유닛(CPU), 그래픽 프로세싱 유닛(GPU) 및/또는 텐서 프로세싱 유닛(TPU))에 의해 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체 또는 컴퓨터 프로그램을 포함할 수 있으며, 상기 명령어들은 본 명세서에 기술된 하나 이상의 방법들과 같은 방법을 수행한다. 또 다른 구현예는 하나 이상의 컴퓨터들 및/또는 본 명세서에 기술된 방법들 중 하나 이상과 같은 방법을 수행하기 위해 저장된 명령어들을 실행하도록 동작가능한 하나 이상의 프로세서들을 포함하는 하나 이상의 로봇들의 시스템을 포함할 수 있다.
본 명세서에서 매우 상세히 기술된 상기 개념들 및 추가적 개념들의 모든 조합들은 본 명세서에 개시된 본 발명의 일부인 것으로 고려되어야 한다. 예를 들면, 본 명세서의 끝부분에 나타나는 청구된 발명의 모든 조합들은 본 명세서에 개시된 본 발명의 일부인 것으로 고려된다.
도 1a, 도 1b 및 도 1c는 자동화된 어시스턴트에 대한 액세스를 제공하는 OEM 차량 컴퓨팅 디바이스를 포함하는 차량의 도면을 도시한다.
도 2a, 도 2b 및 도 2c는 로컬 애플리케이션 간의 통신에 대한 제한을 사용하는 OEM 차량 컴퓨팅 디바이스를 통해 액세스 가능한 OEM 애플리케이션 및/또는 서드파티 애플리케이션에서 제안 요소들을 제공하는 자동화된 어시스턴트의 하나 이상의 구현예를 도시한다.
도 3은 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션을 통해 제안을 렌더링하고 OEM 차량 애플리케이션 및/또는 서드파티 애플리케이션을 통해 액션을 초기화할 수 있는 차량 자동화된 어시스턴트를 포함하는 OEM 차량 컴퓨팅 디바이스를 제공하는 시스템을 도시한다.
도 4는 서드파티 차량 컴퓨팅 디바이스 및/또는 서드파티 차량 컴퓨팅 디바이스에서 동작하는 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 하나 이상의 제안 요소를 제공하기 위한 방법을 도시한다.
도 5는 예시적 컴퓨터 시스템의 블록도이다.
도 1a, 도 1b 및 도 1c는 OEM 차량 애플리케이션(124) 및/또는 서드파티 애플리케이션(126)의 그래픽 사용자 인터페이스(106)에서 제안이 렌더링되게 할 수 있는 자동화된 어시스턴트(128)에 대한 액세스를 제공하는 OEM 차량 컴퓨팅 디바이스(104)를 포함하는 차량(108)의 뷰(100), 뷰(130) 및 뷰(140)를 도시한다. 구체적으로 도 1a는 그래픽 사용자 인터페이스(106)에서 제시될 수 있는 상이한 애플리케이션 및/또는 콘텐츠에 대응하는 하나 이상의 상이한 영역에서 그래픽 사용자 인터페이스(106)를 제공하는 OEM 차량 컴퓨팅 디바이스(104)의 뷰(100)를 도시한다. OEM 차량 컴퓨팅 디바이스(104)는 하나 이상의 OEM 차량 애플리케이션(124), 하나 이상의 서드파티 애플리케이션(126) 및/또는 자동화된 어시스턴트(128)를 포함할 수 있다. 사용자(102)가 차량(108)에 타고 있는 동안, OEM 차량 컴퓨팅 디바이스(104)를 통해 액세스 가능한 하나 이상의 애플리케이션은 특정 콘텐츠가 그래픽 사용자 인터페이스(106)에서 렌더링되게 하기 위해 특정한 OEM 차량 애플리케이션(124)과 통신할 수 있다.
예를 들어, OEM 차량 컴퓨팅 디바이스(104)는 그래픽 사용자 인터페이스(106)의 제1 영역(110)에서 콘텐츠가 렌더링되게 할 수 있는 내비게이션 애플리케이션과 같은 OEM 차량 애플리케이션(124)을 포함할 수 있다. 대안적으로 또는 추가적으로, OEM 차량 컴퓨팅 디바이스(104)는 메시징 애플리케이션과 같은 서드파티 애플리케이션(126)을 포함할 수 있으며, 이는 그래픽 사용자 인터페이스(106)의 제2 영역(114)에서 다른 콘텐츠가 렌더링되게 할 수 있다. 그래픽 사용자 인터페이스(106)에서 콘텐츠를 렌더링하기 위한 데이터를 제공하는 각각의 애플리케이션은 특정한 OEM 차량 애플리케이션(124)과 통신할 수 있다. 이 특정한 OEM 차량 애플리케이션은 다른 OEM 차량 애플리케이션(124), 서드파티 애플리케이션(126) 및 자동화된 어시스턴트(128)와 통신할 수 있다. 예를 들어, 내비게이션 애플리케이션은 그래픽 사용자 인터페이스(106)의 제1 영역(110)에서 제1 그래픽 요소(112)로서 렌더링될 수 있는 다가오는 내비게이션 지시를 특징짓는 데이터를 제공할 수 있다. 더욱이, 메시징 애플리케이션은 수신 메시지를 특징짓는(또는 그 내용을 나타내는) 다른 데이터를 제공할 수 있고, 다른 날은 그래픽 사용자 인터페이스(106)에서 특정한 OEM 차량 애플리케이션(124)에 의해 제2 그래픽 요소(116)로서 렌더링될 수 있다.
일부 구현예에서, 특정한 OEM 차량 애플리케이션(124)은 OEM 차량 컴퓨팅 디바이스(104)의 하나 이상의 애플리케이션에 의해 제공되는 콘텐츠를 특징화하는 데이터를 생성하고, 생성된 데이터를 자동화된 어시스턴트(128)에 제공함으로써 애플리케이션 간의 통신을 중재할 수 있다. 예를 들어, 생성된 데이터는 제1 그래픽 요소(112)에 제공된 자연어 콘텐츠 및 제2 그래픽 요소(116)에 제공된 다른 자연어 콘텐츠를 특징화할 수 있다. 특정한 OEM 차량 애플리케이션(124)은 이 생성된 데이터를 자동화된 어시스턴트(128)에 제공할 수 있고, 자동화된 어시스턴트(128)는 생성된 데이터를 사용하여 그래픽 사용자 인터페이스(106)의 각각의 개별 영역에 대한 추가 제안을 제공할 수 있다.
도 1b는 자동화된 어시스턴트(128)에 의해 제공되는 데이터에 기초하여 그래픽 사용자 인터페이스(106)의 각 영역에 대한 제안 요소를 위한 공간을 제공하는 그래픽 사용자 인터페이스(106)의 뷰(130)를 도시하고, 어떤 제안 요소가 특정한 OEM 차량 애플리케이션(124)으로부터의 데이터에 기초하고 그리고 어시스턴트 데이터와 연관되는 OEM 차량 애플리케이션(124)으로부터의 데이터에 기초하여 생성되었는지를 도시한다. 차량 애플리케이션 데이터와 어시스턴트 데이터는 차량 애플리케이션 데이터가 사용자와 자동화된 어시스턴트 간의 인터렉션과 연관된 데이터에 적어도 부분적으로 대응하는 경우 연관되거나 상관될 수 있다. 예를 들어, 차량 애플리케이션 데이터는 사용자와 자동화된 어시스턴트 사이의 이전 인터렉션 또는 대화 세션의 콘텐츠에 대응할 수 있고, 자동화된 어시스턴트에 의해 수행된 이전 액션과 관련되며, 사용자와 링크된 위치 또는 연락처와 연관된 액션을 나타낼 수 있거나 또는 어시스턴트 데이터에 대응할 수 있다. 구체적으로, 특정한 OEM 차량 애플리케이션(124)은 제1 그래픽 요소(112)의 콘텐츠를 특징짓는 데이터를 자동화된 어시스턴트(128)에 제공할 수 있다. 자동화된 어시스턴트(128)는 OEM 차량 애플리케이션(124)으로부터 데이터를 수신하고 수신된 데이터에 기초하여 제안 데이터를 생성할 수 있다. 일부 구현예에서, 수신된 데이터는 자동화된 어시스턴트(128)에 의해 수행될 수 있는 하나 이상의 액션들과 비교될 수 있고, 비교에 기초하여 제안 데이터가 생성될 수 있다. 추가적으로 또는 대안적으로, OEM 차량 애플리케이션(124)은 제2 그래픽 요소(116)의 콘텐츠를 특징짓는 다른 데이터를 자동화된 어시스턴트(128)에 제공할 수 있다. 자동화된 어시스턴트(128)는 다른 수신된 데이터와 자동화된 어시스턴트(128)에 의해 수행될 수 있는 하나 이상의 액션들 간의 상관관계를 결정하기 위해 프로세싱될 데이터를 수신할 수 있다. 비교에 기초하여, 다른 제안 데이터가 생성되어 OEM 차량 애플리케이션(124)에 제공될 수 있다.
자동화된 어시스턴트(128)로부터 제안 데이터를 수신하는 OEM 차량 애플리케이션(124)에 응답하여, OEM 차량 애플리케이션(124)은 제안 요소가 그래픽 사용자 인터페이스(106)에서 렌더링되게 할 수 있다. 예를 들어, OEM 차량 애플리케이션(124)은 하나 이상의 애플리케이션의 동작 상태를 특징화하는 콘택트를 렌더링하고 또한 자동화된 어시스턴트(128)로부터 수신된 데이터에 따라 하나 이상의 애플리케이션의 하나 이상의 액션들을 초기화하는 런처 애플리케이션을 포함할 수 있다. 예를 들어, 자동화된 어시스턴트(128)는 제1 제안 요소(132)를 특징짓는 제안 데이터를 제공할 수 있으며, 이는 사용자 및/또는 다른 사용자가 말할 때 자동화된 어시스턴트로 하여금 특정한 액션을 초기화하거나 수행하게 하는 음성 발화를 특징화할 수 있다. 예를 들어, 차량 애플리케이션은 자동화된 어시스턴트에게 선택의 표시를 제공할 수 있고, 자동화된 어시스턴트는 차량 컴퓨팅 디바이스의 다른 애플리케이션이 액션을 수행하게 할 수 있다. 다른 애플리케이션은 서드파티 애플리케이션(즉, 자동화된 어시스턴트 및 차량 OEM 애플리케이션과 상이한 소스) 또는 OEM 차량 애플리케이션 중 하나일 수 있다. 또한, 자동화된 어시스턴트(128)는 제2 제안 요소(134)를 특징짓는 다른 제안 데이터를 제공할 수 있으며, 이는 사용자 및/또는 다른 사용자가 말할 때 자동화된 어시스턴트(128)로 하여금 다른 특정한 액션을 초기화하거나 수행하게 하는 다른 음성 발화를 특징화할 수 있다. 예를 들어, 제1 제안 요소(132)는 "어시스턴트, 나의 ETA는 무엇인가?"와 같은 음성 발화를 특징화할 수 있다.
사용자가 디스플레이 패널(120)에서 제안 요소를 탭핑하거나 제안 요소(132)의 콘텐츠의 적어도 일부 양을 포함하는 음성 입력을 제공하는 것에 응답하여, 자동화된 어시스턴트는 목적지에 도착하는 예상 시간을 사용자와 통신할 수 있다. 또한, 제2 제안 요소(134)는 "어시스턴트, 제인에게 답장해"와 같은 음성 발화를 특징화할 수 있다. 사용자가 디스플레이 패널(120)에서 제2 제안 요소(134)를 탭핑하고 및/또는 제2 제안 요소(134)의 콘텐츠 중 적어도 일부를 포함하는 음성 입력을 제공하는 것에 응답하여, 자동화된 어시스턴트(128)는 제인이라는 연락처에 메시지가 전송되게 하는 추가 콘텐츠를 제공하기 위해 프롬프트할 수 있다. 이러한 방식으로, 사용자는 자동화된 어시스턴트를 사용하여 OEM 차량 애플리케이션(124) 및/또는 서드파티 애플리케이션(126)의 액션을 초기화하고 및/또는 차량 애플리케이션(124) 및/또는 서드파티 애플리케이션(126)에 의해 제공되는 정보에 기초하여 액션을 수행할 수 있다는 통지를 받을 수 있다.
도 1c는 런처 OEM 차량 애플리케이션(124)이 다수의 상이한 애플리케이션에 대한 그래픽 사용자 인터페이스(106)에 제시된 콘텐츠에 기초한 제안 요소를 제공하게 하는 자동화된 어시스턴트(128)의 뷰(140)를 도시한다. 구체적으로, 제3 제안 요소(142)는 런처 OEM 차량 애플리케이션(124)에 의해 제공되는 차량 애플리케이션 데이터를 사용하여 자동화된 어시스턴트(128)에 의해 생성될 수 있다. 런처 OEM 차량 애플리케이션(124)은 그래픽 사용자 인터페이스(106)에서 렌더링하기 위해 다수의 상이한 서드파티 애플리케이션 및/또는 다른 OEM 차량 애플리케이션(124)으로부터 데이터를 수신할 수 있다. 런처 OEM 차량 애플리케이션(124)은 그래픽 사용자 인터페이스(106)에서 제시되는 콘텐츠를 특징짓는 데이터를 생성하고, 생성된 데이터를 자동화된 어시스턴트(128)에 제공할 수 있다. 자동화된 어시스턴트(128)는 그래픽 사용자 인터페이스(106)의 제3 영역(118)에서 렌더링될 수 있는 제안 데이터를 생성하기 위해 런처 OEM 차량 애플리케이션(124)으로부터 수신된 데이터를 사용할 수 있다.
제안 데이터는 그래픽 사용자 인터페이스(106)에서 제시되는 콘텐츠의 다수의 상이한 소스와 관련된 제안을 사용자에게 제공하기 위해 자동화된 어시스턴트(128)를 통해 생성될 수 있다. 일부 구현예에서, 런처 OEM 차량 애플리케이션(124)으로부터 생성된 데이터는 별개의 OEM 차량 애플리케이션에 의해 수행되고 있는 진행중인 액션 뿐만 아니라 최근에 수행된 액션 또는 별개의 서드파티 애플리케이션(126)에 의해 제공되는 최근에 제시된 알림을 특징화할 수 있다. 사용자(102)에 대한 적절한 제안을 생성하기 위해, 자동화된 어시스턴트(128)는 생성된 데이터(그래픽 사용자 인터페이스(106)에서 제시되는 콘텐츠를 특징화하거나 나타내는) 중 임의의 것이 자동화된 어시스턴트(128)에서 액세스할 수 있는 어시스턴트 데이터에 대한 임의의 관계를 전달하는지 여부를 결정할 수 있다. 예를 들어, 자동화된 어시스턴트(128)가 사용자(102)의 계정에 링크될 수 있기 때문에, 자동화된 어시스턴트(128)는 "제인"이라는 사용자의 연락처로부터 서드파티 애플리케이션으로 들어오는 메시지를 통지받을 수 있다. 제2 그래픽 요소(116)의 콘텐츠와 수신 메시지를 또한 나타내는 어시스턴트 데이터 사이의 이러한 연관 또는 관계에 기초하여, 자동화된 어시스턴트(128)는 제인에게 응답하기 위한 공백 메시지를 생성할 수 있다. 게다가, 자동화된 어시스턴트(128)는 또한 제1 그래픽 요소(112)의 콘텐츠와 어시스턴트 데이터 사이의 관계를 결정할 수 있다. 예를 들어, 어시스턴트 데이터는 자동화된 어시스턴트(128)에 의해 수행되거나 초기화될 수 있는 하나 이상의 액션들을 특징화할 수 있다.
제안 데이터는 그래픽 사용자 인터페이스(106)에서 제시되는 콘텐츠의 다수의 상이한 소스와 관련된 제안을 사용자에게 제공하기 위해 자동화된 어시스턴트(128)를 통해 생성될 수 있다. 일부 구현예에서, 런처 OEM 차량 애플리케이션(124)으로부터 생성된 데이터는 별개의 OEM 차량 애플리케이션에 의해 수행되고 있는 진행중인 액션 뿐만 아니라 최근에 수행된 액션 또는 별개의 서드파티 애플리케이션(126)에 의해 제공되는 최근에 제시된 알림을 특징화할 수 있다. 사용자(102)에 대한 적절한 제안을 생성하기 위해, 자동화된 어시스턴트(128)는 생성된 데이터 중 임의의 것이 자동화된 어시스턴트(128)에서 액세스할 수 있는 어시스턴트 데이터에 대한 임의의 관계를 전달하는지 여부를 결정할 수 있다. 예를 들어, 자동화된 어시스턴트(128)가 사용자(102)의 계정에 링크될 수 있기 때문에, 자동화된 어시스턴트(128)는 "제인"이라는 사용자의 알려진 연락처로부터 서드파티 애플리케이션으로 들어오는 메시지를 통지받을 수 있다. 제2 그래픽 요소(116)의 콘텐츠와 수신 메시지를 또한 나타내는 어시스턴트 데이터 사이의 이러한 관계에 기초하여, 자동화된 어시스턴트(128)는 제인에게 응답하기 위한 공백 메시지를 생성할 수 있다. 게다가, 자동화된 어시스턴트(128)는 또한 제1 그래픽 요소(112)의 콘텐츠와 어시스턴트 데이터 사이의 관계를 결정할 수 있다. 예를 들어, 어시스턴트 데이터는 자동화된 어시스턴트(128)에 의해 수행되거나 초기화될 수 있는 하나 이상의 액션들을 특징화할 수 있다.
도 2a, 도 2b 및 도 2c는 로컬 애플리케이션 간의 통신에 대한 제한을 사용하는 OEM 차량 컴퓨팅 디바이스(204)를 통해 액세스 가능한 OEM 애플리케이션 및/또는 서드파티 애플리케이션에서 제안 요소들을 제공하는 자동화된 어시스턴트(228)의 하나 이상의 구현예를 도시한다. 예를 들어, 도 2a의 뷰(200)에 제공된 바와 같이, OEM 차량 컴퓨팅 디바이스(204)는 OEM 차량 애플리케이션(224), 서드파티 애플리케이션(226), 및/또는 자동화된 어시스턴트(228)를 포함할 수 있다. OEM 차량 컴퓨팅 디바이스(204)는 자동화된 어시스턴트(228)에 대한 액세스 제한을 시행할 수 있으며, 이에 의해 OEM 차량 애플리케이션(224)의 로컬에 저장된 데이터 및 서드파티 애플리케이션(226)의 로컬 저장된 데이터에 대한 액세스를 자동화된 어시스턴트(228)로 제한할 수 있다. 그러나, OEM 차량 애플리케이션(224) 중 하나 이상은 차량(208), OEM 차량 컴퓨팅 디바이스(204), OEM 차량 애플리케이션(224), 서드파티 애플리케이션(226)의 동작에 관한 데이터의 일부 및/또는 차량(208)과 연관될 수 있는 임의의 다른 정보를 자동화된 어시스턴트(228)에 제공할 수 있다.
예를 들어, 런처 OEM 차량 애플리케이션은 OEM 차량 컴퓨팅 디바이스(204)의 디스플레이 패널(220)에서 렌더링되는 그래픽 사용자 인터페이스(206)의 콘텐츠를 특징짓는 콘텐츠 데이터를 생성할 수 있다. 콘텐츠 데이터는 그래픽 사용자 인터페이스(206)의 제1 영역(210)에 제시된 자연어 콘텐츠를 특징화할 수 있다. 제1 영역(210)은 내비게이션 애플리케이션과 같은 서드파티 애플리케이션과 연관된 제1 그래픽 요소(212)를 포함할 수 있다. 콘텐츠 데이터는 또한 그래픽 사용자 인터페이스(206)의 제2 영역(214)에 제시된 자연어 콘텐츠를 특징화할 수 있다. 제2 영역(214)은 메시징 애플리케이션과 같은 서드파티 애플리케이션과 연관된 제2 그래픽 요소(216)를 포함할 수 있다.
228에서 자동화된 어시스턴트가 OEM 차량 애플리케이션(224) 및/또는 서드파티 애플리케이션(226)을 초기화할 수 있게 하는 기능을 사용자(202)에게 익숙하게 하기 위해, 자동화된 어시스턴트(228)는 이러한 기능과 관련된 제안 요소를 제공할 수 있다. 다시 말해, 자동화된 어시스턴트(228)는 OEM 차량 애플리케이션(224)으로부터의 콘텐츠 데이터를 사용하여 다른 OEM 차량 애플리케이션(224) 및/또는 서드파티 애플리케이션(226)에 의한 액션의 수행을 초기화하기 위해 자동화된 어시스턴트(228)를 호출하기 위해 사용자(202)에 의해 제공될 수 있는 음성 발화에 대한 제안을 생성할 수 있다.
예를 들어, 자동화된 어시스턴트(228)는 사용자가 제1 그래픽 요소(212)의 콘텐츠 및 제2 그래픽 요소(216)의 콘텐츠 모두에 관련된 명령을 제공하게 하기 위한 제안에 대응하는 제안 데이터를 생성하기 위해 콘텐츠 데이터를 사용할 수 있다. 이러한 방식으로, 자동화된 어시스턴트(228)는 OEM 차량 컴퓨팅 디바이스(204)의 모든 기능의 사용을 촉진하기 위한 유용한 제안을 여전히 제공하면서 OEM 차량 컴퓨팅 디바이스(204)에 의해 시행되는 제한의 범위 내에서 작동한다. 예를 들어, 제안 데이터는 "어시스턴트, 가장 가까운 식료품점이 어디야?"와 같은 음성 발화를 특징화할 수 있다. 이 음성 발화는 사용자를 특정한 목적지로 안내하는 진행중인 액션을 수행하는 내비게이션 애플리케이션 및 차량(208)에서 운전하는 동안 커피를 픽업하는 것에 관한 메시지를 수신하는 사용자(202)에 기초하여 제안될 수 있다. 제안 데이터는 제안 데이터를 프로세싱하고 제3 그래픽 요소(214)가 그래픽 사용자 인터페이스(206)의 제3 영역(222) 내에 제시되게 할 수 있는 런처 OEM 차량 애플리케이션에 제공될 수 있다. 그 결과, 자동화된 어시스턴트(228)가 OEM 차량 컴퓨팅 디바이스(204)에 의해 설정된 임의의 액세스 제한을 위반하지 않고 제안이 사용자(202)에게 제시되어, 자동화된 어시스턴트의 다른 인스턴스가 유사한 제한을 갖는 다른 차량에서 동작하게 한다. 추가적으로 또는 대안적으로, 자동화된 어시스턴트(228)는 사용자가 제1 그래픽 요소(212)의 콘텐츠 또는 제2 그래픽 요소(216)의 콘텐츠 중 단 하나에 관련된 명령을 제공하게 하기 위한 제안에 대응하는 제안 데이터를 생성하기 위해 콘텐츠 데이터를 사용할 수 있다.
일부 구현예에서, 사용자가 제3 그래픽 요소(216)를 탭핑하고 및/또는 식별된 음성 발화를 OEM 차량 컴퓨팅 디바이스(204)에 제공하는 것에 응답하여, 자동화된 어시스턴트(228)가 호출될 수 있다. 더욱이, 음성 발화에 응답하여, 228에서 자동화된 어시스턴트는 내비게이션 애플리케이션에 의한 하나 이상의 대응하는 액션의 수행을 초기화할 수 있다. 예를 들어, 자동화된 어시스턴트(228)가 음성 발화 "어시스턴트가 가장 가까운 식료품점이 어디야?"를 수신하는 것에 응답하여. 자동화된 어시스턴트(228)는 런처 OEM 차량 애플리케이션 및/또는 내비게이션 애플리케이션과 연관된 서버 디바이스에 제공될 명령 데이터를 생성할 수 있다. 명령 데이터는 내비게이션 애플리케이션에 대응하는 API에 따라 생성된 하나 이상의 명령을 특징화할 수 있다. 런처 OEM 애플리케이션 및/또는 서버 디바이스가 명령 데이터를 수신할 때, 런처 OEM 애플리케이션 및/또는 서버 디바이스는 내비게이션 애플리케이션 및/또는 임의의 다른 서드파티 애플리케이션(226)을 통해 하나 이상의 명령의 실행을 초기화할 수 있다.
하나 이상의 명령의 실행이 초기화되는 것에 응답하여, 도 2b의 뷰(240)에 도시된 바와 같이, 내비게이션 애플리케이션은 서드파티 애플리케이션 인터페이스(242)가 그래픽 사용자 인터페이스(206)에서 제공되게 할 수 있다. 따라서, 런처 OEM 차량 애플리케이션에 의해 설정된 제한에도 불구하고, 사용자는 OEM 차량 컴퓨팅 디바이스(204)에서 하나 이상의 액션들을 수행하기 위해 서드파티 애플리케이션을 호출하기 위해 자동화된 어시스턴트(228)에 음성 발화를 제공할 수 있다. 전술한 예에 더하여, 서드파티 애플리케이션(226)은 서드파티 애플리케이션 인터페이스(242)를 제공하기 위해 런처 OEM 차량 애플리케이션에 콘텐츠를 제공할 수 있다. 더욱이, 콘텐츠는 근처 식료품점의 위치, 사용자가 현재 이용하고 있는 경로에 관한 세부사항 및 사용자(202)가 목적지에 언제 도착할지에 대한 세부사항을 특징화할 수 있다.
일부 구현예에서, 런처 OEM 차량 애플리케이션은 그래픽 사용자 인터페이스(206)에서 제공되는 콘텐츠를 특징화하는 데이터를 생성할 수 있다. 이 생성된 데이터는 그래픽 사용자 인터페이스(206)에 대한 최근 변경에 기초하여 추가 제안을 생성할 수 있는 자동화된 어시스턴트(228)에 제공될 수 있다. 구체적으로, 생성된 데이터는 서드파티 애플리케이션 인터페이스(242)에서 제공되는 콘텐츠를 특징화할 수 있고, 자동화된 어시스턴트(228)는 생성된 데이터를 사용하여 자동화된 어시스턴트(228)가 OEM 차량 애플리케이션(224) 및/또는 서드파티 애플리케이션(226)에 의한 하나 이상의 액션들의 수행을 초기화하게 하는 다른 제안 데이터를 생성한다. 더욱이, 제안 데이터는 하나 이상의 액션들이 내비게이션 애플리케이션 및/또는 그래픽 사용자 인터페이스(206)에서 제시되는 콘텐츠를 제공한 다른 애플리케이션과 다른 애플리케이션에 의해 수행됨에도 불구하고, 그래픽 사용자 인터페이스(206)에서 제공된 콘텐츠와 관련된 하나 이상의 액션들을 특징화할 수 있다.
도 2c의 뷰(260)에 제공된 바와 같이, 자동화된 어시스턴트는 런처 OEM 차량 애플리케이션이 다른 애플리케이션을 사용하여 하나 이상의 액션들을 수행하기 위해 별개의 애플리케이션을 호출하기 위한 하나 이상의 제안(262)을 제공하게 할 수 있다. 자동화된 어시스턴트(228)는 사용자(202)에 대한 적절한 제안을 생성하기 위해 그래픽 사용자 인터페이스(206)에서 이전에 렌더링된 콘텐츠 및 현재 그래픽 사용자 인터페이스(206)에서 렌더링되고 있는 콘텐츠를 특징화하는 데이터를 사용할 수 있다. 예를 들어, 메시징 애플리케이션이 도 2a에서 제인으로부터의 새로운 메시지를 갖는 것으로 표시되고, 내비게이션 애플리케이션으로부터의 ETA는 도 2c에서 제공되었기 때문에, 자동화된 어시스턴트는 사용자가 이 새로운 ETA를 제인에게 보내기 위해 자동화된 어시스턴트를 호출하도록 제안할 수 있다. 구체적으로, 자동화된 어시스턴트(228)에 의해 생성된 제안 데이터는 "어시스턴트, 내 새로운 ETA를 제인에게 보내줘"와 같은 음성 발화를 특징화할 수 있다. 제안 데이터는 하나 이상의 제안(262)이 제안 데이터에 따라 그래픽 사용자 인터페이스(206)에 제시되게 하기 위해 자동화된 어시스턴트(228)로부터 런처 OEM 차량 애플리케이션 및/또는 내비게이션 애플리케이션과 연관된 서버 디바이스에 제안 데이터가 제공될 수 있다.
도 3은 OEM 차량 애플리케이션(320) 및/또는 서드파티 애플리케이션(332)을 통해 제안을 렌더링하고 OEM 차량 애플리케이션(320) 및/또는 서드파티 애플리케이션(332)을 통해 액션을 초기화할 수 있는 차량 자동화된 어시스턴트(322)를 포함하는 OEM 차량 컴퓨팅 디바이스(318)를 제공하는 시스템(300)을 도시한다. 시스템(300)은 OEM 차량 컴퓨팅 디바이스(318) 및/또는 서버 디바이스(302)와 같은 하나 이상의 컴퓨터 디바이스에 제공되는 자동화된 어시스턴트 애플리케이션의 일부로서 동작할 수 있는 자동화된 어시스턴트(304)를 포함할 수 있다. 사용자는 어시스턴트 인터페이스를 통해 자동화된 어시스턴트(304)와 인터렉션할 수 있으며, 어시스턴트 인터페이스(110)는 마이크로폰, 카메라, 터치스크린 디스플레이, 사용자 인터페이스 및/또는 사용자와 애플리케이션 사이의 인터페이스를 제공할 수 있는 임의의 다른 디바이스일 수 있다.
예를 들어, 사용자는 어시스턴트 인터페이스(예를 들어, OEM 차량 컴퓨팅 디바이스(318)의 어시스턴트 인터페이스 및/또는 임의의 다른 클라이언트 디바이스의 어시스턴트 인터페이스)에 언어적, 텍스트, 및/또는 그래픽 입력을 제공함으로써 자동화된 어시스턴트(304)를 초기화하여, 자동화된 어시스턴트(304)가 기능(예를 들어, 데이터 제공, 주변 디바이스 제어, 에이전트 액세스, 입력 및/또는 출력 생성 등)을 수행하게 한다. OEM 차량 컴퓨팅 디바이스(318)는 디스플레이 디바이스를 포함하며, 이는 사용자가 터치 인터페이스를 통해 OEM 차량 컴퓨팅 디바이스(318)의 애플리케이션을 제어할 수 있게 하는 터치 입력 및/또는 제스처를 수신하기 위한 터치 인터페이스를 포함하는 디스플레이 패널일 수 있다. 일부 구현예에서, OEM 차량 컴퓨팅 디바이스(318)는 디스플레이 디바이스가 부족할 수 있고, 이에 의해 그래픽 사용자 인터페이스 출력을 제공하지 않고 가청 사용자 인터페이스 출력을 제공할 수 있고; 이러한 구성에서, 차량 컴퓨팅 디바이스(318)는 본 명세서에 설명된 그래픽 사용자 인터페이스를 렌더링하기 위해 외부 디스플레이 디바이스에 연결되거나 연결될 수 있다. 또한, OEM 차량 컴퓨팅 디바이스(318)는 사용자로부터 발화된 자연어 입력을 수신하기 위해 마이크로폰(들)과 같은 사용자 인터페이스를 제공할 수 있다. 일부 구현예에서, OEM 차량 컴퓨팅 디바이스(318)는 터치 인터페이스를 포함할 수 있고, 카메라가 없거나 카메라를 포함할 수 있지만, 선택적으로 하나 이상의 다른 센서를 포함할 수 있다.
OEM 차량 컴퓨팅 디바이스(350) 및/또는 다른 서드파티 서버 디바이스(들)(350)는 인터넷과 같은 네트워크(340)를 통해 서버 디바이스(302)와 통신할 수 있다. 추가적으로, OEM 차량 컴퓨팅 디바이스(318) 및 다른 클라이언트 디바이스는 Wi-Fi 네트워크와 같은 근거리 통신망(LAN)을 통해 서로 통신할 수 있다. 자동화된 어시스턴트(322)는 OEM 차량 컴퓨팅 디바이스(318)에서 계산 리소스를 보존하기 위해 계산 작업을 서버 디바이스(302)로 오프로딩할 수 있다. 예를 들어, 서버 디바이스(302)는 어시스턴트 애플리케이션(304)을 호스팅할 수 있고, OEM 차량 컴퓨팅 디바이스(318)는 하나 이상의 어시스턴트 인터페이스(110)에서 수신된 입력을 서버 디바이스(302)에 전송할 수 있다. 그러나, 일부 구현예에서, 자동화된 어시스턴트(304)는 OEM 차량 컴퓨팅 디바이스(318)에서 클라이언트 자동화된 어시스턴트(322)로서 호스팅될 수 있다.
다양한 구현예에서, 자동화된 어시스턴트(304)의 모든 또는 일부 양태는 OEM 차량 컴퓨팅 디바이스(318)에서 구현될 수 있다. 이러한 구현들 중 일부에서, 자동화된 어시스턴트(304)의 양태들은 OEM 차량 컴퓨팅 디바이스(318)의 클라이언트 자동화된 어시스턴트(322)를 통해 구현되고, 자동화된 어시스턴트(304)의 다른 양태들을 구현할 수 있는 서버 디바이스(302)와 인터페이싱한다. 서버 디바이스(302)는 복수의 스레드를 통해 복수의 사용자 및 연관된 어시스턴트 애플리케이션을 선택적으로 제공할 수 있다. 어시스턴트 애플리케이션(304)의 양태들의 전부 또는 일부가 OEM 차량 컴퓨팅 디바이스(318)에서 클라이언트 자동화된 어시스턴트(322)를 통해 구현되는 구현예에서, 클라이언트 자동화된 어시스턴트(322)는 OEM 차량 컴퓨팅 디바이스(318)의 운영 체제와 별개인 애플리케이션(예를 들어, 운영 체제 "위에"에 설치된)일 수 있고, 또는 대안적으로 OEM 차량 컴퓨팅 디바이스(318)의 운영 체제에 의해 직접 구현될 수 있다(예를 들어, 운영 체제의 애플리케이션이지만 운영 체제와 통합될 수 있다).
일부 구현예에서, 자동화된 어시스턴트(304) 및/또는 클라이언트 자동화된 어시스턴트(322)는 OEM 차량 컴퓨팅 디바이스(318) 및/또는 서버 디바이스(302)에 대한 입력 및/또는 출력을 프로세싱하기 위해 다수의 상이한 모듈을 사용할 수 있는 입력 프로세싱 엔진(306)을 포함할 수 있다. 일부 구현예에서, 입력 프로세싱 엔진(306)은 오디오 데이터에 수록된 요청을 식별하기 위해 어시스턴트 인터페이스에서 수신된 오디오 데이터를 프로세싱할 수 있는 음성 프로세싱 엔진(308)을 포함할 수 있다. 오디오 데이터는 OEM 차량 컴퓨팅 디바이스(318)에서 계산 리소스를 보존하기 위해 예를 들어 OEM 차량 컴퓨팅 디바이스(318)로부터 서버 디바이스(302)로 전송될 수 있다.
오디오 데이터를 텍스트로 변환하는 프로세스는 음성 인식 알고리즘을 포함할 수 있으며, 이는 단어 또는 문구에 대응하는 오디오 데이터의 그룹을 식별하기 위해 신경 네트워크 및/또는 통계 모델을 이용할 수 있다. 오디오 데이터로부터 변환된 텍스트는 데이터 파싱 엔진(310)에 의해 파싱될 수 있으며, 사용자에 의해 특정된 명령 문구(들), 의도(들), 액션(들), 슬롯 값(들) 및/또는 임의의 다른 콘텐츠를 생성 및/또는 식별하는데 사용될 수 있는 텍스트 데이터로서 자동화된 어시스턴트에 제공될 수 있다. 일부 구현예에서, 데이터 파싱 엔진(310)에 의해 제공된 출력 데이터는 사용자가 자동화된 어시스턴트(304) 및/또는 자동화된 어시스턴트(304)에 의해 액세스될 수 있는 애플리케이션 또는 에이전트에 의해 수행될 수 있는 특정한 의도, 액션 및/또는 루틴에 대응하는 입력을 제공했는지 여부를 결정하기 위해 파라미터 모듈(312)에 제공될 수 있다. 예를 들어, 어시스턴트 데이터(316)는 차량 데이터(324)로서 서버 디바이스(302) 및/또는 OEM 차량 컴퓨팅 디바이스(318)에 저장될 수 있고, 자동화된 어시스턴트(304) 및/또는 클라이언트 자동화된 어시스턴트(322)에 의해 수행될 수 있는 하나 이상의 액션들 및 상기 액션들을 수행하는데 필요한 파라미터들을 정의하는 데이터를 포함할 수 있다.
일부 구현예에서, 자동화된 어시스턴트(304)는 OEM 차량 컴퓨팅 디바이스(318)에서 액세스 가능한 애플리케이션 간의 로컬 통신을 제한할 수 있는 OEM 차량 컴퓨팅 디바이스(318)를 통해 액세스할 수 있다. 자동화된 어시스턴트(304)는 OEM 차량 애플리케이션(320), 서드파티 애플리케이션(332) 및/또는 클라이언트 디바이스를 초기화하여 하나 이상의 액션을 수행하도록 자동화된 어시스턴트(304)를 호출하기 위한 제안을 제공하도록 동작할 수 있다. 자동화된 어시스턴트(304)는 서버 디바이스(302)와 통신하는 자동화된 어시스턴트(322)의 인스턴스에 대한 액세스를 제공할 수 있는 OEM 차량 컴퓨팅 디바이스(318)를 통해 액세스될 수 있다. 추가적으로 또는 대안적으로, 자동화된 어시스턴트(304)는 OEM 차량 컴퓨팅 디바이스(318)에 제공될 수 있다.
차량 컴퓨팅 디바이스(318)는 자동화된 어시스턴트(322)와 서드파티 애플리케이션(332) 사이 및/또는 자동화된 어시스턴트(322)와 OEM 차량 애플리케이션(320) 사이의 데이터 전송을 제한하기 위해 애플리케이션 인터렉션 엔진(334)을 동작할 수 있다. 애플리케이션 인터렉션 엔진(334)은 OEM 차량 컴퓨팅 디바이스(318)에서 다양한 애플리케이션으로부터 데이터를 전송 및/또는 수신할 수 있고, OEM 차량 컴퓨팅 디바이스(318)에서 다른 애플리케이션과 공유할 시기 및/또는 얼마나 많은 데이터 공유할지 결정할 수 있다. 예를 들어, 서드파티 애플리케이션(332)은 OEM 차량 컴퓨팅 디바이스(318)에서 이용가능할 수 있고, 서드파티 애플리케이션(332)은 서드파티 서버 디바이스(350)와 통신할 수 있다. 서드파티 서버 디바이스(350)는 입력 요청 엔진(354)을 사용하여 OEM 차량 컴퓨팅 디바이스(318)를 통해 제공된 요청을 프로세싱할 수 있고, 명령 엔진(356)을 사용하여 요청에 응답할 수 있다.
일부 구현예에서, 서드파티 서버 디바이스(350)의 애플리케이션 상태 엔진(352)은 하나 이상의 서드파티 애플리케이션(332)의 상태를 특징화할 수 있는 서버 데이터(358)를 생성할 수 있다. 또한, 서드파티 애플리케이션(332)이 사용자의 계정과 연관될 수 있고, 상기 계정은 자동화된 어시스턴트(304)(사용자의 사전 허가 하에)와 연관될 수 있기 때문에, 데이터는 서드파티 서버 디바이스(350) 및 서버 디바이스(302) 간에 공유될 수 있다. 예를 들어, 애플리케이션 상태 엔진(352)에 의해 결정된 애플리케이션 상태의 변경 및/또는 하나 이상의 애플리케이션에 의해 수행되고 있는 동작은 자동화된 어시스턴트(304)가 서드파티 애플리케이션(들)(332)에 의해 수행되는 하나 이상의 액션들의 통지를 받도록 하기 위해 자동화된 어시스턴트(304)에 전달될 수 있다. 서드파티 인터렉션 엔진(326)은 자동화된 어시스턴트(304)에 대한 컨텍스트 데이터를 제공하기 위해 서드파티 서버 디바이스(350), OEM 차량 컴퓨팅 디바이스(318), 클라이언트 디바이스 및/또는 임의의 다른 디바이스 또는 장치로부터 데이터를 수신할 수 있다.
자동화된 어시스턴트(304)의 제안 엔진(328)은 자동화된 어시스턴트(304)에 의해 초기화될 수 있는 관련 액션에 관한 제안을 생성하기 위해 컨텍스트 데이터를 사용할 수 있다. 또한, 제안을 특징짓는 제안 데이터는 어시스턴트 데이터(316)로서 저장되고 제안 순위 엔진(336)에 의해 프로세싱될 수 있다. 제안 순위 엔진(336)은 컨텍스트 데이터에 적어도 부분적으로 기초하여 제안을 순위화할 수 있다. 더욱이, 일부 구현예에서, 제안 순위 엔진(336)은 최근에 애플리케이션에 의해 수행되었고 및/또는 현재 애플리케이션에 의해 수행되고 있는 제안 동작을 방지하기 위해 컨텍스트 데이터를 사용하여 순위가 매겨질 수 있다.
일부 구현예에서, 제안은 사용자의 경로의 세부사항을 포함할 수 있는 컨텍스트 데이터에 따라 순위가 매겨지고 및/또는 제시될 수 있다. 예를 들어, 컨텍스트 데이터는 사용자가 현재 X분 및/또는 Y마일 동안 지속되는 경로의 일부를 운전하고 있는지 여부를 나타낼 수 있다. 일부 구현예에서, 경로의 일부가 시간 및/또는 거리 임계치를 만족할 때, 제안 엔진(328)은 하나 이상의 제안 요소가 OEM 차량 컴퓨팅 디바이스(318)의 그래픽 사용자 인터페이스에서 제시되게 할 수 있다. 그러나, 경로의 일부가 시간 및/또는 거리 임계치를 만족하지 않을 때, 제안 엔진(328)은 그래픽 사용자 인터페이스가 하나 이상의 제안 요소를 제시하게 하는 것을 우회할 수 있다.
도 4는 서드파티 차량 컴퓨팅 디바이스 및/또는 서드파티 차량 컴퓨팅 디바이스에서 동작하는 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 하나 이상의 제안 요소를 제공하기 위한 방법(400)을 도시한다. 방법(400)은 사용자 인터페이스에서 제안들을 제공할 수 있는 하나 이상의 컴퓨팅 디바이스, 애플리케이션 및/또는 임의의 기타 장치 또는 모듈에 의해 수행될 수 있다. 방법(400)은 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링되고 있는 콘텐츠를 특징짓는 차량 애플리케이션 데이터를 수신하는 단계를 포함하는 동작(402)을 포함할 수 있다. 차량 컴퓨팅 디바이스는 차량 컴퓨팅 디바이스를 통해 액세스할 수 있는 애플리케이션들 간의 로컬 통신을 제한하는 제한 사항에 따라 동작할 수 있다.
예를 들어, 차량 컴퓨팅 디바이스는 OEM 서드파티 차량 애플리케이션, 하나 이상의 다른 서드파티 애플리케이션 및/또는 자동화된 어시스턴트를 포함할 수 있다. 자동화된 어시스턴트는 차량 컴퓨팅 디바이스에서 멀리 떨어져 있을 수 있다. 따라서, 차량 컴퓨팅 디바이스는 자동화된 어시스턴트와 하나 이상의 다른 서드파티 애플리케이션 간의 통신을 제한할 수 있다. 예를 들어, 차량 컴퓨팅 디바이스가 서드파티 내비게이션 애플리케이션 및/또는 서드파티 메시징 애플리케이션을 포함하는 경우, 앞서 언급한 애플리케이션은 자동화된 어시스턴트와 직접 통신하는 것이 제한될 수 있으며 대신 차량 컴퓨팅 디바이스를 통해 선택적으로 차량 애플리케이션을 통해서만 통신하도록 제한될 수 있다. 그러나, OEM 차량 애플리케이션은 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링되는 콘텐츠를 특징짓거나 나타낼 수 있는 차량 애플리케이션 데이터를 생성할 수 있다. 대안적으로, 또는 추가적으로, OEM 차량 애플리케이션은 하나 이상의 다른 서드파티 애플리케이션, 차량 및/또는 차량 및/또는 차량 컴퓨팅 디바이스와 연관될 수 있는 임의의 다른 장치 또는 모듈에 의해 수행되는 하나 이상의 동작을 특징화하는 차량 애플리케이션 데이터를 생성할 수 있다. 자동화된 어시스턴트와 기타 서드파티 애플리케이션 간의 직접 통신 액세스를 제한하면 차량 안전과 신뢰성에 중요할 수 있는 차량 시스템의 무결성을 유지하는 데 도움이 될 수 있다.
방법(400)은 수신된 차량 애플리케이션 데이터와 자동화된 어시스턴트와 연관된 어시스턴트 데이터 간의 관계를 결정하는 동작(404)을 더 포함할 수 있다. 예를 들어, 동작(404)은 차량 애플리케이션 데이터가 사용자와 자동화된 어시스턴트 간의 하나 이상의 대화 세션의 주제였던 임의의 정보를 특징화하는지 여부를 결정하는 것을 포함할 수 있다. 대안적으로, 또는 추가적으로, 동작(404)은 자동화된 어시스턴트에 대한 액세스를 제공하는 하나 이상의 컴퓨팅 디바이스를 사용하여 사용자에 의해 액세스된 임의의 정보를 차량 애플리케이션 데이터가 특징화하는지 여부를 결정하는 단계를 포함할 수 있다. 사용자가 다른 디바이스 및/또는 사람이 액세스하는 것을 원하지 않는 정보를 보호하기 위해 이러한 정보에 대한 액세스는 사용자의 허가를 받아 제공될 수 있다. 대안적으로, 또는 추가적으로, 동작(404)은 차량 애플리케이션 데이터 및 어시스턴트 데이터가 데이터의 유형 및/또는 주제 정보와 연관될 수 있는 정보를 특징화하는지 여부를 결정하는 단계를 더 포함할 수 있다. 예를 들어, 차량 애플리케이션 데이터와 어시스턴트 데이터 사이의 관계는 차량 애플리케이션 데이터가 특정 사람으로부터 차량 컴퓨팅 디바이스에서 수신 전화가 수신되고 있음을 나타내고 자동화된 어시스턴트 데이터가 사용자가 이전에 동일한 특정 사람의 전화에 응답하기 위해 자동화된 어시스턴트를 호출했었다고 표시하는 경우 식별될 수 있다.
방법(400)은 (차량) 애플리케이션 데이터가 과거 액션(들)을 특징짓는지 여부를 결정하는 선택적 동작(406)을 더 포함할 수 있다. 과거 액션은 차량 애플리케이션 데이터가 수신되기 전 일정 기간 내에 실행된 액션(예: 알림 제공, 데이터 전송, 데이터 액세스, 데이터 생성 등)일 수 있다. 일부 구현예에서, 상기 기간은 사용자와 차량 컴퓨팅 디바이스 및/또는 사용자와 자동화된 어시스턴트 간의 인터렉션의 속성에 따라 정적이거나 동적인 임계 기간일 수 있다. 예를 들어, 차량 컴퓨팅 디바이스에서 이용 가능한 서드파티 애플리케이션은 차량의 유체 센서가 경보 상태에 있음을 나타내는 알림을 제공할 수 있다. 이 알림은 차량 애플리케이션 데이터를 수신한 임계 기간 내에 디스플레이 패널에 렌더링된 그래픽 사용자 인터페이스에서 알림이 제공되고 있기 때문에 과거 액션으로 간주될 수 있다. 일부 구현예에서, 알림이 제시된 시간은 차량 애플리케이션 데이터에 의해 특징화되는 시간 정보에 기초하여 결정될 수 있다. 자동화된 어시스턴트는 차량의 특정 속성을 추적하기 위한 애플리케이션에 액세스할 수 있으므로 유체 센서에 대한 알림을 특징짓는 정보를 알 수 있다. 그러나 차량 컴퓨팅 디바이스의 디스플레이 패널에 알림이 제시되는 시점에 따라 자동화된 어시스턴트는 유체 센서에 대한 알림이 디스플레이 패널에 나타나도록 하는 것을 우회할 수도 있고 그렇지 않을 수도 있다.
애플리케이션 데이터가 동작(406)에서 과거 액션을 특징짓는 경우, 방법(400)은 동작(408)으로 진행할 수 있으며, 이는 과거 액션을 제안하는 것을 피하는 다른 제안 데이터를 생성하는 것을 포함할 수 있다. 예를 들어, 서드파티 애플리케이션이 유체 센서와 관련된 알림을 제공할 때, 다른 제안 데이터는 유체 센서의 상태에 대한 정보를 요청하는 것을 포함하지 않는 하나 이상의 제안을 제공함으로써 유체 센서의 상태에 대한 정보 획득을 제안하는 것을 피할 수 있다. 오히려, 자동화된 어시스턴트는 유체 센서에 대응하는 유체 구매에 대한 정보를 요청하고, 유체 센서의 상태를 자세히 설명하는 정보를 포함하는 메시지를 전송하고, 유체 센서와 연관된 유지 관리를 수행하는 업체에 전화를 걸고, 및/또는 유체 센서의 상태를 자세히 설명하는 정보를 요청하는 것과는 다른 임의의 다른 요청에 대한 음성 발화를 특징화하는 제안 데이터를 생성할 수 있다.
애플리케이션 데이터가 동작(406)에서 결정된 바와 같이 과거 액션을 특징짓지 않는 경우, 방법(400)은 동작(410)으로 진행할 수 있다. 동작(410)은 차량 애플리케이션 데이터와 어시스턴트 데이터 간의 관계에 기초하여 제안 데이터를 생성하는 것을 포함할 수 있다. 예를 들어, 서드파티 애플리케이션의 그래픽 사용자 인터페이스가 특정 목적지까지의 경로를 특징짓는 콘텐츠를 포함하고, 자동화된 어시스턴트가 임계 기간 내에 유체 센서와 관련된 알림을 제공하지 않은 경우, 자동화된 어시스턴트는 유체 센서에 대한 알림에 대응하는 제안 데이터를 제공할 수 있다. 제안 데이터는 사용자가 말할 때 자동화된 어시스턴트가 유체 센서의 상태와 관련된 정보를 제공하게 하는 음성 발화와 같은 자연어 콘텐츠를 특징화할 수 있다. 예를 들어, 음성 발화는 "어시스턴트, 유체 센서의 상태는 어때?"일 수 있다.
방법(400)은 차량 애플리케이션 데이터와 어시스턴트 데이터 간의 관계에 기초하여 제안 데이터 및/또는 다른 제안 데이터에 대한 우선순위를 결정하는 것을 포함할 수 있는 동작(410) 및/또는 동작(408)으로부터 동작(412)으로 진행할 수 있다. 일부 구현예에서, 동작(412)은 선택적 동작일 수 있다. 일부 구현예에서, 아름다운 차량 애플리케이션 데이터와 어시스턴트 데이터 사이의 상관 강도는 제안 데이터에 대한 우선순위를 결정하는데 사용될 수 있다. 예를 들어, 자동화된 어시스턴트와 사용자 간의 대화 세션에 명시적으로 포함된 자연어 콘텐츠를 특징짓는 차량 애플리케이션 데이터에 대한 상관 관계는 사용자와 자동화된 어시스턴트 간의 과거 대화 세션이 자연어 콘텐츠에 의해 특징화된 액션을 결과로 한 경우 차량 애플리케이션 데이터와 어시스턴트 데이터 간의 다른 상관 관계보다 더 강한 상관 관계를 갖는 것으로 특징화될 수 있다.
방법(400)은 동작(412)로부터 제안 데이터에 기초하여 서드파티 애플리케이션에 의해 혼합 제안 요소가 렌더링되게 하는 것을 포함할 수 있는 동작(414)로 진행할 수 있다. 선택적으로 차량 애플리케이션에 의해 제안 요소가 렌더링될 수 있다. 제안 요소가 차량 애플리케이션에 의해 렌더링되게 하는 것은 자동화된 어시스턴트로부터 차량 애플리케이션으로 액션 데이터를 제공하는 것을 포함할 수 있다. 액션 데이터는 제안 요소의 선택 시에 차량 애플리케이션에 의해 수행될 액션을 나타낼 수 있고, 예를 들어 제안 요소와 연관된 액션의 실행을 위한 파라미터를 포함할 수 있다. 제안 요소는 사용자가 제안 요소가 제시되는 위치에서 디스플레이 패널을 탭함으로써 및/또는 제안 요소에 포함된 자연어 콘텐츠의 적어도 일부 양을 포함하는 음성 발화를 제공하는 사용자에 의해 선택될 수 있는 선택가능한 요소일 수 있다. 제안 요소가 디스플레이 패널에서 렌더링될 때, 방법(400)은 렌더링된 제안 요소가 특정 기간 내에 선택되었는지 여부를 결정하는 선택적 동작(416)으로 진행할 수 있다. 일부 실시예에서, 제안 요소와 연관된 액션은 액션 데이터에 기초하여 OEM 차량 애플리케이션 또는 서드파티 애플리케이션 중 하나에 의해 수행될 수 있다. 네이티브 OEM 차량 애플리케이션이 액션을 수행하게 하면, 서드파티 애플리케이션이 중요한 차량 시스템에 액세스하는 것이 바람직하지 않은 경우 예를 들어, 자율 주행 차량에서 센서 시스템 또는 내비게이션 시스템에 대한 차량의 네이티브 애플리케이션으로 제한되는 경우 보안을 개선할 수 있다. 다른 실시예에서, 액션 데이터는 자동화된 어시스턴트에 의해 제공되는 고유 ID 번호를 포함할 수 있고; 사용자에 의한 제안 요소의 선택은 차량 애플리케이션이 자동화된 어시스턴트로 하여금 제안 요소의 액션 데이터의 고유 ID 번호와 연관된 액션을 수행하게 할 수 있다. 자동화된 어시스턴트가 애플리케이션을 수행하게 하면, 사용자의 프라이버시를 향상시킬 수 있다. 서드파티 애플리케이션 또는 차량의 네이티브 OEM 애플리케이션은 차량 애플리케이션 데이터 및 어시스턴트 데이터 간의 상관 관계 또는 연관에 기초하여 자동화된 어시스턴트에 의해 수행된 액션에 대한 정보 또는 사용자에 관한 정보에 액세스할 수 없기 때문이다. 따라서 사용자에 대한 보안이 향상될 수 있다.
렌더링된 제안 요소가 특정 기간 내에 선택되면, 방법은 동작(416)으로부터 선택적 동작(418)으로 진행할 수 있다. 선택적 동작(418)은 제안의 선택에 따라 제안 데이터에 대한 우선순위를 할당하는 것을 포함할 수 있다. 그러나, 사용자가 특정 시간 내에 제안을 선택하지 않으면 동작(416)으로부터 동작(420)으로 진행할 수 있다. 동작(420)은 제안 요소의 비선택에 따라 제안 데이터에 대한 우선순위를 할당하는 것을 포함할 수 있다. 일부 구현예에서, 제안 데이터의 우선순위는 사용자가 제안 요소를 선택하는 것에 응답하여 증가될 수 있고 및/또는 제안 데이터의 우선순위는 사용자가 특정한 기간 내에 제안 요소를 선택하지 않는 것에 응답하여 감소될 수 있다. 이러한 방식으로, 사용자가 차량 컴퓨팅 디바이스와 인터렉션할 때, 사용자와의 관련성 뿐만 아니라 사용자가 제안 데이터에 대응하는 콘텐츠를 이미 승인했는지 여부에 따라 제안의 순위가 매겨질 수 있다. 방법(400)은 차량 및/또는 차량 컴퓨팅 디바이스에서 다양한 기능을 촉진하기 위해 서드파티 차량 애플리케이션에 의해 렌더링되는 새로운 차량 애플리케이션 데이터에 따라 순환할 수 있으며, 이에 따라 차량 및/또는 차량 컴퓨팅 디바이스의 효율적 사용을 촉진한다.
도 5는 예시적 컴퓨터 시스템(510)의 블록도이다. 컴퓨터 시스템(510)는 일반적으로 적어도 하나의 프로세서(514)를 포함하며, 버스 서브시스템(512)을 통해 다수의 주변 디바이스들과 통신한다. 이들 주변 디바이스들은 예를 들면, 메모리(525) 및 파일 저장 서브시스템(526)을 포함하는 저장 서브시스템(524), 사용자 인터페이스 출력 디바이스(520), 사용자 인터페이스 입력 디바이스(522) 및 네트워크 인터페이스 서브시스템(516)을 포함할 수 있다. 입력 및 출력 디바이스는 컴퓨터 시스템(510)과 사용자 인터렉션을 하게 한다. 네트워크 인터페이스 서브시스템(516)은 외부 네트워크에 대한 인터페이스를 제공하며, 다른 컴퓨터 시스템들의 대응하는 인터페이스 디바이스들과 연결된다.
사용자 인터페이스 입력 디바이스(522)는 키보드, 마우스, 트랙볼, 터치패드 또는 그래픽 태블릿, 스캐너, 디스플레이에 통합된 터치스크린과 같은 포인팅 디바이스, 음성 인식 시스템, 마이크로폰과 같은 오디오 입력 디바이스 및/또는 다른 유형의 입력 디바이스를 포함한다. 일반적으로, 용어 "입력 디바이스"의 사용은 정보를 컴퓨터 시스템(510) 또는 통신 네트워크에 입력하기 위한 모든 가능한 유형의 디바이스들과 방식들을 포함하도록 의도된다.
사용자 인터페이스 출력 디바이스(520)는 디스플레이 서브시스템, 프린터, 팩스 기계 또는 오디오 출력 디바이스와 같은 비-시각적 디스플레이를 포함할 수 있다. 디스플레이 서브시스템은 CRT, LCD와 같은 평면 패널 디바이스, 프로젝션 디바이스 또는 시각적 이미지를 생성하기 위한 일부 기타 메커니즘을 포함할 수 있다. 또한, 디스플레이 서브시스템은 오디오 출력 디바이스와 같은 비-시각적 디스플레이를 제공할 수 있다. 일반적으로, 용어 “출력 디바이스”의 사용은 정보를 컴퓨터 시스템(510)로부터 사용자에게 또는 다른 기계 또는 컴퓨터 시스템에 정보를 출력하기 위한 모든 가능한 유형의 디바이스들과 방식들을 포함하도록 의도된다.
저장 서브시스템(524)은 본 명세서에 기술된 일부 또는 전부의 모듈들의 기능을 제공하기 위한 프로그래밍 및 데이터 구조를 저장한다. 예를 들어, 저장 서브시스템(524)은 방법(400)의 선택된 양태를 수행하고 및/또는 본 명세서에서 논의된 OEM 차량 컴퓨팅 디바이스(104 및/또는 204), OEM 차량 애플리케이션(124 및/또는 224), 서드파티 애플리케이션(126 및/또는 226), 자동화된 어시스턴트(128 및/또는 228), 차량(108 및/또는 208), 서버 디바이스(302), OEM 차량 컴퓨팅 디바이스(318), 서드파티 서버 디바이스(350) 및/또는 임의의 다른 애플리케이션, 디바이스, 장치 및/또는 모듈 중 하나 이상을 구현하기 위한 로직을 포함할 수 있다.
이들 소프트웨어 모듈들은 일반적으로 프로세서(514) 단독으로 또는 다른 프로세서들과의 조합에 의해 실행된다. 저장 서브시스템(524)에서 사용된 메모리(525)는 프로그램 실행 중에 명령어들 및 데이터의 저장을 위한 메인 RAM(530) 및 고정된 명령어들이 저장되는 ROM(532)을 포함하는 다수의 메모리들을 포함할 수 있다. 파일 저장 서브시스템(526)은 프로그램 및 데이터 파일에 대한 영구적 저장을 제공할 수 있고, 하드 디스크 드라이브, 연관된 이동식 매체와 함께인 플로피 디스크 드라이브, CD-ROM 드라이브, 광학 드라이브 또는 이동식 매체 카트리지들을 포함할 수 있다. 특정 구현예들의 기능을 구현하는 모듈들은 파일 저장 서브시스템(526)에 의해 저장 서브시스템(524)에 또는 프로세서(들)(514)에 의해 액세스가능한 다른 기계에 저장될 수 있다.
버스 서브시스템(512)은 의도된 대로 컴퓨터 시스템(510)의 다양한 컴포넌트들 및 서브시스템들이 서로 통신하게 하기 위한 메커니즘을 제공한다. 버스 서브시스템(512)이 개략적으로 단일의 버스로 도시되었지만, 버스 서브시스템의 대안적 구현예들은 다수의 버스들을 사용할 수 있다.
컴퓨터 시스템(510)은 워크스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버, 서퍼팜 또는 임의의 기타 데이터 프로세싱 시스템 또는 컴퓨팅 디바이스를 포함하는 다양한 유형들일 수 있다. 컴퓨터 및 네트워크의 끊임없이 변화하는 특성으로 인해, 도 5에 도시된 컴퓨터 시스템(510)는 일부 구현예들을 설명하기 위한 목적의 특정 예로서 만 의도된다. 컴퓨터 시스템(510)의 많은 다른 구성들이 도 5에 도시된 컴퓨터 시스템보다 많거나 적은 컴포넌트들을 가질 수 있다.
본 명세서에서 논의된 시스템들이 사용자들(또는 "참여자들"로 종종 지칭됨)에 관한 개인 정보를 수집하거나 또는 개인 정보를 사용하는 경우들에 있어서, 사용자들에게 프로그램들 또는 구성들이 사용자 정보(예를 들면, 사용자의 소셜 네트워크, 소셜 액션들 또는 활동들, 직업, 사용자의 선호들 또는 사용자의 현재 지리적 위치)에 관한 정보를 수집할 것인지 여부를 제어할, 사용자와 더 관련된 콘텐츠 서버로부터의 콘텐츠를 수신할지 및/또는 어떻게 수신할지 제어할 기회가 제공될 수 있다. 추가로, 특정 데이터는 그것이 저장되거나 사용되기 전에 하나 이상의 다양한 방식들로 취급되어, 개인적으로 식별가능한 정보는 제거된다. 예를 들면, 사용자의 신원은 사용자에 관한 개인적으로 식별가능한 정보가 결정될 수 없도록 취급되거나 또는 사용자의 지리적 위치는 위치 정보가 획득된 곳에서 일반화되어(시, 우편번호 또는 주 수준으로), 사용자의 특정한 지리적 위치가 결정될 수 없도록 한다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집되는지 그리고 사용되는지에 관한 제어를 가질 수 있다.
몇몇 구현예가 본 명세서에서 기술되고 도시되었지만, 기능을 수행하고 및/또는 결과 및/또는 본 명세서에 기술된 하나 이상의 이점을 획득하기 위한 다양한 다른 수단들 및/또는 구조들이 활용될 수 있으며, 그러한 변형들 및/또는 수정들은 본 명세서에서 기술된 구현예들의 범위 내에 있는 것으로 간주된다. 보다 일반적으로, 본 명세서에 기술된 모든 파라미터, 치수, 재료 및 구성은 예시적인 것으로 의도되었으며, 실제 파라미터, 치수, 재료 및/또는 구성은 교시를 사용되는 특정 애플리케이션 또는 애플리케이션들에 의존할 것이다. 통상의 기술자는 일상적인 실험만을 사용하여 본 명세서에 기술된 특정 구현예들에 대한 많은 균등물들을 인식할 수 있거나 또는 확인할 수 있을 것이다. 따라서, 전술한 구현예들은 단지 예일 뿐이며, 첨부된 청구범위 및 그 균등물의 범위 내에서 구현은 구체적으로 기술되고 청구된 것과 다르게도 실시될 수 있음을 이해해야 한다. 본 개시의 구현은 본 명세서에 기술된 각각의 개별적인 구성, 시스템, 물품, 재료, 키트 및/또는 방법에 관한 것이다. 또한 구성, 시스템, 물품, 재료, 키트 및/또는 방법이 상호 불일치하지 않는다면, 그러한 두 개 이상의 구성, 시스템, 물품, 재료, 키트 및/또는 방법의 모든 조합이 본 발명의 범위 내에 포함된다.
일부 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법은 사용자가 차량에 타고 있을 때 동작하는 차량 애플리케이션을 통해, 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되는 콘텐츠에 대응하는 차량 애플리케이션 데이터를 수신하는 단계와 같은 동작을 포함하는 것으로 기술되며, 상기 그래픽 사용자 인터페이스는 상기 차량의 차량 컴퓨팅 디바이스와 통신하는 디스플레이 패널에 디스플레이된다. 상기 방법은 상기 차량 애플리케이션 데이터를 수신하는 것에 응답하여, 상기 차량 애플리케이션 데이터가 자동화된 어시스턴트를 통해 사용가능한 어시스턴트 데이터와 연관되어 있다고 결정하는 단계를 더 포함하며, 상기 자동화된 어시스턴트는 상기 차량 컴퓨팅 디바이스를 통해 액세스 가능하다. 상기 방법은 상기 차량 애플리케이션 데이터가 상기 어시스턴트 데이터와 연관되어 있다는 결정에 응답하여 제안 데이터를 생성하는 단계를 더 포함하며, 상기 제안 데이터는 상기 어시스턴트 데이터 및 차량 애플리케이션 데이터와 연관된 액션을 식별하고, 상기 제안 데이터는 상기 디스플레이 패널에서 렌더링되고 있는 상기 콘텐츠와 상이한 자연어 콘텐츠를 특징화한다. 상기 방법은 상기 제안 데이터에 기초하여, 이전에 생성된 제안 데이터와 연관된 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위를 결정하는 단계를 더 포함하며, 상기 이전에 생성된 제안 데이터는 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 이전에 렌더링된 하나 이상의 제안 요소들에 대응한다. 상기 방법은 상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우: 상기 사용자가 차량에 타고 있는 동안 상기 제안 데이터에 기초하여, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 특정한 제안 요소가 렌더링되게 하는 단계를 더 포함하며, 상기 특정한 제안 요소는 상기 자연어 콘텐츠를 포함한다.
일부 구현예에서, 상기 우선순위 데이터는 상기 사용자 및/또는 하나 이상의 다른 사용자들이 차량에 타고 있었던 중에 상기 사용자 및/또는 하나 이상의 다른 사용자들이 상기 하나 이상의 제안 요소들을 선택했던 하나 이상의 이전 인스턴스들에 기초한다. 일부 구현예에서, 상기 방법은 목적지 위치에 대한 상기 사용자의 예상 도착 시간을 결정하는 단계를 더 포함하고, 다른 제안 데이터와 연관된 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위를 결정하는 것은 상기 목적지 위치에 대한 상기 사용자의 예상 도착 시간에 적어도 부분적으로 기초한다. 일부 구현예에서, 상기 방법은, 상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우: 상기 특정한 제안 요소가 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되게 한 후에, 상기 특정한 제안 요소가 선택되었음을 결정하는 단계, 및 상기 특정한 제안 요소가 선택되었다는 결정에 응답하여, 상기 제안 데이터의 우선순위가 수정되게 하는 단계를 더 포함한다.
일부 구현예에서, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스는 상기 콘텐츠를 포함하는 제1 영역 및 다른 콘텐츠를 포함하는 제2 영역을 포함하고, 그리고 상기 특정한 제안 요소가 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되게 하는 단계는: 상기 특정한 제안 요소가 상기 그래픽 사용자 인터페이스의 제1 영역에서 렌더링되게 하고, 다른 제안 요소가 상기 그래픽 사용자 인터페이스의 제2 영역에서 렌더링되게 하는 단계를 포함하며, 상기 다른 제안 요소는 다른 콘텐츠에 적어도 부분적으로 기초한다. 일부 구현예에서, 상기 차량 애플리케이션 데이터는 또한 다른 콘텐츠에 대응하고, 그리고 상기 제안 데이터를 생성하는 단계는 상기 다른 콘텐츠와 관련된 다른 액션을 식별하는 단계를 포함한다. 일부 구현예에서, 상기 방법은, 상기 그래픽 사용자 인터페이스의 제1 영역에서 제공되는 콘텐츠 및 상기 그래픽 사용자 인터페이스의 제2 영역에서 제공되는 다른 콘텐츠에 기초하여 추가 제안 데이터를 생성하는 단계를 더 포함하며, 상기 추가 제안 데이터는 상기 어시스턴트 데이터 및 상기 차량 애플리케이션 데이터와 연관된 추가 액션을 식별하고, 상기 제안 데이터는 콘텐츠 및 다른 콘텐츠와 상이한 다른 자연어 콘텐츠를 특징화한다.
일부 구현예에서, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스는 상기 자동화된 어시스턴트에 대응하는 제3 영역을 포함하고, 상기 방법은: 상기 사용자가 차량에 타고 있는 동안 상기 추가 제안 데이터에 기초하여, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스의 제3 영역에서 별개의 제안 요소가 렌더링되게 하는 단계를 더 포함하며, 상기 별개의 제안 요소는 상기 자연어 콘텐츠를 포함한다. 일부 구현예에서, 상기 제안 데이터에 기초하여 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 상기 특정한 제안 요소가 렌더링되게 하는 단계는 상기 자동화된 어시스턴트로부터 상기 차량 애플리케이션으로 액션 데이터를 제공하는 단계를 포함한다. 일부 구현예에서, 상기 특정한 제안 요소는 차량 애플리케이션에 의해 렌더링되고, 상기 제안 요소의 자연어 콘텐츠는 상기 사용자가 차량 컴퓨팅 디바이스에 말할 때 상기 액션이 상기 자동화된 어시스턴트를 통해 초기화되게 하는 발화된 발언을 특징화한다. 일부 구현예에서, 상기 방법은, 상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우: 상기 사용자가 상기 제안 요소의 자연어 콘텐츠에 대응하는 발화된 입력을 제공했다고 결정하는 단계, 및 상기 사용자가 발화된 입력을 제공했다고 결정한 것에 응답하여, 상기 자동화된 어시스턴트로 하여금 상기 액션을 초기화하게 하는 단계를 더 포함하며, 상기 자동화된 어시스턴트가 상기 액션을 초기화하는 것에 응답하여, 상기 액션이 별개의 차량 애플리케이션에 의해 수행된다.
일부 구현예에서, 상기 자동화된 어시스턴트는 상기 우선순위 데이터를 생성한 소스에 의해 제공되고, 상기 차량 애플리케이션 데이터는 상기 소스와 상이한 서드파티 소스에 의해 생성되고, 상기 별개의 차량 애플리케이션은 상기 소스 및 상기 서드파티 소스와 별개의 소스에 의해 제공된다. 일부 구현예에서, 상기 차량 애플리케이션은 상기 소스에 의해 제공되는 내비게이션 애플리케이션이고, 상기 별개의 차량 애플리케이션은 상기 별개의 소스에 의해 제공되는 통신 및/또는 미디어 애플리케이션이다. 일부 구현예에서, 상기 자동화된 어시스턴트는 상기 우선순위 데이터를 생성한 소스에 의해 제공되고, 상기 차량 애플리케이션 데이터는 상기 소스와 상이한 서드파티 소스에 의해 생성된다. 일부 구현예에서, 상기 자동화된 어시스턴트는 상기 차량의 차량 컴퓨팅 디바이스로부터 원격에 있다.
다른 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법은 차량 컴퓨팅 디바이스의 차량 애플리케이션에 의해, 서드파티 애플리케이션이 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링되는 그래픽 사용자 인터페이스를 통해 콘텐츠를 제공하고 있다고 결정하는 단계와 같은 동작을 포함하는 것으로서 기술되며, 상기 차량 애플리케이션은 상기 차량 컴퓨팅 디바이스를 통해 사용자가 액세스할 수 있고, 상기 차량 컴퓨팅 디바이스는 상기 사용자를 목적지까지 안내하는 차량의 일부이다. 일부 구현예에서, 상기 방법은 상기 그래픽 사용자 인터페이스가 콘텐츠를 포함한다는 결정에 기초하여, 서드파티 애플리케이션에 의해 제공되는 콘텐츠의 적어도 일부를 특징화하는 차량 애플리케이션 데이터를 생성하는 단계를 더 포함할 수 있다. 일부 구현예에서, 상기 방법은 상기 차량 컴퓨팅 디바이스의 차량 애플리케이션에 의해, 상기 차량 애플리케이션 데이터를 자동화된 어시스턴트에 제공하는 단계를 더 포함할 수 있고, 상기 자동화된 어시스턴트는 또한 상기 차량 컴퓨팅 디바이스를 통해 사용자가 액세스가능하다. 일부 구현예에서, 상기 방법은 상기 차량 애플리케이션 데이터를 상기 자동화된 어시스턴트에 제공하는 것에 기초하여, 상기 자동화된 어시스턴트가 어시스턴트 데이터와 상기 차량 애플리케이션 데이터 간의 대응에 기초하여 생성된 제안 데이터를 제공하게 하는 단계를 더 포함할 수 있고, 상기 어시스턴트 데이터는 상기 사용자의 계정과 연관된다. 일부 구현예에서, 상기 방법은 상기 차량 애플리케이션에 의해, 상기 자동화된 어시스턴트로부터, 상기 제안 데이터를 수신하는 단계를 더 포함할 수 있고, 상기 제안 데이터는 사용자가 상기 차량 컴퓨팅 디바이스에 말할 때, 상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션에 의한 액션의 수행을 초기화하게 하는 자연어 콘텐츠를 특징화한다. 일부 구현예에서, 상기 방법은 상기 자동화된 어시스턴트로부터 상기 제안 데이터를 수신한 것에 응답하여, 상기 서드파티 애플리케이션이 상기 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 자연어 콘텐츠를 렌더링하게 하는 단계를 더 포함할 수 있고, 상기 자연어 콘텐츠는 상기 그래픽 사용자 인터페이스에서 렌더링되는 콘텐츠와 동시에 상기 그래픽 사용자 인터페이스에서 렌더링되고, 상기 차량은 상기 사용자를 목적지까지 길안내를 한다.
일부 구현예에서, 상기 방법은, 상기 그래픽 사용자 인터페이스에서 자연어 콘텐츠가 렌더링된 후: 상기 사용자 및/또는 다른 사용자가 그래픽 사용자 인터페이스에서 렌더링된 자연어 콘텐츠의 적어도 일부를 포함하는 발화된 발언을 제공했다고 결정하는 단계, 및 상기 사용자 및/또는 다른 사용자가 발화된 발언을 제공했다고 결정하는 것에 응답하여, 상기 자동화된 어시스턴트가 상기 서드파티 애플리케이션에 의한 액션의 수행을 초기화하게 하는 단계를 더 포함한다. 일부 구현예에서, 상기 방법은, 상기 제안 데이터를 수신하는 것에 응답하여, 상기 차량이 상기 사용자를 목적지까지 길안내하는데 남은 시간 및/또는 거리를 결정하는 단계; 및 상기 차량이 상기 사용자를 목적지까지 길안내하는데 남은 시간 및/또는 거리가 임계치를 만족하는지 여부를 결정하는 단계를 더 포함할 수 있고 상기 서드파티 애플리케이션이 상기 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 자연어 콘텐츠를 렌더링하게 하는 단계는 상기 남은 시간 및/또는 거리가 임계치를 만족할 때 수행된다. 일부 구현예에서, 상기 방법은 상기 그래픽 사용자 인터페이스에서 제공되는 추가 데이터를 특징화하는 업데이트된 콘텐츠 데이터를 제공하는 단계를 더 포함할 수 있다.
다른 구현예에서, 하나 이상의 프로세서에 의해 구현되는 방법은 서드파티 애플리케이션으로부터 차량 애플리케이션에 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링될 콘텐츠를 특징화하는 콘텐츠 데이터를 제공하는 단계와 같은 동작을 포함하는 것으로 기술되며, 상기 차량 컴퓨팅 디바이스는 사용자가 목적지까지 운전하는 차량에 포함된다. 상기 방법은 상기 차량 애플리케이션에 콘텐츠 데이터를 제공하는 것에 기초하여, 상기 차량 애플리케이션이 콘텐츠 데이터의 적어도 일부를 자동화된 어시스턴트에 제공하게 하는 단계, 상기 자동화된 어시스턴트는 상기 차량 컴퓨팅 디바이스의 하나 이상의 인터페이스들을 통해 상기 사용자가 액세스 가능하며, 상기 차량 컴퓨팅 디바이스는 상기 자동화된 어시스턴트에 대한 콘텐츠 데이터의 접근성을 제한한다. 상기 방법은 상기 차량 애플리케이션으로부터, 상기 콘텐츠 데이터의 적어도 일부를 수신하는 상기 자동화된 어시스턴트에 기초하여 적어도 부분적으로 생성된 제안 데이터를 수신하는 단계를 더 포함할 수 있고, 상기 제안 데이터는 상기 사용자로부터 상기 자동화된 어시스턴트에 발화된 발언에 포함된 경우 상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션, 상기 차량 애플리케이션 및/또는 다른 서드파티 애플리케이션에 의한 하나 이상의 액션들의 수행을 초기화하게 하는 자연어 콘텐츠를 특징화한다. 상기 방법은 상기 차량 애플리케이션으로부터 상기 제안 데이터를 수신하는 것에 응답하여, 상기 차량 컴퓨팅 디바이스의 디스플레이 패널이 그래픽 사용자 인터페이스에서 상기 자연어 콘텐츠를 렌더링하게 하는 단계를 포함할 수 있다. 상기 방법은 상기 사용자가 상기 차량 컴퓨팅 디바이스의 인터페이스를 통해 상기 자동화된 어시스턴트에 상기 발화된 발언을 제공할 때: 상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션, 상기 차량 애플리케이션 및/또는 다른 서드파티 애플리케이션에 의한 하나 이상의 액션들의 수행을 초기화하게 하는 단계를 포함할 수 있다.
일부 구현예에서, 상기 콘텐츠 데이터의 적어도 일부는 상기 차량 컴퓨팅 디바이스의 디스플레이 패널에 디스플레이되는 렌더링된 데이터에 기초하여 상기 자동화된 어시스턴트에 제공하기 위해 선택된다. 일부 구현예에서, 상기 방법은, 상기 사용자가 상기 차량 컴퓨팅 디바이스의 인터페이스를 통해 상기 자동화된 어시스턴트에 상기 발화된 발언을 제공할 때: 상기 서드파티 애플리케이션과 통신하는 서버 디바이스를 통해, 상기 차량 컴퓨팅 디바이스와 별개인 다른 컴퓨팅 디바이스에 하나 이상의 액션들의 동작 상태를 제공하는 단계를 더 포함할 수 있다.

Claims (25)

  1. 하나 이상의 프로세서에 의해 수행되는 방법으로서,
    사용자가 차량에 타고 있을 때 동작하는 차량 애플리케이션을 통해, 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되는 콘텐츠에 대응하는 차량 애플리케이션 데이터를 수신하는 단계, 상기 그래픽 사용자 인터페이스는 상기 차량의 차량 컴퓨팅 디바이스와 통신하는 디스플레이 패널에 디스플레이되며;
    상기 차량 애플리케이션 데이터를 수신하는 것에 응답하여, 상기 차량 애플리케이션 데이터가 자동화된 어시스턴트를 통해 사용가능한 어시스턴트 데이터와 연관되어 있다고 결정하는 단계, 상기 자동화된 어시스턴트는 상기 차량 컴퓨팅 디바이스를 통해 액세스가능하며;
    상기 차량 애플리케이션 데이터가 상기 어시스턴트 데이터와 연관되어 있다는 결정에 응답하여 제안 데이터를 생성하는 단계,
    상기 제안 데이터는 상기 어시스턴트 데이터 및 차량 애플리케이션 데이터와 연관된 액션을 식별하고, 상기 제안 데이터는 상기 디스플레이 패널에서 렌더링되고 있는 상기 콘텐츠와 상이한 자연어 콘텐츠를 특징화하고;
    상기 제안 데이터에 기초하여, 이전에 생성된 제안 데이터와 연관된 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위를 결정하는 단계,
    상기 이전에 생성된 제안 데이터는 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 이전에 렌더링된 하나 이상의 제안 요소들에 대응하며; 그리고
    상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우:
    상기 사용자가 차량에 타고 있는 동안 상기 제안 데이터에 기초하여, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 특정한 제안 요소가 렌더링되게 하는 단계를 포함하며, 상기 특정한 제안 요소는 상기 자연어 콘텐츠를 포함하는, 방법.
  2. 청구항 1에 있어서, 상기 우선순위 데이터는 상기 사용자 및/또는 하나 이상의 다른 사용자들이 차량에 타고 있었던 중에 상기 사용자 및/또는 하나 이상의 다른 사용자들이 상기 하나 이상의 제안 요소들을 선택했던 하나 이상의 이전 인스턴스들에 기초하는, 방법.
  3. 선행하는 청구항 중 어느 한 항에 있어서,
    목적지 위치에 대한 상기 사용자의 예상 도착 시간을 결정하는 단계를 더 포함하고, 다른 제안 데이터와 연관된 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위를 결정하는 것은 상기 목적지 위치에 대한 상기 사용자의 예상 도착 시간에 적어도 부분적으로 기초하는, 방법.
  4. 선행하는 청구항 중 어느 한 항에 있어서,
    상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우:
    상기 특정한 제안 요소가 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되게 한 후에, 상기 특정한 제안 요소가 선택되었음을 결정하는 단계, 및
    상기 특정한 제안 요소가 선택되었다는 결정에 응답하여, 상기 제안 데이터의 우선순위가 수정되게 하는 단계를 더 포함하는, 방법.
  5. 선행하는 청구항 중 어느 한 항에 있어서,
    상기 차량 애플리케이션의 그래픽 사용자 인터페이스는 상기 콘텐츠를 포함하는 제1 영역 및 다른 콘텐츠를 포함하는 제2 영역을 포함하고, 그리고
    상기 특정한 제안 요소가 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 렌더링되게 하는 단계는:
    상기 특정한 제안 요소가 상기 그래픽 사용자 인터페이스의 제1 영역에서 렌더링되게 하고, 다른 제안 요소가 상기 그래픽 사용자 인터페이스의 제2 영역에서 렌더링되게 하는 단계를 포함하며, 상기 다른 제안 요소는 다른 콘텐츠에 적어도 부분적으로 기초하는, 방법.
  6. 청구항 5에 있어서,
    상기 차량 애플리케이션 데이터는 또한 다른 콘텐츠에 대응하고, 그리고
    상기 제안 데이터를 생성하는 단계는 상기 다른 콘텐츠와 관련된 다른 액션을 식별하는 단계를 포함하는, 방법.
  7. 청구항 5 또는 청구항 6에 있어서,
    상기 그래픽 사용자 인터페이스의 제1 영역에서 제공되는 콘텐츠 및 상기 그래픽 사용자 인터페이스의 제2 영역에서 제공되는 다른 콘텐츠에 기초하여 추가 제안 데이터를 생성하는 단계를 더 포함하며,
    상기 추가 제안 데이터는 상기 어시스턴트 데이터 및 상기 차량 애플리케이션 데이터와 연관된 추가 액션을 식별하고, 상기 제안 데이터는 콘텐츠 및 다른 콘텐츠와 상이한 다른 자연어 콘텐츠를 특징화하는, 방법.
  8. 청구항 7에 있어서, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스는 상기 자동화된 어시스턴트에 대응하는 제3 영역을 포함하고, 상기 방법은:
    상기 사용자가 차량에 타고 있는 동안 상기 추가 제안 데이터에 기초하여, 상기 차량 애플리케이션의 그래픽 사용자 인터페이스의 제3 영역에서 별개의 제안 요소가 렌더링되게 하는 단계를 더 포함하며, 상기 별개의 제안 요소는 상기 자연어 콘텐츠를 포함하는, 방법.
  9. 선행하는 청구항 중 어느 한 항에 있어서, 상기 제안 데이터에 기초하여 상기 차량 애플리케이션의 그래픽 사용자 인터페이스에서 상기 특정한 제안 요소가 렌더링되게 하는 단계는 상기 자동화된 어시스턴트로부터 상기 차량 애플리케이션으로 액션 데이터를 제공하는 단계를 포함하는, 방법.
  10. 선행하는 청구항 중 어느 한 항에 있어서, 상기 특정한 제안 요소는 차량 애플리케이션에 의해 렌더링되고, 상기 제안 요소의 자연어 콘텐츠는 상기 사용자가 차량 컴퓨팅 디바이스에 말할 때 상기 액션이 상기 자동화된 어시스턴트를 통해 초기화되게 하는 발화된 발언을 특징화하는, 방법.
  11. 청구항 10에 있어서,
    상기 우선순위 데이터와 관련한 상기 제안 데이터의 우선순위가 상기 제안 데이터가 다른 제안 데이터보다 우선순위가 높다고 나타내는 경우:
    상기 사용자가 상기 제안 요소의 자연어 콘텐츠에 대응하는 발화된 입력을 제공했다고 결정하는 단계, 및
    상기 사용자가 발화된 입력을 제공했다고 결정한 것에 응답하여, 상기 자동화된 어시스턴트로 하여금 상기 액션을 초기화하게 하는 단계를 더 포함하며, 상기 자동화된 어시스턴트가 상기 액션을 초기화하는 것에 응답하여, 상기 액션이 별개의 차량 애플리케이션에 의해 수행되는, 방법.
  12. 청구항 11에 있어서, 상기 자동화된 어시스턴트는 상기 우선순위 데이터를 생성한 소스에 의해 제공되고, 상기 차량 애플리케이션 데이터는 상기 소스와 상이한 서드파티 소스에 의해 생성되고, 상기 별개의 차량 애플리케이션은 상기 소스 및 상기 서드파티 소스와 별개의 소스에 의해 제공되는, 방법.
  13. 청구항 12에 있어서, 상기 차량 애플리케이션은 상기 소스에 의해 제공되는 내비게이션 애플리케이션이고, 상기 별개의 차량 애플리케이션은 상기 별개의 소스에 의해 제공되는 통신 및/또는 미디어 애플리케이션인, 방법.
  14. 선행하는 청구항 중 어느 한 항에 있어서, 상기 자동화된 어시스턴트는 상기 우선순위 데이터를 생성한 소스에 의해 제공되고, 상기 차량 애플리케이션 데이터는 상기 소스와 상이한 서드파티 소스에 의해 생성되는, 방법.
  15. 선행하는 청구항 중 어느 한 항에 있어서, 상기 자동화된 어시스턴트는 상기 차량의 차량 컴퓨팅 디바이스로부터 원격에 있는, 방법.
  16. 하나 이상의 프로세서에 의해 수행되는 방법으로서,
    차량 컴퓨팅 디바이스의 차량 애플리케이션에 의해, 서드파티 애플리케이션이 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링되는 그래픽 사용자 인터페이스를 통해 콘텐츠를 제공하고 있다고 결정하는 단계,
    상기 차량 애플리케이션은 상기 차량 컴퓨팅 디바이스를 통해 사용자가 액세스할 수 있고, 상기 차량 컴퓨팅 디바이스는 상기 사용자를 목적지까지 안내하는 차량의 일부이며;
    상기 그래픽 사용자 인터페이스가 콘텐츠를 포함한다는 결정에 기초하여, 서드파티 애플리케이션에 의해 제공되는 콘텐츠의 적어도 일부를 특징화하는 차량 애플리케이션 데이터를 생성하는 단계;
    상기 차량 컴퓨팅 디바이스의 차량 애플리케이션에 의해, 상기 차량 애플리케이션 데이터를 자동화된 어시스턴트에 제공하는 단계, 상기 자동화된 어시스턴트는 또한 상기 차량 컴퓨팅 디바이스를 통해 사용자가 액세스가능하며;
    상기 차량 애플리케이션 데이터를 상기 자동화된 어시스턴트에 제공하는 것에 기초하여, 상기 자동화된 어시스턴트가 어시스턴트 데이터와 상기 차량 애플리케이션 데이터 간의 대응에 기초하여 생성된 제안 데이터를 제공하게 하는 단계, 상기 어시스턴트 데이터는 상기 사용자의 계정과 연관되며;
    상기 차량 애플리케이션에 의해, 상기 자동화된 어시스턴트로부터, 상기 제안 데이터를 수신하는 단계, 상기 제안 데이터는 사용자가 상기 차량 컴퓨팅 디바이스에 말할 때, 상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션에 의한 액션의 수행을 초기화하게 하는 자연어 콘텐츠를 특징화하며;
    상기 자동화된 어시스턴트로부터 상기 제안 데이터를 수신한 것에 응답하여, 상기 서드파티 애플리케이션이 상기 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 자연어 콘텐츠를 렌더링하게 하는 단계를 포함하며,
    상기 자연어 콘텐츠는 상기 그래픽 사용자 인터페이스에서 렌더링되는 콘텐츠와 동시에 상기 그래픽 사용자 인터페이스에서 렌더링되고, 상기 차량은 상기 사용자를 목적지까지 길안내를 하는, 방법.
  17. 청구항 16에 있어서,
    상기 그래픽 사용자 인터페이스에서 자연어 콘텐츠가 렌더링된 후:
    상기 사용자 및/또는 다른 사용자가 그래픽 사용자 인터페이스에서 렌더링된 자연어 콘텐츠의 적어도 일부를 포함하는 발화된 발언을 제공했다고 결정하는 단계, 및
    상기 사용자 및/또는 다른 사용자가 발화된 발언을 제공했다고 결정하는 것에 응답하여, 상기 자동화된 어시스턴트가 상기 서드파티 애플리케이션에 의한 액션의 수행을 초기화하게 하는 단계를 더 포함하는, 방법.
  18. 청구항 16 또는 청구항 17에 있어서,
    상기 제안 데이터를 수신하는 것에 응답하여, 상기 차량이 상기 사용자를 목적지까지 길안내하는데 남은 시간 및/또는 거리를 결정하는 단계; 및
    상기 차량이 상기 사용자를 목적지까지 길안내하는데 남은 시간 및/또는 거리가 임계치를 만족하는지 여부를 결정하는 단계,
    상기 서드파티 애플리케이션이 상기 서드파티 애플리케이션의 그래픽 사용자 인터페이스에서 자연어 콘텐츠를 렌더링하게 하는 단계는 상기 남은 시간 및/또는 거리가 임계치를 만족할 때 수행되는, 방법.
  19. 청구항 16 내지 18 중 어느 한 항에 있어서,
    상기 그래픽 사용자 인터페이스에서 제공되는 추가 데이터를 특징화하는 업데이트된 콘텐츠 데이터를 제공하는 단계를 더 포함하는, 방법.
  20. 하나 이상의 프로세서에 의해 수행되는 방법으로서,
    서드파티 애플리케이션으로부터 차량 애플리케이션에 차량 컴퓨팅 디바이스의 디스플레이 패널에서 렌더링될 콘텐츠를 특징화하는 콘텐츠 데이터를 제공하는 단계, 상기 차량 컴퓨팅 디바이스는 사용자가 목적지까지 운전하는 차량에 포함되며;
    상기 차량 애플리케이션에 콘텐츠 데이터를 제공하는 것에 기초하여, 상기 차량 애플리케이션이 콘텐츠 데이터의 적어도 일부를 자동화된 어시스턴트에 제공하게 하는 단계,
    상기 자동화된 어시스턴트는 상기 차량 컴퓨팅 디바이스의 하나 이상의 인터페이스들을 통해 상기 사용자가 액세스 가능하며,
    상기 차량 컴퓨팅 디바이스는 상기 자동화된 어시스턴트에 대한 콘텐츠 데이터의 접근성을 제한하고;
    상기 차량 애플리케이션으로부터, 상기 콘텐츠 데이터의 적어도 일부를 수신하는 상기 자동화된 어시스턴트에 기초하여 적어도 부분적으로 생성된 제안 데이터를 수신하는 단계,
    상기 제안 데이터는 상기 사용자로부터 상기 자동화된 어시스턴트에 발화된 발언에 포함된 경우 상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션, 상기 차량 애플리케이션 및/또는 다른 서드파티 애플리케이션에 의한 하나 이상의 액션들의 수행을 초기화하게 하는 자연어 콘텐츠를 특징화하고;
    상기 차량 애플리케이션으로부터 상기 제안 데이터를 수신하는 것에 응답하여, 상기 차량 컴퓨팅 디바이스의 디스플레이 패널이 그래픽 사용자 인터페이스에서 상기 자연어 콘텐츠를 렌더링하게 하는 단계; 및
    상기 사용자가 상기 차량 컴퓨팅 디바이스의 인터페이스를 통해 상기 자동화된 어시스턴트에 상기 발화된 발언을 제공할 때:
    상기 자동화된 어시스턴트로 하여금 상기 서드파티 애플리케이션, 상기 차량 애플리케이션 및/또는 다른 서드파티 애플리케이션에 의한 하나 이상의 액션들의 수행을 초기화하게 하는 단계를 포함하는, 방법.
  21. 청구항 18에 있어서, 상기 콘텐츠 데이터의 적어도 일부는 상기 차량 컴퓨팅 디바이스의 디스플레이 패널에 디스플레이되는 렌더링된 데이터에 기초하여 상기 자동화된 어시스턴트에 제공하기 위해 선택되는, 방법.
  22. 청구항 20 또는 청구항 21에 있어서,
    상기 사용자가 상기 차량 컴퓨팅 디바이스의 인터페이스를 통해 상기 자동화된 어시스턴트에 상기 발화된 발언을 제공할 때:
    상기 서드파티 애플리케이션과 통신하는 서버 디바이스를 통해, 상기 차량 컴퓨팅 디바이스와 별개인 다른 컴퓨팅 디바이스에 하나 이상의 액션들의 동작 상태를 제공하는 단계를 더 포함하는, 방법.
  23. 명령어를 포함하는 컴퓨터 프로그램 물로서, 상기 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 선행하는 청구항 중 어느 한 항의 방법을 수행하게 하는 컴퓨터 판독가능 매체.
  24. 명령어를 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 청구항 1 내지 22 중 어느 한 항의 방법을 수행하게 하는, 컴퓨터 판독가능 저장 매체.
  25. 청구항 1 내지 22 중 어느 한 항의 방법을 수행하기 위한 하나 이상의 프로세서를 포함하는, 시스템.
KR1020217036951A 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안 KR102696778B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247027362A KR20240129085A (ko) 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/031498 WO2020226650A1 (en) 2019-05-09 2019-05-09 Automated assistant suggestions for third-party vehicle computing devices with restricted architecture

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247027362A Division KR20240129085A (ko) 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안

Publications (2)

Publication Number Publication Date
KR20210145283A true KR20210145283A (ko) 2021-12-01
KR102696778B1 KR102696778B1 (ko) 2024-08-21

Family

ID=66625397

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020247027362A KR20240129085A (ko) 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안
KR1020217036951A KR102696778B1 (ko) 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020247027362A KR20240129085A (ko) 2019-05-09 2019-05-09 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안

Country Status (7)

Country Link
US (2) US10996925B2 (ko)
EP (1) EP3752892A1 (ko)
JP (1) JP7341243B2 (ko)
KR (2) KR20240129085A (ko)
CN (1) CN113424151B (ko)
AU (2) AU2019444479A1 (ko)
WO (1) WO2020226650A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6939376B2 (ja) * 2017-10-10 2021-09-22 トヨタ自動車株式会社 自動運転システム
US11567632B2 (en) 2018-07-03 2023-01-31 Apple Inc. Systems and methods for exploring a geographic region
CN113424151B (zh) 2019-05-09 2024-09-06 谷歌有限责任公司 用于具有受限架构的第三方车辆计算设备的自动化助理建议
US20210081863A1 (en) * 2019-07-25 2021-03-18 Airwire Technologies Vehicle intelligent assistant
US11846515B2 (en) 2020-06-11 2023-12-19 Apple Inc. User interfaces for customized navigation routes
US11959764B2 (en) * 2021-04-02 2024-04-16 Google Llc Automated assistant that detects and supplements various vehicle computing device capabilities
EP4334683A2 (en) 2021-06-07 2024-03-13 Apple Inc. User interfaces for maps and navigation
US11967321B2 (en) * 2021-10-06 2024-04-23 Google Llc Automated assistant control of non-assistant applications via identification of synonymous term and/or speech processing biasing
US20240005920A1 (en) * 2022-06-29 2024-01-04 Google Llc System(s) and method(s) for enforcing consistency of value(s) and unit(s) in a vehicular environment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108307A1 (en) * 2012-10-12 2014-04-17 Wipro Limited Methods and systems for providing personalized and context-aware suggestions
US20160308798A1 (en) * 2015-04-16 2016-10-20 Yahoo!, Inc. Location sharing
KR20180006966A (ko) * 2015-05-14 2018-01-19 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 써드 파티 애플리케이션으로의 디지털 어시스턴트 확장성
KR20180133525A (ko) * 2017-05-12 2018-12-14 애플 인크. 디지털 어시스턴트의 동기화 및 태스크 위임
KR20180134994A (ko) * 2016-04-18 2018-12-19 구글 엘엘씨 적절한 에이전트의 자동화된 어시스턴트 호출
US20190124019A1 (en) * 2017-10-23 2019-04-25 Microsoft Technology Licensing, Llc Generating recommended responses based on historical message data

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7702731B2 (en) * 2006-08-17 2010-04-20 International Business Machines Corporation System, method and program for facilitating an electronic chat session
US20080082257A1 (en) * 2006-09-05 2008-04-03 Garmin Ltd. Personal navigational device and method with automatic call-ahead
US8548509B2 (en) * 2008-12-12 2013-10-01 Qualcomm Incorporated System and method of automatically generating and sending text messages
US9317834B2 (en) 2011-06-30 2016-04-19 Microsoft Technology Licensing, Llc User computing device with personal agent program for recommending meeting a friend at a service location based on current location, travel direction, and calendar activity
US9652556B2 (en) 2011-10-05 2017-05-16 Google Inc. Search suggestions based on viewport content
WO2014172369A2 (en) * 2013-04-15 2014-10-23 Flextronics Ap, Llc Intelligent vehicle for assisting vehicle occupants and incorporating vehicle crate for blade processors
US9798799B2 (en) * 2012-11-15 2017-10-24 Sri International Vehicle personal assistant that interprets spoken natural language input based upon vehicle context
KR20150122561A (ko) * 2014-04-23 2015-11-02 삼성전자주식회사 디바이스 및 상기 디바이스에서의 착신 호출 처리 방법
US10116748B2 (en) * 2014-11-20 2018-10-30 Microsoft Technology Licensing, Llc Vehicle-based multi-modal interface
US10504509B2 (en) 2015-05-27 2019-12-10 Google Llc Providing suggested voice-based action queries
US9529500B1 (en) * 2015-06-05 2016-12-27 Apple Inc. Application recommendation based on detected triggering events
GB2555975A (en) * 2015-06-23 2018-05-16 Google Llc Mobile geographic application in automotive environment
US12026214B2 (en) * 2015-09-28 2024-07-02 Developing Software LLC Location based push notification and multi-user class social introduction
KR102393928B1 (ko) * 2015-11-10 2022-05-04 삼성전자주식회사 응답 메시지를 추천하는 사용자 단말 장치 및 그 방법
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
US10169794B2 (en) 2016-06-07 2019-01-01 Microsoft Technology Licensing, Llc Digital assistant for vehicle related activities
US10521107B2 (en) * 2016-09-24 2019-12-31 Apple Inc. Devices, methods, and graphical user interfaces for selecting and interacting with different device modes
US10153938B2 (en) * 2016-10-13 2018-12-11 Airwatch, Llc Detecting driving and modifying access to a user device
KR102426704B1 (ko) * 2017-08-28 2022-07-29 삼성전자주식회사 음성 인식 서비스 운용 방법 및 이를 지원하는 전자 장치
US10198877B1 (en) * 2018-05-23 2019-02-05 Google Llc Providing a communications channel between instances of automated assistants
CN113424151B (zh) 2019-05-09 2024-09-06 谷歌有限责任公司 用于具有受限架构的第三方车辆计算设备的自动化助理建议

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108307A1 (en) * 2012-10-12 2014-04-17 Wipro Limited Methods and systems for providing personalized and context-aware suggestions
US20160308798A1 (en) * 2015-04-16 2016-10-20 Yahoo!, Inc. Location sharing
KR20180006966A (ko) * 2015-05-14 2018-01-19 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 써드 파티 애플리케이션으로의 디지털 어시스턴트 확장성
KR20180134994A (ko) * 2016-04-18 2018-12-19 구글 엘엘씨 적절한 에이전트의 자동화된 어시스턴트 호출
KR20180133525A (ko) * 2017-05-12 2018-12-14 애플 인크. 디지털 어시스턴트의 동기화 및 태스크 위임
US20190124019A1 (en) * 2017-10-23 2019-04-25 Microsoft Technology Licensing, Llc Generating recommended responses based on historical message data

Also Published As

Publication number Publication date
JP7341243B2 (ja) 2023-09-08
AU2023202550B2 (en) 2024-05-30
AU2019444479A1 (en) 2021-08-05
JP2022528218A (ja) 2022-06-09
KR20240129085A (ko) 2024-08-27
EP3752892A1 (en) 2020-12-23
KR102696778B1 (ko) 2024-08-21
CN113424151A (zh) 2021-09-21
US20210255828A1 (en) 2021-08-19
WO2020226650A1 (en) 2020-11-12
US20200356339A1 (en) 2020-11-12
CN113424151B (zh) 2024-09-06
US12039227B2 (en) 2024-07-16
AU2023202550A1 (en) 2023-05-11
US10996925B2 (en) 2021-05-04

Similar Documents

Publication Publication Date Title
KR102696778B1 (ko) 제한된 아키텍처를 사용하는 서드파티 차량 컴퓨팅 디바이스에 대한 자동화된 어시스턴트 제안
US11941420B2 (en) Facilitating user device and/or agent device actions during a communication session
JP6827479B2 (ja) パーソナルアシスタントモジュールによる非決定的なタスク開始
US11823676B2 (en) Systems, methods, and apparatuses for managing incomplete automated assistant actions
US20240119933A1 (en) Automated assistant invocation of second interactive module using supplemental data provided by first interactive module
US12093609B2 (en) Voice-controlled entry of content into graphical user interfaces
CN114586007A (zh) 用于维护应用内容的隐私的自动助理架构
US12086554B2 (en) Rendering content using a content agent and/or stored content parameter(s)
US20240361983A1 (en) Automated assistant suggestions for third-party vehicle computing devices with restricted architecture
US12118994B2 (en) Providing contextual automated assistant action suggestion(s) via a vehicle computing device
US20230062489A1 (en) Proactively activating automated assistant driving modes for varying degrees of travel detection confidence
US11885632B2 (en) Conditional preparation for automated assistant input from a user in a vehicle
EP4428674A2 (en) Proactively activating automated assistant driving modes for varying degrees of travel detection confidence
CN118591791A (zh) 经由车辆计算装置提供场境自动化助理动作建议
CN115668140A (zh) 当使用默认建议模型不合理时使用临时机器学习模型生成能够选择的建议

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right