Methods and apparatus related to determining a semantically diverse subset of candidate responses to provide for initial presentation to a user as suggestions for inclusion in a reply to an electronic communication. Some of those implementations determine the semantically diverse subset of candidate responses based on generating, over a neural network response encoder model, embeddings that are each based on one of the plurality of the candidate responses. The embedding based on a given candidate response may be compared to embedding(s) of candidate response(s) already selected for the subset, and the given candidate response added to the subset only if the comparing indicates a difference criterion is satisfied.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method implemented by one or more processors, comprising: identifying a candidate set of responses for consideration for inclusion in a reply to a transmitted electronic communication directed to a user, each of the responses of the candidate set including one or more tokens and being determined based on content of the electronic communication; selecting a first response, of the responses of the candidate set, for inclusion in a selected set; generating a first embedding over a neural network response encoder model based on applying the first response as input to the neural network response encoder model; generating a second embedding over the neural network response encoder model based on applying a second response, of the responses of the candidate set, as input to the neural network response encoder model; determining that the second response satisfies a difference criterion relative to the first response based on comparing the first embedding to the second embedding; based on determining that the second response satisfies the difference criterion, selecting the second response for inclusion in the selected set; and providing the responses of the selected set for display in an interface rendered by a client device of the user, the interface enabling selection of any one of the responses of the selected set for inclusion in a reply electronic communication that is a reply by the user to the electronic communication. 2. The method of claim 1, wherein one or more of the processors are remote from the client device and wherein providing the responses of the selected set for display in the interface comprises: transmitting content to the client device to cause the client device to visually render the responses of the selected set in the interface a selectable manner. 3. The method of claim 1, further comprising: receiving a selection of a given response of the responses of the selected set, the selection based on user interface input generated by a user interface input device of the client device; and incorporating the response into the reply communication in response to receiving the selection. 4. The method of claim 1, wherein the neural network response encoder model includes long short-term memory cells. 5. The method of claim 4, wherein generating the first embedding comprises using a state of one or more of the long short-term memory cells of the neural network response encoder model as the embedding, the state being the state after applying the first response to the neural network response encoder model. 6. The method of claim 4, wherein generating the first embedding is further based on applying at least part of the electronic communication to the neural network response encoder model prior to applying the first response; and wherein generating the second embedding is further based on applying at least part of the electronic communication to the neural network response encoder model prior to applying the second response to the neural network response encoder model. 7. The method of claim 1, wherein determining that the second response satisfies the difference criterion relative to the first response based on comparing the first embedding to the second embedding comprises: calculating a measure between the first embedding and the second embedding, wherein the measure is a cosine similarity measure, a dot product, or a Euclidian distance; and determining that the measure satisfies a threshold. 8. The method of claim 1, wherein the candidate set of responses are ranked and wherein selecting the first response comprises selecting the first response based on it being the most highly ranked. 9. The method of claim 8, further comprising: identifying an additional response, of the responses of the candidate set, that is the next most highly ranked response following the first response; generating an additional embedding over the neural network response encoder model based on applying the additional response as input to the neural network response encoder model; determining that the additional response fails to satisfy the difference criterion relative to the first response based on comparing the first embedding and the additional embedding; and omitting the additional response from the selected set based on the second response failing to satisfy the difference criterion. 10. The method of claim 1, further comprising: subsequent to selecting the second response for inclusion in the selected set: identifying an additional response of the responses of the candidate set; generating an additional embedding over the neural network response encoder model based on applying the additional response as input to the neural network response encoder model; determining that the additional response satisfies the difference criterion relative to at least one of: the first response and the second response, the determining based on comparing the additional embedding to the first embedding and comparing the additional embedding to the second embedding; and selecting the additional response for inclusion in the selected set based on the second response satisfying the difference criterion relative to one or both of the first response and the second response. 11. The computer-implemented method of claim 1, wherein providing the responses of the selected set occurs independent of any input provided via the client device in generating the reply electronic communication. 12. A method implemented by one or more processors, comprising: identifying a ranked candidate set of responses for consideration for inclusion in a reply to an electronic communication transmitted to a user, each of the responses of the candidate set including one or more tokens and being determined based on content of the electronic communication; selecting a first response, of the responses of the candidate set, for inclusion in a selected set, the selecting of the first response based on it being the most highly ranked of the responses of the candidate set; for each of a plurality remaining responses of the responses of the candidate set, and until at least one condition has been satisfied: comparing an embedding vector of the remaining response to a first embedding vector of the first response and any embedding vectors of any additional responses selected for inclusion in the selected set, and determining whether to include the remaining response in the selected set based on the comparing; and providing the responses of the selected set for display in an interface rendered by a client device of the user, the interface enabling selection of any one of the responses of the selected set for inclusion in a reply electronic communication that is a reply by the user to the electronic communication. 13. The method of claim 12, wherein the at least one condition includes that a threshold quantity of the responses have been selected for inclusion in the selected set. 14. The method of claim 12, wherein one or more of the processors are remote from the client device and wherein providing the responses of the selected set for display in the interface comprises: transmitting content to the client device to cause the client device to visually render the responses of the selected set in the interface a selectable manner. 15. The method of claim 12, further comprising: receiving a selection of a given response of the responses of the selected set, the selection based on user interface input generated by a user interface input device of the client device; and incorporating the response into the reply communication in response to receiving the selection. 16. A system, comprising: one or more processors; memory coupled to the one or more processors; wherein the one or more processors are operable to execute instructions stored in the memory to: identify a candidate set of responses for consideration for inclusion in a reply to a transmitted electronic communication directed to a user, each of the responses of the candidate set including one or more tokens and being determined based on content of the electronic communication; select a first response, of the response of the candidate set, for inclusion in a selected set; generate a first embedding over a neural network response encoder model based on applying the first response as input to the neural network response encoder model; generate a second embedding over the neural network response encoder model based on applying a second response, of the responses of the candidate set, as input to the neural network response encoder model; determine that the second response satisfies a difference criterion relative to the first response based on comparing the first embedding to the second embedding; based on determining that the second response satisfies the difference criterion, select the second response for inclusion in the selected set; and provide the responses of the selected set for display in an interface rendered by a client device of the user, the interface enabling selection of any one of the responses of the selected set for inclusion in a reply electronic communication that is a reply by the user to the electronic communication.