Restaurar puntuación
Los motores de voz a texto casi nunca entregan una sola coma. La API Restaurar Puntuación toma texto corrido o transcripciones en crudo y coloca puntos, comas, signos de interrogación y mayúsculas donde corresponden, convirtiendo un bloque de palabras en oraciones legibles.
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.
El vacío que dejan las herramientas de transcripción
Muchos sistemas de reconocimiento de voz entregan un flujo continuo de palabras en minúscula sin ningún límite de oración, porque la puntuación casi no deja huella acústica: una pausa antes de 'pero' suena muy parecido a una pausa antes de un punto. Ese vacío es exactamente lo que resuelve este endpoint, tomando ese flujo crudo y reconstruyendo la estructura de las oraciones a partir de patrones del lenguaje, no del audio.
Qué pasa después de enviar el texto
Una solicitud a POST /text/punctuation se encola como tarea asíncrona; el modelo analiza la sintaxis, los posibles límites entre cláusulas y patrones del habla como muletillas o listas corridas para decidir dónde una coma separa elementos, dónde debería terminar una oración y dónde va un signo de interrogación o una mayúscula. El texto puntuado regresa por su webhook firmado o un enlace firmado, listo para leer o para alimentar el siguiente paso del proceso.
Por qué puntuar es más difícil de lo que parece
La puntuación escrita es una invención relativamente reciente: los textos antiguos muchas veces se escribían sin espacios ni signos, y el uso estandarizado de comas y puntos se afianzó apenas en los últimos siglos con la difusión de la imprenta. Restaurarla desde texto crudo implica inferir una intención que quien habló nunca hizo explícita, así que el resultado refleja la lectura más probable de una frase ambigua y no una única verdad garantizada.
Un paso natural antes de otras tareas de texto
Un texto sin puntuación rompe casi cualquier herramienta posterior: el índice de legibilidad asume límites de oración, los resúmenes pierden estructura y los correctores marcan errores de oraciones corridas que en realidad no existen. Colocar la restauración de puntuación justo después de una transcripción y antes de cualquier otro paso del pipeline le da a cada etapa siguiente un texto que realmente puede analizar bien.
Un precio simple, basado en uso real
El costo es $0.003 por solicitud más $0.0135 por cada 1,000 palabras procesadas, así que una llamada de cinco minutos transcrita cuesta prácticamente lo mismo sea un solo archivo o parte de un lote de cien. Solo se cobran las tareas completadas con éxito; las que fallan se reintentan automáticamente hasta tres veces y, si aun así no se completan, recibe un error claro sin ningún cargo.
Qué puede hacer con ella
Limpieza de transcripciones de llamadas
Envíe la salida cruda de un motor de voz a texto directamente a la API antes de guardar las grabaciones como registros de soporte legibles y buscables.
De nota de voz a documento
Convierta memos dictados en borradores correctamente puntuados listos para que un editor los revise, en lugar de un párrafo corrido sin pausas.
Preprocesamiento de subtítulos
Restaure la estructura de oraciones en la salida cruda de reconocimiento de voz antes de dividirla en líneas de subtítulo, para que los cortes caigan en límites naturales.
Normalización de texto antiguo
Recupere exportaciones viejas o texto extraído de la web que perdió su puntuación en algún proceso de conversión, dejándolo utilizable de nuevo para búsqueda y visualización.
Preguntas frecuentes
¿Cómo funciona la API para añadir puntuación a un texto?
Envía texto sin puntuar a POST /text/punctuation, la tarea asíncrona analiza la estructura de las oraciones y patrones del habla, y devuelve el texto puntuado y con mayúsculas vía webhook o enlace firmado.
¿Es gratis probarla?
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.
¿Funciona con transcripciones de cualquier herramienta de voz a texto?
Sí, funciona con cualquier texto crudo sin puntuar sin importar su origen, ya sea un motor de transcripción, software de dictado o texto despojado manualmente de sus signos.
¿Va a cambiar mis palabras?
No, solo añade puntuación, mayúsculas y límites de oración; no reescribe, resume ni altera las palabras que envía.
¿Cómo se calcula el precio?
El precio es $0.003 por solicitud más $0.0135 por cada 1,000 palabras, cobrado solo por tareas completadas con éxito, publicado de antemano y sin cargos ocultos por token.
¿Puedo procesar lotes grandes de transcripciones durante la noche?
Sí, cada llamada es asíncrona con entrega por webhook, así que puede encolar lotes grandes y dejar que los resultados lleguen conforme cada tarea termina.
¿Qué pasa si una tarea de puntuación falla?
El sistema reintenta automáticamente hasta tres veces; si sigue fallando recibe un mensaje de error claro y nunca se le cobra por esa tarea.
¿Debo usarla antes o después de otras herramientas de texto?
Úsela justo después de la transcripción y antes del índice de legibilidad o la revisión de textos, porque esas herramientas dependen de límites de oración correctos para funcionar bien.
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/punctuation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/text/punctuation", {
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/punctuation",
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/punctuation", 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/punctuation", 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.punctuation",
"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. |