Zum Hauptinhalt springen
Die Olostep AI SDK-Integration bietet Agenten, die mit dem Vercel AI SDK erstellt wurden, fertige Tools für Live-Webdaten. Olostep ist eine Websuche-, Scraping- und Crawling-API: eine API, um Webdaten zu suchen, zu extrahieren und zu strukturieren. Übergebe die Tools an generateText oder streamText und das Modell entscheidet, wann gesucht, gescrapt oder gecrawlt wird. Von npm installieren →

Funktionen

Das Paket bietet 6 Tools:

Scrape

Scrape jede URL und gib sauberes Markdown zurück, mit JavaScript-Rendering

Search

Durchsuche das Live-Web und gib Titel, URLs und Beschreibungen zurück

Answer

Beantworte eine Frage aus dem Live-Web, mit Quell-URLs

Map

Liste die URLs auf einer Website auf, optional nach einer Abfrage sortiert

Crawl

Crawle eine Seite von einer Start-URL und gib das Markdown jeder Seite zurück

Batch

Scrape eine Liste von URLs in einem Batch und gib das Markdown jeder Seite zurück

Installation

Funktioniert mit AI SDK 5, 6 und 7, Zod 3.25+ oder 4 und Node.js 18+.

Einrichtung

Setze deinen Olostep API-Schlüssel als Umgebungsvariable:
Oder in deiner .env Datei:
Hole dir deinen API-Schlüssel vom Olostep Dashboard.

Schnellstart

Übergebe alle Olostep-Tools an das Modell mit olostepTools():
stopWhen ermöglicht es dem Modell, Tools über mehrere Schritte aufzurufen, z.B. zuerst zu suchen und dann das beste Ergebnis zu scrapen. Der Modellstring verwendet das Vercel AI Gateway. Du kannst auch jedes AI SDK-Anbietermodell übergeben, wie z.B. openai('gpt-5-mini') von @ai-sdk/openai.

Einzelne Tools auswählen

Gib dem Modell nur die Tools, die es benötigt:

Verfügbare Tools

Die unten aufgeführten Toolnamen sind die Schlüssel, die von olostepTools() verwendet werden.

scrape

olostepScrape(). Scrape eine einzelne URL und gib deren Inhalt als Markdown zurück. Eingabe:
string
erforderlich
Die URL der Seite, die gescrapt werden soll
number
Millisekunden, die gewartet werden sollen, bis JavaScript-lastige Seiten gerendert sind (0 bis 10000)
Rückgabe: { url, markdown } olostepSearch(). Durchsuche das Live-Web. Eingabe:
string
erforderlich
Die Suchanfrage
number
Standard:"10"
Maximale Anzahl der Ergebnisse (1 bis 20)
Rückgabe: { query, results: [{ title, url, description }] }

answer

olostepAnswer(). Suche und lese das Live-Web, um eine Frage zu beantworten, mit Quellen. Eingabe:
string
erforderlich
Die Frage oder Rechercheaufgabe
Rückgabe: { answer, sources }

map

olostepMap(). Entdecke die URLs auf einer Website. Eingabe:
string
erforderlich
Die Website, die abgebildet werden soll
string
Sortiere URLs nach Relevanz zu dieser Abfrage
number
Maximale Anzahl der zurückzugebenden URLs (1 bis 500)
Rückgabe: { url, urls }

crawl

olostepCrawl(). Crawle eine Website von einer Start-URL und gib das Markdown jeder Seite zurück. Das Tool wartet, bis der Crawl abgeschlossen ist, bevor es zurückgibt. Eingabe:
string
erforderlich
Die URL, von der aus gecrawlt werden soll
number
Standard:"5"
Maximale Anzahl der zu crawlenden Seiten (1 bis 25)
array
Crawle nur URLs, die diesen Glob-Mustern entsprechen, z.B. ["/docs/**"]
Rückgabe: { url, pages: [{ url, markdown }] }

batch

olostepBatch(). Scrape eine Liste von URLs in einem Batch und gib das Markdown jeder Seite zurück. Das Tool wartet, bis der Batch abgeschlossen ist, bevor es zurückgibt. Eingabe:
array
erforderlich
Die zu scrapenden URLs (1 bis 20)
Rückgabe: { pages: [{ url, markdown }] }
Die Crawl- und Batch-Tools sind auf 25 Seiten und 20 URLs pro Aufruf begrenzt, um die Tool-Ergebnisse klein genug für das Modell zu halten. Für größere Aufgaben rufe die Crawls und Batches APIs direkt mit dem Node.js SDK auf.

Optionen

Jedes Tool und olostepTools() akzeptiert die gleichen Optionen:
string
Olostep API-Schlüssel. Standardmäßig die OLOSTEP_API_KEY Umgebungsvariable.
number
Standard:"20000"
Maximale Anzahl von Zeichen des Seiteninhalts, die pro Seite an das Modell zurückgegeben werden. Längere Seiten werden abgeschnitten.
number
Standard:"300"
Wie lange die Crawl- und Batch-Tools auf den Abschluss des Jobs warten, in Sekunden.

Streaming-Beispiel

Verwende die gleichen Tools mit streamText, zum Beispiel in einem Next.js-Routenhandler:
app/api/chat/route.ts

Beliebte Anwendungsfälle

  1. Das Modell verwendet search oder answer, um Quellen zu finden
  2. Es verwendet scrape, um die relevantesten Seiten zu lesen
  3. Es gibt eine Zusammenfassung mit Quell-URLs zurück
  1. Das Modell verwendet map mit einer searchQuery, um die richtigen Dokumentationsseiten zu finden
  2. Es verwendet batch oder crawl, um sie zu lesen
  3. Es schreibt Code gegen die aktuelle API anstatt zu raten
  1. Ein geplanter Job ruft generateText mit scrape und batch auf
  2. Das Modell extrahiert Preise oder Änderungen von jeder Seite
  3. Dein Code vergleicht sie mit dem letzten Lauf und sendet Benachrichtigungen

Beste Praktiken

Die Beschreibung jedes Tools wird an das Modell gesendet. Weniger Tools bedeuten weniger Tokens und weniger falsche Toolauswahlen. Für einen Chat, der nur Seiten liest, sind scrape und search oft ausreichend.
Setze immer stopWhen (zum Beispiel stepCountIs(5)), damit das Modell Toolaufrufe verketten kann, aber nicht endlos in einer Schleife läuft.
Seiteninhalt ist der größte Teil der Tokenrechnung. Wenn du viele Seiten crawlst oder batchst, reduziere maxCharacters, damit alle Ergebnisse in das Kontextfenster des Modells passen.
Crawl- und Batch-Tools warten auf den Abschluss des Jobs. Wenn du Zeitüberschreitungen hast, erhöhe timeoutSeconds oder reduziere maxPages.

Fehlerbehebung

Fehler: “Ungültiger API-Schlüssel”Lösungen:
  • Überprüfe deinen API-Schlüssel im Dashboard
  • Stelle sicher, dass OLOSTEP_API_KEY dort gesetzt ist, wo dein Code läuft (zum Beispiel in den Umgebungsvariablen deines Vercel-Projekts)
  • Oder übergebe den Schlüssel direkt mit olostepTools({ apiKey })
Lösungen:
  • Setze stopWhen, andernfalls stoppt die Generierung nach dem ersten Schritt
  • Verwende ein Modell, das Toolaufrufe unterstützt
  • Erwähne das Web in deinem Prompt oder Systemnachricht, zum Beispiel “verwende die Webtools und zitiere deine Quellen”
Lösungen:
  • Erhöhe timeoutSeconds
  • Reduziere maxPages oder übergebe weniger URLs
  • Stelle bei serverlosen Funktionen sicher, dass das Zeitlimit der Funktion länger ist als timeoutSeconds
Lösungen:
  • Reduziere maxCharacters
  • Verwende map mit searchQuery, um weniger, relevantere Seiten auszuwählen, bevor du sie liest

Preisgestaltung

Olostep berechnet basierend auf der API-Nutzung, unabhängig vom AI SDK:
  • Scrapes: Bezahlung pro Scrape
  • Suchen und Antworten: Bezahlung pro Anfrage
  • Batches: Bezahlung pro URL im Batch
  • Crawls: Bezahlung pro gecrawlte Seite
  • Maps: Bezahlung pro Mapping-Operation
Überprüfe die aktuellen Preise auf olostep.com/pricing.

Support

GitHub

Quellcode und Probleme

Support E-Mail

AI SDK-Dokumentation

Erfahre mehr über das Vercel AI SDK

Dokumentation

Durchsuche die vollständige API-Dokumentation

Verwandte Ressourcen

Scrapes API

Erfahre mehr über den Scrapes-Endpunkt

Crawls API

Erfahre mehr über den Crawls-Endpunkt

Mastra-Integration

Baue Agenten mit Mastra

LangChain-Integration

Baue AI-Agenten mit LangChain