Ein Crawl ist kein Korpus. Milliarden von Seiten abzurufen ist ein Infrastrukturproblem, und das wird in collecting web data for AI and LLM training behandelt. Diese Seiten in Trainingsdaten zu verwandeln, die ein Modell verbessern, ist ein anderes Problem mit eigenen Stufen, und dort entscheidet sich der größte Teil der Qualität des finalen Datensatzes.
Dieser Leitfaden geht diese Stufen in der Reihenfolge durch: entscheiden, was gesammelt wird, Opt-outs respektieren, Text extrahieren, filtern, deduplizieren, Evaluationskontamination entfernen und das Ergebnis dokumentieren. Die allgemeine Pipeline für gescrapte Datensätze, in kleinerem Maßstab, findet sich in how to build a dataset with web scraping.
Von der Mischung ausgehen, nicht vom Crawler
Entscheiden Sie, was das Modell braucht, bevor Sie entscheiden, was gecrawlt wird. Ein Trainingskorpus ist eine Mischung: Anteile von Sprachen, Domains, Formaten und Zeiträumen, ausgedrückt als Token-Budget für jeden Anteil.
Dieses Ziel entscheidet alles Nachfolgende. Es zeigt, aus welchen Regionen gesammelt werden soll, wie viel Crawl-Budget jede Quelle verdient, und wann eine Domain genug beigetragen hat. Ohne dieses Ziel treibt ein Crawl zu dem, was am einfachsten abzurufen ist, meist große, englischsprachige, stark verlinkte Seiten, und das Modell erbt dieses Ungleichgewicht. Die Sampling-Seite dieses Problems wird in your residential proxy pool is a sample, not the internet behandelt.
Die Crawl-Frontier
Die Frontier ist die Warteschlange der URLs, die auf den Abruf warten, und wie Sie sie verwalten, entscheidet, welche Teile des Webs im Korpus landen.
Seeds. Beginnen Sie mit Quellen, die zur Mischung passen: kuratierte Domain-Listen pro Sprache und Thema, Sitemaps und Links von hochwertigen Seiten.
Priorisierung. Ranken Sie URLs nach erwartetem Wert: einem Qualitäts-Prior für die Quelle, Neuheit relativ zu dem, was Sie bereits besitzen, und Aktualität, wo Aktualität wichtig ist.
Kanonisierung. Normalisieren Sie URLs vor der Warteschlangenaufnahme, entfernen Sie Tracking-Parameter, Session-IDs und doppelte Pfade, damit dieselbe Seite nicht mehrmals unter verschiedenen Adressen abgerufen wird.
Politeness-Budgets. Begrenzen Sie Nebenläufigkeit und Anfragerate pro Host, nicht nur global. Eine Frontier, die eine kleine Seite bombardiert, ist sowohl unverantwortlich als auch selbstschädigend, da sie geblockt wird. Die Mechanik dazu findet sich in rate limiting and request throttling.
Recrawl-Richtlinie. Entscheiden Sie, wie oft jede Quelle erneut besucht wird, basierend darauf, wie oft sie sich ändert und wie viel frischen Inhalt die Mischung benötigt.
Opt-outs zum Abrufzeitpunkt respektieren
Opt-out-Signale müssen zum Zeitpunkt des Seitenabrufs geprüft und zusammen mit der Seite erfasst werden, da sie sich mit der Zeit ändern und Sie später beweisen müssen, wie der Zustand war.
- robots.txt, einschließlich Regeln, die an KI-spezifische Crawler-Namen gerichtet sind.
- Seitenebene-Signale wie Robots-Meta-Tags und Response-Header.
- Maschinenlesbare Rechtsvorbehalte. In der EU können Rechteinhaber Text-and-Data-Mining-Rechte in maschinenlesbarer Form vorbehalten, und Anbieter von KI-Modellen für allgemeine Zwecke sollen diese Vorbehalte respektieren und ihre Trainingsinhalte dokumentieren.
- Site-Nutzungsbedingungen, die automatisierte Sammlung oder Wiederverwendung verbieten.
Speichern Sie den Opt-out-Zustand zu jedem Dokument und behalten Sie die Fähigkeit, Dokumente später zu entfernen, falls eine Quelle die Erlaubnis widerruft. Die breitere Einordnung findet sich in ethical residential proxies for AI data collection.
Extraktion: von HTML zu Text
Rohes HTML ist größtenteils kein Inhalt. Navigation, Footer, Cookie-Banner, Widgets für verwandte Artikel und Werbung können die eigentliche Textmenge einer Seite übersteigen.
- Extrahieren Sie den Hauptinhalt und verwerfen Sie Boilerplate.
- Bewahren Sie Struktur, die Bedeutung trägt: Überschriften, Listen, Tabellen und Codeblöcke.
- Behandeln Sie gerenderte Seiten. Manche Inhalte existieren erst, nachdem JavaScript ausgeführt wurde; siehe when you need a web scraping API.
- Identifizieren Sie die Sprache pro Dokument, und pro Absatz bei mehrsprachigen Seiten, damit die Mischungsziele überhaupt gemessen werden können.
Bewahren Sie die Rohantworten für ein Replay-Fenster auf. Die Extraktionslogik wird sich verbessern, und eine erneute Extraktion aus gespeicherten Antworten ist weit günstiger als ein erneutes Crawlen. Das Landing-Muster findet sich in moving web scraping API data into SQL.
Qualitätsfilterung
Das meiste, was ein Crawl liefert, ist es nicht wert, damit zu trainieren. Die Filterung läuft meist schichtweise, am günstigsten zuerst.
Heuristische Filter entfernen offensichtlichen Müll: sehr kurze Dokumente, Seiten, die von Symbolen oder Zahlen dominiert werden, vielfach wiederholte Zeilen, Text ohne gewöhnliche Funktionswörter und Seiten, die größtenteils Linklisten sind.
Modellbasierte Qualitätsfilter bewerten Dokumente anhand von Beispielen für Text, von dem Sie mehr wollen. Sie sind wirkungsvoll und codieren eine Definition von Qualität, prüfen Sie also, was sie systematisch ausschließen.
Die Filterung generierter Inhalte wird von Jahr zu Jahr wichtiger, wie in how to detect and filter AI-generated content in web datasets behandelt.
Sicherheitsfilter wenden die jeweils erforderliche Inhaltsrichtlinie des Modells an.
Kalibrieren Sie jeden Filter pro Sprache. Ein Schwellenwert, der auf Englisch abgestimmt ist, entfernt bei manchen Sprachen viel zu viel und bei anderen viel zu wenig. Und messen Sie, was jede Stufe entfernt, nach Sprache und Domain, damit ein Filter, der still das gesamte Schriftgut einer Region löscht, erkannt wird.
Deduplizierung auf Korpusebene
Doppelter Text ist überall im Web zu finden: syndizierte Artikel, gespiegelte Seiten, templatebasierte Seiten und über eine Domain verteilte Boilerplate. Bleibt er drin, überwertet er, was zufällig am meisten kopiert wird.
- Exakte Duplikate werden durch Hashing normalisierten Textes entfernt.
- Near-Duplikate werden mit MinHash und Locality-Sensitive Hashing über geshingelten Text gefunden, was auf sehr große Korpora skaliert.
- Wiederholte Absätze innerhalb einer Domain, etwa Disclaimer und Signaturen, werden auf Absatzebene entfernt.
- Duplikate über die Zeit, wenn dieselbe Seite in mehreren Crawl-Snapshots auftaucht, werden zu einer Version zusammengeführt.
Personenbezogene Daten
Ein Web-Crawl sammelt personenbezogene Daten, ob man will oder nicht: Namen, E-Mail-Adressen, Telefonnummern und manchmal Identifikationsnummern. Sammeln Sie nicht hinter Logins, entfernen Sie gängige Kennungsmuster während der Verarbeitung und dokumentieren Sie, was die Pipeline entfernt. Die rechtliche Einordnung findet sich in residential proxies and GDPR compliance.
Dekontamination
Wenn Ihre Evaluations-Benchmarks in den Trainingsdaten auftauchen, messen Ihre Evaluationen nichts mehr. Benchmark-Fragen und -Antworten werden im Web kopiert, sodass Kontamination standardmäßig auftritt.
Prüfen Sie den Korpus auf Überlappung mit jedem geplanten Evaluationssatz, typischerweise mit langem N-Gramm-Matching, und entfernen oder markieren Sie die Treffer. Erfassen Sie, welche Benchmarks geprüft wurden, damit spätere Ergebnisse ehrlich interpretiert werden können.
Alles dokumentieren und versionieren
Ein Trainingskorpus ist das Produkt hunderter Entscheidungen, und niemand kann ihn verantwortungsvoll nutzen, ohne sie zu kennen.
- Provenienz pro Dokument: Quell-URL, Abrufzeitpunkt, der Standpunkt, von dem aus beobachtet wurde, Opt-out-Zustand und welche Filterversionen es durchlaufen hat.
- Eine Dataset Card, die Quellen, Zeitraum, Sprachen, Filter und deren Versionen, bekannte Lücken und bekannte Verzerrungen abdeckt.
- Eine reproduzierbare Pipeline, damit eine Korpusversion neu erstellt oder angepasst werden kann, wenn eine Quelle die Erlaubnis widerruft.
Die Begründung dafür, zu erfassen, wo und wann jede Beobachtung gemacht wurde, findet sich in the vantage-point standard.
Die Collection-Schicht im großen Maßstab
Sammlung im großen Maßstab benötigt verteilte, geografisch passende Exits, sowohl um regionale Quellen zu erreichen als auch um die Anfrageraten pro Host in einem angemessenen Rahmen zu halten. Mit dem Shifter-Gateway wird der Markt in den Zugangsdaten gegenüber p.shifter.io:443 festgelegt, und das Weglassen einer Session-ID rotiert den Exit pro Anfrage, was zu einer Frontier passt, die viele unabhängige Seiten abruft:
customer-USERNAME-country-jp:PASSWORD
Warum die Proxy-Schicht speziell für Trainingsdaten wichtig ist, wird in residential proxies for AI training data behandelt.
Metriken, die den Korpus ehrlich halten
| Metrik | Was sie aussagt |
|---|---|
| Tokens nach Sprache und Domain gegenüber Ziel | Ob die Mischung erreicht wird |
| Entfernungsrate pro Filterstufe, nach Sprache | Ob ein Filter irgendwo zu viel entfernt |
| Duplikatrate | Wie viel des Crawls Wiederholung war |
| Opt-out-Abdeckung | Anteil der Dokumente mit erfasster Opt-out-Prüfung |
| Kontaminationstreffer pro Benchmark | Ob Evaluationen vertrauenswürdig sind |
FAQ
Können wir von einem öffentlichen Web-Crawl ausgehen, statt selbst zu crawlen?
Öffentliche Crawls sind ein starker Ausgangspunkt. Sie hängen dem lebenden Web hinterher und haben Abdeckungslücken, sodass die meisten Teams gezielte, aktuellere Sammlung für die für sie wichtigen Sprachen und Domains ergänzen.
Wie aggressiv sollte die Qualitätsfilterung sein?
Aggressiv genug, um Müll zu entfernen, sorgfältig genug gemessen, um zu sehen, was sonst noch entfernt wird. Prüfen Sie Entfernungen nach Sprache und Region, bevor Sie sich auf Schwellenwerte festlegen.
Müssen wir robots.txt für Trainingsdaten befolgen?
Ja, einschließlich KI-spezifischer Regeln, und erfassen Sie den Zustand zum Abrufzeitpunkt. Opt-outs werden in manchen Rechtsordnungen auch zu einer rechtlichen Erwartung.
Wie unterscheidet sich das von Grounding-Daten?
Trainingsdaten formen die Gewichte des Modells. Grounding-Daten werden zum Antwortzeitpunkt abgerufen und zitiert. Letzteres wird in grounding LLM agents with live web data behandelt.
Fazit
Ein Trainingskorpus im großen Maßstab entsteht in den Stufen nach dem Crawl: einem Mischungsziel, das entscheidet, was gesammelt wird, einer Frontier, die höflich bleibt, Opt-outs, die zum Abrufzeitpunkt geprüft und erfasst werden, sauberer Extraktion, geschichteter, pro Sprache kalibrierter Filterung, Deduplizierung auf jeder Ebene, Dekontamination gegenüber Evaluationen und Dokumentation, die es jedem erlaubt, die Entscheidungen nachzuvollziehen.
Sammeln Sie aus den Regionen, die die Mischung benötigt, bewahren Sie Rohantworten für Replay auf und messen Sie, was jede Stufe entfernt. Die Produktansicht befindet sich auf der Seite residential proxies for AI and ML, mit Preisen auf der Pricing-Seite.