ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment réduire le nombre de jetons de recherche d'agent
Tutoriel

Comment réduire le nombre de jetons de recherche d'agent

Compressez les résultats de recherche web avant de les transmettre aux agents LLM. Réduisez l'utilisation des jetons de 60 à 80 % tout en préservant les informations dont les agents ont besoin pour répondre.

Obtenez une clé API gratuiteDocumentation API

Les agents LLM qui utilisent des outils de recherche web consomment souvent trop de jetons car les résultats bruts contiennent des titres, des extraits, des URL, des métadonnées et des fonctionnalités SERP dont l'agent n'a pas besoin. Transmettre l'intégralité des réponses de recherche dans la fenêtre de contexte de l'agent gaspille des jetons et de l'argent. Ce tutoriel montre comment compresser les résultats de recherche en extrayant uniquement les champs nécessaires à l'agent, en tronquant les extraits, en dédoublonnant le contenu et en formatant les résultats sous forme de texte compact. Vous allez construire une couche de compression de recherche qui réduit le nombre de jetons de 60 à 80 % tout en conservant une densité d'information élevée.

Prérequis

  • Python 3.8+ installé
  • bibliothèque requests installée
  • Une clé API Scavio provenant de scavio.dev
  • Un agent LLM qui utilise des outils de recherche

Parcours

Étape 1: Récupérer les résultats bruts de la recherche

Interroger l'API Scavio et mesurer le nombre brut de jetons de la réponse complète.

Python
import os, requests, json

API_KEY = os.environ["SCAVIO_API_KEY"]
resp = requests.post("https://api.scavio.dev/api/v1/search",
    headers={"x-api-key": API_KEY},
    json={"platform": "google", "query": "best CRM for startups 2026"})
raw = resp.json()
raw_size = len(json.dumps(raw))
print(f"Raw response: {raw_size} chars")

Étape 2: Extraire uniquement les champs essentiels

Réduire la réponse aux seuls champs dont l'agent a besoin : titre, extrait et URL.

Python
def compress_results(data, max_results=5):
    results = []
    for r in data.get("organic_results", [])[:max_results]:
        results.append({
            "title": r.get("title", "")[:80],
            "snippet": r.get("snippet", "")[:200],
            "url": r.get("link", ""),
        })
    return results

compressed = compress_results(raw)
comp_size = len(json.dumps(compressed))
print(f"Compressed: {comp_size} chars ({100 - round(comp_size/raw_size*100)}% reduction)")

Étape 3: Formater en texte compact pour le contexte de l'agent

Convertir les résultats structurés en un format texte minimal qui utilise moins de jetons que le JSON.

Python
def format_for_agent(results):
    lines = []
    for i, r in enumerate(results, 1):
        lines.append(f"[{i}] {r['title']}")
        lines.append(f"    {r['snippet']}")
        lines.append(f"    {r['url']}")
    return "\n".join(lines)

agent_text = format_for_agent(compressed)
print(f"Agent text: {len(agent_text)} chars")
print(agent_text[:500])

Étape 4: Dédoublonner les résultats qui se chevauchent

Supprimer les résultats quasi identiques qui gaspillent le contexte de l'agent avec des informations redondantes.

Python
def deduplicate(results):
    seen_domains = set()
    unique = []
    for r in results:
        from urllib.parse import urlparse
        domain = urlparse(r["url"]).netloc
        if domain not in seen_domains:
            seen_domains.add(domain)
            unique.append(r)
    return unique

deduped = deduplicate(compressed)
print(f"After dedup: {len(deduped)} results (was {len(compressed)})")

Étape 5: Construire l'encapsuleur de compression

Combiner toutes les étapes de compression en une seule fonction qui remplace l'appel de recherche brut dans votre agent.

Python
def agent_search(query, max_results=5):
    resp = requests.post("https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": API_KEY},
        json={"platform": "google", "query": query})
    compressed = compress_results(resp.json(), max_results)
    deduped = deduplicate(compressed)
    return format_for_agent(deduped)

result = agent_search("best CRM for startups 2026")
print(f"Final token-efficient output: {len(result)} chars")

Exemple Python

Python
import os, requests, json
API_KEY = os.environ["SCAVIO_API_KEY"]
resp = requests.post("https://api.scavio.dev/api/v1/search",
    headers={"x-api-key": API_KEY},
    json={"platform": "google", "query": "best CRM for startups 2026"})
results = resp.json().get("organic_results", [])[:5]
for r in results:
    print(f"{r['title'][:80]}\n  {r.get('snippet', '')[:150]}")

Exemple JavaScript

JavaScript
const r = await fetch("https://api.scavio.dev/api/v1/search", {
  method: "POST",
  headers: {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"},
  body: JSON.stringify({platform: "google", query: "best CRM for startups 2026"})
});
const data = await r.json();
(data.organic_results || []).slice(0, 5).forEach(r =>
  console.log(r.title.slice(0, 80), "\n ", (r.snippet || "").slice(0, 150))
);

Sortie attendue

JSON
A compressed text representation of search results that uses 60-80% fewer tokens than the raw JSON response while preserving all information an agent needs.

Tutoriels associés

  • Comment arrêter de brûler des tokens Claude Code sur le parsing HTML
  • Comment auditer l'utilisation des tokens par outil dans un agent

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.8+ installé. bibliothèque requests installée. Une clé API Scavio provenant de scavio.dev. Un agent LLM qui utilise des outils de recherche. 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 the raw REST API, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Best Of

Meilleurs outils d'optimisation des jetons d'agents en 2026

Read more
Glossary

Optimisation des tokens d'agent

Read more
Best Of

Meilleure API de recherche Web pour LLM locaux en 2026

Read more
Solution

Réduisez les tokens de recherche des agents avec le JSON structuré

Read more
Use Case

Contexte de recherche efficace en tokens pour les pipelines LLM

Read more
Use Case

Recherche Web à Faible Consommation de Tokens pour Agents IA

Read more

Commencer

Compressez les résultats de recherche web avant de les transmettre aux agents LLM. Réduisez l'utilisation des jetons de 60 à 80 % tout en préservant les informations dont les agents ont besoin pour répondre.

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é