API Topics para Web

A API Topics ativa a publicidade com base em interesses sem usar cookies de terceiros.

Como a API Topics funciona

A API Topics pode ser usada para observar e fornecer acesso a temas que parecem ser de interesse do usuário com base na atividade dele. A API Topics pode dar aos autores de chamada de API (como plataformas de adtech) acesso aos temas de interesse de um usuário, mas sem revelar outras informações sobre a atividade dele.

Principais conceitos

  • Um tema é um conjunto de interesses legível por humanos que faz parte da taxonomia de temas da API Topics.
  • Um autor de chamada é uma entidade, como um app, um SDK de terceiros, um site ou serviço, que faz uma solicitação para a API Topics para observar ou acessar os interesses de um usuário.
  • Um tema é observado por um autor de chamada se ele fez uma solicitação para a API Topics em uma página da Web ou um app associado a esse tema durante as últimas três épocas.
  • Uma época é um período de contabilização de um tema, que é definido como uma semana por padrão.
  • Uma taxonomia é uma lista hierárquica de categorias, que inclui, por exemplo, /Arts & Entertainment/Music & Audio/Soul & R&B e /Business & Industrial/Business Services/Corporate Events.
  • Os temas são derivados usando um modelo de classificador que mapeia a atividade do usuário para zero ou mais temas.

Etapas principais do fluxo da API Topics

O ciclo de vida da API Topics tem três etapas principais:

  • Observe a atividade do usuário, como quando ele visita a página da Web https://cats.example/tabby/index.html ou faz o download do app cats.
  • Derive tópicos da atividade do usuário, por exemplo, /Pets & Animals/Pets/Cats.
  • Acessar temas observados anteriormente para o usuário, por exemplo, como um indicador para selecionar publicidade relevante (como uma promoção de ração para gatos).

Observar temas

Os autores das chamadas só podem acessar os temas de interesse que observaram. Um autor de chamada observa um tema quando faz uma solicitação para a API Topics em um contexto associado a ele. Para ilustrar esse conceito, considere o exemplo simplificado a seguir.

  • Suponha que haja dois autores de chamadas da API Topics: A e B.
  • Há dois contextos:
    • Greenhouse, por exemplo, um app chamado Greenhouse ou um site greenhouse.example, associado ao tópico Home & Garden.
    • Exercícios de tênis, por exemplo, um app chamado "Exercícios de tênis" ou um site "tennis.example", associado ao tópico Sports/Tennis.
  • Os autores da chamada A e B estão presentes no contexto de Greenhouse.
  • Apenas o autor da chamada B está presente no contexto dos exercícios de tênis.
  • Para simplificar, vamos supor que nenhum tema foi observado para o usuário antes da época 1.
  • O usuário visita o app Greenhouse, e os autores da chamada A e B fazem uma chamada da API Topics para registrar a visita do usuário à página ou ao app. Consulte o guia de implementação sugerido em Próximas etapas para saber como chamar a API Topics. Esse registro (um nome de host ou dados do app) é usado mais tarde para gerar tópicos de interesse. A API Topics vai marcar o tema Home & Garden como observado pelos autores da chamada A e B.
  • O usuário acessa o app Tennis exercises. Somente o autor da chamada B envia uma solicitação da API Topics. A API Topics vai marcar o tema Sports/Tennis como observado pelo autor da chamada B.
  • Ao final da época, a API Topics atualiza os principais temas do usuário e determina os autores de chamadas que observaram esses temas com base na atividade do usuário.
  • Mais tarde, quando o autor da chamada B fizer outra chamada da API Topics, ele poderá receber o tema Home & Garden ou Sports/Tennis (ou, com uma chance de 5%, um tema aleatório) para esse usuário na matriz de resposta.
  • O autor da chamada A só pode acessar o tópico Home & Garden, porque nunca observou o tópico Sports/Tennis. Isso significa que terceiros só vão saber sobre o tema de interesse de um usuário no contexto específico (app ou site) em que ele está presente.
Diagrama mostrando que a API Topics só marca os temas como observados se os autores de chamadas tiverem presença no contexto.
A API Topics marca os temas observados apenas pelos autores de chamadas que têm presença no contexto desses temas. Os autores das chamadas só poderão acessar os tópicos que observaram.

Extrair temas

A API Topics extrai temas de interesse da atividade do usuário. Os temas são selecionados em uma taxonomia predefinida de código aberto. Uma vez por época, o Topics atualiza os cinco principais temas do usuário e os autores das chamadas que os observaram durante a época. O modelo de classificador de temas deriva temas da atividade do usuário: nome do host para uma visita a uma página da Web, informações do app no Android.

O autor da chamada acessa os temas de interesse do usuário

A API retorna apenas os temas que foram observados pelo autor da chamada nas três épocas mais recentes. Um máximo de três temas pode ser retornado para um autor da chamada,um para cada uma das três épocas recentes (se o autor da chamada observou temas para essa época). Os temas retornados podem ser usados pelo autor da chamada para complementar qualquer informação contextual e podem ser combinados para ajudar a encontrar um anúncio mais relevante para o usuário.

Períodos

A API Topics precisa garantir que os temas de interesse sejam atualizados. Os temas são inferidos para um usuário com base na atividade dele durante um período conhecido como época, uma semana por padrão. Cada usuário tem as próprias épocas (as épocas são "por usuário") e o horário de início inicial é aleatório.

Uma vez por época, a API Topics calcula os cinco principais temas do usuário e determina quais autores das chamadas observaram esses temas usando informações no dispositivo. O tema para cada época é escolhido aleatoriamente entre os cinco principais temas do usuário no período. Para aumentar ainda mais a privacidade e garantir que todos os temas sejam representados, há uma chance de 5% de ele ser selecionado aleatoriamente entre todos os temas possíveis na taxonomia de interesses.

Tópicos na Web na prática

Na Web, os temas são inferidos com base nos nomes de domínio das páginas que o usuário visita. Por exemplo, o tópico inferido para o site dogs.example pode ser /Pets & Animals/Pets/Dogs.

O diagrama a seguir mostra um exemplo simplificado para demonstrar como a API Topics pode ajudar uma plataforma de adtech a selecionar um anúncio adequado. O exemplo pressupõe que o navegador do usuário já tenha um modelo de mapeamento dos nomes do host dos sites para os temas.

Diagrama mostrando os estágios no ciclo de vida da API Topics, desde um usuário que visita sites até um anúncio sendo veiculado.
O diagrama do ciclo de vida da API Topics apresenta os estágios das ações da API de um ponto de vista geral.

O navegador determina a origem do autor da chamada com base no contexto do código que chama a API Topics. Na prática, isso significa que os usuários da API Topics chamam a API em um iframe da origem ou incluem temas em um fetch para a origem.

Por exemplo, uma plataforma de fornecimento (SSP, na sigla em inglês) pode ser incorporada em vários sites de editores. A SSP poderia chamar a API Topics em um iframe da origem, permitindo que ela observe os temas associados a um usuário nos sites do editor. Esses temas podem ser compartilhados com uma plataforma de demanda (DSP) para ajudar a selecionar um anúncio relevante para o usuário.

Como a API decide quais autores de chamadas podem ver quais temas

Os autores das chamadas de API só recebem temas observados recentemente, e os temas de um usuário são atualizados uma vez a cada época, um período definido como uma semana na implementação do Chrome. Isso significa que a API fornece uma janela contínua em que um autor da chamada pode receber temas observados.

A tabela a seguir descreve um exemplo (embora não realista) de um histórico de navegação hipotético de um usuário durante uma única época, mostrando temas associados aos sites que ele visitou e os autores de chamadas de API presentes em cada site (as entidades que chamam document.browsingTopics() no código JavaScript incluído no site).

Site Tópicos Autores da chamada da API no site
running.example Running & Walking
Athletic Shoes
adtech1.example
adtech2.example
dogs.example Dogs adtech1.example
holiday.example Hotels & Accommodations adtech2.example
sunglasses.example Sunglasses [nenhum]

No final da época (uma semana por padrão), a API Topics gera os principais temas do navegador para a semana.

  • adtech1.example agora está qualificado para receber os temas Running & Walking, Athletic Shoes e Dogs, porque os observou em running.example e também em dogs.example.
  • adtech1.example não está qualificado para receber o tema Hotels & Accommodations deste usuário porque não está presente nos sites visitados recentemente associados a esse tema.
  • adtech2.example observou os temas Running & Walking, Athletic Shoes e Hotels & Accommodations, mas não o Dogs.

O usuário visitou o site óculos-de-sol.example, que tem o tema Sunglasses, mas não houve chamadas à API Topics nesse site. Neste ponto, isso significa que o tema Sunglasses não seria retornado pela API para nenhum autor da chamada.

Na segunda semana, o usuário visita outro site:

Site Tópicos Autores da chamada da API no site
cameras.example Camera & Photo Equipment adtech2.example

Além disso, o código de adtech2.example é adicionado a sunglasses.example:

Site Tópicos Autores da chamada da API no site
sunglasses.example Sunglasses adtech2.example

Assim como Running & Walking, Athletic Shoes e Hotels & Accommodations da semana 1, isso significa que adtech2.example agora pode receber os temas Camera & Photo Equipment e Sunglasses, mas não até a época seguinte, na terceira semana. Isso garante que terceiros não possam saber mais sobre o passado de um usuário do que conseguiriam usando cookies, como nesse caso, saber sobre um interesse em moda.

Depois de mais duas semanas, Running & Walking, Athletic Shoes e Hotels & Accommodations podem sair da lista de temas qualificados de adtech2.example se o usuário não acessar sites com esses temas que incluem código de adtech2.example.

As etapas que a API Topics segue quando os usuários visitam sites que usam a API.
Como a API observa e acessa tópicos.

Modelo de classificador

A API Topics usa um modelo de classificador que mapeia os nomes de host de sites para zero ou mais temas. A análise de outras informações, como URLs completos ou conteúdo da página, pode permitir anúncios mais relevantes, mas também reduzir a privacidade.

Taxonomia

Os temas são selecionados em uma taxonomia. Esses temas foram selecionados pelo Chrome com o objetivo de tornar a taxonomia um recurso mantido por colaboradores confiáveis do ecossistema. A taxonomia precisa ser pequena o suficiente para que muitos navegadores de usuários sejam associados a cada tema. O objetivo final é que a taxonomia seja proveniente de uma parte externa que incorpore feedback e ideias de todo o setor.

Para evitar categorias sensíveis, os temas precisam ser públicos, selecionados por pessoas e atualizados. A taxonomia usada pelo Chrome foi selecionada por pessoas para excluir categorias consideradas sensíveis, como etnia ou orientação sexual.

Classificação de temas

Os temas são selecionados manualmente para 50.000 sites principais, e essa lista de substituição de nomes de host e temas é usada para treinar o modelo do classificador. Para os principais sites, os tópicos são acessados na lista de substituição em vez de usar o modelo de classificador. É possível acessar a lista de substituição localmente no seu computador.

Página chrome://topics-internals com o painel do classificador selecionado.
O painel chrome://topics-internals da página Classificador lista a versão do modelo, o caminho dele e os tópicos associados a cada host listado.

A implementação da API Topics no Chrome faz o download de um arquivo TensorFlow Lite que representa o modelo para que ele possa ser usado localmente no dispositivo do usuário.

Como os cinco principais temas do usuário são selecionados

A API retorna um tema para cada período, até um máximo de três. Se três temas forem retornados, eles incluem temas da época atual e das duas anteriores.

  1. No final de cada período, o navegador compila uma lista de páginas que atendem a estes critérios:
    • A página foi visitada pelo usuário durante a época.
    • A página inclui um código que chama document.browsingTopics().
    • A API foi ativada (por exemplo, não foi bloqueada pelo usuário ou por um cabeçalho de resposta).
  2. No dispositivo do usuário, o navegador usa o modelo de classificador fornecido pela API Topics para mapear o nome do host de cada página para uma lista de temas.
  3. O navegador gera uma lista dos cinco temas principais.

    • Cada um dos 22 tópicos raiz na taxonomia é atribuído a um bucket de "utilidade alta" ou "utilidade padrão" com base no feedback do ecossistema de publicidade. Primeiro, o navegador classifica os tópicos pela atribuição de bucket. Todos os tópicos descendentes herdam a atribuição de bucket do tópico raiz pai. Os tópicos de "alta utilidade" são priorizados.
    • Em seguida, o navegador classifica os tópicos por frequência em cada intervalo.
    • Os cinco principais temas dessa lista classificada são selecionados como os principais temas do usuário para essa época.

O método document.browsingTopics() retorna um tema aleatório entre os cinco principais de cada período, com uma chance de 5% de que qualquer um deles seja escolhido aleatoriamente da taxonomia completa dos temas. No Chrome, os usuários também podem remover temas individuais ou limpar o histórico de navegação para reduzir o número de temas retornados pela API. Os usuários também podem desativar a API.

Você pode conferir informações sobre os tópicos observados durante a época atual na página chrome://topics-internals.

Próximas etapas

Prepare seu ambiente para testar e desenvolver aplicativos da Web com a API Topics.
Confira detalhes de implementação e exemplos de código para que os autores das chamadas observem e acessem os temas.

Consulte também

Confira nossos recursos para entender melhor a API Topics na Web.