Ir al contenido

Documentación de Presentia

Presentia se usa principalmente desde el panel: crea una presentación desde un prompt, un documento, un dataset o markdown; afínala en el editor (con un asistente de IA); exporta a PPTX o PDF. Esta página cubre las funcionalidades propias del fork y la API; el editor del día a día funciona como esperarías de su upstream.

La página Markdown tiene un editor completo — barra de herramientas, vista previa en vivo que muestra exactamente cómo tu texto se divide en tarjetas, contador de tarjetas, drag & drop — más selectores de plantilla, idioma, fuente/estilo de imágenes y exportación. Cada sección separada por --- o por encabezados #/## se convierte en una tarjeta.

text_modeQué pasa
preserveTu texto entra en la presentación textual — la IA solo elige layouts y genera imágenes.
condenseLa IA resume cada tarjeta manteniendo su estructura.
generateLa IA reescribe y expande cada tarjeta.

El mismo poder está disponible por la API:

Ventana de terminal
curl -X POST http://localhost:5001/api/v1/ppt/presentation/generate-from-markdown \
-H "Content-Type: application/json" \
-d '{
"markdown": "# Q3 Review\nIntro...\n\n---\n\n## Results\n- Revenue up 20%",
"text_mode": "preserve",
"template": "general",
"export_as": "pptx"
}'

POST /api/v1/ppt/presentation/generate-from-data construye una presentación desde un dataset CSV, TSV o JSON (multipart: file, más content, n_slides, language, template, instructions, export_as). La protección anti-alucinación verifica cada cifra de cada gráfico contra el dataset — solo valores exactos o agregados exactos de columna (suma, promedio, mínimo, máximo, conteo). Los números erróneos reciben un reintento con feedback y se rechazan si el modelo insiste.

Ventana de terminal
curl -X POST http://localhost:5001/api/v1/ppt/presentation/generate-from-data \
-F "file=@monthly_summary.csv" \
-F "content=Monthly reconciliation report" \
-F "n_slides=6" -F "language=English" -F "export_as=pdf"

Los datasets se esperan pre-agregados; el tope de filas es DATASET_MAX_ROWS (200 por defecto). La plantilla por defecto es Report, que trae los layouts con gráficos.

Dos páginas del panel que el upstream no tiene:

  • Modelos — el catálogo de modelos de texto e imagen con puntos de calidad curados, precio combinado por millón de tokens, disponibilidad calculada según tus claves e insignias de recomendación. Haz clic en una tarjeta para cambiar; con una clave de OpenRouter casi todo se enciende de una vez.
  • Costos — tarjetas de resumen (llamadas, tokens de entrada/salida, costo estimado) y desgloses por presentación según etapa, diapositiva y modelo, más una tabla comparativa de proveedores. Los precios vienen de un catálogo versionado en el repo, así que el historial de costos es auditable.

Presentia funciona standalone — sin ninguna de estas variables se comporta exactamente como el Presenton original. Cada integración es opt-in e independiente; el docker-compose.yml del repo incluye bloques de servicio comentados para todas.

  • Escriba — parsing de documentos con OCR. ESCRIBA_ENABLED=true + ESCRIBA_URL delegan la conversión documento → markdown a un servicio Escriba (PDFs escaneados, páginas rotadas, imágenes, más de 20 formatos). Si Escriba está caído o falla con un archivo, Presentia recurre automáticamente a sus parsers locales.
  • Anonimal — anonimización de PII antes del LLM. ANONIMAL_ENABLED=true + ANONIMAL_URL anonimizan los prompts del usuario y el texto extraído de documentos antes de que viajen al proveedor del LLM. Fail-closed: si el servicio no responde, la generación se detiene con un error claro en lugar de enviar PII cruda. El texto original nunca sale de tu host.
  • Searchgirl — búsqueda web privada. WEB_SEARCH_PROVIDER=searchgirl + SEARCHGIRL_BASE_URL fundamentan las generaciones a través de tu propia instancia de metabúsqueda en lugar de una API de terceros (con un token Bearer opcional).

Familias de plantillas integradas (General, Modern, Standard, Swift, Report con gráficos, Institucional en es-AR), plantillas personalizadas generadas desde tu propio PPTX, un editor de temas completo (colores, fuentes, logo) y style_instructions por plantilla que moldean el tono de escritura. Toda la interfaz viene en 7 idiomas — English, Español, Français, Português, Italiano, 中文, 日本語 — intercambiables desde la barra lateral y recordados por navegador.

Ventana de terminal
docker compose up -d --build development # hot reload para ambos servidores
cd servers/fastapi && python -m pytest tests/unit # el fork agrega más de 100 tests unitarios
Ver en GitHub