ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment ajouter la recherche à un agent LangGraph
Tutoriel

Comment ajouter la recherche à un agent LangGraph

Intégrez une API de recherche web en tant que nœud d'outil LangGraph. Donnez à votre agent des résultats de recherche en direct avec du JSON structuré plutôt que du scraping HTML brut.

Obtenez une clé API gratuiteDocumentation API

Les agents LangGraph ont besoin d'accéder à des données web en direct pour répondre aux questions actuelles, vérifier les faits et ancrer leurs réponses. Ajouter un outil de recherche à un graphe LangGraph donne à l'agent la capacité d'interroger Google, Reddit, YouTube et d'autres plateformes à la demande. Ce tutoriel montre comment définir un outil de recherche Scavio, l'enregistrer en tant que nœud d'outil LangGraph et l'intégrer dans votre graphe d'agent. L'agent pourra appeler l'outil de recherche pendant l'exécution et recevoir des résultats JSON structurés sur lesquels il pourra raisonner.

Prérequis

  • Python 3.10+ installé
  • Paquets langgraph et langchain-core installés
  • Une clé API Scavio de scavio.dev
  • Compréhension de base des graphes d'état LangGraph

Parcours

Étape 1: Définir la fonction de l'outil de recherche

Créez une fonction d'outil qui encapsule l'API Scavio et renvoie des résultats structurés.

Python
import os, requests
from langchain_core.tools import tool

API_KEY = os.environ["SCAVIO_API_KEY"]

@tool
def web_search(query: str) -> str:
    """Search the web for current information."""
    resp = requests.post("https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": API_KEY},
        json={"platform": "google", "query": query})
    results = resp.json().get("organic_results", [])[:5]
    return "\n".join(f"- {r['title']}: {r.get('snippet', '')}" for r in results)

Étape 2: Créer l'état de l'agent et le graphe

Configurez le graphe d'état LangGraph avec l'outil de recherche lié au nœud de l'agent.

Python
from langgraph.graph import StateGraph, MessagesState
from langgraph.prebuilt import ToolNode
from langchain_openai import ChatOpenAI

tools = [web_search]
model = ChatOpenAI(model="gpt-4o-mini").bind_tools(tools)

def agent(state: MessagesState):
    return {"messages": [model.invoke(state["messages"])]}

tool_node = ToolNode(tools)

Étape 3: Câbler le graphe

Connectez les nœuds d'agent et d'outil avec un routage conditionnel basé sur les appels d'outils.

Python
from langgraph.graph import END

def should_continue(state: MessagesState):
    last = state["messages"][-1]
    return "tools" if last.tool_calls else END

graph = StateGraph(MessagesState)
graph.add_node("agent", agent)
graph.add_node("tools", tool_node)
graph.set_entry_point("agent")
graph.add_conditional_edges("agent", should_continue)
graph.add_edge("tools", "agent")
app = graph.compile()

Étape 4: Exécuter l'agent avec une requête de recherche

Invoquez l'agent avec une question qui nécessite des données web en direct.

Python
from langchain_core.messages import HumanMessage

result = app.invoke({
    "messages": [HumanMessage(content="What are the top CRM tools for startups in 2026?")]
})
print(result["messages"][-1].content)

Exemple Python

Python
import os, requests
from langchain_core.tools import tool

@tool
def web_search(query: str) -> str:
    """Search the web for current information."""
    resp = requests.post("https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": os.environ["SCAVIO_API_KEY"]},
        json={"platform": "google", "query": query})
    results = resp.json().get("organic_results", [])[:5]
    return "\n".join(f"- {r['title']}: {r.get('snippet', '')}" for r in results)

print(web_search.invoke("best CRM 2026"))

Exemple JavaScript

JavaScript
const H = {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"};
async function webSearch(query) {
  const r = await fetch("https://api.scavio.dev/api/v1/search", {
    method: "POST", headers: H,
    body: JSON.stringify({platform: "google", query})
  });
  const results = (await r.json()).organic_results || [];
  return results.slice(0,5).map(r => r.title + ": " + (r.snippet||"")).join("\n");
}
console.log(await webSearch("best CRM 2026"));

Sortie attendue

JSON
A LangGraph agent that can call a web search tool during execution, receiving structured search results and using them to answer questions with current data.

Tutoriels associés

  • Comment ajouter une recherche en temps réel à LangChain avec langchain-scavio

Questions fréquentes

La plupart des développeurs terminent ce tutoriel en 15 à 30 minutes. Vous aurez besoin d'une clé API Scavio (l'offre gratuite suffit) et d'un environnement Python ou JavaScript fonctionnel.

Python 3.10+ installé. Paquets langgraph et langchain-core installés. Une clé API Scavio de scavio.dev. Compréhension de base des graphes d'état LangGraph. Une clé API Scavio vous donne 50 crédits gratuits à l'inscription.

Oui. L'offre gratuite comprend 50 crédits à l'inscription, ce qui est largement suffisant pour terminer ce tutoriel et prototyper une solution fonctionnelle.

Scavio dispose d'un package natif LangChain (langchain-scavio), d'un serveur MCP et d'une API REST simple qui fonctionne avec tout client HTTP. Ce tutoriel utilise LangChain, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Best Of

Meilleure API de recherche pour les agents LangGraph en 2026

Read more
Use Case

Intégration de la recherche web pour Pi Coding Agent

Read more
Best Of

Meilleurs outils de recherche web pour agents IA en 2026

Read more
Solution

Ajouter des nœuds de recherche en direct aux workflows d'agents LangGraph

Read more
Solution

Ajoutez une recherche unifiée aux systèmes multi-agents avec Scavio

Read more
Use Case

Intégration de la recherche OpenWebUI avec une API de recherche

Read more

Commencer

Intégrez une API de recherche web en tant que nœud d'outil LangGraph. Donnez à votre agent des résultats de recherche en direct avec du JSON structuré plutôt que du scraping HTML brut.

Obtenez une clé API gratuiteLire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité