Extraer entidades
El texto crudo está lleno de datos que nunca llegan a una base de datos: quién fue mencionado, qué empresas aparecieron, qué fechas y lugares anclaron la conversación. Esta API de reconocimiento de entidades nombradas extrae esos datos como información estructurada, convirtiendo una pila de documentos sin leer en algo que se puede filtrar, cruzar y buscar.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
La brecha entre texto y datos estructurados
Una transcripción de soporte, un artículo de noticias o un contrato mencionan decenas de cosas concretas —un nombre, una organización, una ciudad, una fecha— pero nada de eso es consultable hasta que alguien o algo lo extrae. Leer cada documento a mano no escala más allá de unas cuantas docenas; una base de datos no puede buscar dentro de texto libre en absoluto. text.extract-entities se ubica justo en esa brecha, convirtiendo escritura sin estructura en una lista de menciones tipadas.
Qué recibe de vuelta
Envía texto por POST a /text/extract-entities, la tarea corre de forma asíncrona, y el resultado es una lista de entidades agrupadas por tipo —personas, organizaciones, lugares, fechas y otras categorías estándar— cada una con su posición en el texto de origen. Ese detalle posicional es lo que hace útil el resultado más allá de una simple lista de palabras: puede resaltar la mención exacta en el documento original, vincularla a un registro en una base de datos, o contar cuántas veces aparece una empresa o persona específica en todo un archivo.
Un campo con historia real detrás
El reconocimiento de entidades nombradas es una tarea central del procesamiento de lenguaje natural desde los años noventa, construida originalmente para escanear cables de noticias en busca de nombres de empresas y símbolos bursátiles. Lo que cambió no es el objetivo —extraer personas, lugares y organizaciones— sino la precisión y el rango de texto que puede manejar: escritura informal, idiomas mezclados en un mismo documento, y entidades que solo tienen sentido según el contexto y no por reglas fijas de mayúsculas. Por eso la extracción moderna maneja igual de bien un chat informal que un comunicado de prensa formal.
Dónde se conecta con otras herramientas
La extracción de entidades rara vez funciona sola —suele ser el paso que alimenta un índice de búsqueda, un grafo de conocimiento, o un proceso de deduplicación que necesita saber que dos menciones del nombre de una empresa se refieren a la misma entidad. Combinada con algo como text.detect-pii, también puede separar las entidades relevantes para el negocio de las personales dentro de un mismo documento, algo importante cuando solo una parte de lo mencionado debería terminar en un sistema de análisis.
Ejecutándolo a escala
Los resultados se entregan por webhook firmado de forma predeterminada, así que un flujo puede extraer entidades de cada documento nuevo apenas llega, o mediante un enlace firmado válido por 24 horas para lotes o ejecuciones puntuales. El precio es $0.003 por solicitud más $0.0135 por cada 1000 palabras procesadas. No hay capa gratuita ni saldo de prueba —se requiere saldo prepago, sin saldo la solicitud devuelve HTTP 402— y una tarea que termina fallando tras tres reintentos nunca se cobra.
Qué puede hacer con ella
Construir un archivo con búsqueda
Extraiga personas, empresas y lugares de años de documentos para habilitar filtrado y búsqueda más allá de la coincidencia simple de palabras.
Monitoreo de medios y contenido
Identifique qué organizaciones y personas se mencionan en artículos o transcripciones para dar seguimiento a la cobertura a lo largo del tiempo.
Revisión de contratos y documentos
Identifique automáticamente partes, fechas y lugares mencionados en un lote de contratos antes de una revisión manual.
Construcción de grafos de conocimiento
Alimente las entidades extraídas y su posición a una estructura de grafo que vincula menciones de la misma persona u organización entre documentos.
Preguntas frecuentes
¿Qué extrae exactamente el reconocimiento de entidades nombradas?
Extrae menciones tipadas del texto —personas, organizaciones, lugares, fechas y categorías similares— junto con la posición de cada entidad en el documento de origen.
¿Cómo se usa la api de reconocimiento de entidades?
Envía texto por POST a /text/extract-entities, recibe un task_id, y obtiene la lista estructurada de entidades por webhook o enlace firmado cuando termina el procesamiento.
¿Hay una capa gratuita para la extracción de entidades?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. El acceso funciona con un saldo prepago de ForHosting KIT: se recarga desde $10.00 (no caduca) y cada solicitud se cobra a su precio publicado, así que una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Cómo se cobra la extracción de entidades?
Cuesta $0.003 por solicitud más $0.0135 por cada 1000 palabras procesadas, y una tarea que falla tras sus reintentos automáticos nunca se cobra.
¿Puede procesar un lote grande de documentos a la vez?
Sí, los envíos corren de forma asíncrona, así que lotes masivos de documentos o transcripciones se procesan en segundo plano y los resultados llegan conforme terminan.
¿Qué tipos de entidades reconoce?
Categorías estándar como personas, organizaciones, lugares y fechas, extraídas a partir del contexto y no de reglas fijas de mayúsculas o formato.
¿En qué se diferencia de la detección de datos personales?
La extracción de entidades identifica todas las menciones nombradas para estructurar y buscar, mientras que text.detect-pii marca específicamente datos personales con fines de cumplimiento y privacidad.
¿Funciona con texto informal o que no está en inglés?
Lee el contexto que rodea cada mención en vez de depender de gramática o mayúsculas estrictas, lo que le permite manejar escritura informal y varios idiomas.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/text/extract-entities \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/text/extract-entities", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/extract-entities",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/extract-entities", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/extract-entities", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "…"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.extract_entities",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_tokens | 20000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |