Présentation de l'API Topics pour mobile

Envoyer un commentaire

À propos de l'API Topics

Dans le domaine de la publicité mobile, les annonceurs souhaitent diffuser des annonces adaptées correspondant aux centres d'intérêt des mobinautes. Par exemple, un passionné de cuisine a plus de chances d'être interpellé par des annonces liées au monde culinaire que par des annonces qui n'ont aucun rapport avec ses centres d'intérêt.

La publicité contextuelle est basée uniquement sur les centres d'intérêt dérivés du le contenu en cours de visionnage (et sur lequel la publicité est diffusée). L'un des avantages L'API Topics permet d'utiliser des applications utiles pour l'utilisateur, ne pas être facilement monétisés via la publicité contextuelle, pour afficher des annonces plus pertinentes pour l'utilisateur qu'il ne le pourrait autrement, ce qui contribue au financement des applications utilisateurs.

Par déduction, l'API Topics détermine des signaux précis relatifs aux centres d'intérêt sur l'appareil en fonction de l'utilisation de l'application. Ces signaux, appelés "thèmes", seront partagés avec les annonceurs, la prise en charge des signaux contexuels et d'autres signaux propriétaires, sans qu'il soit nécessaire de suivre des utilisateurs individuels dans les applications.

L'API Topics est conçue pour prendre en charge les SDK publicitaires tiers qui fonctionnent généralement sur plusieurs applications. Cette assistance se présente sous la forme mettre en évidence certains des centres d'intérêt inter-applis que ces SDK utiliseraient normalement observer. Les développeurs d'applications individuels ne doivent pas s'attendre à en apprendre davantage des informations sur leurs utilisateurs.

Concepts clés

  • Un thème est un sujet d'intérêt compréhensible pour l'utilisateur. Il fait partie de la taxonomie de l'API Topics.
  • Un thème est observé par un appelant (une application ou un SDK tiers utilisé dans l'application) ayant effectué une requête API Topics à partir d'une application associée à ce thème au cours des trois dernières "epochs".
  • Une epoch est une période de calcul thématique, telle qu'une semaine.

Comment ça marche

Avec cette proposition, l'API Topics vise à fournir aux appelants des thèmes publicitaires d'intérêt plus précis en fonction de l'utilisation de l'application par l'utilisateur. Ces thèmes peuvent être utilisés pour compléter les informations contextuelles relatives à l'application qui souhaitent diffuser une annonce. Ils peuvent également être combinés afin d'identifier une annonce appropriée pour l'utilisateur.

Reportez-vous au guide du développeur de l'API Topics pour obtenir des exemples de code qui montrent comment configurer l'extraction des thèmes pour la publicité ciblée par centres d'intérêt. Remarque : les API ne sont pas encore finalisées.

Les thèmes sont sélectionnés à partir d'une taxonomie Open Source prédéfinie.

La plate-forme utilise un modèle de classificateur pour déterminer les thèmes. L'implémentation de l'API Topics et son utilisation du classificateur font partie du projet Open Source Android et s'affinent avec le temps.

À des fins d'illustration, l'exemple de code suivant présente l'utilisation de thèmes pour extraire une annonce ciblée par centres d'intérêt. Les API utilisées ici ne sont pas définitives.

// Initialize the Topics API.

topicsFuture = AdvertisingTopicsClient.getTopics();

// Retrieve Topics and use them in Ad request.
Futures.addCallback(
    topicsFuture,
    new FutureCallback<AdvertisingTopicsInfo>() {
        @Override
        public void onSuccess(@Nullable AdvertisingTopicsInfo topicsInfo) {
            // Sanitize Topics result.
            ...
            // Initialize ad request with Topics obtained.
            AdRequest adRequest = AdRequest.initialize(topicsInfo);
        }

        @Override
        public void onFailure(Throwable t) {
            // Handle error.
            ...
        }
});

Pour mieux comprendre le fonctionnement du modèle de classificateur, vous pouvez tester la manière dont différentes données d'application réagissent dans le système à l'aide du colab sur les classificateurs de thèmes Android.

Accéder aux API Topics

Les plates-formes ad tech doivent demander l'accès à l'API Topics. Pour en savoir plus, consultez la section Créer un compte Privacy Sandbox.

Détails

  • Une fois par epoch (une fois par semaine, par exemple), les cinq principaux thèmes de l'utilisateur sont calculés à l'aide des informations disponibles sur l'appareil.

    • Lorsque l'API Topics est appelée, la plate-forme vérifie si un thème est attribué à l'application qui appelle l'API. Si aucun thème n'est attribué, un choix est effectué comme suit et le thème choisi sera attribué à cette application pour le reste de cette epoch.
      • Avec une probabilité de 95 %, un thème est choisi de manière aléatoire dans la liste des cinq principaux thèmes calculés pour cette epoch.
      • Avec une probabilité de 5 %, un thème est choisi de manière aléatoire dans la taxonomie.
      • Un appelant peut spécifier qu'il souhaite récupérer les thèmes sans modifier l'état. Pour ce faire, il peut appeler getTopics à l'aide du paramètre shouldRecordObservation = false. Dans ce cas, les thèmes pourront être renvoyés, mais l'appel ne sera pas inclus dans le calcul hebdomadaire de l'epoch, et la liste des thèmes observés pour l'appelant ne sera pas mise à jour.
    • Chaque application se voit attribuer un thème distinct dans le but d'empêcher la mise en corrélation des différents thèmes avec le même utilisateur d'une application à une autre.
      • Par exemple, l'application A peut voir le thème T1 pour l'utilisateur, tandis que l'application B peut voir le thème T2. De cette façon, les deux applications peuvent difficilement identifier que ces informations sont associées au même utilisateur.
  • L'API Topics renvoie une liste comportant jusqu'à trois thèmes, un pour chacune des trois epochs précédentes.

    • Si vous fournissez jusqu'à trois thèmes, les applications peu utilisées auront suffisamment de thèmes pour trouver des annonces adaptées. Cependant, les applications que vous utilisez fréquemment identifieront au maximum un nouveau thème par semaine.
    • Les informations sur le thème renvoyé incluent un identifiant (nombre entier) correspondant à une entrée de la taxonomie, une version de taxonomie et une version de modèle de classificateur.
    • Seuls les appelants ayant observé l'utilisateur se servir d'une application associée au thème en question au cours des trois dernières epochs pourront recevoir ce thème.
    • Tous les thèmes renvoyés représentent les centres d'intérêt de l'utilisateur. Vous pouvez les sélectionner dans leur totalité ou en partie pour la personnalisation des annonces dans votre demande d'annonce.
  • Une fois qu'un thème est attribué à l'application qui appelle l'API Topics, la plate-forme détermine si l'appelant peut le recevoir.

    • Seuls les appelants ayant observé l'engagement utilisateur sur une application associée au thème en question au cours des trois dernières epochs peuvent recevoir ce thème.
    • Si l'appelant n'a encore jamais appelé l'API pour cet utilisateur dans une application à propos de ce thème, ce dernier ne sera pas inclus dans la liste renvoyée par l'API.
    • Si l'appelant n'a reçu aucun thème au cours des trois dernières epochs, l'API Topics renvoie une liste vide.

    Imaginons que sept applications soient installées sur l'appareil de l'utilisateur : A, B, C, D, E, F et G. Supposons que la classification des thèmes pour l'application et l'annonce Les SDK technologiques de ces applications sont les suivants:

    Application Classification des thèmes SDK de technologie publicitaire
    A T1, T5 ad-sdk1, ad-sdk2
    B T2 ad-sdk2
    C T3, T6 ad-sdk3, ad-sdk4
    D T1, T4 ad-sdk1
    E T5 ad-sdk4, ad-sdk5
    F T6 ad-sdk2, ad-sdk3, ad-sdk4
    G T7 ad-sdk2
    • Fin de la semaine 1 : l'API Topics génère les cinq principaux thèmes de l'utilisateur pour cette epoch.
    Thème principal Appelants qui peuvent se renseigner sur le sujet
    T1 ad-sdk1, ad-sdk2
    T2 ad-sdk2
    T3 ad-sdk3, ad-sdk4
    T4 ad-sdk1
    T5 ad-sdk1, ad-sdk2, ad-sdk4, ad-sdk5
    • Au cours de la deuxième semaine, si un appelant au niveau d'une application appelle l'API, la liste des thèmes renvoyés n'inclura que ceux pour lesquels l'appelant figure dans la colonne "Appelants qui peuvent se renseigner sur le sujet" correspondant à ce thème pour cette application et pour cette epoch.
    • La période d'historique prise en compte dans le calcul des thèmes disponibles pour chaque appelant est de trois epochs (ou trois semaines).
    • Uniquement les thèmes associés aux applications qui appellent l'API Topics via une annonce Les SDK sont utilisés. Cela signifie que si une application n'inclut aucun SDK publicitaire qui appellent l'API Topics, les thèmes associés à cette application contribuent à augmenter le nombre de thèmes accessibles par les SDK publicitaires.
    • Une application peut également désactiver l'API Topics de manière déclarative via de nouveaux éléments manifestes et XML, afin d'empêcher les SDK publicitaires d'utiliser l'API pour cette application. Les thèmes associés aux applications désactivées ne sont pas pris en compte dans le calcul hebdomadaire des thèmes. Ce document sera mis à jour pour inclure les détails d'implémentation associés.
  • Si l'utilisation des applications est insuffisante pour que la plate-forme puisse déterminer cinq thèmes, elle peut envisager des options telles que la génération aléatoire de thèmes restants.

Taxonomie

  • Dans la proposition actuelle, la taxonomie initiale comprend entre quelques centaines et quelques milliers de thèmes. La proposition de taxonomie initiale sera partagée dans une prochaine mise à jour de ce document.
  • Cette taxonomie sera définie manuellement afin que les thèmes sensibles en soient exclus.
  • Elle sera adaptée aux catégories d'annonces qui peuvent être diffusées dans les applications mobiles Android.
  • La taxonomie est publique et susceptible d'être modifiée. Vous pouvez soumettre des suggestions à l'aide du bouton de commentaires situé en haut de cette page.

Classificateur de thèmes

Les thèmes d'intérêt sont issus d'un modèle de classificateur entraîné à partir d'informations accessibles à tous sur l'application (telles que son nom, sa description et le nom de son package).

  • Lorsque le modèle de classificateur est exploité à des fins d'inférence pour calculer les thèmes pour une epoch donnée, l'ensemble de signaux utilisés reste sur l'appareil. Cet ensemble de signaux peut inclure des applications installées ou récemment utilisées. Il pourra être étendu par la suite pour inclure d'autres signaux.
  • Les modèles initiaux seront entraînés par Google. Les données d'entraînement comprendront des libellés définis manuellement pour les informations d'applications accessibles à tous. Le modèle sera disponible sans frais pour que les applications puissent le tester et déterminer les thèmes adaptés pour leur application.
  • Les modèles initiaux seront entraînés à l'aide d'informations accessibles à tous sur les applications, informations issues d'un ensemble limité de plates-formes de téléchargement d'applications, comme le Google Play Store.
  • Il est possible qu'une application soit associée à plusieurs thèmes, à aucun thème ou qu'elle n'ajoute aucun thème à l'historique de l'utilisateur. Si une application correspond à plusieurs thèmes dans la taxonomie, le nombre de thèmes choisis pour cette application est limité aux trois premiers.

Contrôle utilisateur

  • La conception vise à fournir aux utilisateurs la possibilité d'afficher et de supprimer les thèmes associés à l'utilisation de l'application. La mise en œuvre de cette fonctionnalité de contrôle utilisateur est en cours d'élaboration et sera incluse dans une prochaine mise à jour.
  • Si l'utilisateur désinstalle une application qui a contribué à la sélection d'un thème déterminé au cours des trois dernières epochs, ce thème ne sera pas supprimé de la liste des thèmes renvoyés pour les trois dernières epochs, afin d'éviter de divulguer des informations sur la désinstallation.

Pour faciliter le test de l'expérience utilisateur, vous pouvez également lancer un intent in-app afin d'afficher l'interface utilisateur correspondant aux paramètres de l'API Topics de la même manière qu'un utilisateur final. Voici un exemple de cet appel :

//Button that launches settings UI
private Button mSettingsAppButton;
private static final String RB_SETTING_APP_INTENT = "android.adservices.ui.SETTINGS";


//Does setup for button on screen that will launch settings UI to observe Topics
private void registerLaunchSettingsAppButton() {
    mSettingsAppButton.setOnClickListener(
        new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                Context context = getApplicationContext();
                Intent activity2Intent = new Intent(RB_SETTING_APP_INTENT);
                activity2Intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(activity2Intent);
            }
        });
}

Inscrire une plate-forme de technologie publicitaire

Pour accéder à l'API Topics, toutes les plates-formes de technologie publicitaire (y compris celles de Google) doivent suivez le processus d'inscription.

Les développeurs d'applications peuvent gérer quels développeurs de technologie publicitaire peuvent accéder aux API Topics en y compris l'ID d'enregistrement du développeur de technologie publicitaire dans le fichier manifeste de l'appli.

Chiffrement des sujets renvoyés

Les plates-formes de technologie publicitaire inscrites qui appellent l'API Topics doivent également fournir clés de chiffrement pour garantir que les sujets renvoyés sont lisibles uniquement par appelant.

La Privacy Sandbox récupérera ces clés à partir du point de terminaison fourni par la technologie publicitaire. Mer recommandent que les clés doivent être mises à jour régulièrement, mais pas plus tard tous les six mois.

La Privacy Sandbox demandera aux technologies publicitaires de confirmer la disponibilité du point de terminaison fournies par la technologie publicitaire lors du processus d'enregistrement. Pour en savoir plus sur requise par les technologies publicitaires actuelles et nouvellement enregistrées, consultez la section Guide du développeur.

Informations de chiffrement

Avec l'introduction du chiffrement, les appels à "GetTopics()" génère une avec une liste "EncryptedTopic" d'objets. Le déchiffrement de ces résultats générer un objet avec le même format JSON que l'objet Topic précédent.

L'API Topics prend en charge l'implémentation ponctuelle de la clé publique hybride (HPKE, Hybrid Public Key) le chiffrement). Nous nous attendons à ce que l'appelant enregistré héberge une clé publique de 32 bits sur le point de terminaison de l'URL de chiffrement public fourni lors de l'enregistrement. Ces clés sont devant être encodés en base64.

Les objets EncryptedTopic comportent trois champs. La liste des sujets renvoyés peut être obtenu en utilisant la clé privée correspondante à la clé publique.

À des fins de développement, vous pouvez tester le chiffrement de l'API Topics en désactivant le contrôle d'inscription. Cela obligerait l'API à utiliser la clé publique de test pour chiffrer vos réponses. Vous pouvez déchiffrer les sujets chiffrés à l'aide de la méthode la clé privée correspondante.