Topics API สําหรับเว็บ

Topics API ช่วยให้สามารถโฆษณาตามความสนใจได้โดยไม่ต้องใช้คุกกี้ของบุคคลที่สาม

วิธีการทํางานของ Topics API

Topics API สามารถใช้เพื่อสังเกตและให้สิทธิ์เข้าถึงหัวข้อที่ดูเหมือนว่าผู้ใช้จะสนใจ โดยอิงตามกิจกรรมของผู้ใช้ จากนั้น Topics API จะให้สิทธิ์ผู้เรียก API (เช่น แพลตฟอร์มเทคโนโลยีโฆษณา) เข้าถึงหัวข้อความสนใจของผู้ใช้ได้ โดยไม่เปิดเผยข้อมูลเพิ่มเติมเกี่ยวกับกิจกรรมของผู้ใช้

หัวข้อสำคัญ

  • หัวข้อคือหัวข้อที่ผู้ใช้ปัจจุบันสนใจซึ่งมนุษย์อ่านได้ และเป็นส่วนหนึ่งของการจัดหมวดหมู่หัวข้อ
  • ผู้เรียกคือเอนทิตี เช่น แอป, SDK ของบุคคลที่สาม, เว็บไซต์ หรือบริการที่ส่งคําขอไปยัง Topics API เพื่อสังเกตหรือเข้าถึงความสนใจของผู้ใช้
  • ระบบจะสังเกตหัวข้อเมื่อผู้เรียกใช้ส่งคำขอ Topics API จากหน้าเว็บหรือแอปที่เชื่อมโยงกับหัวข้อนี้ในช่วง 3 ยุคที่ผ่านมา
  • ช่วงเวลาเริ่มต้นคือระยะเวลาของการคำนวณหัวข้อ ซึ่งค่าเริ่มต้นคือ 1 สัปดาห์
  • การจัดหมวดหมู่คือรายการหมวดหมู่ที่เป็นลําดับชั้น ซึ่งรวมถึงหมวดหมู่ต่างๆ เช่น /Arts & Entertainment/Music & Audio/Soul & R&B และ /Business & Industrial/Business Services/Corporate Events
  • หัวข้อจะมาจากโมเดลตัวแยกประเภทที่เชื่อมโยงกิจกรรมของผู้ใช้กับหัวข้อตั้งแต่ 0 หัวข้อขึ้นไป

ขั้นตอนหลักของขั้นตอนการทํางานของ Topics API

วงจรการใช้งานของ Topics API มี 3 ขั้นตอนหลักดังนี้

  • สังเกตกิจกรรมของผู้ใช้ เช่น เมื่อผู้ใช้เข้าชมหน้าเว็บ https://cats.example/tabby/index.html หรือดาวน์โหลดแอป cats
  • ดึงข้อมูลหัวข้อจากกิจกรรมของผู้ใช้ เช่น /Pets & Animals/Pets/Cats
  • เข้าถึงหัวข้อที่สังเกตได้ก่อนหน้านี้สําหรับผู้ใช้ เช่น เป็นสัญญาณในการเลือกการโฆษณาที่เกี่ยวข้อง (เช่น โปรโมชันอาหารแมว)

สังเกตหัวข้อ

ผู้เรียกจะเข้าถึงได้เฉพาะหัวข้อที่น่าสนใจซึ่งตนได้สังเกตไว้ ผู้เรียกใช้จะสังเกตหัวข้อเมื่อส่งคำขอ Topics API จากบริบทที่เชื่อมโยงกับหัวข้อนี้ ตัวอย่างที่เข้าใจง่ายต่อไปนี้จะช่วยอธิบายแนวคิดนี้

  • สมมติว่ามีผู้เรียกใช้ Topics API 2 ราย ได้แก่ A และ B
  • บริบทมี 2 ประเภท ดังนี้
    • Greenhouse เช่น แอปชื่อ Greenhouse หรือเว็บไซต์ greenhouse.example ที่เชื่อมโยงกับหัวข้อ Home & Garden
    • การออกกำลังกายเทนนิส เช่น แอปชื่อ "การออกกำลังกายเทนนิส" หรือเว็บไซต์ tennis.example ที่เชื่อมโยงกับหัวข้อ Sports/Tennis
  • ทั้งผู้โทร A และ B อยู่ในบริบทของ Greenhouse
  • เฉพาะผู้โทร B เท่านั้นที่อยู่ในบริบทของการออกกำลังกายเทนนิส
  • สมมติว่าไม่มีหัวข้อใดที่สังเกตได้สําหรับผู้ใช้ก่อนศักราช 1 เพื่อลดความซับซ้อน
  • ผู้ใช้เข้าชมแอป Greenhouse และผู้ที่โทร A และ B เรียกใช้ Topics API เพื่อบันทึกการเข้าชมหน้าเว็บหรือแอปของผู้ใช้ (ดูคู่มือการใช้งานที่แนะนำในขั้นตอนถัดไปเพื่อดูวิธีเรียกใช้ Topics API) ระบบจะใช้ระเบียนนี้ (ชื่อโฮสต์หรือข้อมูลแอป) ในภายหลังเพื่อดึงหัวข้อที่น่าสนใจ จากนั้น Topics API จะทําเครื่องหมายหัวข้อ Home & Garden ว่าสังเกตโดยทั้งผู้เรียก A และ B
  • ผู้ใช้เข้าชมแอปการออกกําลังกายเทนนิส เฉพาะผู้ที่เรียกใช้ B เท่านั้นที่ส่งคําขอ Topics API จากนั้น Topics API จะทําเครื่องหมายหัวข้อ Sports/Tennis ตามที่สังเกตโดยผู้เรียก B
  • เมื่อสิ้นสุด Epoch Topics API จะรีเฟรชหัวข้อยอดนิยมของผู้ใช้และระบุผู้เรียกใช้ที่สังเกตหัวข้อเหล่านี้ตามกิจกรรมของผู้ใช้
  • ต่อมา เมื่อผู้โทร B เรียกใช้ Topics API อีกครั้ง ระบบอาจได้รับหัวข้อ Home & Garden หรือ Sports/Tennis (หรือหัวข้อแบบสุ่มโดยมีโอกาส 5%) สำหรับผู้ใช้รายนี้ในอาร์เรย์คำตอบ
  • ผู้เรียก A จะเข้าถึงได้เฉพาะหัวข้อ Home & Garden เนื่องจากไม่เคยสังเกตหัวข้อ Sports/Tennis ซึ่งหมายความว่าบุคคลที่สามจะทราบเฉพาะหัวข้อที่ผู้ใช้สนใจภายในบริบทที่เฉพาะเจาะจง (แอปหรือเว็บไซต์) ที่หัวข้อนั้นปรากฏอยู่
แผนภาพที่แสดงว่า Topics API จะทําเครื่องหมายหัวข้อว่าสังเกตได้ก็ต่อเมื่อผู้เรียกมีอยู่ในบริบทเท่านั้น
Topics API จะทําเครื่องหมายหัวข้อที่สังเกตได้เฉพาะจากผู้เรียกที่มีอยู่ในบริบทของหัวข้อเหล่านี้ ผู้โทรจะเข้าถึงได้เฉพาะหัวข้อที่ตนสังเกตเท่านั้น

ดึงหัวข้อ

หัวข้อจะดึงหัวข้อที่สนใจจากกิจกรรมของผู้ใช้ หัวข้อจะเลือกจากการจัดหมวดหมู่แบบโอเพนซอร์สที่กำหนดไว้ล่วงหน้า Topics จะรีเฟรชหัวข้อยอดนิยม 5 อันดับแรกของผู้เรียกใช้และหัวข้อที่ผู้ใช้เรียกใช้ในช่วง Epoch 1 ครั้ง โมเดลตัวแยกประเภท Topics จะดึงหัวข้อมาจากกิจกรรมของผู้ใช้ ได้แก่ ชื่อโฮสต์สำหรับการเข้าชมหน้าเว็บ ข้อมูลแอปใน Android

ผู้โทรเข้าถึงหัวข้อที่สนใจของผู้ใช้

API จะแสดงเฉพาะหัวข้อที่ผู้เรียกใช้สังเกตเห็นภายใน 3 ช่วงเวลาล่าสุด ระบบจะแสดงหัวข้อสูงสุด 3 หัวข้อต่อผู้เรียก โดยแสดงหัวข้อ 1 หัวข้อสำหรับแต่ละ Epoch 3 รายการล่าสุด (หากผู้เรียกสังเกตหัวข้อสำหรับ Epoch นั้น) ผู้เรียกใช้สามารถใช้หัวข้อที่แสดงผลเพื่อเสริมข้อมูลตามบริบทและรวมเข้าด้วยกันเพื่อช่วยค้นหาโฆษณาที่เกี่ยวข้องกับผู้ใช้มากขึ้นได้

Epoch

Topics API ต้องตรวจสอบว่าหัวข้อความสนใจที่ระบุเป็นข้อมูลล่าสุด ระบบจะอนุมานหัวข้อของผู้ใช้โดยพิจารณาจากกิจกรรมของผู้ใช้ในช่วงระยะเวลาหนึ่งๆ ที่รู้จักกันในชื่อ "Epoch" ซึ่งโดยค่าเริ่มต้นคือ 1 สัปดาห์ ผู้ใช้แต่ละรายจะมียุคของตนเอง (ยุคคือ "ต่อผู้ใช้") และระบบจะสุ่มเวลาเริ่มต้น

เมื่อแต่ละ Epoch เริ่มต้นขึ้น Topics API จะคํานวณหัวข้อยอดนิยม 5 อันดับแรกของผู้ใช้และระบุผู้เรียกใช้ที่สังเกตหัวข้อเหล่านั้นโดยใช้ข้อมูลในอุปกรณ์ หัวข้อที่เลือกไว้สำหรับแต่ละ Epoch จะถูกสุ่มเลือกจาก 5 หัวข้อยอดนิยมของผู้ใช้ในระยะเวลานั้นๆ ระบบจะสุ่มเลือกหัวข้อจากหัวข้อทั้งหมดที่เป็นไปได้ในการจัดหมวดหมู่ความสนใจโดยมีโอกาส 5% เพื่อเพิ่มความเป็นส่วนตัวและช่วยให้มั่นใจว่าหัวข้อทั้งหมดจะแสดง

หัวข้อบนเว็บในทางปฏิบัติ

ในเว็บ ระบบจะอนุมานหัวข้อจากชื่อโฮสต์ของหน้าที่ผู้ใช้เข้าชม เช่น หัวข้อที่อนุมานสำหรับเว็บไซต์ dogs.example อาจเป็น /สัตว์เลี้ยง/สัตว์เลี้ยง/สุนัข

แผนภาพต่อไปนี้แสดงตัวอย่างแบบย่อเพื่อสาธิตวิธีที่ Topics API อาจช่วยแพลตฟอร์มเทคโนโลยีโฆษณาเลือกโฆษณาที่เหมาะสม ตัวอย่างนี้ถือว่าเบราว์เซอร์ของผู้ใช้มีโมเดลอยู่แล้วเพื่อแมปชื่อโฮสต์ของเว็บไซต์กับหัวข้อ

แผนภาพแสดงขั้นตอนในวงจรของ Topics API ตั้งแต่ผู้ใช้เข้าชมเว็บไซต์ไปจนถึงการแสดงโฆษณา
แผนภาพวงจร Topics API จะอธิบายขั้นตอนการทำงานของ API จากมุมมองระดับสูง

เบราว์เซอร์จะกำหนดต้นทางของผู้เรียกจากบริบทของโค้ดที่เรียกใช้ Topics API ในทางปฏิบัติ หมายความว่าผู้ใช้ Topics จะเรียกใช้ API ใน iframe จากต้นทาง หรือรวมหัวข้อไว้ใน fetch ไปยังต้นทาง

เช่น แพลตฟอร์มฝั่งขาย (SSP) สามารถฝังในเว็บไซต์ของผู้เผยแพร่โฆษณาได้หลายแห่ง จากนั้น SSP จะเรียกใช้ Topics API ภายใน iframe จากต้นทาง ซึ่งจะช่วยให้สามารถสังเกตหัวข้อที่เชื่อมโยงกับผู้ใช้ในเว็บไซต์ของผู้เผยแพร่โฆษณาเหล่านั้นได้ จากนั้นระบบจะแชร์หัวข้อเหล่านี้กับแพลตฟอร์มฝั่งดีมานด์ (DSP) เพื่อช่วยเลือกโฆษณาที่เกี่ยวข้องสําหรับผู้ใช้

วิธีที่ API ตัดสินว่าผู้โทรรายใดจะเห็นหัวข้อใด

ผู้เรียก API จะได้รับเฉพาะหัวข้อที่ได้สังเกตเมื่อเร็วๆ นี้ และระบบจะรีเฟรชหัวข้อสำหรับผู้ใช้ 1 ครั้งในแต่ละ Epoch ซึ่งเป็นระยะเวลาที่กำหนดไว้ 1 สัปดาห์ในการใช้งานของ Chrome ซึ่งหมายความว่า API จะมีช่วงเวลาต่อเนื่องที่ผู้เรียกใช้ที่เฉพาะเจาะจงอาจได้รับหัวข้อที่สังเกตได้

ตารางต่อไปนี้แสดงตัวอย่าง (แม้ว่าจะมีขนาดเล็กอย่างไม่สมจริง) ของประวัติการท่องเว็บสมมติของผู้ใช้ในช่วง Epoch เดียว โดยแสดงหัวข้อที่เชื่อมโยงกับเว็บไซต์ที่ผู้ใช้เข้าชม และผู้เรียก API ที่อยู่ในแต่ละเว็บไซต์ (เอนทิตีที่เรียก document.browsingTopics() ในโค้ด JavaScript ที่รวมอยู่ในเว็บไซต์)

ไซต์ หัวข้อ ผู้เรียก API ในเว็บไซต์
running.example Running & Walking
Athletic Shoes
adtech1.example
adtech2.example
dogs.example Dogs adtech1.example
holiday.example Hotels & Accommodations adtech2.example
sunglasses.example Sunglasses [ไม่มี]

เมื่อสิ้นสุดช่วงเวลา (โดยค่าเริ่มต้นคือ 1 สัปดาห์) Topics API จะสร้างหัวข้อยอดนิยมของเบราว์เซอร์สำหรับสัปดาห์นั้น

  • ตอนนี้ adtech1.example มีสิทธิ์รับหัวข้อRunning & Walking Athletic Shoes และ Dogs เนื่องจากสังเกตเห็นหัวข้อดังกล่าวใน running.example และ dogs.example
  • adtech1.example ไม่มีสิทธิ์รับ Hotels & Accommodations สำหรับผู้ใช้รายนี้ เนื่องจากไม่มีอยู่ในเว็บไซต์ใดๆ ที่ผู้ใช้เข้าชมเมื่อเร็วๆ นี้ซึ่งเชื่อมโยงกับหัวข้อนั้น
  • adtech2.example เห็นหัวข้อ Running & Walking, Athletic Shoes และ Hotels & Accommodations แต่ไม่เห็นหัวข้อ Dogs

ผู้ใช้เข้าชม sunglasses.example ซึ่งมีSunglasses แต่ไม่มีการเรียกใช้ Topics API ในเว็บไซต์นั้น ในตอนนี้ การดำเนินการนี้หมายความว่า API จะไม่แสดงผลหัวข้อ Sunglasses สำหรับผู้เรียกใช้รายใดก็ตาม

ในสัปดาห์ที่ 2 ผู้ใช้เข้าชมเว็บไซต์อื่น

ไซต์ หัวข้อ ผู้เรียก API ในเว็บไซต์
cameras.example Camera & Photo Equipment adtech2.example

นอกจากนี้ ระบบยังเพิ่มโค้ดจาก adtech2.example ไปยัง sunglasses.example ด้วย

ไซต์ หัวข้อ ผู้เรียก API ในเว็บไซต์
sunglasses.example Sunglasses adtech2.example

นอกจาก Running & Walking, Athletic Shoes และ Hotels & Accommodations จากสัปดาห์ที่ 1 แล้ว การดำเนินการนี้หมายความว่าตอนนี้ adtech2.example จะรับหัวข้อ Camera & Photo Equipment และ Sunglasses ได้ แต่จะรับได้ก็ต่อเมื่อถึงยุคถัดไป ซึ่งก็คือสัปดาห์ที่ 3 เพื่อให้มั่นใจว่าบุคคลที่สามจะไม่สามารถทราบข้อมูลเพิ่มเติมเกี่ยวกับอดีตของผู้ใช้ (ในกรณีนี้คือความสนใจในแฟชั่น) มากกว่าที่ทราบได้จากคุกกี้

หลังจากผ่านไปอีก 2 สัปดาห์ Running & Walking Athletic Shoes และ Hotels & Accommodations อาจหลุดออกจากรายการหัวข้อที่มีสิทธิ์ของ adtech2.example หากผู้ใช้ไม่ได้เข้าชมเว็บไซต์ที่มีหัวข้อเหล่านั้นซึ่งมีโค้ดจาก adtech2.example

ขั้นตอนที่ Topics API ดำเนินการเมื่อผู้ใช้เข้าชมเว็บไซต์ที่ใช้ API
วิธีที่ API สังเกตและเข้าถึงหัวข้อ

โมเดลตัวแยกประเภท

Topics ใช้โมเดลตัวแยกประเภทที่แมปชื่อโฮสต์ของเว็บไซต์กับหัวข้อตั้งแต่ 0 รายการขึ้นไป (การวิเคราะห์ข้อมูลเพิ่มเติม เช่น URL แบบเต็มหรือเนื้อหาหน้าเว็บ อาจช่วยให้แสดงโฆษณาที่เกี่ยวข้องมากขึ้น แต่ก็อาจลดความเป็นส่วนตัวลงด้วย)

การจัดหมวดหมู่

ระบบจะเลือกหัวข้อจากอนุกรมวิธาน Chrome เป็นผู้ดูแลจัดการหัวข้อเหล่านี้ โดยมีเป้าหมายเพื่อให้การจัดหมวดหมู่กลายเป็นแหล่งข้อมูลที่ได้รับการดูแลโดยผู้มีส่วนร่วมในระบบนิเวศที่เชื่อถือได้ อนุกรมวิธานต้องมีขนาดเล็กพอที่เบราว์เซอร์ของผู้ใช้จำนวนมากจะเชื่อมโยงกับแต่ละหัวข้อ เป้าหมายสุดท้ายคือการให้การจัดหมวดหมู่มาจากบุคคลภายนอกที่รวมความคิดเห็นและแนวคิดจากทั่วทั้งอุตสาหกรรม

หากต้องการหลีกเลี่ยงหมวดหมู่ที่ละเอียดอ่อน หัวข้อต้องเป็นแบบสาธารณะ ดูแลจัดการโดยเจ้าหน้าที่ และเป็นข้อมูลล่าสุดอยู่เสมอ การจัดหมวดหมู่ที่ Chrome ใช้ได้รับการดูแลจัดการโดยมนุษย์เพื่อยกเว้นหมวดหมู่ที่โดยทั่วไปถือว่าละเอียดอ่อน เช่น ชาติพันธุ์หรือรสนิยมทางเพศ

การจัดประเภทหัวข้อ

เราดูแลจัดการหัวข้อสำหรับเว็บไซต์ยอดนิยม 50,000 เว็บไซต์ด้วยตนเอง และใช้รายการแทนที่ที่ดูแลจัดการของชื่อโฮสต์และหัวข้อนี้เพื่อฝึกโมเดลตัวแยกประเภท สำหรับเว็บไซต์ยอดนิยม ระบบจะเข้าถึงหัวข้อจากรายการลบล้างแทนที่จะใช้โมเดลตัวแยกประเภท คุณดูรายการการลบล้างได้ในคอมพิวเตอร์

หน้า chrome://topics-internals ที่เลือกแผงตัวแยกประเภท
แผงตัวแยกประเภทหน้าเว็บ chrome://topics-internals จะแสดงเวอร์ชันของโมเดล เส้นทาง และหัวข้อที่เชื่อมโยงกับแต่ละโฮสต์ที่แสดง

การติดตั้งใช้งาน Topics API ของ Chrome จะดาวน์โหลดไฟล์ TensorFlow Lite ที่แสดงถึงโมเดลเพื่อให้ใช้ในเครื่องบนอุปกรณ์ของผู้ใช้ได้

วิธีกำหนด 5 หัวข้อยอดนิยมของผู้ใช้

API จะแสดงผล 1 หัวข้อสำหรับแต่ละ Epoch โดยแสดงผลได้สูงสุด 3 หัวข้อ หากระบบแสดงผล 3 รายการ จะรวมถึงหัวข้อสำหรับ Epoch ปัจจุบันและ 2 Epoch ก่อนหน้า

  1. เมื่อสิ้นสุดแต่ละยุค เบราว์เซอร์จะรวบรวมรายการหน้าเว็บที่ตรงตามเกณฑ์ต่อไปนี้
    • ผู้ใช้เข้าชมหน้าเว็บในระหว่างช่วงเวลา
    • หน้าเว็บมีโค้ดที่เรียกใช้ document.browsingTopics()
    • API เปิดใช้แล้ว (เช่น ผู้ใช้หรือส่วนหัวของการตอบกลับไม่ได้บล็อก)
  2. เบราว์เซอร์ในอุปกรณ์ของผู้ใช้จะใช้โมเดลตัวแยกประเภทที่ Topics API จัดเตรียมไว้ให้เพื่อแมปชื่อโฮสต์ของแต่ละหน้ากับรายการหัวข้อ
  3. เบราว์เซอร์จะสร้างรายการหัวข้อ 5 อันดับแรก

    • ระบบจะกำหนดหัวข้อรูททั้ง 22 หัวข้อในอนุกรมวิธานให้กับกลุ่ม "มีประโยชน์สูง" หรือ "มีประโยชน์มาตรฐาน" โดยอิงตามความคิดเห็นจากระบบนิเวศการโฆษณา เบราว์เซอร์จะจัดเรียงหัวข้อตามการกำหนดกลุ่มก่อน หัวข้อลูกหลานทั้งหมดจะรับการกำหนดกลุ่มของหัวข้อรูทหลัก ระบบจะจัดลำดับความสำคัญของหัวข้อที่มี "ประโยชน์สูง"
    • จากนั้นเบราว์เซอร์จะจัดเรียงหัวข้อตามความถี่ภายในแต่ละที่เก็บข้อมูล
    • ระบบจะเลือก 5 หัวข้อแรกจากรายการที่จัดเรียงนี้เป็นหัวข้อยอดนิยมของผู้ใช้สำหรับ Epoch นั้น

จากนั้นdocument.browsingTopics()จะแสดงหัวข้อแบบสุ่มจาก 5 หัวข้อยอดนิยมสำหรับแต่ละ Epoch โดยมีโอกาส 5% ที่ระบบจะสุ่มเลือกหัวข้อใดก็ได้จากอนุกรมวิธานของหัวข้อทั้งหมด ใน Chrome ผู้ใช้ยังนำหัวข้อแต่ละรายการออกหรือล้างประวัติการท่องเว็บเพื่อลดจำนวนหัวข้อที่ API แสดงได้ด้วย ผู้ใช้ยังเลือกไม่ใช้ API ได้ด้วย

คุณดูข้อมูลเกี่ยวกับหัวข้อที่สังเกตได้ในระหว่าง Epoch ปัจจุบันได้จากหน้า chrome://topics-internals

Next steps

Get your environment ready to test and develop web applications with the Topics API.
Check out implementation details and code samples for callers to observe and access topics.

ดูเพิ่มเติม

ดูแหล่งข้อมูลของเราเพื่อทำความเข้าใจเกี่ยวกับ Topics API บนเว็บให้ดียิ่งขึ้น