ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo depurar problemas de calidad de búsqueda de Hermes
Tutorial

Cómo depurar problemas de calidad de búsqueda de Hermes

Corrija resultados de búsqueda deficientes de los agentes de Hermes verificando el tamaño del modelo, la configuración de la herramienta, la construcción de consultas y la calidad del proveedor. Guía de depuración paso a paso.

Obtener clave API gratisDocumentacion API

Corrija la mala calidad de búsqueda de los agentes basados ​​en Hermes verificando cinco puntos de falla comunes: el tamaño del modelo que afecta la construcción de la consulta, errores de configuración de la herramienta, redacción de la consulta subóptima, calidad del proveedor de búsqueda y problemas con la plantilla de mensajes. Hermes 3 es un modelo capaz de utilizar herramientas, pero su calidad de búsqueda depende en gran medida de cómo está configurada la herramienta de búsqueda y a qué motor de búsqueda llama. La mayoría de los problemas de calidad se remontan al modelo que genera consultas demasiado amplias o al proveedor de búsqueda que arroja resultados de baja relevancia.

Requisitos previos

  • Un agente Hermes en ejecución con capacidad de búsqueda
  • Python 3.8+ instalado
  • solicita biblioteca instalada
  • Una clave API de Scavio de scavio.dev para comparar

Guia paso a paso

Paso 1: Verifique el impacto del tamaño del modelo

Verifique qué variante del modelo Hermes está ejecutando. Los modelos más pequeños generan peores consultas de búsqueda.

Python
import requests, os, json

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']
OLLAMA_URL = 'http://localhost:11434'

def check_model():
    try:
        resp = requests.get(f'{OLLAMA_URL}/api/tags', timeout=5)
        models = resp.json().get('models', [])
        hermes_models = [m for m in models if 'hermes' in m.get('name', '').lower()]
        for m in hermes_models:
            size = m.get('size', 0) / (1024**3)
            print(f"{m['name']}: {size:.1f}GB")
            if size < 4:
                print('  WARNING: Small model may construct poor queries')
                print('  Recommendation: Use hermes3:8b or larger')
        if not hermes_models:
            print('No Hermes models found in Ollama')
        return hermes_models
    except Exception as e:
        print(f'Cannot connect to Ollama: {e}')
        return []

check_model()

Paso 2: Verificar la configuración de la herramienta

Compruebe que la definición de la herramienta de búsqueda le dé a Hermes suficiente contexto para construir buenas consultas.

Python
GOOD_TOOL_DEF = {
    'type': 'function',
    'function': {
        'name': 'web_search',
        'description': 'Search the web for current information. Use specific, focused queries. Include the year 2026 for time-sensitive topics.',
        'parameters': {
            'type': 'object',
            'properties': {
                'query': {
                    'type': 'string',
                    'description': 'The search query. Be specific: include product names, versions, dates. Bad: "best tools". Good: "best CRM for startups 2026".',
                },
            },
            'required': ['query'],
        },
    },
}

BAD_TOOL_DEF = {
    'type': 'function',
    'function': {
        'name': 'search',
        'description': 'Search',
        'parameters': {'type': 'object', 'properties': {'q': {'type': 'string'}}},
    },
}

print('GOOD: Descriptive name, detailed description, query guidance')
print('BAD: Vague name, no description, no query guidance')
print('Fix: Use the GOOD tool definition pattern above')

Paso 3: Calidad de construcción de la consulta de prueba

Envíe un mensaje de usuario a Hermes e inspeccione qué consulta de búsqueda genera. Compare consultas malas y buenas.

Python
def test_query_quality(user_prompt: str) -> dict:
    """Test what query Hermes would construct for a given prompt."""
    # Simulate Hermes query construction
    # In practice, inspect your agent's tool call logs
    example_bad_queries = {
        'What CRM should I use?': 'CRM',  # Too broad
        'Compare React and Vue': 'react vue',  # Missing context
        'Latest Python release': 'python release',  # Missing year
    }
    example_good_queries = {
        'What CRM should I use?': 'best CRM for small business 2026 comparison',
        'Compare React and Vue': 'React vs Vue performance comparison 2026',
        'Latest Python release': 'Python latest version release date 2026',
    }
    bad = example_bad_queries.get(user_prompt, user_prompt)
    good = example_good_queries.get(user_prompt, user_prompt)
    # Compare result quality
    bad_results = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY},
        json={'platform': 'google', 'query': bad}, timeout=10).json().get('organic_results', [])
    good_results = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY},
        json={'platform': 'google', 'query': good}, timeout=10).json().get('organic_results', [])
    print(f'Bad query "{bad}": {len(bad_results)} results')
    print(f'Good query "{good}": {len(good_results)} results')
    return {'bad_query': bad, 'good_query': good}

test_query_quality('What CRM should I use?')

Paso 4: Comparar proveedores de búsqueda

Pruebe la misma consulta en diferentes proveedores para determinar si el problema es el motor de búsqueda o la consulta.

Python
def compare_providers(query: str) -> dict:
    # Test with Scavio (structured API)
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY},
        json={'platform': 'google', 'query': query}, timeout=10)
    scavio_results = resp.json().get('organic_results', [])
    # Test with SearXNG (if running locally)
    searxng_results = []
    try:
        resp = requests.get('http://localhost:8080/search',
            params={'q': query, 'format': 'json'}, timeout=10)
        searxng_results = resp.json().get('results', [])
    except:
        pass
    print(f'Query: {query}')
    print(f'Scavio: {len(scavio_results)} results')
    if scavio_results:
        print(f'  Top: {scavio_results[0].get("title", "")[:60]}')
    print(f'SearXNG: {len(searxng_results)} results')
    if searxng_results:
        print(f'  Top: {searxng_results[0].get("title", "")[:60]}')
    return {'scavio': len(scavio_results), 'searxng': len(searxng_results)}

compare_providers('best CRM for startups 2026')

Paso 5: Optimice las indicaciones para mejores consultas

Actualice el mensaje del sistema para guiar a Hermes hacia la creación de mejores consultas de búsqueda.

Python
OPTIMIZED_SYSTEM_PROMPT = """You are a research assistant with web search capability.

When using the web_search tool:
1. Always include specific terms (product names, versions, years)
2. Add "2026" for time-sensitive topics
3. Use comparison terms when the user asks for recommendations
4. Break complex questions into multiple focused searches
5. Prefer "best X for Y" over just "X"

Examples:
- User: "What CRM should I use?" -> search: "best CRM for small business comparison 2026"
- User: "Is React still good?" -> search: "React framework popularity and performance 2026"
"""

def build_hermes_prompt(user_message: str) -> str:
    return f"{OPTIMIZED_SYSTEM_PROMPT}\n\nUser: {user_message}"

print(build_hermes_prompt('What project management tool should I use?'))
print('\nThis prompt guides Hermes to construct specific, high-quality search queries.')

Ejemplo en Python

Python
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def quality_check(broad_query, specific_query):
    broad = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': broad_query}).json()
    specific = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': specific_query}).json()
    print(f'Broad "{broad_query}": {len(broad.get("organic_results", []))} results')
    print(f'Specific "{specific_query}": {len(specific.get("organic_results", []))} results')

quality_check('CRM', 'best CRM for startups 2026')

Ejemplo en JavaScript

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function qualityCheck(broad, specific) {
  const r1 = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: H, body: JSON.stringify({platform: 'google', query: broad})
  });
  const r2 = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: H, body: JSON.stringify({platform: 'google', query: specific})
  });
  console.log(`Broad: ${((await r1.json()).organic_results || []).length} results`);
  console.log(`Specific: ${((await r2.json()).organic_results || []).length} results`);
}
qualityCheck('CRM', 'best CRM for startups 2026');

Salida esperada

JSON
A diagnostic checklist that identifies and fixes Hermes search quality issues through model size checks, tool config improvements, query optimization, and provider comparison.

Tutoriales relacionados

  • Cómo solucionar errores de búsqueda web del agente Hermes
  • Cómo ejecutar SearXNG + Hermes + Qwen con Docker Compose

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.

Un agente Hermes en ejecución con capacidad de búsqueda. Python 3.8+ instalado. solicita biblioteca instalada. Una clave API de Scavio de scavio.dev para comparar. 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

La mejor API de búsqueda para el agente Hermes en 2026

Read more
Best Of

Los mejores backends de búsqueda para Hermes Agent en 2026

Read more
Use Case

Configuración de búsqueda de producción de agentes Hermes

Read more
Solution

Agente terrestre de Hermes con búsqueda en vivo

Read more
Use Case

Búsqueda web del agente Hermes

Read more
Glossary

Integración de búsqueda de agentes de Hermes

Read more

Empieza a construir

Corrija resultados de búsqueda deficientes de los agentes de Hermes verificando el tamaño del modelo, la configuración de la herramienta, la construcción de consultas y la calidad del proveedor. Guía de depuración paso a paso.

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