Découvrez comment les sujets sont déduits et comment ils sont attribués aux utilisateurs et comment les utilisateurs peuvent contrôler leur liste de sujets.
État d'implémentation
- L'API Topics a terminé la phase de discussion publique et est actuellement disponible pour 99 % des utilisateurs (jusqu'à 100 %).
- Pour donner votre avis sur l'API Topics, créez un problème dans l'article d'explication de Topics ou participez aux discussions du groupe pour l'amélioration de la publicité sur le Web. L’explication a un certain nombre de questions ouvertes qui nécessitent encore une définition plus approfondie.
- Le calendrier de la Privacy Sandbox indique les délais d'implémentation de l'API Topics et d'autres propositions de la Privacy Sandbox.
- L'article API Topics: dernières mises à jour décrit les modifications et améliorations apportées à l'API Topics et aux implémentations.
Qu'est-ce qu'un thème ?
Un thème, dans l'API Topics, est un sujet qui intéresse un utilisateur, comme en témoignent les sites Web qu'il consulte.
Les thèmes permettent aux plates-formes ad tech de sélectionner des annonces pertinentes. Contrairement aux cookies tiers, ces informations sont partagées sans révéler d'autres informations sur l'utilisateur lui-même ni sur son activité de navigation.
L'API Topics permet à des tiers, tels que des plates-formes de technologie publicitaire, d'observer les thèmes qui intéressent un utilisateur, puis d'y accéder. Par exemple, l'API peut suggérer le thème "Fibre et Arts textiles" pour un utilisateur qui consulte le site Web knitting.example
.
La liste des thèmes utilisée par l'API Topics est publique, sélectionnée par l'humain, lisible et conçue pour éviter les catégories sensibles. Il s'agit de la liste actuelle, qui sera complétée au fil du temps. La liste est structurée selon une taxonomie. Les sujets peuvent être généraux ou plus spécifiques. Par exemple, Food & Drink
est une catégorie large, avec une sous-catégorie de Cooking & Recipes
. Les sous-catégories peuvent être divisées en sous-catégories supplémentaires.
Une telle classification des sujets doit faire un compromis entre utilité et confidentialité. Si les sujets sont trop spécifiques, ils peuvent être utilisés pour identifier un utilisateur individuel. S'ils sont trop génériques, ils ne sont pas utiles pour sélectionner des publicités ou d'autres contenus.
La classification des thèmes repose sur deux exigences sous-jacentes:
- Prendre en charge la publicité ciblée par centres d'intérêt
- Veiller à la sécurité des utilisateurs et protéger leur confidentialité
Cela suggère plusieurs questions. Exemple :
- Quel est le meilleur moyen pour l'API de déduire les centres d'intérêt d'un utilisateur en fonction de son activité de navigation, tout en préservant la confidentialité de l'utilisateur ?
- Comment la taxonomie pourrait-elle être structurée pour la rendre plus utile ?
- Quels éléments spécifiques la taxonomie doit-elle inclure ?
Comment l'API détermine-t-elle les thèmes d'un site ?
Les thèmes sont issus d'un modèle de classificateur qui mappe les noms d'hôte de sites Web à zéro ou plusieurs thèmes. L'analyse d'informations supplémentaires (telles que des URL complètes ou le contenu des pages) peut permettre de diffuser des annonces plus pertinentes, mais aussi de réduire la confidentialité.
Le modèle de classificateur permettant de mapper les noms d'hôte et les thèmes est accessible au public. Comme indiqué dans l'explication, il est possible d'afficher les thèmes d'un site à l'aide des outils pour les développeurs du navigateur. Le modèle est censé évoluer et s'améliorer au fil du temps, et être mis à jour régulièrement. la fréquence de cette opération est toujours à l'étude.
Seuls les sites incluant du code qui appelle l'API Topics sont inclus dans l'historique de navigation éligible pour les calculs de fréquence des thèmes, et les appelants de l'API ne reçoivent que les thèmes qu'ils ont observés. En d'autres termes, les sites ne sont pas éligibles pour le calcul de la fréquence des thèmes s'ils ne sont pas appelés par le site ou un service intégré appelant l'API.
De plus, un appelant ne peut recevoir que les thèmes que son code a "vus". Ainsi, si le code d'un autre appelant a enregistré un thème (par exemple, /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks
) pour le navigateur d'un utilisateur et que votre code n'a pas entraîné l'enregistrement de ce thème pour le navigateur de cet utilisateur, vous ne pourrez pas en savoir plus sur ce sujet pour le navigateur de cet utilisateur lorsque vous appelez l'API à partir de votre code intégré. Comme l'API inclut désormais les ancêtres comme ayant été observés, l'exemple ci-dessus (/Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks
) entraînerait également l'observation de Autos & Vehicles
et Motor Vehicles
.
Les thèmes renvoyés pour un utilisateur sont recalculés pour un appelant en fonction du site de premier niveau. Par exemple, si adtech.example
demande les thèmes de l'utilisateur sur news-a.example
, puis sur news-b.example
, puis sur news-c.example
, les thèmes qui lui sont renvoyés seront recalculés sur chaque site. Cela signifie qu'un appelant est susceptible d'obtenir des thèmes différents pour un utilisateur sur différents sites de premier niveau, car les trois thèmes (maximum) renvoyés pour un utilisateur sont sélectionnés au hasard parmi les cinq thèmes principaux au cours des trois dernières epochs (avec 5% de chances d'obtenir un thème aléatoire). Il est donc plus difficile pour un appelant d'identifier un utilisateur en fonction de ses thèmes, car ceux-ci sont susceptibles de varier selon les sites de premier niveau (même pour le même utilisateur, appelant et epoch).
Modèle de classificateur
Les thèmes sont sélectionnés manuellement pour 50 000 domaines populaires, et cette sélection est utilisée pour entraîner le classificateur. Cette liste se trouve dans override_list.pb.gz
, qui est disponible sous chrome://topics-internals/
sous le modèle actuel dans l'onglet Classifier. Les associations domaine/thème de la liste sont utilisées par l'API à la place de la sortie du modèle lui-même.
![Page chrome://topics-internals avec le panneau "Classificateur" sélectionné](https://developers.google.cn/static/privacy-sandbox/assets/images/chrometopics-internals-8d62cfff441e4.png?authuser=0000&hl=fr)
chrome://topics-internals
liste la version du modèle, son chemin d'accès et les sujets associés à chaque hôte répertorié.Pour exécuter le modèle directement, consultez le guide de TensorFlow sur l'exécution d'un modèle.
Pour inspecter le fichier override_list.pb.gz
, commencez par le décompresser:
gunzip -c override_list.pb.gz > override_list.pb
Utilisez protoc
pour l'inspecter sous forme de texte:
protoc --decode_raw < override_list.pb > output.txt
Une taxonomie complète des thèmes avec ID est disponible sur GitHub.
Fournir des commentaires ou des avis sur le modèle de classificateur
Vous disposez de plusieurs canaux pour envoyer des commentaires sur l'API Topics. Pour obtenir des commentaires sur le modèle de classificateur, nous vous recommandons de soumettre un problème GitHub ou de répondre à un problème existant. Exemple :
- Quelle classification des thèmes utiliser sur le long terme ?
- Que se passe-t-il si un site n'est pas d'accord avec les thèmes attribués ?
Comment les cinq principaux thèmes de l'utilisateur sont-ils sélectionnés ?
L'API renvoie un thème pour chaque époque, jusqu'à trois. Si trois sont renvoyés, cela inclut les thèmes de la epoch en cours et des deux précédents.
- À la fin de chaque époque, le navigateur compile une liste de pages qui répondent aux critères suivants:
<ph type="x-smartling-placeholder">
- </ph>
- La page a été consultée par l'utilisateur au cours de l'epoch.
- La page inclut du code qui appelle
document.browsingTopics()
. - L'API a été activée (par exemple, sans être bloquée par l'utilisateur ni via un en-tête de réponse).
- Le navigateur, sur l'appareil de l'utilisateur, utilise le modèle de classificateur fourni par l'API Topics pour mapper le nom d'hôte de chaque page avec une liste de thèmes.
- Le navigateur accumule la liste des sujets.
- Le navigateur génère une liste des cinq thèmes principaux par fréquence.
La méthode document.browsingTopics()
renvoie ensuite un thème aléatoire parmi les cinq principaux pour chaque epoch, avec 5% de chances que l'un d'entre eux soit choisi au hasard dans la taxonomie complète des thèmes. Dans Chrome, les utilisateurs peuvent également supprimer des thèmes individuels ou effacer leur historique de navigation pour réduire le nombre de thèmes renvoyés par l'API. Les utilisateurs peuvent également désactiver l'API.
Sur la page chrome://topics-internals
, vous pouvez afficher des informations sur les thèmes observés pendant la période en cours.
Comment l'API détermine quels appelants voient quels thèmes
Les appelants de l'API ne reçoivent que les thèmes qu'ils ont récemment observés, et les thèmes d'un utilisateur sont actualisés à chaque epoch. Cela signifie que l'API fournit une période glissante au cours de laquelle un appelant donné peut recevoir certains thèmes.
Le tableau ci-dessous présente un exemple (bien que peu réaliste) d'historique de navigation hypothétique pour un utilisateur au cours d'une seule epoch, avec les thèmes associés aux sites visités et les appelants d'API présents sur chaque site (les entités qui appellent document.browsingTopics()
dans le code JavaScript inclus sur le site).
Site | Thèmes | Appelants d'API sur le site |
---|---|---|
yoga.example | Fitness | technologiepublicitaire1.exemple technologie publicitaire2.exemple |
knitting.example | Artisanat | adtech1.example |
exemple-randonnee | Fitness, voyage et Transport | adtech2.example |
diy-clothing.example | Loisirs créatifs, mode et Style | [aucune] |
À la fin de l'epoch (une semaine actuellement), l'API Topics génère les thèmes principaux du navigateur pour la semaine.
- adtech1.example peut désormais recevoir le badge "Fitness" et "Artisanat" car il les a observés sur yoga.example et sur tricot.example.
- adtech1.example ne peut pas recevoir les Transport" sujet pour cet utilisateur, car il n'apparaît sur aucun des sites associés à ce thème qu'il a consultés récemment.
- adtech2.example a vu l'événement "Fitness" et "Voyage et Transport" mais n'a pas encore consulté la section sur ce sujet.
Il a consulté le site diy-clothing.example, dont le libellé "Mode et Style" Topics, mais il n'y a pas eu d'appels à l'API Topics sur ce site. À ce stade, cela signifie Style" et le sujet ne sont pas renvoyés par l'API pour les appelants.
Au cours de la deuxième semaine, l'utilisateur visite un autre site:
Site | Thèmes | Appelants d'API sur le site |
---|---|---|
sewing.example | Artisanat | adtech2.example |
De plus, le code d'adtech2.example est ajouté à diy-clothing.example:
Site | Thèmes | Appelants d'API sur le site |
---|---|---|
diy-clothing.example | Loisirs créatifs, mode et Style | adtech2.example |
En plus de la catégorie "Remise en forme" et "Voyage et Transport" à partir de la semaine 1, adtech2.example pourra désormais recevoir et "Mode et Style" mais pas avant l'epoch suivante, la semaine 3. Ainsi, les tiers ne peuvent pas en savoir plus sur le passé d'un utilisateur (en l'occurrence, son intérêt pour la mode) qu'avec les cookies.
Après deux semaines, « Fitness » et "Voyage et Transport" peut être exclu de la liste des thèmes éligibles d'adtech2.example si l'utilisateur ne consulte aucun site associé à ces thèmes incluant du code issu de adtech2.example.
Paramètres utilisateur, transparence et désactivation
Les utilisateurs doivent pouvoir comprendre l'objectif de l'API Topics, reconnaître ce qui est dit à leur sujet, savoir quand l'API est utilisée et disposer de commandes permettant de l'activer ou de la désactiver.
La taxonomie intelligible de l'API permet aux utilisateurs de se renseigner sur les thèmes qui peuvent leur être suggérés par leur navigateur et de les contrôler. Les utilisateurs peuvent supprimer les thèmes qu'ils ne souhaitent pas que l'API Topics partage avec des annonceurs ou des éditeurs. Des commandes permettent également d'informer l'utilisateur sur l'API et de lui indiquer comment l'activer ou la désactiver. Chrome fournit des informations et des paramètres pour l'API Topics à l'adresse chrome://settings/adPrivacy
. De plus, les thèmes ne sont pas disponibles pour les appelants d'API en mode navigation privée, et ils sont effacés lorsque l'historique de navigation est effacé.
La liste des sujets renvoyés sera vide si:
- L'utilisateur désactive l'API Topics dans les paramètres du navigateur sur
chrome://settings/adPrivacy
. - L'utilisateur a effacé ses thèmes (via les paramètres du navigateur sur
chrome://settings/adPrivacy
) ou ses cookies. - Le navigateur est en mode navigation privée.
Cette vidéo d'explication donne plus de détails sur les objectifs de confidentialité et sur la manière dont l'API cherche à les atteindre.
Désactivation du site
En plus de permettre aux utilisateurs de désactiver Topics, vous pouvez désactiver Topics pour votre site ou les pages de celui-ci. Le Guide du développeur vous explique comment procéder.
Utiliser l'API Topics sur des sites Web avec prebid.js
Comme indiqué dans la version de Prebid 7, la communauté a activement développé une intégration avec l'API Topics via un nouveau module. Ce module a été fusionné en décembre 2022.
Consultez ces liens pour en savoir plus :
- Consultez la documentation sur le module de l'API Topics de Prebid.
- Pour en savoir plus, contactez Prebid.js via le canal standard proposé.
Étapes suivantes
- Si vous êtes développeur de technologies publicitaires, testez l'API Topics et participez.
- Pour obtenir des ressources plus détaillées, consultez le guide du développeur.
- Consultez le guide d'intégration de l'API Topics pour en savoir plus sur des cas d'utilisation spécifiques des technologies publicitaires.
Interagir et partager des commentaires
- GitHub: consultez l'explication sur l'API Topics, posez des questions et suivez les discussions concernant les problèmes liés au dépôt d'API.
- W3C: discutez de cas d'utilisation sectoriels dans le groupe Améliorer la publicité sur le Web.
- Annonces: rejoignez ou consultez la liste de diffusion.
- Assistance pour les développeurs de la Privacy Sandbox: posez des questions et participez à des discussions sur le dépôt de l'assistance pour les développeurs Privacy Sandbox.
- Chromium: signalez un bug Chromium pour poser des questions sur l'implémentation actuellement disponible à tester dans Chrome.