Passer au contenu principal
L’intégration Olostep AI SDK offre aux agents construits avec le Vercel AI SDK des outils prêts à l’emploi pour les données web en direct. Olostep est une API de recherche, de scraping et de crawling web : une API pour rechercher, extraire et structurer les données web. Passez les outils à generateText ou streamText et le modèle décide quand rechercher, scraper ou crawler. Installer depuis npm →

Fonctionnalités

Le package fournit 6 outils :

Scraper

Scrapez n’importe quelle URL et retournez un markdown propre, avec rendu JavaScript

Rechercher

Recherchez sur le web en direct et retournez les titres, URLs et descriptions

Répondre

Répondez à une question à partir du web en direct, avec les URLs sources

Carte

Listez les URLs sur un site web, éventuellement classées par une requête

Crawl

Crawlez un site à partir d’une URL de départ et retournez le markdown de chaque page

Lot

Scrapez une liste d’URLs en un seul lot et retournez le markdown de chacune

Installation

Fonctionne avec AI SDK 5, 6 et 7, Zod 3.25+ ou 4, et Node.js 18+.

Configuration

Définissez votre clé API Olostep comme une variable d’environnement :
Ou dans votre fichier .env :
Obtenez votre clé API depuis le Tableau de bord Olostep.

Démarrage rapide

Passez tous les outils Olostep au modèle avec olostepTools() :
stopWhen permet au modèle d’appeler des outils sur plusieurs étapes, par exemple rechercher d’abord puis scraper le meilleur résultat. La chaîne de modèles utilise le Vercel AI Gateway. Vous pouvez également passer n’importe quel modèle de fournisseur AI SDK, tel que openai('gpt-5-mini') de @ai-sdk/openai.

Choisir des outils individuels

Ne donnez au modèle que les outils dont il a besoin :

Outils disponibles

Les noms d’outils ci-dessous sont les clés utilisées par olostepTools().

scrape

olostepScrape(). Scrapez une seule URL et retournez son contenu en markdown. Entrée :
string
requis
L’URL de la page à scraper
number
Millisecondes à attendre pour que les pages lourdes en JavaScript se rendent (0 à 10000)
Retourne : { url, markdown } olostepSearch(). Recherchez sur le web en direct. Entrée :
string
requis
La requête de recherche
number
défaut:"10"
Nombre maximum de résultats (1 à 20)
Retourne : { query, results: [{ title, url, description }] }

answer

olostepAnswer(). Recherchez et lisez le web en direct pour répondre à une question, avec les sources. Entrée :
string
requis
La question ou la tâche de recherche
Retourne : { answer, sources }

map

olostepMap(). Découvrez les URLs sur un site web. Entrée :
string
requis
Le site web à cartographier
string
Classez les URLs par pertinence par rapport à cette requête
number
Nombre maximum d’URLs à retourner (1 à 500)
Retourne : { url, urls }

crawl

olostepCrawl(). Crawlez un site web à partir d’une URL de départ et retournez le markdown de chaque page. L’outil attend que le crawl soit terminé avant de retourner. Entrée :
string
requis
L’URL de départ pour le crawl
number
défaut:"5"
Nombre maximum de pages à crawler (1 à 25)
array
Ne crawlez que les URLs correspondant à ces motifs globaux, par exemple ["/docs/**"]
Retourne : { url, pages: [{ url, markdown }] }

batch

olostepBatch(). Scrapez une liste d’URLs en un seul lot et retournez le markdown de chaque page. L’outil attend que le lot soit terminé avant de retourner. Entrée :
array
requis
Les URLs à scraper (1 à 20)
Retourne : { pages: [{ url, markdown }] }
Les outils de crawl et de lot sont limités à 25 pages et 20 URLs par appel pour garder les résultats des outils suffisamment petits pour le modèle. Pour des tâches plus importantes, appelez directement les APIs Crawls et Batches avec le SDK Node.js.

Options

Chaque outil, ainsi que olostepTools(), accepte les mêmes options :
string
Clé API Olostep. Par défaut à la variable d’environnement OLOSTEP_API_KEY.
number
défaut:"20000"
Nombre maximum de caractères du contenu de page retourné au modèle par page. Les pages plus longues sont tronquées.
number
défaut:"300"
Durée d’attente des outils de crawl et de lot pour terminer le travail, en secondes.

Exemple de streaming

Utilisez les mêmes outils avec streamText, par exemple dans un gestionnaire de route Next.js :
app/api/chat/route.ts

Cas d’utilisation populaires

  1. Le modèle utilise search ou answer pour trouver des sources
  2. Il utilise scrape pour lire les pages les plus pertinentes
  3. Il retourne un résumé avec les URLs sources
  1. Le modèle utilise map avec une searchQuery pour trouver les bonnes pages de documentation
  2. Il utilise batch ou crawl pour les lire
  3. Il écrit du code en fonction de l’API actuelle au lieu de deviner
  1. Un travail planifié appelle generateText avec scrape et batch
  2. Le modèle extrait les prix ou les changements de chaque page
  3. Votre code les compare avec la dernière exécution et envoie des alertes

Bonnes pratiques

La description de chaque outil est envoyée au modèle. Moins d’outils signifie moins de jetons et moins de mauvais choix d’outils. Pour un chat qui ne lit que des pages, scrape et search sont souvent suffisants.
Définissez toujours stopWhen (par exemple stepCountIs(5)) pour que le modèle puisse enchaîner les appels d’outils mais ne puisse pas boucler indéfiniment.
Le contenu des pages est la plus grande partie de la facture de jetons. Si vous crawlez ou traitez par lots de nombreuses pages, réduisez maxCharacters pour que tous les résultats tiennent dans la fenêtre de contexte du modèle.
Les outils de crawl et de lot attendent que le travail soit terminé. Si vous rencontrez des délais d’attente, augmentez timeoutSeconds, ou réduisez maxPages.

Dépannage

Erreur : “Clé API invalide”Solutions :
  • Vérifiez votre clé API dans le tableau de bord
  • Assurez-vous que OLOSTEP_API_KEY est défini là où votre code s’exécute (par exemple dans les variables d’environnement de votre projet Vercel)
  • Ou passez directement la clé avec olostepTools({ apiKey })
Solutions :
  • Définissez stopWhen, sinon la génération s’arrête après la première étape
  • Utilisez un modèle qui prend en charge l’appel d’outils
  • Mentionnez le web dans votre invite ou message système, par exemple “utilisez les outils web et citez vos sources”
Solutions :
  • Augmentez timeoutSeconds
  • Réduisez maxPages ou passez moins d’URLs
  • Sur les fonctions sans serveur, assurez-vous que la limite de temps de la fonction elle-même est plus longue que timeoutSeconds
Solutions :
  • Réduisez maxCharacters
  • Utilisez map avec searchQuery pour choisir moins de pages, mais plus pertinentes, avant de les lire

Tarification

Olostep facture en fonction de l’utilisation de l’API, indépendamment de l’AI SDK :
  • Scrapes : Payez par scrape
  • Recherches et Réponses : Payez par requête
  • Lots : Payez par URL dans le lot
  • Crawls : Payez par page crawlée
  • Cartes : Payez par opération de cartographie
Consultez la tarification actuelle sur olostep.com/pricing.

Support

GitHub

Code source et problèmes

Email de support

Docs AI SDK

En savoir plus sur le Vercel AI SDK

Documentation

Parcourir la documentation complète de l’API

Ressources associées

API Scrapes

En savoir plus sur le point d’accès Scrapes

API Crawls

En savoir plus sur le point d’accès Crawls

Intégration Mastra

Construire des agents avec Mastra

Intégration LangChain

Construire des agents IA avec LangChain