LangChain
Sofort einsatzbereite Document Loader, Retriever und Agent-Tools für LangChain. Crawlen Sie jede URL direkt in Ihre Retrieval-Pipeline oder stellen Sie Crawlbase als Tool bereit, das der Agent aufrufen kann.
Installation
pip install langchain-crawlbaseSchlanke Installation: nur langchain-core und requests werden mitgeliefert, keine weiteren LangChain-Extras erforderlich. Getestet mit Python 3.9+.
Document Loader
Verwenden Sie CrawlbaseLoader überall dort, wo LangChain einen Loader erwartet: RAG-Pipelines, Vectorstore-Ingestion, Agent-Kontext.
from langchain_crawlbase import CrawlbaseLoader
loader = CrawlbaseLoader(
urls=["https://example.com/blog/post-1", "https://example.com/blog/post-2"],
token="YOUR_TOKEN",
)
docs = loader.load()
from langchain_community.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings
vs = Chroma.from_documents(docs, OpenAIEmbeddings())Agent-Tool
Stellen Sie Crawlbase als Agent-Tool bereit, damit das LLM URLs bei Bedarf abrufen kann.
from langchain_openai import ChatOpenAI
from langchain_crawlbase import CrawlbaseTool
tool = CrawlbaseTool(token="YOUR_TOKEN")
llm = ChatOpenAI(model="gpt-4o").bind_tools([tool])
llm.invoke("What's on the homepage of anthropic.com today?")Retriever
CrawlbaseRetriever ruft eine feste Menge von Seed-URLs ab und gibt Dokumente zurück, die zu einer Query passen. Nützlich, wenn Sie Live-Ergebnisse möchten, ohne einen Vector Store aufzusetzen.
from langchain_crawlbase import CrawlbaseRetriever
retriever = CrawlbaseRetriever(
token="YOUR_TOKEN",
urls=[
"https://crawlbase.com/docs/crawling-api",
"https://crawlbase.com/docs/crawling-api#parameters",
],
)
docs = retriever.invoke("how do I render JavaScript pages")v0.1 verwendet Substring-Matching ohne Berücksichtigung der Groß-/Kleinschreibung gegen das abgerufene Markdown. Für semantisches Retrieval kombinieren Sie CrawlbaseLoader mit dem Vector Store Ihrer Wahl.
JavaScript-gerenderte Seiten
Für SPAs und Seiten, deren Inhalte per JavaScript geladen werden, übergeben Sie Ihren JavaScript token im selben token-Parameter: Crawlbase leitet die Anfrage basierend auf dem gesendeten Token weiter. Kein zusätzliches Flag erforderlich.
Zusätzliche Crawlbase-Parameter
Leiten Sie beliebige Crawlbase API-Parameter (country, device, page_wait, scroll, css_click_selector, Cookies, Screenshots usw.) über extra_params weiter.
loader = CrawlbaseLoader(
token="YOUR_TOKEN",
urls=["https://example.com"],
extra_params={"country": "US", "device": "mobile"},
)Dokument-Metadaten
Jedes vom Loader / Retriever zurückgegebene Document enthält Response-Metadaten von Crawlbase:
source: die angeforderte URLresolved_url: die endgültige URL nach allen Weiterleitungen (sofern abweichend von source)pc_status: der finale Statuscode von Crawlbaseoriginal_status: HTTP-Status, der von der Zielseite zurückgegeben wurdecontent_type: Content-Type-Header der Response
Gängige Muster
- RAG über einen frischen Crawl:
Verwenden Sie
CrawlbaseLoader, um ein paar Seed-URLs abzurufen, in Chunks zu splitten, einzubetten und abzufragen. - Live-Web-Recherche-Agent:
Registrieren Sie
CrawlbaseToolzusammen mit einem Such-Tool: Der Agent sucht zuerst und crawlt dann die relevanten Ergebnisse. - Site-Monitoring: Planen Sie den Loader so, dass er dieselben URLs täglich neu abruft, und führen Sie ein Diff in Ihren Vector Store durch.