Las descripciones generales de IA de Google (anteriormente Search Generative Experience) aparecen en la parte superior de los resultados de búsqueda para muchas consultas informativas. Resume múltiples fuentes en una respuesta concisa visible antes de los resultados orgánicos. Para los profesionales de SEO y estrategas de contenido, saber si una consulta desencadena una descripción general de IA y lo que dice es cada vez más importante para comprender el impacto del tráfico. La API de Scavio devuelve el campo ai_overview en las respuestas SERP cuando Google genera una. Este tutorial muestra cómo detectar y extraer contenido de descripción general de IA.
Requisitos previos
- Python 3.8 o superior
- solicita biblioteca instalada
- Una clave API de Scavio
- Comprensión de las funciones SERP y conceptos básicos de SEO
Guia paso a paso
Paso 1: Consultar un tema que desencadena una descripción general de IA
Consultas informativas como "cómo funciona X" o "qué es Y" suelen desencadenar descripciones generales de IA. Envíe dicha consulta al punto final de Scavio.
data = search_google("how does retrieval augmented generation work")
ai_overview = data.get("ai_overview")
print("AI Overview present:", ai_overview is not None)Paso 2: Extraer el texto resumen
El objeto ai_overview contiene un resumen de texto y, opcionalmente, una lista de fuentes citadas.
if ai_overview:
print("Summary:")
print(ai_overview.get("text", "No text available"))
print("\nSources:")
for source in ai_overview.get("sources", []):
print(f" - {source.get('title')}: {source.get('link')}")Paso 3: Compruebe qué consultas activan descripciones generales de IA
Ejecute un lote de consultas e informe cuáles tienen descripciones generales de IA. Esto ayuda a identificar qué áreas de contenido está resumiendo Google.
def check_ai_overviews(queries: list[str]) -> dict:
results = {}
for q in queries:
data = search_google(q)
results[q] = data.get("ai_overview") is not None
return resultsPaso 4: Guarde los datos de AI Overview para su análisis
Conserve el contenido de AI Overview y las fuentes citadas en JSON para un análisis más detallado.
import json
overviews = {}
for q in queries:
data = search_google(q)
if data.get("ai_overview"):
overviews[q] = data["ai_overview"]
with open("ai_overviews.json", "w") as f:
json.dump(overviews, f, indent=2)Ejemplo en Python
import os
import json
import requests
API_KEY = os.environ.get("SCAVIO_API_KEY", "your_scavio_api_key")
ENDPOINT = "https://api.scavio.dev/api/v1/search"
def search_google(q: str) -> dict:
r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY},
json={"query": q, "country_code": "us"})
r.raise_for_status()
return r.json()
def extract_ai_overviews(queries: list[str]) -> dict:
results = {}
for q in queries:
data = search_google(q)
ai = data.get("ai_overview")
results[q] = {"has_overview": ai is not None, "text": ai.get("text") if ai else None}
return results
if __name__ == "__main__":
queries = ["how does vector search work", "what is rag in ai", "python vs javascript 2026"]
overviews = extract_ai_overviews(queries)
print(json.dumps(overviews, indent=2))Ejemplo en JavaScript
const API_KEY = process.env.SCAVIO_API_KEY || "your_scavio_api_key";
const ENDPOINT = "https://api.scavio.dev/api/v1/search";
async function searchGoogle(q) {
const res = await fetch(ENDPOINT, {
method: "POST",
headers: { "x-api-key": API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({ query: q, country_code: "us" })
});
return res.json();
}
async function extractAIOverviews(queries) {
const results = {};
for (const q of queries) {
const data = await searchGoogle(q);
results[q] = { hasOverview: !!data.ai_overview, text: data.ai_overview?.text || null };
}
return results;
}
extractAIOverviews(["how does vector search work", "what is rag in ai"])
.then(r => console.log(JSON.stringify(r, null, 2)))
.catch(console.error);Salida esperada
{
"ai_overview": {
"text": "Retrieval-Augmented Generation (RAG) is a technique that enhances LLM responses by retrieving relevant documents from an external knowledge base before generating an answer...",
"sources": [
{ "title": "What is RAG? — AWS", "link": "https://aws.amazon.com/what-is/retrieval-augmented-generation/" },
{ "title": "RAG Explained — LangChain Blog", "link": "https://blog.langchain.dev/rag-explained" }
]
}
}