English Tutor

english-tutor English Tutor (english-tutor)

Workflow específico para tutor de inglés con evolución prevista hacia tablas y tools propias por proyecto.

Ingesta de documentos

Subir un documento crea la ingesta automáticamente y la procesa en segundo plano.

Subir documento

Elige explícitamente el modelo para la normalización semántica. Las opciones marcadas como "de pago" usan OpenAI; las "local" usan Ollama.
Formatos permitidos: .md y .txt hasta 1 MB, .docx hasta 3 MB y .pdf hasta 3 MB. Para PDF, se recomienda texto embebido y no imagen escaneada. Si el PDF es imagen, el sistema intentará OCR, pero el procesamiento puede tardar más y está limitado por tiempo para evitar ingestas demasiado largas. Estos límites están pensados para mantener la ingesta por documento dentro de un tiempo razonable, con un peor caso objetivo inferior a 3 minutos.

Ingestas

Primer trimestre Completada
primer-trimestre
Documento: Vaughan 1º Q.docx
Normalización: openai / gpt-4.1-mini
Solicitado
2026-04-01 09:39
Iniciado
2026-04-01 09:39
Finalizado
2026-04-01 09:47
Ver resumen técnico
{
    "workflow": "english-tutor",
    "normalized_episodes": 65,
    "structured_entries_indexed": 932,
    "structured_rag_chunks_indexed": 932,
    "failed_batches": [],
    "batches": [
        {
            "batch_index": 0,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 1,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 2,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 3,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 4,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 5,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 6,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 7,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 8,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 9,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 10,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 11,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 12,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 13,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 14,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 15,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 16,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 17,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 18,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 19,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 20,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        },
        {
            "batch_index": 21,
            "provider": "openai",
            "model": "gpt-4.1-mini",
            "status": "completed",
            "attempt_count": 1
        }
    ],
    "rag_indexer": {
        "collection": "default_docs",
        "project_id": "english-tutor",
        "knowledge_base": "primer-trimestre",
        "documents_found": 932,
        "documents_indexed": 268,
        "chunks_indexed": 932,
        "embedding_model": "nomic-embed-text:latest",
        "status": "ok",
        "context_replaced": false,
        "skipped_files": [],
        "errors": [],
        "batches": [
            {
                "batch_index": 0,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 1,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 2,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 3,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 4,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 5,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 6,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 7,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 8,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 9,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 10,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 11,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 12,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 13,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 14,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 15,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 16,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 17,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 18,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 19,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 20,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 21,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 22,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 23,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 24,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 25,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 26,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 27,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 28,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 29,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 30,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 31,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 32,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 33,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 34,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 35,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 36,
                "records": 25,
                "chunks_indexed": 25,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            },
            {
                "batch_index": 37,
                "records": 7,
                "chunks_indexed": 7,
                "status": "ok",
                "context_replaced": false,
                "errors": []
            }
        ]
    }
}