El problema
La creación de conjuntos de entrenamiento de ML para el análisis de sentimientos requiere grandes volúmenes de texto de noticias etiquetado. Recopilar y etiquetar manualmente artículos de noticias es costoso y lento. Las API de noticias existentes cobran por artículo y carecen de los metadatos estructurados (fuente, fecha, tema) necesarios para conjuntos de capacitación limpios. Los equipos terminan con corpus pequeños y sesgados que no se generalizan bien entre temas y fuentes.
La solucion de Scavio
Cree un generador de corpus automatizado utilizando la búsqueda de Google News de Scavio. Consulte palabras clave relacionadas con noticias, extraiga títulos y fragmentos de resultados orgánicos y utilice metadatos estructurados (dominio de origen, fecha de publicación, posición) como funciones. La canalización produce conjuntos de capacitación limpios con miles de ejemplos etiquetados a precios de API de búsqueda en lugar de precios de API de noticias.
Antes
Antes: un equipo de ciencia de datos utilizó una API de noticias dedicada a 0,05 dólares por artículo para crear un corpus de opiniones. Crear un conjunto de capacitación de artículos de 10K costó $500 y requirió 2 semanas de curación. El corpus estaba sesgado hacia fuentes en inglés del índice limitado de noticias API.
Después
Después: el mismo equipo utiliza consultas de Scavio Google News para crear corpus a $0,005/consulta. Cada consulta devuelve más de 10 resultados, por lo que 1.000 consultas ($5) producen un corpus de fragmentos de más de 10.000. La actualización mensual del corpus cuesta $5 en lugar de $500. El tiempo de construcción se redujo de 2 semanas a 2 horas.
Para quien es
Científicos de datos e ingenieros de aprendizaje automático que crean modelos de análisis de sentimientos que necesitan corpus de noticias estructurados y asequibles. Investigadores de PNL recopilando datos de entrenamiento a escala.
Beneficios clave
- Cree más de 10.000 corpus de fragmentos por 5 dólares en lugar de 500 dólares a través de API de noticias
- Metadatos estructurados (fuente, fecha, posición) incluidos con cada resultado
- Actualizar los corpus mensualmente a un costo insignificante para volver a capacitar al modelo
- El índice de Google News cubre fuentes más amplias que las API de noticias dedicadas
- Reduzca el tiempo de construcción del corpus de semanas a horas con canalizaciones automatizadas
Ejemplo en Python
import requests
import json
from datetime import date
API_KEY = "your_scavio_api_key"
def build_corpus(topics: list, results_per_topic: int = 10) -> list:
corpus = []
for topic in topics:
r = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": "google", "query": f"{topic} news 2026"},
timeout=10,
)
data = r.json()
for item in data.get("organic", [])[:results_per_topic]:
corpus.append({
"text": f"{item["title"]}. {item.get("snippet", "")}",
"source": item.get("link", "").split("/")[2] if "/" in item.get("link", "") else "",
"topic": topic,
"date_collected": str(date.today()),
"position": item.get("position"),
})
return corpus
topics = ["artificial intelligence regulation", "climate tech funding", "semiconductor shortage"]
corpus = build_corpus(topics)
print(f"Corpus size: {len(corpus)} entries")
with open("news_corpus.json", "w") as f:
json.dump(corpus, f, indent=2)Ejemplo en JavaScript
const API_KEY = "your_scavio_api_key";
async function buildCorpus(topics, resultsPerTopic = 10) {
const corpus = [];
for (const topic of topics) {
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: `${topic} news 2026` }),
});
const data = await res.json();
for (const item of (data.organic || []).slice(0, resultsPerTopic)) {
corpus.push({
text: `${item.title}. ${item.snippet || ""}`,
source: item.link ? new URL(item.link).hostname : "",
topic,
dateCollected: new Date().toISOString().split("T")[0],
position: item.position,
});
}
}
return corpus;
}
const topics = ["artificial intelligence regulation", "climate tech funding", "semiconductor shortage"];
const corpus = await buildCorpus(topics);
console.log(`Corpus size: ${corpus.length} entries`);Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA