Aller au contenu

Documentation de Presentia

Presentia s’utilise surtout depuis le tableau de bord : créez une présentation à partir d’un prompt, d’un document, d’un jeu de données ou de markdown ; peaufinez-la dans l’éditeur (avec un assistant IA) ; exportez en PPTX ou PDF. Cette page couvre les fonctionnalités propres au fork et l’API ; l’éditeur au quotidien fonctionne comme vous l’attendriez de son projet d’origine.

La page Markdown offre un éditeur complet — barre d’outils, aperçu en direct qui montre exactement comment votre texte se découpe en cartes, compteur de cartes, glisser-déposer — plus des sélecteurs de modèle, de langue, de source/style d’images et d’export. Chaque section séparée par --- ou par des titres #/## devient une carte.

text_modeCe qui se passe
preserveVotre texte entre dans la présentation tel quel — l’IA ne choisit que les mises en page et génère les images.
condenseL’IA résume chaque carte en conservant sa structure.
generateL’IA réécrit et développe chaque carte.

La même puissance est disponible via l’API :

Fenêtre 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 construit une présentation à partir d’un jeu de données CSV, TSV ou JSON (multipart : file, plus content, n_slides, language, template, instructions, export_as). Le garde-fou anti-hallucination vérifie chaque chiffre de graphique contre le jeu de données — uniquement des valeurs exactes ou des agrégats exacts de colonnes (somme, moyenne, min, max, comptage). Les chiffres faux ont droit à une seule nouvelle tentative avec retour, et sont rejetés si le modèle insiste.

Fenêtre 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"

Les jeux de données sont attendus pré-agrégés ; le plafond de lignes est DATASET_MAX_ROWS (200 par défaut). Le modèle par défaut est Report, qui porte les mises en page de graphiques.

Deux pages du tableau de bord que le projet d’origine n’a pas :

  • Modèles — le catalogue des modèles de texte et d’image avec des points de qualité sélectionnés, le prix combiné par million de tokens, la disponibilité calculée à partir de vos clés et des badges de recommandation. Cliquez sur une carte pour changer ; avec une clé OpenRouter, presque tout s’allume d’un coup.
  • Coûts — des cartes de synthèse (appels, tokens entrants/sortants, coût estimé) et des ventilations par présentation, par étape, diapositive et modèle, plus un tableau de comparaison des fournisseurs. Les prix proviennent d’un catalogue versionné dans le dépôt : l’historique des coûts est donc auditable.

Presentia fonctionne en autonomie — sans aucune de ces variables, elle se comporte exactement comme le Presenton d’origine. Chaque intégration est opt-in et indépendante ; le docker-compose.yml du dépôt embarque des blocs de service commentés pour toutes.

  • Escriba — analyse de documents avec OCR. ESCRIBA_ENABLED=true + ESCRIBA_URL délèguent la conversion document → markdown à un service Escriba (PDF scannés, pages pivotées, images, plus de 20 formats). Si Escriba est indisponible ou échoue sur un fichier, Presentia se rabat automatiquement sur ses analyseurs locaux.
  • Anonimal — anonymisation des données personnelles avant le LLM. ANONIMAL_ENABLED=true + ANONIMAL_URL anonymisent les prompts des utilisateurs et le texte extrait des documents avant qu’ils ne voyagent vers le fournisseur LLM. Fail-closed : si le service ne répond pas, la génération s’arrête avec une erreur claire au lieu d’envoyer des données personnelles brutes. Le texte original ne quitte jamais votre hôte.
  • Searchgirl — recherche web privée. WEB_SEARCH_PROVIDER=searchgirl + SEARCHGIRL_BASE_URL ancrent les générations via votre propre instance de métarecherche plutôt que par une API tierce (avec un jeton Bearer optionnel).

Des familles de modèles intégrées (General, Modern, Standard, Swift, Report avec graphiques, Institucional en es-AR), des modèles personnalisés générés à partir de vos propres PPTX, un éditeur de thème complet (couleurs, polices, logo) et des style_instructions par modèle qui façonnent le ton d’écriture. Toute l’interface est livrée en 7 langues — English, Español, Français, Português, Italiano, 中文, 日本語 — changeable depuis la barre latérale et mémorisée par navigateur.

Fenêtre de terminal
docker compose up -d --build development # rechargement à chaud pour les deux serveurs
cd servers/fastapi && python -m pytest tests/unit # le fork ajoute plus de 100 tests unitaires
Voir sur GitHub