LangChain est le framework Python le plus utilisé pour construire des applications basées sur LLM. Ajouter une recherche web en temps réel à une application LangChain la transforme, passant d'une dépendance à une date de coupure d'entraînement statique à un accès à des informations en direct. Le package langchain-scavio fournit un outil ScavioSearch prêt à l'emploi, compatible avec l'interface d'outils de LangChain, les chaînes LCEL et les exécuteurs d'agents. Ce tutoriel couvre l'installation, la configuration et trois schémas d'intégration courants : appel d'outil autonome, chaîne LCEL et agent ReAct.
Prérequis
- Python 3.10 ou supérieur
- pip install langchain langchain-scavio langchain-openai
- Une clé API Scavio
- Une clé API LLM compatible avec LangChain
Parcours
Étape 1: Installer langchain-scavio
Installez le package d'intégration. Il fournit ScavioSearch comme sous-classe de BaseTool avec des paramètres configurables pour la plateforme, le pays et le nombre de résultats.
pip install langchain langchain-scavio langchain-openaiÉtape 2: Utiliser ScavioSearch comme outil autonome
Invoquez ScavioSearch directement sans agent pour vérifier l'intégration et inspecter les données renvoyées.
from langchain_scavio import ScavioSearch
tool = ScavioSearch(api_key="your_scavio_api_key", platform="google", country_code="us")
result = tool.invoke("latest LLM releases 2026")
print(result[:500]) # Returns formatted string of top resultsÉtape 3: Ajouter à une chaîne LCEL
Liez ScavioSearch comme récupérateur de contexte dans une chaîne LCEL qui récupère les résultats de recherche avant de générer une réponse.
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
llm = ChatOpenAI(model="gpt-4o")
prompt = ChatPromptTemplate.from_template("Answer using this context:\n{context}\n\nQuestion: {question}")
chain = ({"context": tool, "question": lambda x: x}) | prompt | llm | StrOutputParser()
result = chain.invoke("What are the best Python AI libraries in 2026?")Étape 4: Lier à un agent appelant des outils
Enregistrez ScavioSearch avec un agent appelant des outils afin que le LLM puisse décider quand effectuer une recherche.
llm_with_tools = ChatOpenAI(model="gpt-4o").bind_tools([tool])
response = llm_with_tools.invoke("What is the current price of gold?")
print(response.tool_calls)Exemple Python
import os
from langchain_scavio import ScavioSearch
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
os.environ["OPENAI_API_KEY"] = "your_openai_key"
tool = ScavioSearch(api_key=os.environ["SCAVIO_API_KEY"], platform="google", country_code="us", max_results=5)
llm = ChatOpenAI(model="gpt-4o", temperature=0)
prompt = ChatPromptTemplate.from_template(
"Use the following search results to answer the question.\nResults: {context}\nQuestion: {question}"
)
chain = ({"context": tool, "question": lambda x: x}) | prompt | llm | StrOutputParser()
if __name__ == "__main__":
answer = chain.invoke("What are the top Python libraries for building AI agents in 2026?")
print(answer)Exemple JavaScript
const { ChatOpenAI } = require("@langchain/openai");
const { DynamicTool } = require("@langchain/core/tools");
const API_KEY = process.env.SCAVIO_API_KEY;
// langchain-scavio is Python-only; use DynamicTool in JS
const scavioTool = new DynamicTool({
name: "scavio_google_search",
description: "Search Google for current information. Returns top organic results.",
func: async (query) => {
const res = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST",
headers: { "x-api-key": API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({ query, country_code: "us" })
});
const data = await res.json();
return (data.organic_results || []).slice(0, 5)
.map(r => `${r.title}: ${r.snippet || ""}`).join("\n");
}
});
async function main() {
const result = await scavioTool.invoke("best Python AI libraries 2026");
console.log(result);
}
main().catch(console.error);Sortie attendue
Answer: Based on 2026 search results, the top Python AI libraries include:
1. LangChain — agent orchestration and LLM chains
2. LlamaIndex — data framework for LLM apps
3. CrewAI — multi-agent coordination
4. Haystack — production RAG pipelines
5. Pydantic AI — structured output agents