Pular para o conteúdo

Design clássico · Pleno

Gmail Smart Compose

Projeto de entrevista clássico. Pontos centrais: LM autorregressivo, latência abaixo de 100 ms, beam search e taxa de aceitação.

14 min de leitura · Conteúdo revisado em 23 de outubro de 2026

Resposta curta

Projeto de entrevista clássico. Pontos centrais: LM autorregressivo, latência abaixo de 100 ms, beam search e taxa de aceitação. O Smart Compose é um recurso do Gmail que usa aprendizado de máquina para oferecer sugestões de conclusão de frase enquanto a pessoa digita, para que o e-mail seja escrito mais rápido.

01 · CONTEXTO E DESAFIOS

Completar a frase enquanto a pessoa digita

O Smart Compose é um recurso do Gmail que usa aprendizado de máquina para oferecer sugestões de conclusão de frase enquanto a pessoa digita, para que o e-mail seja escrito mais rápido. É um bom exemplo de design de sistemas de ML.

Como as sugestões saem a cada tecla, o modelo precisa responder idealmente em até 100 ms para a pessoa não notar atraso. Ao mesmo tempo, o Gmail tem mais de 1,4 bilhão de usuários, então o modelo precisa de capacidade suficiente para sugerir sob medida em contextos sutilmente diferentes.

Havia ainda uma restrição de dados: os pesquisadores não tinham acesso aos e-mails e, por isso, precisaram desenvolver e treinar um sistema sobre um conjunto de dados que eles próprios não podem ler.

02 · O MODELO

Que contexto o modelo enxerga e por que um modelo híbrido

Modelos de linguagem típicos aprendem a prever a próxima palavra condicionada ao prefixo já digitado. Num e-mail, porém, as palavras digitadas são só um sinal: o modelo também é condicionado ao assunto e, se a pessoa está respondendo, ao e-mail anterior.

Uma abordagem seria tratar o problema como tradução automática sequência a sequência (seq2seq), em que a origem é o assunto somado ao e-mail anterior e o destino é o e-mail em escrita. A qualidade de predição era boa, mas a abordagem não atendeu à restrição de latência por ordens de grandeza.

A solução combinou um modelo de saco de palavras (BoW) com um modelo de linguagem recorrente (RNN-LM), mais rápido que os modelos seq2seq com apenas um leve sacrifício de qualidade. Assunto e e-mail anterior são codificados pela média dos embeddings de cada campo, e as médias unidas alimentam o RNN-LM em cada passo de decodificação.

CritérioSequência a sequência (seq2seq)BoW com RNN-LM
ContextoOrigem é o assunto somado ao e-mail anteriorMédia dos embeddings de cada campo
Qualidade de prediçãoFuncionou bemLeve sacrifício de qualidade
LatênciaFalhou por ordens de grandezaMais rápido que seq2seq
  1. O diagrama começa pelo editor, de onde saem os sinais que o modelo recebe.

    Diagrama da arquitetura: Smart Compose: contexto do modelo
    CLEditor do Gmail
    CPCodificador de contexto
    CPModelo de linguagem recorrente
  2. O assunto e o e-mail anterior são codificados pela média dos embeddings de cada campo.

    Diagrama da arquitetura: Smart Compose: contexto do modelo
    CLEditor do Gmail
    CPCodificador de contextomédia dos embeddings
    CPModelo de linguagem recorrente
  3. As médias unidas são entregues ao modelo recorrente em cada passo de decodificação, junto com as palavras já digitadas.

    Diagrama da arquitetura: Smart Compose: contexto do modelo
    CLEditor do Gmail
    CPCodificador de contexto
    CPModelo de linguagem recorrenteprevê a continuação

03 · TREINO E SERVING

Treinar rápido e servir no ritmo da digitação

O treino percorre bilhões de exemplos e exige ajuste de hiperparâmetros. Para acelerar, o time usou um TPUv2 Pod completo nos experimentos e conseguiu treinar um modelo até a convergência em menos de um dia.

Mesmo com o modelo híbrido, a versão inicial em CPU padrão tinha latência média de centenas de milissegundos. Ao transferir a maior parte da computação para TPUs, a latência média caiu para dezenas de milissegundos e uma única máquina passou a atender mais pedidos.

  1. O editor envia um pedido de sugestão a cada tecla, e a resposta deve vir idealmente em até 100 ms.

    Diagrama da arquitetura: Smart Compose: caminho de serving
    CLEditor do Gmailpedido por tecla
    CPServiço de sugestão
    CPInferência do modelo
  2. Na versão inicial, a inferência rodava em CPU padrão, com latência média de centenas de milissegundos.

    Diagrama da arquitetura: Smart Compose: caminho de serving
    CLEditor do Gmail
    CPServiço de sugestão
    CPInferência do modeloCPU padrão
  3. Com a maior parte da computação enviada às TPUs, a latência média caiu para dezenas de milissegundos e uma máquina passou a atender mais pedidos.

    Diagrama da arquitetura: Smart Compose: caminho de serving
    CLEditor do Gmail
    CPServiço de sugestão
    CPInferência do modeloTPU

04 · PRIVACIDADE E PRÓXIMOS PASSOS

Viés, memorização e evolução do modelo

Modelos de linguagem podem refletir vieses humanos, com associações de palavras e conclusões de frase indesejadas. Quanto à privacidade, os modelos não podem expor informação privada, e o time fez testes extensivos para garantir que só frases comuns a múltiplos usuários fossem memorizadas.

Como evolução, o time cita arquiteturas mais avançadas, que só irão à produção quando a restrição de latência puder ser atendida, e modelos de linguagem pessoais, para emular o estilo de escrita de cada pessoa.

Perguntas frequentes

O que é Gmail Smart Compose?

Projeto de entrevista clássico. Pontos centrais: LM autorregressivo, latência abaixo de 100 ms, beam search e taxa de aceitação.

O que o design de Gmail Smart Compose cobre?

Ele está organizado nestas seções: Completar a frase enquanto a pessoa digita, Que contexto o modelo enxerga e por que um modelo híbrido, Treinar rápido e servir no ritmo da digitação e Viés, memorização e evolução do modelo.

Quanto tempo leva Gmail Smart Compose e qual é o nível?

Leva cerca de 14 minutos para ler e tem nível Pleno.

Agora projete você mesmo

Rode este caso como uma entrevista na escola de System Design: você toma as decisões, o tutor as questiona e você vê a nota do seu desenho.