Abstract:
A method of using a virtual assistant, comprises, at an electronic device configured to transmit and receive data, generating, in response to a trigger, at least one experiential data structure accessible to a virtual assistant, wherein the experiential data structure comprises an organized set of data associated with at least one of the user and the electronic device at a particular point in time. The method further comprises storing at least one experiential data structure; modifying at least one experiential data structure with one or more annotations associated with the experiential data structure, utilizing the virtual assistant; receiving a natural-language user request for service from the virtual assistant; and outputting information responsive to the user request using at least one experiential data structure.
Abstract:
Systems and processes are disclosed for handling a multi-part voice command for a virtual assistant. Speech input can be received from a user that includes multiple actionable commands within a single utterance. A text string can be generated from the speech input using a speech transcription process. The text string can be parsed into multiple candidate substrings based on domain keywords, imperative verbs, predetermined substring lengths, or the like. For each candidate substring, a probability can be determined indicating whether the candidate substring corresponds to an actionable command. Such probabilities can be determined based on semantic coherence, similarity to user request templates, querying services to determine manageability, or the like. If the probabilities exceed a threshold, the user intent of each substring can be determined, processes associated with the user intents can be executed, and an acknowledgment can be provided to the user.
Abstract:
An electronic device receives a first input that corresponds to a request to open a respective application, and in response to receiving the first input, in accordance with a determination that the device is being operated in a limited-distraction context, provides a limited-distraction user interface that includes providing for display fewer selectable user interface objects than are displayed in a non-limited user interface for the respective application, and in accordance with a determination that the device is not being operated in a limited-distraction context, provides a non-limited user interface for the respective application.
Abstract:
The method is performed at an electronic device with one or more processors and memory storing one or more programs for execution by the one or more processors. A first speech input including at least one word is received. A first phonetic representation of the at least one word is determined, the first phonetic representation comprising a first set of phonemes selected from a speech recognition phonetic alphabet. The first set of phonemes is mapped to a second set of phonemes to generate a second phonetic representation, where the second set of phonemes is selected from a speech synthesis phonetic alphabet. The second phonetic representation is stored in association with a text string corresponding to the at least one word.
Abstract:
Systems and processes for application integration with a digital assistant are provided. In accordance with one example, a method includes, at an electronic device having one or more processors and memory, receiving a natural-language user input; identifying, with the one or more processors, an intent object of a set of intent objects and a parameter associated with the intent, where the intent object and the parameter are derived from the natural-language user input. The method further includes identifying a software application associated with the intent object of the set of intent objects; and providing the intent object and the parameter to the software application.
Abstract:
The intelligent automated assistant system engages with the user in an integrated, conversational manner using natural language dialog, and invokes external services when appropriate to obtain information or perform various actions. The system can be implemented using any of a number of different platforms, such as the web, email, smartphone, and the like, or any combination thereof. In one embodiment, the system is based on sets of interrelated domains and tasks, and employs additional functionally powered by external services with which the system can interact.
Abstract:
A method for operating a voice trigger is provided. In some implementations, the method is performed at an electronic device including one or more processors and memory storing instructions for execution by the one or more processors. The method includes receiving a sound input. The sound input may correspond to a spoken word or phrase, or a portion thereof. The method includes determining whether at least a portion of the sound input corresponds to a predetermined type of sound, such as a human voice. The method includes, upon a determination that at least a portion of the sound input corresponds to the predetermined type, determining whether the sound input includes predetermined content, such as a predetermined trigger word or phrase. The method also includes, upon a determination that the sound input includes the predetermined content, initiating a speech-based service, such as a voice-based digital assistant.
Abstract:
An electronic device with one or more processors and memory includes a procedure for training a digital assistant. In some embodiments, the device detects an impasse in a dialogue between the digital assistant and a user including a speech input. During a learning session, the device utilizes a subsequent clarification input from the user to adjust intent inference or task execution associated with the speech input to produce a satisfactory response. In some embodiments, the device identifies a pattern of success or failure associated with an aspect previously used to complete a task and generates a hypothesis regarding a parameter used in speech recognition, intent inference or task execution as a cause for the pattern. Then, the device tests the hypothesis by altering the parameter for a subsequent completion of the task and adopts or rejects the hypothesis based on feedback information collected from the subsequent completion.
Abstract:
The method includes receiving, from a user, a first speech input spoken in a first language; inferring a user intent based on at least the first speech input in the first language; based on the inferred user intent, generating one or more alternative expressions of the first speech input in the first language; and providing feedback to the user introducing the alternative expressions as a more preferred input to express the inferred user intent than the first speech input provided by the user.
Abstract:
The electronic device with one or more processors and memory receives an input of a user. The electronic device, in accordance with the input, identifies a respective task type from a plurality of predefined task types associated with a plurality of third party service providers. The respective task type is associated with at least one third party service provider for which the user is authorized and at least one third party service provider for which the user is not authorized. In response to identifying the respective task type, the electronic device sends a request to perform at least a portion of a task to a third party service provider of the plurality of third party service providers that is associated with the respective task type.