# Proposition : relecture OpenAI et cadence du blog

Note du 6 septembre 2026. La relecture OpenAI est une évolution envisagée, pas une fonctionnalité activée. L'utilisateur souhaite réduire la cadence à environ un article tous les quinze jours.

## Relecture envisagée

- Bouton « Faire relire » sur un brouillon, après génération DeepSeek et contrôles existants.
- Transmettre l'article, le dossier éditorial vérifié et la liste des fonctionnalités produit autorisées à l'API OpenAI.
- Vérifier les affirmations sensibles par recherche web limitée aux sources officielles : DGFiP, BOFiP, Légifrance, Service Public et Urssaf.
- Afficher les problèmes, les passages concernés, les sources consultées et les corrections proposées dans l'administration.
- Associer le rapport à une empreinte de la version relue : une modification ultérieure rend le rapport périmé.
- Conserver la validation humaine des corrections et de la publication. Une seconde IA ne garantit pas zéro erreur.
- Prévoir le suivi du coût par relecture et un budget applicatif configurable. Le budget proposé ci-dessous n'est pas actuellement appliqué.

## Estimation des frais API

Hypothèse de calcul avec GPT-5.6 Sol, tarifs standard consultés le 6 septembre 2026 :

| Poste | Hypothèse | Coût estimé |
|---|---|---:|
| Entrée, article et sources compris | 15 000 tokens à 4 $ / million | 0,06 $ |
| Sortie, raisonnement compris | 5 000 tokens à 20 $ / million | 0,10 $ |
| Recherche web | 3 appels à 0,01 $ | 0,03 $ |
| Total | Une relecture | 0,19 $ |

À deux articles par mois et une seule relecture par article : environ **0,38 $ par mois**, soit **4,56 $ par an** pour vingt-quatre articles. L'enveloppe précédemment proposée de **5 $ par mois** laisse une marge pour davantage de recherches ou de nouvelles relectures ; ce n'est ni un forfait fournisseur ni un plafond déjà installé.

Estimation non mesurée en production, hors taxes, coût DeepSeek et travail d'intégration. Les recherches, le raisonnement et les appels répétés font varier la consommation. Les tarifs doivent être revérifiés avant activation.

Sources : [tarification OpenAI](https://developers.openai.com/api/docs/pricing), [facturation du raisonnement](https://developers.openai.com/api/docs/guides/reasoning), [recherche web et filtrage des domaines](https://developers.openai.com/api/docs/guides/tools-web-search).

## Configuration CRON proposée

Pour un rythme simple d'environ quinze jours, déclencher le **1er et le 16 de chaque mois**. Exemple à 08 h, dans le fuseau du serveur CRON :

```cron
0 8 1,16 * * COMMANDE_EXISTANTE
```

`COMMANDE_EXISTANTE` est une indication documentaire, à remplacer par la commande déjà configurée sur l'hébergement. Conserver son chemin PHP, son répertoire de travail, ses options d'environnement et sa redirection de logs. La commande Symfony concernée reste `app:blog:generate-article`.

Dans cPanel, modifier la tâche existante : minute `0`, heure `8` (ou conserver l'horaire actuel), jour du mois `1,16`, mois `*`, jour de semaine `*`. Ne pas créer une seconde tâche qui s'ajouterait à l'ancienne.

Ce calendrier donne deux articles par mois, mais pas un intervalle strict de quinze jours : le passage du 16 au 1er varie selon la longueur du mois. Ne pas utiliser `*/15` dans le champ jour du mois : il peut aussi déclencher le 31.

Pour exactement quinze jours entre deux générations réussies, il faudrait ajouter un contrôle applicatif de la dernière génération, exécuté chaque jour par CRON, avec verrouillage contre les appels concurrents. Cette variante n'est pas implémentée.

La configuration CRON sur l'hébergement n'a pas été modifiée. Il s'agit de génération de brouillons ; la publication demeure manuelle. Le dossier éditorial doit toujours être révisé avant le 6 décembre 2026 pour que les générations suivantes soient autorisées.
