GPT-Crawler 是由 Builder.io 開發的一個開源項目,旨在通過爬取指定網站來生成知識文件,從而快速創建自定義的 GPT 助手。這個工具只需要提供一個或多個 URL,就能自動抓取網站內容並生成可用於訓練自定義 GPT 的數據文件。
git clone https://github.com/builderio/gpt-crawler
npm i
在 config.ts
文件中編輯 url
和 selector
屬性以滿足您的需求。
示例配置:
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",
};
type Config = {
/** 開始爬取的URL,如果提供了sitemap,則會使用sitemap並下載其中的所有頁面 */
url: string;
/** 用於匹配頁面上鏈接的模式,以便後續爬取 */
match: string;
/** 用於抓取內部文本的選擇器 */
selector: string;
/** 不要爬取超過此數量的頁面 */
maxPagesToCrawl: number;
/** 完成數據的文件名 */
outputFileName: string;
/** 可選的要排除的資源類型 */
resourceExclusions?: string[];
/** 可選的最大文件大小(兆字節) */
maxFileSize?: number;
/** 可選的最大token數量 */
maxTokens?: number;
};
npm start
這將生成一個 output.json
文件。
進入 containerapp
目錄並修改 config.ts
,輸出文件將在 data
文件夾中生成。
npm run start:server
/crawl
端點進行 POST 請求/api-docs
端點查看(使用 Swagger).env.example
為 .env
來自定義環境變量注意:可能需要付費的 ChatGPT 計劃才能創建和使用自定義 GPT
項目作者使用這個工具創建了一個 Builder.io 助手,通過爬取 Builder.io 的文檔來回答有關如何使用和集成 Builder.io 的問題。
GPT-Crawler 為快速創建專業的 AI 助手提供了一個強大而靈活的解決方案,特別適合需要基於現有文檔或網站內容創建智能問答系統的場景。