ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment suivre les coûts de l'API de recherche entre plusieurs agents
Tutoriel

Comment suivre les coûts de l'API de recherche entre plusieurs agents

Construisez un tableau de bord de suivi des coûts pour l'utilisation de l'API de recherche entre plusieurs agents IA. Surveillez les dépenses, définissez des alertes et optimisez les budgets par agent.

Obtenez une clé API gratuiteDocumentation API

Lorsque plusieurs agents IA partagent une clé API de recherche, les coûts peuvent rapidement augmenter sans savoir quel agent dépense quoi. Ce tutoriel construit un suivi centralisé des coûts qui étiquette chaque appel de recherche avec l'ID de l'agent, agrège les dépenses par agent et par période, et alerte lorsqu'un agent dépasse son budget. Fonctionne avec n'importe quel fournisseur de recherche à n'importe quelle échelle.

Prérequis

  • Python 3.9+ installé
  • bibliothèque requests installée
  • Une clé API Scavio depuis scavio.dev

Parcours

Étape 1: Construire le suivi centralisé des coûts

Créez un suivi qui intercepte tous les appels de recherche, les étiquette avec les IDs des agents et enregistre les données de coût.

Python
import time, json
from datetime import datetime, timedelta
from collections import defaultdict
from typing import Dict, List

class AgentCostTracker:
    def __init__(self):
        self.records: List[dict] = []
        self.budgets: Dict[str, float] = {}
        self.alerts: List[str] = []

    def set_budget(self, agent_id: str, monthly_budget: float):
        self.budgets[agent_id] = monthly_budget

    def record(self, agent_id: str, cost: float, query: str, provider: str = 'scavio'):
        self.records.append({
            'agent_id': agent_id,
            'cost': cost,
            'query': query[:100],
            'provider': provider,
            'timestamp': datetime.now().isoformat()
        })
        # Check budget
        monthly_spend = self.get_monthly_spend(agent_id)
        budget = self.budgets.get(agent_id, float('inf'))
        if monthly_spend > budget * 0.8:
            alert = f'Agent {agent_id}: {monthly_spend/budget*100:.0f}% of budget used'
            if alert not in self.alerts:
                self.alerts.append(alert)
                print(f'ALERT: {alert}')

    def get_monthly_spend(self, agent_id: str) -> float:
        month_start = datetime.now().replace(day=1, hour=0, minute=0, second=0)
        return sum(r['cost'] for r in self.records
                   if r['agent_id'] == agent_id and r['timestamp'] >= month_start.isoformat())

tracker = AgentCostTracker()
tracker.set_budget('research-bot', 5.00)
tracker.set_budget('lead-gen-bot', 10.00)
tracker.set_budget('monitor-bot', 2.00)
print('Cost tracker initialized with 3 agent budgets')

Étape 2: Créer des fonctions de recherche suivies par agent

Enveloppez l'appel API de recherche avec un suivi automatique des coûts. Chaque agent obtient sa propre fonction de recherche qui enregistre l'utilisation.

Python
import requests, os

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']
COST_PER_QUERY = 0.005

def make_tracked_search(agent_id: str, tracker: AgentCostTracker):
    def search(query: str, count: int = 10) -> list:
        resp = requests.post('https://api.scavio.dev/api/v1/search',
            headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
            json={'query': query, 'country_code': 'us', 'num_results': count})
        results = resp.json().get('organic_results', [])
        tracker.record(agent_id, COST_PER_QUERY, query)
        return [{'title': r['title'], 'link': r['link']}
                for r in results]
    return search

# Create per-agent search functions
research_search = make_tracked_search('research-bot', tracker)
lead_gen_search = make_tracked_search('lead-gen-bot', tracker)
monitor_search = make_tracked_search('monitor-bot', tracker)

# Simulate agent activity
research_search('python best practices 2026')
research_search('react server components guide')
lead_gen_search('plumber Austin TX')
lead_gen_search('electrician Denver CO')
lead_gen_search('HVAC contractor Portland OR')
monitor_search('scavio brand mentions')

print(f'Total records: {len(tracker.records)}')

Étape 3: Générer un rapport de tableau de bord des coûts

Construisez un tableau de bord qui montre les dépenses par agent, l'utilisation du budget et les tendances des coûts.

Python
def dashboard(tracker: AgentCostTracker):
    print('\n' + '=' * 60)
    print('  Search API Cost Dashboard')
    print('=' * 60)
    agents = set(r['agent_id'] for r in tracker.records)
    total_cost = sum(r['cost'] for r in tracker.records)
    total_queries = len(tracker.records)
    print(f'\n  Total queries: {total_queries}')
    print(f'  Total cost: ${total_cost:.3f}')
    print(f'  Agents tracked: {len(agents)}')
    print(f'\n  {"Agent":<20} {"Queries":>8} {"Spent":>8} {"Budget":>8} {"Used":>6}')
    print('  ' + '-' * 54)
    for agent_id in sorted(agents):
        agent_records = [r for r in tracker.records if r['agent_id'] == agent_id]
        spent = sum(r['cost'] for r in agent_records)
        budget = tracker.budgets.get(agent_id, 0)
        pct = (spent / budget * 100) if budget > 0 else 0
        queries = len(agent_records)
        print(f'  {agent_id:<20} {queries:>8} ${spent:>6.3f} ${budget:>6.2f} {pct:>5.1f}%')
    if tracker.alerts:
        print(f'\n  Alerts:')
        for alert in tracker.alerts:
            print(f'    {alert}')
    print(f'\n  Avg cost/query: ${total_cost/total_queries:.4f}' if total_queries > 0 else '')
    print('=' * 60)

dashboard(tracker)

Exemple Python

Python
import requests, os
from collections import defaultdict

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']
spending = defaultdict(float)
counts = defaultdict(int)

def tracked_search(agent_id, query, cost=0.005):
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
        json={'query': query, 'country_code': 'us', 'num_results': 10})
    spending[agent_id] += cost
    counts[agent_id] += 1
    return resp.json().get('organic_results', [])

tracked_search('research-bot', 'python frameworks 2026')
tracked_search('lead-gen', 'plumber Austin TX')
tracked_search('lead-gen', 'electrician Denver CO')

for agent in spending:
    print(f'{agent}: {counts[agent]} queries, ${spending[agent]:.3f}')

Exemple JavaScript

JavaScript
const SCAVIO_KEY = process.env.SCAVIO_API_KEY;
const spending = {};
const counts = {};

async function trackedSearch(agentId, query, cost = 0.005) {
  const resp = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query, country_code: 'us', num_results: 10 })
  });
  spending[agentId] = (spending[agentId] || 0) + cost;
  counts[agentId] = (counts[agentId] || 0) + 1;
  return (await resp.json()).organic_results || [];
}

await trackedSearch('research-bot', 'python frameworks 2026');
await trackedSearch('lead-gen', 'plumber Austin TX');
Object.keys(spending).forEach(a => console.log(`${a}: ${counts[a]} queries, $${spending[a].toFixed(3)}`));

Sortie attendue

JSON
Cost tracker initialized with 3 agent budgets
Total records: 6

============================================================
  Search API Cost Dashboard
============================================================

  Total queries: 6
  Total cost: $0.030
  Agents tracked: 3

  Agent                Queries    Spent   Budget  Used
  ------------------------------------------------------
  lead-gen-bot               3  $ 0.015  $ 10.00   0.2%
  monitor-bot                1  $ 0.005  $  2.00   0.3%
  research-bot               2  $ 0.010  $  5.00   0.2%

  Avg cost/query: $0.0050
============================================================

Tutoriels associés

  • Comment calculer le coût réel par requête de recherche d'agent
  • Comment construire un routeur de coût pour le fournisseur de recherche le moins cher
  • Comment construire une recherche d'agent avec une couche de paiement USDC

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.9+ installé. bibliothèque requests installée. Une clé API Scavio depuis scavio.dev. 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

Meilleures API de recherche économiques pour agents IA sous 10 $/mois (2026)

Read more
Workflow

Workflow de suivi des coûts de recherche et du budget par agent

Read more
Use Case

Recherche d'agent avec contrôle budgétaire

Read more
Use Case

Passerelle de recherche MCP pour systèmes multi-agents

Read more
Best Of

Meilleures API de recherche pour les développeurs d'agents à petit budget en 2026

Read more
Workflow

Suivi budgétaire mensuel des recherches d'agents

Read more

Commencer

Construisez un tableau de bord de suivi des coûts pour l'utilisation de l'API de recherche entre plusieurs agents IA. Surveillez les dépenses, définissez des alertes et optimisez les budgets par agent.

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é