El problema
Las instancias SearXNG autohospedadas son populares para búsquedas centradas en la privacidad, pero adolecen de una calidad de resultados inconsistente. SearXNG se agrega desde múltiples motores, algunos de los cuales limitan o bloquean la IP de la instancia. La calidad de los resultados varía según la hora y la disponibilidad del motor. Los usuarios experimentan resultados vacíos, respuestas lentas y funciones faltantes como descripciones generales de IA que SearXNG no admite.
La solucion de Scavio
Mantenga SearXNG como motor de búsqueda principal para consultas sensibles a la privacidad, pero agregue Scavio como respaldo automático cuando SearXNG devuelva resultados vacíos o de baja calidad. El respaldo se activa cuando SearXNG devuelve menos de 3 resultados o se agota el tiempo de espera. Scavio proporciona resultados consistentes y estructurados, incluidas descripciones generales de IA. Este enfoque híbrido mantiene los valores predeterminados de privacidad y al mismo tiempo garantiza resultados confiables.
Antes
Antes de la alternativa, los usuarios de SearXNG encontraban resultados vacíos entre el 10% y el 20% del tiempo, dependiendo de la disponibilidad del motor. Volverían a intentar realizar consultas o cambiarían manualmente a un motor de búsqueda comercial, anulando el propósito del autohospedaje de SearXNG.
Después
Después de agregar Scavio como alternativa, los incidentes con resultados vacíos cayeron a menos del 1%. Los usuarios obtienen resultados consistentes sin reintentos manuales. SearXNG maneja entre el 80% y el 85% de las consultas, lo que mantiene bajos los costos de Scavio y garantiza al mismo tiempo una cobertura de resultados del 100%.
Para quien es
Autohospedadores que ejecutan SearXNG y necesitan un respaldo confiable para escenarios de resultados vacíos. Equipos centrados en la privacidad que desean coherencia en las búsquedas sin abandonar por completo la infraestructura autohospedada.
Beneficios clave
- Los incidentes con resultados vacíos caen del 10-20% a menos del 1%
- SearXNG maneja entre el 80% y el 85% de las consultas, manteniendo los costos de API al mínimo
- El respaldo se activa automáticamente cuando los resultados están vacíos o son de baja calidad
- Scavio agrega datos de descripción general de AI que SearXNG no puede proporcionar
- Valor predeterminado que prioriza la privacidad con respaldo comercial confiable
Ejemplo en Python
import requests
API_KEY = "your_scavio_api_key"
SEARXNG_URL = "http://localhost:8888/search"
MIN_RESULTS = 3
def hybrid_search(query: str) -> dict:
"""SearXNG primary, Scavio fallback."""
# Try SearXNG first
try:
res = requests.get(SEARXNG_URL, params={"q": query, "format": "json"}, timeout=8)
res.raise_for_status()
searxng_results = res.json().get("results", [])
if len(searxng_results) >= MIN_RESULTS:
return {"source": "searxng", "results": [{"title": r["title"], "link": r["url"], "snippet": r.get("content", "")} for r in searxng_results[:10]]}
except Exception:
pass
# Fallback to Scavio
res = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": "google", "query": query, "ai_overview": True},
timeout=15,
)
res.raise_for_status()
data = res.json()
results = [{"title": r.get("title", ""), "link": r.get("link", ""), "snippet": r.get("snippet", "")} for r in data.get("organic", [])[:10]]
return {"source": "scavio", "ai_overview": data.get("ai_overview", {}).get("text", ""), "results": results}
result = hybrid_search("best self-hosted search engine 2026")
print(f"Source: {result['source']}, Results: {len(result['results'])}")Ejemplo en JavaScript
const API_KEY = "your_scavio_api_key";
async function hybridSearch(query) {
try {
const res = await fetch(`http://localhost:8888/search?q=${encodeURIComponent(query)}&format=json`, { signal: AbortSignal.timeout(8000) });
const data = await res.json();
if ((data.results ?? []).length >= 3) return { source: "searxng", results: data.results.slice(0, 10).map((r) => ({ title: r.title, link: r.url, snippet: r.content ?? "" })) };
} catch {}
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({ platform: "google", query, ai_overview: true }),
});
const data = await res.json();
return { source: "scavio", results: (data.organic ?? []).slice(0, 10).map((r) => ({ title: r.title ?? "", link: r.link ?? "", snippet: r.snippet ?? "" })) };
}
const r = await hybridSearch("best self-hosted search engine 2026");
console.log(`Source: ${r.source}, Results: ${r.results.length}`);Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA