robots.txt για AI crawlers: τι να επιτρέψετε, τι να αποκλείσετε
Δώστε σε κάθε AI crawler που σας ενδιαφέρει τη δική του ομάδα User-agent. Επιτρέψτε crawlers αναζήτησης όπως οι OAI-SearchBot, Claude-SearchBot και PerplexityBot αν θέλετε να παρατίθεστε και αποφασίστε χωριστά για τα tokens εκπαίδευσης όπως GPTBot, ClaudeBot, Google-Extended και Applebot-Extended. Μια ονομαστική ομάδα αντικαθιστά την ομάδα * για τον συγκεκριμένο crawler.
Το robots.txt είναι ένα αρχείο απλού κειμένου που ανάγεται στο 1994 και έγινε επίσημο πρότυπο, το RFC 9309, το 2022. Οι περισσότεροι πάροχοι AI δηλώνουν ότι οι crawlers τους το ακολουθούν και αρκετοί δημοσιεύουν ξεχωριστά tokens για αναζήτηση και για εκπαίδευση. Έτσι το robots.txt είναι το πιο απλό σημείο για να δηλώσετε μια πολιτική AI, αρκεί οι κανόνες να σημαίνουν αυτό που νομίζετε.
Σε αυτή τη σελίδα
- Ποια tokens του robots.txt χρησιμοποιούν οι AI crawlers;
- Πώς μοιάζει ένα καλό robots.txt για AI;
- Πώς επιλέγουν οι crawlers ποιοι κανόνες ισχύουν για αυτούς;
- Ποια είναι τα συχνότερα λάθη στο robots.txt;
- Μπορώ να δηλώσω πολιτική χρήσης AI πέρα από το allow και το disallow;
- Πόσο αργούν οι αλλαγές και πώς τις ελέγχω;
Ποια tokens του robots.txt χρησιμοποιούν οι AI crawlers;
Αυτά είναι τα tokens που τεκμηριώνουν οι πάροχοι. Το ταίριασμα δεν κάνει διάκριση πεζών-κεφαλαίων σύμφωνα με το RFC 9309.
- OpenAI:
OAI-SearchBot(αναζήτηση ChatGPT),GPTBot(εκπαίδευση),ChatGPT-User(επισκέψεις κατόπιν αιτήματος χρήστη· η OpenAI αναφέρει ότι το robots.txt μπορεί να μην ισχύει). - Anthropic:
Claude-SearchBot(αναζήτηση),ClaudeBot(εκπαίδευση),Claude-User(επισκέψεις κατόπιν αιτήματος χρήστη). - Perplexity:
PerplexityBot(αναζήτηση),Perplexity-User(επισκέψεις κατόπιν αιτήματος χρήστη· η Perplexity αναφέρει ότι γενικά αγνοεί το robots.txt). - Google:
Googlebot(Search, μαζί με τις λειτουργίες AI του) καιGoogle-Extended, ένα token χωρίς δικό του crawler που ελέγχει τη χρήση στην εκπαίδευση και το grounding του Gemini. - Apple:
Applebot(Spotlight, Siri, αναζήτηση Safari) καιApplebot-Extended, που δεν σαρώνει αλλά ελέγχει τη χρήση για την εκπαίδευση των θεμελιωδών μοντέλων της Apple. - Meta:
meta-externalagent(εκπαίδευση και ευρετηρίαση προϊόντων) καιmeta-webindexer(αναζήτηση Meta AI). - Common Crawl:
CCBot, που χτίζει το δωρεάν δημόσιο αρχείο δεδομένων ιστού του Common Crawl.
Πώς μοιάζει ένα καλό robots.txt για AI;
Αυτό το παράδειγμα αφήνει μέσα την AI αναζήτηση και τις ανακτήσεις από χρήστη, εξαιρεί τα κύρια tokens εκπαίδευσης και κρατά κλειστό για όλους έναν ιδιωτικό χώρο:
User-agent: OAI-SearchBot
User-agent: Claude-SearchBot
User-agent: PerplexityBot
User-agent: ChatGPT-User
User-agent: Claude-User
Allow: /
Disallow: /account/
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: meta-externalagent
User-agent: CCBot
Disallow: /
User-agent: *
Allow: /
Disallow: /account/
Sitemap: https://example.com/sitemap.xml
Πολλές γραμμές User-agent στη σειρά σχηματίζουν μία ομάδα, άρα οι κανόνες από κάτω ισχύουν για καθέναν από αυτούς τους crawlers. Αν θέλετε το περιεχόμενό σας να χρησιμοποιείται για εκπαίδευση, απλώς παραλείψτε τη δεύτερη ομάδα. Ο αποκλεισμός του Google-Extended δεν επηρεάζει την Αναζήτηση Google: η Google αναφέρει ότι δεν επηρεάζει τη συμπερίληψη στην Αναζήτηση και δεν αποτελεί σήμα κατάταξης. Αντίστοιχα, η Apple αναφέρει ότι σελίδες που απαγορεύουν τον Applebot-Extended μπορούν να εμφανίζονται στα αποτελέσματα αναζήτησής της.
Πώς επιλέγουν οι crawlers ποιοι κανόνες ισχύουν για αυτούς;
Το RFC 9309 το ορίζει με ακρίβεια και οι λεπτομέρειες εξηγούν τις περισσότερες εκπλήξεις:
- Ο crawler αναζητά την ομάδα της οποίας το
User-agentταιριάζει με το product token του, χωρίς διάκριση πεζών-κεφαλαίων. Αν ταιριάζουν περισσότερες ομάδες, οι κανόνες τους συνδυάζονται σε μία. - Μόνο αν δεν ταιριάζει καμία ομάδα, ο crawler ακολουθεί την ομάδα
User-agent: *. Μια ονομαστική ομάδα δεν κληρονομεί τίποτα από το*. - Μέσα στην ομάδα, κερδίζει ο κανόνας με τη μακρύτερη διαδρομή που ταιριάζει. Το
Allow: /blog/υπερισχύει τουDisallow: /για το/blog/post. - Αν ένας κανόνας
Allowκαι έναςDisallowταιριάζουν με ίσο μήκος, πρέπει να χρησιμοποιηθεί τοAllow. - Το
*σε μια διαδρομή ταιριάζει με οποιουσδήποτε χαρακτήρες και το$σηματοδοτεί το τέλος, οπότε τοDisallow: /*.pdf$καλύπτει κάθε PDF.
Ποια είναι τα συχνότερα λάθη στο robots.txt;
- Η προσδοκία ότι μια ονομαστική ομάδα κληρονομεί από το
*. Μια ομάδα για τονOAI-SearchBotμόνο μεAllow: /ανοίγει κάθε διαδρομή, ακόμη και όσες απαγορεύσατε στο*. - Μια διεύθυνση robots.txt που επιστρέφει σελίδα HTML, συχνά σελίδα 404 που σερβίρεται με κατάσταση 200. Οι crawlers δεν βρίσκουν έγκυρους κανόνες μέσα της.
- Ένα robots.txt που επιστρέφει σφάλμα server. Το RFC 9309 ορίζει ότι ο crawler πρέπει τότε να υποθέσει ότι ολόκληρος ο ιστότοπος είναι απαγορευμένος. Το 404 είναι διαφορετικό: σημαίνει ότι δεν υπάρχουν περιορισμοί.
- Ο αποκλεισμός ενός token αναζήτησης ενώ στόχος ήταν η εκπαίδευση, για παράδειγμα απαγορεύοντας τον
PerplexityBotή τονClaude-SearchBotγια να αποφύγετε την εκπαίδευση μοντέλων. - Η εξάρτηση από το robots.txt για να σταματήσουν οι ανακτήσεις που ζητά ο χρήστης. Η OpenAI και η Perplexity αναφέρουν και οι δύο ότι τα user agents τους μπορεί να μην το ακολουθούν.
- Η λήθη των υποτομέων. Κάθε host έχει το δικό του robots.txt· η τεκμηρίωση της Anthropic υπενθυμίζει στους ιδιοκτήτες ιστότοπων να προσθέτουν κανόνες για κάθε υποτομέα.
Μπορώ να δηλώσω πολιτική χρήσης AI πέρα από το allow και το disallow;
Το Cloudflare έχει προτείνει μια γραμμή Content-Signal για το robots.txt με τρία σήματα: search (δημιουργία ευρετηρίου αναζήτησης και εμφάνιση συνδέσμων και σύντομων αποσπασμάτων), ai-input (χρήση του περιεχομένου σε πραγματικό χρόνο για απαντήσεις AI) και ai-train (εκπαίδευση ή fine-tuning μοντέλων). Το managed robots.txt του Cloudflare μπορεί να την προσθέσει για εσάς.
User-agent: *
Content-Signal: search=yes, ai-input=yes, ai-train=no
Allow: /
Όπως ό,τι υπάρχει στο robots.txt, πρόκειται για προτιμήσεις και όχι για τεχνικούς ελέγχους. Το ίδιο το Cloudflare σημειώνει ότι η συμμόρφωση με το robots.txt είναι εθελοντική. Η γραμμή είναι προαιρετική και δεν βλάπτει, αλλά δεν αντικαθιστά τις ομάδες ανά crawler παραπάνω.
Πόσο αργούν οι αλλαγές και πώς τις ελέγχω;
Το RFC 9309 ορίζει ότι οι crawlers δεν πρέπει να χρησιμοποιούν αποθηκευμένο robots.txt για πάνω από 24 ώρες, και η OpenAI και η Perplexity αναφέρουν και οι δύο ότι οι αλλαγές μπορεί να χρειαστούν περίπου μία ημέρα για να εφαρμοστούν. Θυμηθείτε επίσης ότι το robots.txt δεν είναι έλεγχος πρόσβασης: ένα firewall μπορεί να αποκλείσει έναν crawler που οι κανόνες σας επιτρέπουν.
Το AISeeWhy αναλύει το robots.txt σας με το RFC 9309 για κάθε crawler που δοκιμάζει, επισημαίνει αρχεία που δεν είναι προσβάσιμα ή σερβίρονται ως HTML, δείχνει πού διαφωνούν οι κανόνες σας με τον server και δίνει έτοιμο diff για την αλλαγή.
Συχνές ερωτήσεις
Βλάπτει η ορατότητά μου στις απαντήσεις AI ο αποκλεισμός του GPTBot ή του ClaudeBot;
Όχι άμεσα. Και οι δύο πάροχοι χρησιμοποιούν ξεχωριστούς crawlers αναζήτησης, τον OAI-SearchBot και τον Claude-SearchBot. Ο αποκλεισμός του crawler εκπαίδευσης είναι επιλογή πολιτικής.
Σταματά το Google-Extended τα AI Overviews;
Όχι. Η Google αναφέρει ότι οι λειτουργίες AI στην Αναζήτηση χρησιμοποιούν τον Googlebot και τους συνήθεις ελέγχους της Αναζήτησης, όπως nosnippet και noindex. Το Google-Extended καλύπτει την εκπαίδευση και το grounding του Gemini σε άλλα προϊόντα της Google και δεν επηρεάζει την Αναζήτηση.
Υποστηρίζουν οι AI crawlers το Crawl-delay;
Δεν αποτελεί μέρος του RFC 9309. Η Anthropic αναφέρει ότι υποστηρίζει το Crawl-delay ως μη τυπική επέκταση· για άλλους παρόχους, ελέγξτε την τεκμηρίωσή τους.
Πού πρέπει να βρίσκεται το robots.txt;
Στη ρίζα κάθε host, για παράδειγμα https://example.com/robots.txt. Ένα αρχείο σε υποφάκελο αγνοείται και κάθε υποτομέας χρειάζεται το δικό του.
Πηγές
- RFC 9309: Robots Exclusion Protocol
- OpenAI: Overview of OpenAI crawlers
- Google: Common crawlers, including Google-Extended
- Apple: About Applebot
- Cloudflare: Managed robots.txt and Content Signals