ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo configurar presupuestos de tokens para llamadas a la API de búsqueda
Tutorial

Cómo configurar presupuestos de tokens para llamadas a la API de búsqueda

Controle cuántos tokens gasta su agente en los resultados de búsqueda. Cree un sistema de presupuesto que limite el uso de la ventana de contexto por llamada de herramienta.

Obtener clave API gratisDocumentacion API

Los agentes que llaman a las API de búsqueda pueden consumir miles de tokens por consulta si los resultados no están controlados. Un sistema de presupuesto de tokens garantiza que los resultados de la búsqueda nunca excedan un límite definido, manteniendo la ventana de contexto de su agente disponible para razonar. Esto es especialmente importante para agentes con múltiples llamadas de herramientas por turno.

Requisitos previos

  • Python 3.8+
  • tiktoken instalado (pip install tiktoken)
  • Una clave API de Scavio

Guia paso a paso

Paso 1: Instalar tiktoken para contar tokens

Configure el recuento de tokens para medir el tamaño de los resultados de búsqueda.

Bash
pip install tiktoken

Paso 2: Cree una función de búsqueda presupuestada

Cree una función de búsqueda que respete un presupuesto simbólico.

Python
import requests, os, tiktoken

H = {'x-api-key': os.environ['SCAVIO_API_KEY'], 'Content-Type': 'application/json'}
enc = tiktoken.encoding_for_model('gpt-4')

def budgeted_search(query: str, platform: str = 'google', max_tokens: int = 300) -> str:
    resp = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': platform, 'query': query}, timeout=10)
    results = resp.json().get('organic', [])
    
    output_lines = []
    token_count = 0
    
    for r in results:
        line = f"{r.get('title','')}: {r.get('snippet','')}"
        line_tokens = len(enc.encode(line))
        
        if token_count + line_tokens > max_tokens:
            break
        
        output_lines.append(line)
        token_count += line_tokens
    
    return '\n'.join(output_lines)

Paso 3: Crear un rastreador de presupuesto diario

Realice un seguimiento del uso total de tokens y créditos en todas las llamadas de búsqueda.

Python
from dataclasses import dataclass, field
from datetime import date

@dataclass
class SearchBudget:
    daily_credit_limit: int = 100
    daily_token_limit: int = 50000
    credits_used: int = 0
    tokens_used: int = 0
    date: str = field(default_factory=lambda: date.today().isoformat())
    
    def can_search(self) -> bool:
        if self.date != date.today().isoformat():
            self.reset()
        return self.credits_used < self.daily_credit_limit
    
    def record(self, tokens: int):
        self.credits_used += 1
        self.tokens_used += tokens
    
    def reset(self):
        self.credits_used = 0
        self.tokens_used = 0
        self.date = date.today().isoformat()
    
    def remaining(self) -> dict:
        return {'credits': self.daily_credit_limit - self.credits_used,
                'tokens': self.daily_token_limit - self.tokens_used}

budget = SearchBudget(daily_credit_limit=50)

def search_with_budget(query: str, platform: str = 'google', max_tokens: int = 300) -> str:
    if not budget.can_search():
        return '[Budget exceeded - no more searches today]'
    result = budgeted_search(query, platform, max_tokens)
    budget.record(len(enc.encode(result)))
    return result

Paso 4: Integrar con el marco del agente

Conecte la búsqueda presupuestada al sistema de herramientas de su agente.

Python
# Example with a simple agent loop:
def agent_research(question: str, budget: SearchBudget) -> str:
    # Adaptive token budget based on remaining allowance
    remaining = budget.remaining()
    per_search_budget = min(300, remaining['tokens'] // 3)  # Reserve for 3 searches
    
    # Search with budget
    google_ctx = search_with_budget(question, 'google', per_search_budget)
    reddit_ctx = search_with_budget(question, 'reddit', per_search_budget)
    
    context = f"Google:\n{google_ctx}\n\nReddit:\n{reddit_ctx}"
    total_tokens = len(enc.encode(context))
    
    print(f"Research used {budget.credits_used} credits, {total_tokens} tokens")
    print(f"Remaining: {budget.remaining()}")
    
    return context

Ejemplo en Python

Python
import requests, os, tiktoken
H = {'x-api-key': os.environ['SCAVIO_API_KEY'], 'Content-Type': 'application/json'}
enc = tiktoken.encoding_for_model('gpt-4')

def budgeted_search(query, max_tokens=300):
    r = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': query}).json()
    lines, tokens = [], 0
    for x in r.get('organic',[]):
        line = f"{x['title']}: {x.get('snippet','')}"
        t = len(enc.encode(line))
        if tokens + t > max_tokens: break
        lines.append(line); tokens += t
    return '\n'.join(lines)

Ejemplo en JavaScript

JavaScript
// Token counting in JS (approximate, using char/4 heuristic):
async function budgetedSearch(query, maxTokens = 300) {
  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})
  });
  const results = (await r.json()).organic || [];
  let lines = [], tokens = 0;
  for (const x of results) {
    const line = `${x.title}: ${x.snippet || ''}`;
    const t = Math.ceil(line.length / 4);
    if (tokens + t > maxTokens) break;
    lines.push(line); tokens += t;
  }
  return lines.join('\n');
}

Salida esperada

JSON
A token budget system that controls how many tokens search results consume in your agent's context window, with daily credit tracking.

Tutoriales relacionados

  • Cómo reducir el uso de tokens LLM con búsqueda estructurada
  • Cómo construir un agente de investigación autónomo con Scavio

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.8+. tiktoken instalado (pip install tiktoken). Una clave API de Scavio. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Best Of

Las mejores API de búsqueda con token eficiente en 2026

Read more
Glossary

Eficiencia del token SERP API

Read more
Best Of

Mejor API de datos comerciales locales en 2026

Read more
Glossary

Buscar patrones de límite de tasa de API

Read more
Comparison

Google Places API vs SERP Local Pack API

Read more
Solution

Alternativa de confiabilidad de API de sonda

Read more

Empieza a construir

Controle cuántos tokens gasta su agente en los resultados de búsqueda. Cree un sistema de presupuesto que limite el uso de la ventana de contexto por llamada de herramienta.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad