Le problème
Les agents LangGraph récupèrent par défaut des données à partir de stockages vectoriels statiques ou de données en cache. Lorsque le workflow nécessite des données de marché actuelles, des informations en direct sur les concurrents ou des prix en temps réel, l'agent ne dispose d'aucun moyen intégré pour obtenir des résultats frais du web.
La solution Scavio
Ajoutez un nœud de recherche Scavio à votre graphe d'état LangGraph. Le nœud accepte une requête des nœuds en amont, récupère les résultats SERP en direct et transmet des données structurées en aval pour que le LLM les synthétise dans sa réponse.
Avant
Agents LangGraph limités aux données obsolètes du stockage vectoriel, incapables de répondre aux questions sur l'actualité, les prix en direct ou les lancements de produits récents.
Après
Un nœud de recherche dédié dans le graphe LangGraph récupère les résultats en direct à la demande, offrant à l'agent un accès aux données web en temps réel à n'importe quel point du workflow.
À qui cela s'adresse
Développeurs LangGraph construisant des pipelines de recherche et d'analyse.
Avantages clés
- Nœud de recherche prêt à l'emploi pour tout graphe d'état LangGraph
- Données web en temps réel disponibles à n'importe quelle étape du workflow
- Sortie structurée compatible avec le schéma d'état LangGraph
- Recherche multiplateforme sur Google, Reddit, YouTube
Exemple Python
import requests
from typing import TypedDict
class SearchState(TypedDict):
query: str
search_results: list
grounded_answer: str
def scavio_search_node(state: SearchState) -> dict:
"""LangGraph node that fetches live search results."""
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": SCAVIO_API_KEY, "Content-Type": "application/json"},
json={"query": state["query"], "platform": "google", "limit": 8}
)
results = resp.json().get("results", [])
return {
"search_results": [
{"title": r["title"], "url": r["link"], "snippet": r.get("snippet", "")}
for r in results
]
}
# Usage in LangGraph:
# graph.add_node("search", scavio_search_node)
# graph.add_edge("planner", "search")
# graph.add_edge("search", "synthesizer")Exemple JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
fetch('https://api.scavio.dev/api/v1/search', {method: 'POST', headers: H, body: JSON.stringify({query: 'example', country_code: 'us'})}).then(r => r.json()).then(d => console.log(d.organic_results?.length + ' results'));Plateformes utilisées
Recherche web avec graphe de connaissances, PAA et aperçus IA
Communauté, publications et commentaires imbriqués de n'importe quel subreddit
YouTube
Recherche de vidéos avec transcriptions et métadonnées