Translation Cache
Enterprise FeatureSistema de cache de dos niveles (capitulo + chunk) para maximizar el ahorro en traducciones repetidas y reducir tiempos de procesamiento.
Arquitectura de Dos Niveles
Chapter Cache
Nivel 1Cache a nivel de capitulo completo. Si el capitulo entero es identico a uno previamente traducido, se reutiliza directamente.
- 100% ahorro cuando hay match exacto
- Requiere texto identico (caracter por caracter)
Chunk Cache
Nivel 2Cache granular a nivel de chunk (6000 caracteres). Permite reutilizar partes de capitulos aunque el capitulo completo sea diferente.
- Mayor probabilidad de hits
- Ahorro parcial (solo chunks cacheados)
Como Funciona el Hash
Cada traduccion se identifica por un hash SHA-256 unico generado a partir de:
Texto
Contenido original completo
Modelo
gpt-4o-mini, claude-3-haiku, etc.
Origen
Idioma fuente (en)
Destino
Idioma objetivo (es)
Glosario
MD5 de terminos ordenados
Flujo de Traduccion con Cache
Capitulo llega al worker
Se verifica primero en Chapter Cache
Dividir en chunks de 6000 caracteres
Cada chunk se verifica en Chunk Cache
Pasadas 2 y 3 (Consistencia + Pulido)
Se aplican al texto completo unido
Guardar en Chapter Cache
Para futuros capitulos identicos
API Reference
/api/translation-cacheObtiene estadisticas actuales del cache (entradas, hits, tokens ahorrados).
{
"totalEntries": 1250,
"totalHits": 345,
"totalTokensSaved": 2500000,
"hitRate": 21,
"estimatedSavings": 0.94,
"topModels": [
{ "model": "gpt-4o-mini", "entries": 800, "hits": 200 }
]
}/api/translation-cache/historyHistorial de uso del cache por dia con tendencias.
{
"byDay": [
{ "date": "2025-12-18", "chapterHits": 12, "chunkHits": 45, "tokensSaved": 15000 }
],
"trend": {
"hitsChange": 15.2,
"savingsChange": 22.5
},
"summary": {
"totalHits": 89,
"estimatedSavings": 0.45
}
}/api/translation-cacheSUPER_ADMINLimpia entradas antiguas del cache que nunca han sido reutilizadas.
{ "deleted": 150, "message": "Cache limpiado exitosamente" }Mejores Practicas
Maximizar Hits
- Usa el mismo modelo consistentemente
- Mantiene glosarios estables
- Evita cambios menores en texto fuente
- Procesa libros similares con mismo modelo
Cuando el Cache NO Ayuda
- Libros completamente unicos
- Cambios frecuentes de modelo
- Glosarios muy diferentes entre libros
- Textos cortos (menos de un chunk)
Metricas y Monitoreo
Las estadisticas de cache estan disponibles en:
Esquema de Base de Datos
TranslationCache
Cache a nivel de capitulo completo
model TranslationCache {
id String @id
hash String @unique // SHA-256
sourceText String @db.Text
targetText String @db.Text
model String
tokensUsed Int
hitCount Int @default(0)
lastHitAt DateTime?
}ChunkCache
Cache granular a nivel de chunk (6000 chars)
model ChunkCache {
id String @id
hash String @unique // SHA-256
sourceChunk String @db.Text
translatedChunk String @db.Text
model String
glossaryHash String // MD5 del glosario
tokensUsed Int
hitCount Int @default(0)
lastHitAt DateTime?
}Documentacion actualizada: Diciembre 2025
Ver toda la documentacion