Tìm hiểu về Topics API trên Android và các bước triển khai API này. Bạn cũng có thể chuyển thẳng đến phần triển khai chủ đề.
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&Band/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.htmlor download the appcats. - 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.
- Greenhouse, for example an app named Greenhouse or a website greenhouse.example, associated with the topic
- 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 & Gardenas 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/Tennisas 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 & GardenorSports/Tennistopic (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 topicSports/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.
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.
Các chủ đề về Android trong thực tế
API Chủ đề trên Android được thiết kế để hỗ trợ các SDK quảng cáo của bên thứ ba thường hoạt động trên nhiều ứng dụng. Topics cung cấp cho phương thức gọi các chủ đề quảng cáo được quan tâm ở dạng thô dựa trên hoạt động dùng ứng dụng của người dùng, mà không cần dựa vào giá trị nhận dạng trên nhiều ứng dụng. Bạn có thể dùng những chủ đề này để bổ sung cho mọi thông tin theo ngữ cảnh liên quan đến ứng dụng muốn hiển thị quảng cáo và có thể kết hợp các chủ đề này để giúp chọn quảng cáo phù hợp cho người dùng.
Trong bối cảnh của Topics API, người mua và nhà quảng cáo phụ thuộc vào bên bán. Bên bán có sự hiện diện rộng rãi trên các ứng dụng của nhà xuất bản và quan sát các chủ đề của người dùng, sau đó chia sẻ các chủ đề đó với bên mua để giúp họ chọn quảng cáo phù hợp hơn. Để nhận được chủ đề, ứng dụng và SDK bên bán phải thiết lập một mức sử dụng bằng cách trở thành trình quan sát của API Chủ đề trong ít nhất một khoảng thời gian bắt đầu của hệ thống.
Hãy tham khảo Hướng dẫn triển khai Topics API để xem các mã mẫu minh hoạ cách thiết lập khả năng tìm nạp các chủ đề cho quảng cáo dựa trên mối quan tâm.
Tích hợp chủ đề theo loại hình doanh nghiệp
Bật tính năng IBA (quảng cáo dựa trên mối quan tâm) bằng Topics API. Làm theo các bước dựa trên loại hình doanh nghiệp công nghệ quảng cáo của bạn để tích hợp Topics API và chuẩn bị cho việc ra mắt.
Dành cho mọi công nghệ quảng cáo
- Xem xét hệ thống phân loại Chủ đề và đưa ra ý kiến phản hồi.
- Thử nghiệm các ứng dụng mẫu của API Chủ đề để xem dữ liệu chủ đề nào được trả về từ thuật toán phân loại trên thiết bị.
- Cập nhật luồng ứng dụng và luồng SDK để bắt đầu gọi API Chủ đề.
- Cập nhật giao thức để bắt đầu gửi các chủ đề trong yêu cầu quảng cáo.
- Đăng ký công nghệ quảng cáo bằng Hộp cát về quyền riêng tư.
Đối với công nghệ quảng cáo của bên bán
- Trở thành trình quan sát để thiết lập một mức sử dụng API Chủ đề. API Chủ đề cung cấp một tín hiệu mới, vì vậy, bạn cần cập nhật SDK để bắt đầu gọi API Chủ đề. Để truy xuất nhất quán các chủ đề, SDK của bạn phải gọi API từ các ứng dụng của nhà xuất bản ít nhất một lần cho mỗi khoảng thời gian bắt đầu của hệ thống. Cần tới 4 khoảng thời gian bắt đầu của hệ thống thì mới nhận được số lượng chủ đề tối đa (3 chủ đề) để gửi cùng với yêu cầu quảng cáo.
- Đưa thông tin về API Chủ đề vào các yêu cầu quảng cáo. Đối với mỗi yêu cầu quảng cáo, hãy bắt đầu chia sẻ dữ liệu API Chủ đề với các đối tác bên mua. API Chủ đề dự định bổ sung các tín hiệu khác (chẳng hạn như tín hiệu theo bối cảnh) để giúp tìm thấy quảng cáo phù hợp cho khách truy cập nhất định.
- Cộng tác trên một giao thức để chia sẻ chủ đề với các đối tác bên mua. API Chủ đề cần có từng SDK để làm việc với các đối tác phân phối thành phẩm để thoả thuận về cách chia sẻ dữ liệu API Chủ đề.
Dành cho công nghệ quảng cáo của bên mua
- Kết nối với các đối tác bên bán để xác nhận kế hoạch quan sát chủ đề và thiết lập mức sử dụng. Để nhận được chủ đề, nhà cung cấp bên bán phải gọi API Chủ đề ít nhất một lần cho mỗi khoảng thời gian bắt đầu của hệ thống.
- Cộng tác trên một giao thức để nhận chủ đề từ các đối tác bên bán. Chủ đề là một tín hiệu mới mà các đối tác bên bán chia sẻ trong yêu cầu quảng cáo. Người tiêu dùng bên mua cần đảm bảo rằng họ trao đổi với các đối tác cung ứng về cách chia sẻ chủ đề.
- Kết hợp các chủ đề trong mô hình đặt giá thầu và mô hình tối ưu hoá. API Chủ đề dự kiến sẽ bổ sung các tín hiệu khác như bối cảnh để giúp tìm thấy một quảng cáo phù hợp cho khách truy cập.
Cách API suy luận chủ đề cho một ứng dụng
Trên Android, Topics API suy luận các chủ đề cho một ứng dụng dựa trên thông tin ứng dụng, bằng cách sử dụng mô hình phân loại. Trong quá trình triển khai hiện tại, Chủ đề sử dụng tên ứng dụng và tên gói để chỉ định chủ đề được quan tâm cho một ứng dụng, nhưng sau này, thông tin này có thể được mở rộng để bao gồm cả thông tin khác như nội dung mô tả ứng dụng.
Thuật toán phân loại chủ đề
Các chủ đề được quan tâm bắt nguồn từ mô hình phân loại được huấn luyện về thông tin ứng dụng có sẵn công khai.
- Khi mô hình phân loại được dùng để suy luận nhằm tính toán các chủ đề trong một khoảng thời gian bắt đầu nhất định của hệ thống, thì tập hợp tín hiệu được dùng sẽ vẫn nằm trên thiết bị. Tập hợp tín hiệu này có thể bao gồm các ứng dụng đã cài đặt hoặc được sử dụng gần đây, và sau này có thể được mở rộng để bao gồm các tín hiệu khác.
- Mô hình V5 được Google huấn luyện dựa trên 540.000 thông tin ứng dụng được gắn nhãn thủ công và 17 triệu thông tin ứng dụng được gắn nhãn bằng công nghệ học máy,được cung cấp công khai trên các cửa hàng ứng dụng như Cửa hàng Google Play. Mô hình này sử dụng tên ứng dụng và tên gói làm tín hiệu đầu vào và được cung cấp miễn phí cho các nhà phát triển ứng dụng để kiểm thử và xem ứng dụng của họ được phân loại vào chủ đề nào.
- Có thể một ứng dụng liên kết đến nhiều chủ đề, không liên kết đến chủ đề nào hoặc không được thêm vào nhật ký chủ đề của người dùng. Trong trường hợp một ứng dụng liên kết đến nhiều chủ đề trong cách phân loại, thì số lượng chủ đề được chọn cho ứng dụng này sẽ bị giới hạn ở 3 chủ đề hàng đầu.
Để hiểu rõ hơn về cách hoạt động của mô hình thuật toán phân loại, bạn có thể kiểm thử cách các dữ liệu ứng dụng ảnh hưởng đến hoạt động phân loại bằng cách sử dụng Colab phân loại chủ đề của Android
Cách phân loại
Các chủ đề được chọn từ một hệ thống phân loại nguồn mở được xác định trước. Hệ thống phân loại này được cung cấp công khai và có thể thay đổi. Bạn có thể gửi đề xuất bằng cách sử dụng nút phản hồi ở đầu trang này. Hệ thống phân loại này do con người tuyển chọn để các chủ đề nhạy cảm không được đưa vào hệ thống phân loại. Hệ thống phân loại này sẽ được điều chỉnh theo các danh mục quảng cáo có thể hiển thị trên ứng dụng di động trên Android.
Các chủ đề về Android trong thực tế
Giả sử một người dùng đã cài đặt 7 ứng dụng trên thiết bị: A, B, C, D, E, F và G. Giả sử việc phân loại chủ đề cho ứng dụng và SDK công nghệ quảng cáo trong các ứng dụng này như sau:
| Ứng dụng | Phân loại chủ đề | SDK công nghệ quảng cáo |
| 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 |
Kết thúc tuần đầu tiên: Topics API tạo ra 5 chủ đề hàng đầu của người dùng trong khoảng thời gian bắt đầu của hệ thống này.
| Chủ đề hàng đầu | Những phương thức gọi có thể tìm hiểu về chủ đề này |
| 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 |
Trong tuần thứ hai, nếu một phương thức gọi trong bất kỳ ứng dụng nào gọi API, thì danh sách chủ đề được trả về sẽ chỉ bao gồm các chủ đề mà phương thức gọi đó nằm trong cột "Những phương thức gọi có thể tìm hiểu về chủ đề này" cho chủ đề đó đối với ứng dụng đó trong khoảng thời gian bắt đầu của hệ thống đó.
- Khoảng thời gian nhật ký được dùng khi tính toán chủ đề có sẵn cho mỗi phương thức gọi là 3 khoảng thời gian bắt đầu của hệ thống (hoặc 3 tuần).
- Chỉ những chủ đề liên kết với các ứng dụng gọi Topics API thông qua SDK quảng cáo mới được sử dụng. Điều này có nghĩa là nếu một ứng dụng không bao gồm bất kỳ SDK quảng cáo nào gọi Topics API, thì các chủ đề liên kết với ứng dụng đó sẽ không đóng góp vào nhóm chủ đề mà SDK quảng cáo có thể truy cập.
- Ứng dụng cũng có thể chọn không sử dụng Topics API theo cách khai báo. Các chủ đề liên kết với ứng dụng đã chọn không sử dụng sẽ không đóng góp vào việc tính toán chủ đề hằng tuần. Tài liệu này sẽ được cập nhật để bổ sung thông tin chi tiết về hoạt động triển khai có liên quan.
Nếu không có đủ mức sử dụng ứng dụng để nền tảng dự đoán 5 chủ đề, nền tảng có thể cân nhắc các lựa chọn như tạo ngẫu nhiên các chủ đề còn lại.
Mã hoá các chủ đề được trả về
Các nền tảng công nghệ quảng cáo đã đăng ký gọi Topics API cũng phải cung cấp khoá mã hoá để đảm bảo rằng chỉ phương thức gọi mới có thể đọc được các chủ đề được trả về.
Hộp cát về quyền riêng tư sẽ tìm nạp các khoá này từ điểm cuối do công nghệ quảng cáo cung cấp . Tốt nhất là bạn nên cập nhật các khoá thường xuyên, nhưng ít nhất là 6 tháng một lần.
Hộp cát về quyền riêng tư sẽ yêu cầu công nghệ quảng cáo xác nhận khả năng sử dụng điểm cuối mà họ cung cấp trong quá trình đăng ký. Để biết thêm thông tin chi tiết về việc mà các công nghệ quảng cáo hiện tại và công nghệ quảng cáo mới đăng ký cần thực hiện, hãy xem hướng dẫn đăng ký
Next steps
Implement Topics
Control & transparency
Xem thêm
Hãy xem các tài nguyên của chúng tôi để hiểu rõ hơn về API Chủ đề trên Android.
- Hãy xem các ứng dụng mẫu, video cộng tác và hướng dẫn trong chủ đề.
- Xem cách người dùng và nhà phát triển có thể kiểm soát API.
- Xem các tài nguyên hỗ trợ để đặt câu hỏi, tương tác và chia sẻ ý kiến phản hồi.