GPT-Crawler : exploration automatique du contenu d'un site web pour générer des documents de base de connaissances

Introduction générale

GPT-Crawler est un outil open source développé par l'équipe BuilderIO et hébergé sur GitHub. Il explore le contenu des pages en entrant une ou plusieurs URL de sites web, générant des documents de connaissance structurés (output.json) pour créer des assistants GPT ou AI personnalisés. Les utilisateurs peuvent configurer des règles d'exploration, en spécifiant par exemple une URL de départ et un sélecteur de contenu, et l'outil extrait automatiquement le texte et l'organise en fichiers. L'outil est facile à utiliser et prend en charge les exécutions locales, les déploiements de conteneurs Docker et les appels d'API, ce qui le rend idéal pour les développeurs qui souhaitent créer rapidement des assistants d'IA propriétaires à partir du contenu d'un site web. Jusqu'à présent, il gagne du terrain dans la communauté technologique, apprécié pour son efficacité et sa nature open-source.

GPT-Crawler:自动爬取网站内容生成知识库文件

 

Liste des fonctions

  • Recherche dans le contenu d'un site web à partir d'un ou de plusieurs URL, en générant output.json Documentation.
  • Prise en charge des règles d'exploration personnalisées, y compris les URL de départ, les modèles de correspondance de liens et les sélecteurs CSS.
  • Capacité à gérer des pages web dynamiques et à explorer le contenu rendu côté client à l'aide d'un navigateur sans tête.
  • Fournit une interface API pour lancer des tâches d'exploration via des requêtes POST.
  • Permet de définir le nombre maximum de pages (maxPagesToCrawl), la taille du document (maxFileSize) et le nombre de jetons (maxTokens).
  • Les fichiers générés peuvent être téléchargés directement sur OpenAI pour créer des GPT ou des assistants IA personnalisés.
  • Prend en charge l'exécution de conteneurs Docker, facile à déployer dans différents environnements.
  • Des types de ressources spécifiques (images, vidéos, etc.) peuvent être exclus pour optimiser l'efficacité de l'exploration.

 

Utiliser l'aide

Installation et fonctionnement (mode local)

GPT-Crawler est développé sur la base de Node.js et doit être installé pour fonctionner. Voici les étapes détaillées :

  1. Vérification de l'environnement
    Assurez-vous que Node.js (version 16 ou supérieure) et npm sont installés sur votre ordinateur. Exécutez la commande suivante pour confirmer :
node -v
npm -v

Si vous ne l'avez pas, téléchargez-le et installez-le sur le site web de Node.js.

  1. projet de clonage
    Téléchargez le projet localement en tapant la commande dans le terminal :
git clone https://github.com/BuilderIO/gpt-crawler.git
  1. Accès au catalogue
    Une fois le téléchargement terminé, allez dans le dossier du projet :
cd gpt-crawler
  1. Installation des dépendances
    Exécutez la commande suivante pour installer les paquets requis :
npm install
  1. Configuration du Crawler
    spectacle (un billet) config.ts modifiez les paramètres d'exploration. Par exemple, pour explorer le document Builder.io :
export const defaultConfig: Config = {
url: "https://www.builder.io/c/docs/developers",
match: "https://www.builder.io/c/docs/**",
selector: ".docs-builder-container",
maxPagesToCrawl: 50,
outputFileName: "output.json"
};
  • urlAdresse de crawl de départ : Adresse de crawl de départ : Adresse de crawl de départ.
  • matchModèle de correspondance de lien avec prise en charge des caractères génériques.
  • selector: sélecteur CSS pour l'extraction de contenu.
  • maxPagesToCrawlNombre maximum de pages à parcourir : Nombre maximum de pages à parcourir.
  • outputFileNameNom du fichier de sortie.
  1. Exécution du crawler
    Une fois la configuration terminée, exécutez la commande suivante pour démarrer le crawl :
npm start

A l'issue de la formation.output.json est généré dans le répertoire racine du projet.

Autres modes de fonctionnement

Utilisation des conteneurs Docker

  1. Assurez-vous que Docker est installé (téléchargé depuis le site web de Docker).
  2. entrer dans containerapp Dossier, Modifier config.ts.
  3. Exécutez la commande suivante pour construire et démarrer le conteneur :
docker build -t gpt-crawler .
docker run -v $(pwd)/data:/app/data gpt-crawler
  1. Le fichier de sortie est généré dans le fichier data dossier.

Utilisation de l'API

  1. Après avoir installé les dépendances, démarrez le service API :
npm run start:server
  1. Le service fonctionne par défaut sur le serveur http://localhost:3000.
  2. Envoyer une requête POST à /crawlexemple :
curl -X POST http://localhost:3000/crawl -H "Content-Type: application/json" -d '{"url":"https://example.com","match":"https://example.com/**","selector":"body","maxPagesToCrawl":10,"outputFileName":"output.json"}'
  1. accessible /api-docs Consulter la documentation de l'API (basée sur Swagger).

Télécharger sur OpenAI

  1. Création de GPT personnalisés
  • Open ChatGPT.
  • Cliquez sur votre nom dans le coin inférieur gauche et sélectionnez "Mes TPG".
  • Cliquez sur "Create a GPT" > "Configure" > "Knowledge".
  • télécharger output.json Documentation.
  • Si le fichier est trop volumineux, le config.ts mettre en place maxFileSize peut-être maxTokens Fichier fractionné.
  1. Créer des assistants personnalisés
  • Ouvrez la plateforme OpenAI.
  • Cliquez sur "+ Créer" > "Télécharger".
  • télécharger output.json Documentation.

Fonctions

  • Contenu du crawl
    indiquer clairement et avec certitude url répondre en chantant selector L'outil extrait ensuite le texte de la page. Par exemple, l'outil extrait le texte de la page..docs-builder-container Saisir uniquement le contenu de la région.
  • Générer des fichiers
    Le format du fichier de sortie est le suivant :
[{"title": "页面标题", "url": "https://example.com/page", "html": "提取的文本"}, ...]
  • Rendement optimisé
    utiliser resourceExclusions Exclure les ressources étrangères (par ex. png,jpg), ce qui réduit la taille du fichier.

mise en garde

  • Un compte payant OpenAI est nécessaire pour créer des GPT personnalisés.
  • L'exploration dynamique du web s'appuie sur des navigateurs sans tête pour garantir l'intégrité des dépendances.
  • La configuration peut être ajustée pour diviser le téléchargement lorsque le fichier est trop volumineux.

 

scénario d'application

  1. Assistant de support technique
    Parcourir les sites web de documentation sur les produits pour générer des assistants IA qui aident les utilisateurs à répondre aux questions techniques.
  2. Outils d'organisation du contenu
    Récupérez des articles de blogs ou de sites d'information pour créer une base de connaissances ou un assistant de questions-réponses.
  3. Assistant(e) d'éducation et de formation
    Parcourir les pages de cours en ligne pour générer des assistants d'apprentissage qui fournissent des réponses en rapport avec le cours.

 

QA

  1. Est-il possible d'explorer plusieurs sites web ?
    La boîte de conserve. Dans le config.ts Il suffit de définir plusieurs URL et règles de correspondance dans le fichier
  2. Que faire si le fichier est trop volumineux pour être téléchargé ?
    mettre en place maxFileSize peut-être maxTokensdivise le fichier en plusieurs fichiers plus petits.
  3. Soutenez-vous les sites web chinois ?
    Prise en charge. Tant que le contenu du site peut être analysé par des navigateurs sans tête, il peut être exploré correctement.
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...