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
Configuration
Définissez votre clé API Olostep comme une variable d’environnement :.env :
Démarrage rapide
Passez tous les outils Olostep au modèle avecolostepTools() :
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 parolostepTools().
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)
{ url, markdown }
search
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)
{ 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
{ 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)
{ 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/**"]{ 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)
{ 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 queolostepTools(), 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 avecstreamText, par exemple dans un gestionnaire de route Next.js :
app/api/chat/route.ts
Cas d’utilisation populaires
Assistant de recherche
Assistant de recherche
- Le modèle utilise
searchouanswerpour trouver des sources - Il utilise
scrapepour lire les pages les plus pertinentes - Il retourne un résumé avec les URLs sources
Agent de codage conscient des documents
Agent de codage conscient des documents
- Le modèle utilise
mapavec unesearchQuerypour trouver les bonnes pages de documentation - Il utilise
batchoucrawlpour les lire - Il écrit du code en fonction de l’API actuelle au lieu de deviner
Surveillance des concurrents et des prix
Surveillance des concurrents et des prix
- Un travail planifié appelle
generateTextavecscrapeetbatch - Le modèle extrait les prix ou les changements de chaque page
- Votre code les compare avec la dernière exécution et envoie des alertes
Bonnes pratiques
Ne passez que les outils dont vous avez besoin
Ne passez que les outils dont vous avez besoin
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 une limite d'étapes
Définissez une limite d'étapes
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.Réduisez maxCharacters pour les longues pages
Réduisez maxCharacters pour les longues pages
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.Augmentez timeoutSeconds pour les grands crawls
Augmentez timeoutSeconds pour les grands crawls
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
Échec de l'authentification
Échec de l'authentification
Erreur : “Clé API invalide”Solutions :
- Vérifiez votre clé API dans le tableau de bord
- Assurez-vous que
OLOSTEP_API_KEYest 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 })
Le modèle n'appelle pas les outils
Le modèle n'appelle pas les outils
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”
Crawl ou lot expire
Crawl ou lot expire
Solutions :
- Augmentez
timeoutSeconds - Réduisez
maxPagesou 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
Longueur du contexte dépassée
Longueur du contexte dépassée
Solutions :
- Réduisez
maxCharacters - Utilisez
mapavecsearchQuerypour 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
Support
GitHub
Code source et problèmes
Email de support
Email : info@olostep.com
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