Dowiedz się, w jaki sposób tematy są ustalane, jak są przypisywane do przeglądarek użytkowników oraz jak użytkownicy mogą kontrolować swoje listy tematów.
Stan implementacji
- Interfejs Topics API został właśnie ukończony w fazie dyskusji publicznych i jest obecnie dostępny dla 99% użytkowników, skalowalny w zakresie 100%.
- Aby przesłać opinię o interfejsie Topics API, zgłoś problem za pomocą wyjaśnienia Topics lub weź udział w dyskusjach w grupie o ulepszaniu reklam internetowych. Wyjaśnienie zawiera kilka pytań otwartych, które nadal wymagają doprecyzowania.
- Oś czasu Piaskownicy prywatności zawiera ramy czasowe wdrożenia interfejsu Topics API i innych ofert pakietowych Piaskownicy prywatności.
- Topics API: najnowsze aktualizacje – szczegółowe informacje o zmianach i ulepszeniach interfejsu Topics API oraz ich implementacjach.
Co to jest temat?
Temat w interfejsie Topics API to temat, który interesuje użytkownika, na podstawie informacji o odwiedzanych przez niego witrynach.
Tematy są sygnałem, który pomaga platformom technologii reklamowych w wyborze odpowiednich reklam. W przeciwieństwie do plików cookie innych firm informacje te są udostępniane bez ujawniania dalszych informacji o użytkowniku ani jego aktywności związanej z przeglądaniem.
Interfejs Topics API umożliwia firmom zewnętrznym, np. platformom z technologią reklamową, obserwowanie interesujących tematów, a następnie dostęp do nich. Na przykład interfejs API może zaproponować użytkownikowi, który odwiedza witrynę knitting.example
, temat „Sztuka włókna i tekstyliów”.
Lista tematów używanych przez interfejs Topics API jest publiczna, wybierana przez człowieka, zrozumiała dla człowieka i została utworzona z myślą o unikaniu reklam o charakterze kontrowersyjnym. To bieżąca lista, która z czasem będzie się powiększać. Lista ma strukturę mapy kategorii. Tematy mogą być ogólne lub bardziej szczegółowe. Na przykład Food & Drink
to szeroka kategoria z podkategorią Cooking & Recipes
. Podkategorie można dodatkowo podzielić na dodatkowe podkategorie.
Taka taksonomia tematów musi stanowić kompromis między użytecznością a ochroną prywatności. Jeśli tematy są zbyt szczegółowe, można ich użyć do zidentyfikowania pojedynczego użytkownika. Jeśli są zbyt ogólne, nie przydają się przy wybieraniu reklam ani innych treści.
Taksonomia tematów jest stworzona z myślą o 2 podstawowych wymaganiach:
- Wspieraj reklamy oparte na zainteresowaniach
- Dbanie o bezpieczeństwo użytkowników i ochronę ich prywatności
Sugeruje to kilka pytań. Na przykład:
- W jaki sposób interfejs API może najlepiej określać zainteresowania użytkownika na podstawie jego aktywności związanej z przeglądaniem, a jednocześnie chronić jego prywatność?
- Jaką strukturę nadać taksonomii, aby była bardziej przydatna?
- Jakie konkretne elementy powinna obejmować taksonomia?
Jak interfejs API określa tematy dla witryny
Tematy są określane na podstawie modelu klasyfikacji, który mapuje nazwy hosta witryny na zero lub więcej tematów. Analiza dodatkowych informacji (np. pełnych adresów URL lub zawartości strony) może pomóc w wyświetlaniu trafniejszych reklam, ale może też ograniczać prywatność.
Model klasyfikatora mapowania nazw hostów do tematów jest publicznie dostępny, a osoba wyjaśniająca zauważa, że tematy witryny można wyświetlać za pomocą narzędzi dla programistów w przeglądarce. Przewiduje się, że model będzie z czasem ewoluować i ulepszać oraz być okresowo aktualizowany. Nadal bierzemy pod uwagę częstotliwość występowania takich zmian.
W historii przeglądania kwalifikującej się do obliczania częstotliwości tematów są uwzględniane tylko witryny zawierające kod wywołujący interfejs Topics API, a wywołania interfejsu API otrzymują tylko obserwowane tematy. Inaczej mówiąc, witryny nie kwalifikują się do obliczania częstotliwości tematów bez witryny lub umieszczonej usługi wywołującej interfejs API.
Rozmówca może też otrzymywać tylko tematy, które „zobaczył” jego kod. Jeśli więc kod innego wywołującego zarejestrował temat (np. /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks
) w przypadku przeglądarki użytkownika, a Twój kod nie spowodował zarejestrowania tego tematu w przeglądarce tego użytkownika, nie będziesz w stanie poznać interesującego jej tematu przez wywołanie interfejsu API z umieszczonego kodu. Pamiętaj, że ponieważ interfejs API uwzględnia teraz elementy nadrzędne jako obserwowane, powyższy przykład (/Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks
) także powoduje obserwowanie Autos & Vehicles
i Motor Vehicles
.
Tematy zwrócone użytkownikowi są ponownie obliczane w przypadku rozmówcy na podstawie witryny najwyższego poziomu. Jeśli na przykład adtech.example
poprosi o tematy użytkownika news-a.example
, potem news-b.example
, a potem news-c.example
, zwrócone mu tematy zostaną ponownie obliczone dla każdej witryny. Oznacza to, że osoba dzwoniąca może zobaczyć różne tematy w różnych witrynach najwyższego poziomu, ponieważ spośród pięciu najpopularniejszych tematów użytkownika w trzech epokach wybieramy losowo (maksymalnie) 3 tematy (z 5% szansą na uzyskanie losowego tematu). Utrudnia to rozmówcy identyfikowanie użytkownika według jego tematów, ponieważ witryny te prawdopodobnie będą się różnić w zależności od witryny najwyższego poziomu (nawet tego samego użytkownika, rozmówcy i epoki).
Model klasyfikatora
Tematy są wybierane ręcznie dla 50 000 najpopularniejszych domen i służą do trenowania klasyfikatorów. Tę listę znajdziesz w usłudze override_list.pb.gz
, która jest dostępna pod adresem chrome://topics-internals/
w bieżącym modelu na karcie Klasyfikator. Powiązania domeny z tematami na liście są używane przez interfejs API zamiast danych wyjściowych samego modelu.
![Strona chrome://topics-internals z wybranym panelem Classifier.](https://developers-dot-devsite-v2-prod.appspot.com/static/privacy-sandbox/assets/images/chrometopics-internals-8d62cfff441e4.png?authuser=6&hl=pl)
chrome://topics-internals
zawiera wersję modelu, jego ścieżkę i tematy powiązane z każdym podanym hostem.Aby uruchomić model bezpośrednio, zapoznaj się z przewodnikiem po uruchamianiu modelu TensorFlow.
Aby sprawdzić plik override_list.pb.gz
, najpierw go rozpakuj:
gunzip -c override_list.pb.gz > override_list.pb
Użyj narzędzia protoc
, aby sprawdzić go jako tekst:
protoc --decode_raw < override_list.pb > output.txt
Pełna mapa kategorii tematów z identyfikatorami jest dostępna na GitHubie.
Przekazywanie informacji zwrotnych lub danych dotyczących modelu klasyfikatora
Istnieje kilka kanałów, w których można przesyłać opinie o interfejsie Topics API. Jeśli chcesz podzielić się opinią na temat modelu klasyfikatora, zalecamy zgłoszenie problemu na GitHubie lub udzielenie odpowiedzi na już istniejący problem. Na przykład:
- Jakiej taksonomii tematów należy używać w dłuższym okresie?
- Co zrobić, jeśli witryna nie zgadza się z przypisanymi tematami?
Sposób wybierania 5 najpopularniejszych tematów przez użytkownika
Interfejs API zwraca 1 temat dla każdej epoki (maksymalnie 3). Jeśli zostaną zwrócone 3, obejmują tematy z bieżącej i dwóch poprzednich.
- Na koniec każdej epoki przeglądarka kompiluje listę stron spełniających te kryteria:
- Strona została odwiedzona przez użytkownika w epoce.
- Strona zawiera kod wywołujący
document.browsingTopics()
. - interfejs API został włączony (na przykład nie jest blokowany przez użytkownika ani za pomocą nagłówka odpowiedzi);
- Przeglądarka na urządzeniu użytkownika używa modelu klasyfikatora dostępnego w interfejsie Topics API, aby zmapować nazwę hosta każdej strony na listę tematów.
- Przeglądarka gromadzi listę tematów.
- Przeglądarka generuje listę 5 najpopularniejszych tematów według częstotliwości.
Następnie metoda document.browsingTopics()
zwraca losowy temat z 5 najlepszych tematów dla każdej epoki z 5% szansą, że dowolny z nich zostanie wybrany losowo z pełnej taksonomii tematów. W Chrome użytkownicy mogą też usuwać poszczególne tematy lub wyczyścić historię przeglądania, aby zmniejszyć liczbę tematów zwracanych przez interfejs API. Użytkownicy mogą też zrezygnować z korzystania z interfejsu API.
Na stronie chrome://topics-internals
znajdziesz informacje o tematach zaobserwowanych w obecnej epoce.
W jaki sposób interfejs API określa, które elementy wywołujące widzą poszczególne tematy
Osoby wywołujące interfejs API otrzymują tylko ostatnio zaobserwowane tematy, a tematy użytkownika są odświeżane po każdej epoki. Oznacza to, że interfejs API udostępnia okno, w którym dany element wywołujący może otrzymywać określone tematy.
Tabela poniżej zawiera przykład (choć nierealistycznie krótki) hipotetycznej historii przeglądania użytkownika w danej epoce. Zawiera tematy powiązane z odwiedzonymi stronami oraz elementy wywołujące interfejs API obecne w każdej witrynie (elementy wywołujące document.browsingTopics()
w kodzie JavaScript zawartym w witrynie).
Witryna | Tematy | Elementy wywołujące interfejs API w witrynie |
---|---|---|
yoga.example | Fitness | adtech1.example adtech2.example |
knitting.example | Rzemiosło | adtech1.example |
wycieczka-wakacjami.example | Fitness, podróże i transport | adtech2.example |
ubranie-zrób to sam.example | Rękodzieło, moda i styl | [brak] |
Pod koniec epoki (obecnie jeden tydzień) interfejs Topics API generuje najpopularniejsze tematy przeglądarki w danym tygodniu.
- Witryna adtech1.example może teraz otrzymywać tematy „Fitness” (Fitness) i „Rękodzieło”, ponieważ zaobserwowała je zarówno w przypadku jogi.example, jak i robienia na drutach.example.
- Adtech1.example nie może otrzymać tematu „Podróże i transport” dla tego użytkownika, ponieważ nie występuje on w żadnej ostatnio odwiedzanej przez niego witrynie, która jest powiązana z tym tematem.
- Użytkownik adtech2.example widział tematy „Fitness” oraz „Podróże i transport”, ale nie widział tematu „Rzemiosło”.
użytkownik odwiedził stronę „diy-clothing.example”, która zawiera temat „Moda i styl”, ale w tej witrynie nie wystąpiły żadne wywołania interfejsu Topics API. W tym momencie oznacza to, że temat „Moda i styl” nie zostanie zwrócony przez interfejs API w przypadku żadnego elementu wywołującego.
W drugim tygodniu użytkownik odwiedza inną witrynę:
Witryna | Tematy | Elementy wywołujące interfejs API w witrynie |
---|---|---|
sewing.example | Rzemiosło | adtech2.example |
Poza tym kod z adtech2.example został dodany do strony „zrób to sam”.example:
Witryna | Tematy | Elementy wywołujące interfejs API w witrynie |
---|---|---|
ubranie-zrób to sam.example | Rękodzieło, moda i styl | adtech2.example |
Oprócz kategorii „Fitness” i „Podróże i transport” z tygodnia 1 oznacza to, że adtech2.example będzie teraz otrzymywać tematy „Rękodzieło” oraz „Moda i styl” – ale dopiero w kolejnej epoce, w trzecim tygodniu. Dzięki temu osoby trzecie nie mogą uzyskać więcej informacji o przeszłości użytkownika (w tym przypadku o modzie) niż za pomocą plików cookie.
Po upływie kolejnych dwóch tygodni „Fitness” i „Podróże i transport” mogą zniknąć z listy odpowiednich tematów na stronie adtech2.example, jeśli użytkownik nie odwiedzi żadnych witryn zawierających kod z adtech2.example.
Kontrola użytkowników, przejrzystość i rezygnacja
Użytkownicy powinni rozumieć przeznaczenie interfejsu Topics API, rozpoznawać, co użytkownicy mówią na jego temat, wiedzieć, kiedy interfejs API jest używany, oraz mieć dostęp do opcji włączania i wyłączania go.
Taksonomia interfejsu API dostępna dla człowieka umożliwia użytkownikom poznawanie tematów, które mogą być sugerowane przez przeglądarkę, oraz kontrolowanie tych tematów. Użytkownicy mogą usuwać tematy, których nie chcą udostępniać reklamodawcom lub wydawcom przez interfejs Topics API. Dostępne są też opcje kontroli informujące użytkowników o tym interfejsie i pokazywanie, jak go włączyć lub wyłączyć. Chrome zawiera informacje i ustawienia dotyczące interfejsu Topics API na stronie chrome://settings/adPrivacy
. Dodatkowo tematy są niedostępne dla osób wywołujących interfejs API w trybie incognito, a tematy są czyszczone po wyczyszczeniu historii przeglądania.
Lista zwróconych tematów będzie pusta, jeśli:
- użytkownik rezygnuje z interfejsu Topics API w ustawieniach przeglądarki na stronie
chrome://settings/adPrivacy
, - Użytkownik wyczyścił swoje tematy (w ustawieniach przeglądarki na
chrome://settings/adPrivacy
) lub wyczyścił pliki cookie. - Przeglądarka jest w trybie incognito.
Wyjaśnienie zawiera więcej informacji o celach związanych z prywatnością i o tym, w jaki sposób interfejs API ma im pomóc.
Rezygnacja z witryny
Użytkownik może nie tylko zrezygnować z udziału w temacie, ale także zrezygnować z udziału w temacie w przypadku Twojej witryny lub znajdujących się na niej stron. Więcej informacji znajdziesz w przewodniku dla programistów.
Używanie interfejsu Topics API w witrynach z atrybutem prebid.js
Zgodnie z informacjami w wersji Prebid 7 społeczność aktywnie opracowała integrację z interfejsem Topics API za pomocą nowego modułu. Ten moduł został scalony w grudniu 2022 r.
Więcej informacji:
- Zapoznaj się z dokumentacją modułu interfejsu Topics API w Prebid.
- Aby uzyskać więcej informacji, skontaktuj się z firmą Prebid.js za pomocą dowolnego standardowego kanału, który oferuje.
Dalsze kroki
- Jeśli jesteś programistą technologii reklamowych, eksperymentuj i korzystaj z interfejsu Topics API.
- Więcej szczegółowych informacji znajdziesz w przewodniku dla programistów.
- Szczegółowe informacje o konkretnych przypadkach użycia technologii reklamowych znajdziesz w przewodniku po integracji interfejsu Topics API.
Angażuj i dziel się opiniami
- GitHub czytanie objaśnień interfejsu Topics API oraz zgłaszanie pytań i podsumowanie dyskusji w repozytorium API.
- W3C omówienia przypadków użycia w branży w ramach udoskonalania grupy biznesowej związanej z reklamami internetowymi.
- Ogłoszenia: dołącz do listy adresowej lub wyświetl ją.
- Pomoc dla deweloperów Piaskownicy prywatności: zadawaj pytania i bierz udział w dyskusjach w repozytorium pomocy dla deweloperów Piaskownicy prywatności.
- Chromium zgłoś błąd Chromium, aby zadać pytania na temat implementacji, która jest obecnie dostępna do testowania w Chrome.