โปรแกรมรวบรวมข้อมูลของ OpenAI อธิบายให้เข้าใจ: GPTBot, OAI-SearchBot และ ChatGPT-User
OpenAI ใช้ GPTBot รวบรวมเนื้อหาที่อาจใช้ฝึกโมเดล ใช้ OAI-SearchBot จัดทำดัชนีหน้าเว็บสำหรับการค้นหาของ ChatGPT และใช้ ChatGPT-User สำหรับการเข้าชมที่ผู้ใช้ขอ การบล็อก GPTBot เป็นการไม่ยินยอมให้ใช้ฝึกโมเดลเท่านั้น ส่วนการบล็อก OAI-SearchBot จะทำให้คุณหายไปจากคำตอบของการค้นหาใน ChatGPT robots.txt อาจไม่ใช้กับ ChatGPT-User
user agent สามตัวจากบริษัทเดียวกัน แต่ละตัวมีโทเค็นใน robots.txt ของตัวเอง ทำให้เกิดความสับสนมาก หลายเว็บไซต์บล็อก GPTBot ตั้งแต่เริ่มปรากฏ และบางแห่งมาพบภายหลังว่าตนบล็อกโปรแกรมที่ตัดสินว่า ChatGPT จะอ้างอิงได้หรือไม่ไปด้วย ซึ่งมักเกิดจากกฎไฟร์วอลล์ที่กว้างเกินไป บทความนี้อธิบายเอเจนต์แต่ละตัวโดยอ้างอิงเอกสารของ OpenAI เอง
ในหน้านี้
GPTBot ทำอะไร
GPTBot รวบรวมเนื้อหาที่อาจนำไปใช้ฝึกโมเดลพื้นฐาน generative AI ของ OpenAI เอกสารของ OpenAI ระบุว่าการห้าม GPTBot หมายถึงเนื้อหาของเว็บไซต์ไม่ควรถูกนำไปใช้ฝึกโมเดลเหล่านั้น
user agent ของมันมีโทเค็น GPTBot เช่น Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot OpenAI แจ้งว่าหมายเลขเวอร์ชันอาจเปลี่ยน จึงควรจับคู่กับโทเค็น ไม่ใช่ทั้งสตริง OpenAI เผยแพร่ช่วง IP ไว้ที่ openai.com/gptbot.json
จะอนุญาตหรือไม่เป็นการตัดสินใจเชิงนโยบาย ผู้เผยแพร่บางรายอยากให้เนื้อหาอยู่ในข้อมูลฝึกโมเดล บางรายไม่ต้องการ การบล็อกไม่กระทบการค้นหาของ ChatGPT เพราะเป็นโปรแกรมคนละตัว ถ้าภายหลังเปลี่ยนใจ แค่ลบบรรทัด Disallow ก็พอ ไม่ต้องลงทะเบียนหรือยื่นคำขอใด ๆ
OAI-SearchBot ทำอะไร
OAI-SearchBot คือโปรแกรมรวบรวมข้อมูลสำหรับการค้นหาของ OpenAI ทำหน้าที่ทำให้เว็บไซต์ปรากฏในฟีเจอร์ค้นหาของ ChatGPT OpenAI ระบุชัดว่าเว็บไซต์ที่ไม่ยินยอมให้ OAI-SearchBot เข้าถึงจะไม่แสดงในคำตอบของการค้นหาใน ChatGPT
ถ้าคุณอยากให้ ChatGPT อ้างอิงหน้าเว็บของคุณ นี่คือโปรแกรมที่ควรอนุญาต ทั้งใน robots.txt และในไฟร์วอลล์ ช่วง IP ของมันเผยแพร่ไว้ที่ openai.com/searchbot.json ทำให้ไฟร์วอลล์ตรวจสอบได้ว่าคำขอมาจาก OpenAI จริง
ChatGPT-User ทำอะไร
ChatGPT-User ไม่ใช่โปรแกรมรวบรวมข้อมูลในความหมายปกติ มันดึงหน้าเว็บเมื่อผู้ใช้ ChatGPT หรือ Custom GPT ร้องขอ เช่น เมื่อมีคนวาง URL ของคุณลงในแชตแล้วขอให้สรุป OpenAI ระบุว่าไม่ได้ใช้เพื่อรวบรวมข้อมูลจากเว็บโดยอัตโนมัติ
รายละเอียดสองข้อจากเอกสารของ OpenAI ที่สำคัญ ข้อแรก เนื่องจากการกระทำเหล่านี้เริ่มโดยผู้ใช้ กฎของ robots.txt อาจไม่ใช้ ข้อสอง ChatGPT-User ไม่ได้ใช้ตัดสินว่าเนื้อหาจะปรากฏในการค้นหาหรือไม่ สำหรับการค้นหา การตั้งค่าที่มีผลคือ OAI-SearchBot
จะเกิดอะไรขึ้นเมื่อบล็อกแต่ละตัว
- บล็อก
GPTBot: เนื้อหาของคุณถูกระบุว่าไม่ให้ใช้ฝึกโมเดล การค้นหาของ ChatGPT ยังแสดงและอ้างอิงคุณได้ หากอนุญาตOAI-SearchBot - บล็อก
OAI-SearchBot: หน้าเว็บของคุณจะไม่แสดงในคำตอบของการค้นหาใน ChatGPT ส่วนการฝึกโมเดลควบคุมแยกต่างหากด้วยGPTBot - บล็อก
ChatGPT-Userใน robots.txt: OpenAI ระบุว่า robots.txt อาจไม่ใช้กับการเข้าชมเหล่านี้ จึงไม่รับประกันผล การบล็อกที่ไฟร์วอลล์จะทำให้การดึงล้มเหลว และผู้ใช้ที่วางลิงก์ของคุณจะเจอข้อผิดพลาดแทนเนื้อหาของคุณ - บล็อกทั้งสามตัวที่ไฟร์วอลล์: ChatGPT ทั้งจัดทำดัชนีและดึงหน้าเว็บของคุณไม่ได้ จึงไม่มีเนื้อหาของคุณให้อ้างอิง
- อนุญาตทั้งสามตัว: หน้าเว็บของคุณจัดทำดัชนีเพื่อการค้นหาได้ ดึงได้ตามคำขอ และผ่าน
GPTBotอาจถูกใช้ฝึกโมเดล
OpenAI ยังระบุด้วยว่า เมื่ออนุญาตทั้ง GPTBot และ OAI-SearchBot อาจใช้ผลการรวบรวมข้อมูลครั้งเดียวกันสำหรับทั้งสองวัตถุประสงค์ เพื่อไม่ต้องรวบรวมซ้ำสองรอบ
ควรใช้ robots.txt แบบไหนกับโปรแกรมรวบรวมข้อมูลของ OpenAI
สำหรับเว็บไซต์ส่วนใหญ่ที่อยากปรากฏในคำตอบของ ChatGPT ให้อนุญาตโปรแกรมสำหรับการค้นหา แล้วตัดสินใจเรื่องการฝึกโมเดลแยกต่างหาก ไฟล์นี้อนุญาตการค้นหาและไม่ยินยอมให้ใช้ฝึกโมเดล
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
User-agent: *
Allow: /
Disallow: /admin/
โปรดสังเกตรายละเอียดของ RFC 9309: โปรแกรมรวบรวมข้อมูลจะทำตามกลุ่มที่ระบุชื่อมัน และไม่สนใจกลุ่ม * ในตัวอย่างข้างต้น OAI-SearchBot เข้า /admin/ ได้ เพราะกลุ่มของมันเองไม่มีบรรทัด Disallow: /admin/ หากมีเส้นทางที่ต้องการเก็บเป็นส่วนตัว ให้ระบุซ้ำในทุกกลุ่มที่ระบุชื่อ OpenAI ระบุว่าการเปลี่ยนแปลงด้านการค้นหาอาจใช้เวลาประมาณ 24 ชั่วโมงจึงมีผล
จะยืนยันได้อย่างไรว่าไฟร์วอลล์ปล่อยให้ผ่าน
robots.txt เป็นเพียงการประกาศนโยบายของคุณ ส่วนไฟร์วอลล์หรือ CDN เป็นผู้ตัดสินว่าคำขอแต่ละรายการได้รับอะไรจริง ๆ ลองขอหน้าเว็บด้วย user agent ของโปรแกรมแต่ละตัว แล้วเปรียบเทียบรหัสสถานะและขนาดเนื้อหากับคำขอจากเบราว์เซอร์ หากโปรแกรมรวบรวมข้อมูลได้ 403, 429 หรือหน้าตรวจสอบ ขณะที่เบราว์เซอร์ได้หน้าปกติ แสดงว่าไฟร์วอลล์ทับ robots.txt ของคุณอยู่
AISeeWhy เปรียบเทียบแบบนี้กับเอเจนต์ทั้งสามของ OpenAI ในครั้งเดียว โดยจัดการบล็อก OAI-SearchBot และ ChatGPT-User เป็น P1 เพราะทำให้เสียการอ้างอิง และแสดงการบล็อก GPTBot เป็นทางเลือกเชิงนโยบายระดับ P3 ไม่ใช่ข้อผิดพลาด
คำถามที่พบบ่อย
GPTBot คือ ChatGPT หรือเปล่า
ไม่ใช่ GPTBot เป็นโปรแกรมรวบรวมข้อมูลสำหรับฝึกโมเดล การค้นหาของ ChatGPT ใช้ OAI-SearchBot และการเข้าชมสดที่ผู้ใช้ขอมาจาก ChatGPT-User
อนุญาตการค้นหาของ ChatGPT แต่บล็อกการฝึกโมเดลได้ไหม
ได้ ให้อนุญาต OAI-SearchBot และห้าม GPTBot ใน robots.txt OpenAI ระบุว่าการตั้งค่าสองรายการนี้เป็นอิสระต่อกัน
ควรบล็อก OpenAI ด้วยที่อยู่ IP ไหม
การบล็อกด้วย IP ทำให้โปรแกรมรวบรวมข้อมูลอ่าน robots.txt ของคุณไม่ได้ และทำให้เปลี่ยนนโยบายได้ยากขึ้น โดยทั่วไปดีกว่าที่จะประกาศนโยบายใน robots.txt และใช้ช่วง IP ที่เผยแพร่ไว้เพื่อตรวจสอบ ไม่ใช่เพื่อบล็อกโปรแกรมของ OpenAI
ทำไมต้องจับคู่กับโทเค็น ไม่ใช่ user agent ทั้งสตริง
OpenAI ระบุว่าหมายเลขเวอร์ชันใน user agent อาจเปลี่ยน และสตริงตัวอย่างที่เผยแพร่ก็ต่างกันในแต่ละโปรแกรม กฎที่จับคู่กับ GPTBot หรือ OAI-SearchBot ยังใช้ได้หลังอัปเดต ส่วนกฎที่จับคู่กับสตริงเป๊ะ ๆ อาจเลิกทำงานโดยไม่มีใครรู้ตัว