AIパーソナル・ラーニング
と実践的なガイダンス
ビーンバッグ・マースコード1

GPT-Crawler: ウェブサイトコンテンツを自動的にクロールして知識ベースドキュメントを生成

はじめに

GPT-Crawlerは、BuilderIOチームによって開発され、GitHubでホストされているオープンソースツールです。1つ以上のウェブサイトのURLを入力することでページコンテンツをクロールし、構造化ナレッジドキュメント(output.json)を使って、カスタムGPTまたはAIアシスタントを作成することができる。ユーザは、開始URLやコンテンツセレクタの指定などのクロールルールを設定することができ、ツールは自動的にテキストを抽出し、ファイルに整理する。このツールは使いやすく、ローカルでの実行、Dockerコンテナへのデプロイ、APIコールをサポートしているため、開発者がウェブサイトのコンテンツから独自のAIアシスタントを素早く構築するのに理想的だ。これまでのところ、その効率性とオープンソースの性質が人気を呼び、技術コミュニティで支持を集めている。

GPT Crawler: ウェブサイトから知識ファイルをクロールし、カスタムGPTを作成する-1


 

機能一覧

  • 1つまたは複数のURLからウェブサイトのコンテンツをクロールし、以下を生成する。 output.json ドキュメンテーション
  • 開始URL、リンクマッチングパターン、CSSセレクタなどのカスタムクロールルールをサポート。
  • 動的なウェブページを処理し、ヘッドレス・ブラウザを使用してクライアント側でレンダリングされたコンテンツをクロールする能力。
  • POSTリクエストによってクロールタスクを開始するためのAPIインターフェースを提供する。
  • 最大ページ数の設定に対応(maxPagesToCrawl)、ドキュメント・サイズ(maxFileSize)とトークン数(maxTokens).
  • 生成されたファイルは、カスタムGPTやAIアシスタントを作成するためにOpenAIに直接アップロードすることができます。
  • Dockerコンテナの実行をサポートし、さまざまな環境に簡単にデプロイできます。
  • クロール効率を最適化するために、特定のリソースタイプ(画像、ビデオなど)を除外することができる。

 

ヘルプの使用

設置および操作(ローカルモード)

GPT-CrawlerはNode.js開発に基づいており、実行するにはインストールが必要です。詳しい手順は以下の通りです:

  1. 環境のチェック
    コンピューターにNode.js(バージョン16以上)とnpmがインストールされていることを確認し、以下のコマンドを実行して確認する:
node -v
npm -v

お持ちでない場合は、Node.jsのウェブサイトからダウンロードしてインストールしてください。

  1. クローンプロジェクト
    ターミナルでコマンドを入力し、プロジェクトをローカルにダウンロードする:
git clone https://github.com/BuilderIO/gpt-crawler.git
  1. カタログへのアクセス
    ダウンロードが完了したら、プロジェクトフォルダーに移動する:
cd gpt-crawler
  1. 依存関係のインストール
    以下のコマンドを実行して、必要なパッケージをインストールする:
npm install
  1. クローラーの設定
    見せる config.ts ファイルのクロール・パラメータを変更する。たとえば、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"
};
  • urlクロール開始アドレス
  • matchワイルドカードをサポートするリンク・マッチング・パターン。
  • selector: コンテンツを抽出するための CSS セレクタ。
  • maxPagesToCrawlクロールする最大ページ数。
  • outputFileName出力ファイル名
  1. クローラーの実行
    設定が完了したら、以下のコマンドを実行してクロールを開始する:
npm start

完成後output.json ファイルはプロジェクトのルート・ディレクトリに生成される。

代替オペレーション・モード

Dockerコンテナの使用

  1. Dockerがインストールされていることを確認する(Dockerのウェブサイトからダウンロード)。
  2. 入る containerapp フォルダ、編集 config.ts.
  3. 以下のコマンドを実行し、コンテナをビルドして起動する:
docker build -t gpt-crawler .
docker run -v $(pwd)/data:/app/data gpt-crawler
  1. 出力ファイルは data フォルダー

APIを使って実行する

  1. 依存関係をインストールしたら、APIサービスを開始する:
npm run start:server
  1. サービスはデフォルトで http://localhost:3000.
  2. にPOSTリクエストを送信する。 /crawl例えば
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. アクセス可能 /api-docs APIドキュメントを見る(Swaggerベース)。

OpenAIへのアップロード

  1. カスタムGPTの作成
  • ChatGPTを開く。
  • 左下にある自分の名前をクリックし、"My GPTs "を選択します。
  • GPTを作成」→「設定」→「知識」をクリックします。
  • アップロード output.json ドキュメンテーション
  • ファイルが大きすぎる場合 config.ts セットアップ maxFileSize もしかしたら maxTokens ファイルを分割する。
  1. カスタムアシスタントの作成
  • OpenAIのプラットフォームを開く。
  • 作成」→「アップロード」をクリック。
  • アップロード output.json ドキュメンテーション

機能

  • クロール・コンテンツ
    はっきり確実に示す url 歌で応える selector その後、ツールはページテキストを抽出する。例えば.docs-builder-container リージョンの内容だけをつかむ。
  • ファイルの生成
    出力ファイル形式は
[{"title": "页面标题", "url": "https://example.com/page", "html": "提取的文本"}, ...]
  • 最適化された出力
    利用する resourceExclusions 余計なリソースは除外する(例えば pngそしてjpg)、ファイルサイズを小さくする。

ほら

  • カスタムGPTを作成するには、OpenAIの有料アカウントが必要です。
  • ダイナミック・ウェブ・クローリングは、依存関係の完全性を保証するためにヘッドレス・ブラウザに依存している。
  • ファイルが大きすぎる場合、アップロードを分割するように設定を調整することができます。

 

アプリケーションシナリオ

  1. テクニカル・サポート・アシスタント
    製品ドキュメントのウェブサイトをクロールし、ユーザーが技術的な質問に答えるのを助けるAIアシスタントを生成する。
  2. コンテンツ整理ツール
    ブログやニュースサイトから記事を収集し、ナレッジベースやQ&Aアシスタントを作成する。
  3. 教育訓練アシスタント
    オンラインコースのページをクロールし、コースに関連した回答を提供する学習アシスタントを生成します。

 

品質保証

  1. 複数のウェブサイトをクロールすることは可能ですか?
    缶での config.ts で複数のURLとマッチルールを設定するだけです。
  2. ファイルが大きすぎてアップロードできない場合は?
    セットアップ maxFileSize もしかしたら maxTokensファイルを複数の小さなファイルに分割する。
  3. 中国のウェブサイトをサポートしていますか?
    サポート。サイトのコンテンツがヘッドレス・ブラウザで解析できる限り、適切にクロールできる。
無断転載を禁じます:チーフAIシェアリングサークル " GPT-Crawler: ウェブサイトコンテンツを自動的にクロールして知識ベースドキュメントを生成
ja日本語