API Topics для мобильных устройств: обзор

Узнайте об API Topics для Android и шагах по его реализации. Вы также можете сразу перейти к реализации тем .

How the Topics API works

The Topics API can be used to observe and provide access to topics that appear to be of interest to the user, based on their activity. The Topics API can then give API callers (such as ad tech platforms) access to a user's topics of interest, but without revealing additional information about the user's activity.

Key concepts

  • A topic is a human-readable topic of interest for the current user and is part of the Topics taxonomy.
  • A caller is an entity, such as an app, a third-party SDK, a website, or service, that makes a request to the Topics API to observe or access a user's interests.
  • A topic is observed by a caller, if the caller made a Topics API request from a web page or app associated with this topic during the past three epochs.
  • An epoch is a period of topic computation, which defaults to one week.
  • A taxonomy is a hierarchical list of categories, which includes, for example, such categories as /Arts & Entertainment/Music & Audio/Soul & R&B and /Business & Industrial/Business Services/Corporate Events.
  • Topics are derived using a classifier model that maps user activity to zero or more topics.

Topics API flow core steps

The Topics API lifecycle has three main steps:

  • Observe user activity, such as when they visit the web page https://cats.example/tabby/index.html or download the app cats.
  • Derive topics from user activity, for example /Pets & Animals/Pets/Cats.
  • Access topics previously observed for the user, for example as a signal to select relevant advertising (such as a cat food promotion).

Observe topics

Callers can only access topics of interest that they've observed. A caller observes a topic when they make a Topics API request from a context associated with this topic. To illustrate this concept, consider the following simplified example.

  • Suppose there are two Topics API callers: A and B.
  • There are two contexts:
    • Greenhouse, for example an app named Greenhouse or a website greenhouse.example, associated with the topic Home & Garden.
    • Tennis exercises, for example an app named Tennis Exercises or a website tennis.example, associated with the topic Sports/Tennis.
  • Both caller A and B are present in the context of Greenhouse.
  • Only the caller B is present in the context of Tennis exercises.
  • Assume that no topics were observed for the user before epoch 1, for the sake of simplification.
  • The user visits the Greenhouse app, and callers A and B make a Topics API call to record the user visit to the page or app (see the implementation guide suggested in Next steps to find out how to call the Topics API). This record (a hostname or app data) is later used to derive topics of interest. The Topics API will later mark the topic Home & Garden as observed by both callers A and B.
  • The user visits the Tennis exercises app. Only the caller B sends a Topics API request. The Topics API will later mark the topic Sports/Tennis as observed by the caller B.
  • By the end of the epoch, the Topics API refreshes the user's top topics and determines the callers that observed these topics based on user activity.
  • Later, when the caller B makes another Topics API call, it can get either Home & Garden or Sports/Tennis topic (or, with a 5% chance, a random topic) for this user in the response array.
  • Caller A can only access the topic Home & Garden, as it has never observed the topic Sports/Tennis. This means that a third-party will only learn about a user's topic of interest within the specific context (app or website) where it is present.
Diagram showing that the Topics API only marks the topics as observed if the callers has presence in the context.
The Topics API marks the topics observed only by the callers that have presence in the context of these topics. The callers will only be able to access the topics they have observed.

Derive topics

Topics derives topics of interest from user activity. The topics are selected from a predefined open-source taxonomy. Once per epoch, Topics refreshes the user's top five topics and the callers that observed them during the epoch. The Topics classifier model derives topics from user activity: hostname for a web page visit, app information on Android.

Caller accesses user's topics of interest

The API returns only topics that have been observed by the caller within the most recent three epochs. A maximum of three topics may be returned to a caller,one topic for each of the three recent epochs (if the caller observed topics for that epoch). The returned topics can be used by the caller to supplement any contextual information and can be combined to help find a more relevant ad for the user.

Epochs

The Topics API must ensure that the topics of interest it provides are kept up to date. The topics are inferred for a user based on their activity during a period of time known as an epoch, one week by default. Each user has their own epochs (epochs are "per user") and the initial start time is randomized.

Once each epoch, the Topics API computes the user's top five topics and determines which callers observed those topics using on-device information. The topic selected for each epoch is randomly selected from the user's top five topics for that time period. To further enhance privacy and ensure that all topics may be represented, there is a 5% chance the topic is randomly selected from all possible topics in the taxonomy of interests.

Темы об Android на практике

API Topics на Android предназначен для поддержки сторонних рекламных SDK, которые обычно работают в нескольких приложениях. Темы предоставляют вызывающим абонентам подробные рекламные темы, представляющие интерес, на основе использования приложения пользователем, не полагаясь на перекрестные идентификаторы приложений. Эти темы можно использовать для дополнения любой контекстной информации, связанной с приложением, которое хочет отображать рекламу, и их можно комбинировать, чтобы помочь пользователю выбрать подходящее объявление.

В контексте API Topics покупатели и рекламодатели зависят от стороны продаж . Именно продавец широко присутствует в приложениях издателя и наблюдает за темами пользователей, а затем делится этими темами с покупателями, чтобы помочь им выбрать более релевантную рекламу. Чтобы получать темы, приложения и SDK на стороне продавца должны установить зону присутствия, наблюдая за API тем в течение как минимум одной эпохи .

В руководстве по реализации Topics API приведены примеры кода, демонстрирующие, как настроить возможность получения тем для рекламы на основе интересов.

Интеграция тем по типу бизнеса

Включите IBA (рекламу на основе интересов) с помощью Topics API. Следуйте инструкциям в зависимости от типа вашего бизнеса в области рекламных технологий, чтобы интегрировать API Topics и подготовиться к запуску.

Для всех рекламных технологий

Для специалистов по рекламе на стороне продавца

  • Станьте наблюдателем , чтобы установить зону действия API Topics. API Topics предоставляет новый сигнал, поэтому вам потребуется обновить SDK, чтобы начать вызывать API Topics. Чтобы последовательно получать темы, ваш SDK должен вызывать API из приложений издателя хотя бы один раз за эпоху. Чтобы получить максимальное количество тем (три темы), которые можно отправить вместе с запросами объявлений, требуется до четырех эпох.
  • Включите информацию Topics API в свои запросы объявлений. Для каждого запроса объявления начните делиться данными API Topics с партнерами-покупателями. API тем планирует дополнять другие сигналы (например, контекстные сигналы), чтобы помочь найти подходящую рекламу для данного посетителя.
  • Разработайте протокол обмена темами с партнерами-покупателями. API Topics требует, чтобы каждый пакет SDK работал с нижестоящими партнерами, чтобы договориться о том, как будут передаваться данные API Topics.

Для специалистов по рекламе на стороне покупателя

  • Свяжитесь с партнерами по продажам, чтобы подтвердить их планы по наблюдению за темами и установлению присутствия. Чтобы получать темы, поставщики продавцов должны вызывать API тем хотя бы один раз за эпоху.
  • Совместно разработайте протокол получения тем от ваших партнеров по продажам. Темы – это новый сигнал, который будет передан партнерам по продажам в рамках запроса объявления. Потребители на стороне покупателя должны будут убедиться, что они работают со своими вышестоящими партнерами над тем, как будут обсуждаться темы.
  • Включите темы в модели ставок и оптимизации. Ожидается, что API Topics будет дополнять другие сигналы, например контекстные, чтобы помочь посетителю найти подходящую рекламу.

Как API определяет темы для приложения

В Android API Topics определяет темы для приложения на основе информации о приложении, используя модель классификатора. В текущей реализации Topics использует имена приложений и пакетов для назначения тем, представляющих интерес для приложения, но позже это может быть расширено за счет включения другой информации, такой как описание приложения.

Классификатор тем

Интересующие темы извлекаются из модели классификатора, которая обучается на общедоступной информации о приложении.

  • Когда модель классификатора используется для вывода для вычисления тем для данной эпохи, набор используемых сигналов остается на устройстве. Этот набор сигналов может включать установленные или недавно использованные приложения, а позже он может быть расширен за счет включения других сигналов.
  • Модель V5 была обучена Google на 540 000 общедоступных приложениях, помеченных людьми, и 17 миллионах помеченных ML, из магазинов приложений, таких как Google Play Store. Модель использует имена приложений и имена пакетов в качестве входных сигналов и доступна разработчикам приложений бесплатно, чтобы протестировать и посмотреть, к каким темам относится их приложение.
  • Возможно, что приложение соответствует более чем одной теме, не связано ни с одной темой или не добавлено в историю тем пользователя. Если приложение соответствует более чем одной теме в таксономии, количество тем, выбранных для этого приложения, будет ограничено тремя первыми.

Чтобы лучше понять, как работает модель классификатора, вы можете проверить, как различные данные приложений влияют на классификацию, с помощью Colab Android Topics Classifier Colab.

Таксономия

Темы выбираются из предопределенной таксономии с открытым исходным кодом. Таксономия общедоступна и может быть изменена. Предложения можно оставить, воспользовавшись кнопкой обратной связи вверху страницы. Эта таксономия курируется людьми, поэтому деликатные темы не являются частью таксономии. Он будет адаптирован к категориям рекламы, которые могут показываться в мобильных приложениях на Android.

Темы об Android на практике

Предположим, что на устройстве пользователя установлено семь приложений: A, B, C, D, E, F и G. Предположим, что классификация тем для приложения и SDK рекламных технологий в этих приложениях следующая:

Приложение Классификация тем SDK рекламных технологий
А Т1, Т5 объявление-SDK1, объявление-SDK2
Б Т2 реклама-SDK2
С Т3, Т6 реклама-sdk3, реклама-sdk4
Д Т1, Т4 объявление-SDK1
Э Т5 реклама-sdk4, реклама-sdk5
Ф Т6 реклама-sdk2, реклама-sdk3, реклама-sdk4
Г Т7 реклама-SDK2

Конец первой недели: API тем генерирует 5 самых популярных тем пользователя за эту эпоху.

Самая популярная тема Звонящие, которые могут узнать о теме
Т1 объявление-SDK1, объявление-SDK2
Т2 реклама-SDK2
Т3 реклама-sdk3, реклама-sdk4
Т4 объявление-SDK1
Т5 реклама-sdk1, реклама-sdk2, реклама-sdk4, реклама-sdk5

На второй неделе, если вызывающий абонент в каком-либо приложении вызывает API, то возвращаемый список тем будет включать только темы, для которых вызывающий абонент находится в столбце «Вызывающие абоненты, которые могут узнать о теме» для этой темы для этого приложения для этой эпохи.

  • Окно истории, включенное в расчет тем, доступных каждому звонящему, составляет три эпохи (или три недели).
  • Используются только темы, связанные с приложениями, которые вызывают API тем через рекламные SDK. Это означает, что если приложение не включает в себя какие-либо рекламные SDK, вызывающие API тем, темы, связанные с этим приложением, не входят в пул тем, доступных рекламным SDK.
  • Приложение также может декларативно отказаться от API тем. Темы, связанные с отключенными приложениями, не будут учитываться при еженедельном подсчете тем. Этот документ будет обновлен и будет включать соответствующие подробности реализации.

Если платформы недостаточно используют приложение, чтобы определить пять тем, платформа может рассмотреть такие варианты, как случайное создание оставшихся тем.

Шифрование возвращаемых тем

Зарегистрированные рекламные платформы, которые вызывают API тем, также должны предоставить ключи шифрования, чтобы гарантировать, что возвращаемые темы будут доступны для чтения только вызывающему абоненту.

Privacy Sandbox получит эти ключи с конечной точки, предоставленной рекламной технологией. Мы рекомендуем регулярно обновлять ключи, но не реже, чем раз в шесть месяцев.

Privacy Sandbox попросит рекламных специалистов подтвердить доступность конечной точки, которую они предоставляют в процессе регистрации. Более подробную информацию о действиях, требуемых действующими и вновь зарегистрированными специалистами по рекламе, см. в руководстве по регистрации.

Next steps

Check out implementation details and code samples for callers to observe and access topics.
Learn how users and developers can manage and customize the Topics API to suit user's preferences and needs.

См. также

Ознакомьтесь с нашими ресурсами, чтобы лучше понять API Topics на Android.