L'Almanach Médiéval (IA + automatisation)

L'Almanach Médiéval (IA + automatisation)

Depuis tout petit je suis passionné par le Moyen-Âge, les chevaliers, les épées et l'histoire de France. ⚔️🇫🇷
Aussi, j'avais envie de créer un petit projet me permettant de progresser en automatisation et en IA. C'est pourquoi, j'ai le plaisir de vous présenter L'Almanach Médiéval.

Le projet

Le but du projet est de publier automatiquement un évènement médiéval accompagné d'une image généré par IA tous les jours en me basant sur la date d'aujourd'hui.
Si nous sommes le 11 octobre ? Alors je demande à l'IA de rechercher un évènement du Moyen-Âge qui a eu lieu un 11 octobre.

Comment ça marche exactement

Pour créer l'automatisation, j'ai voulu utiliser n8n car l'avantage principal est que c'est gratuit si self-hosted. Il a donc fallu que je trouve aussi une solution d'hébergement et pour ça, j'ai trouvé Fly.io. 100% de réduction de coût si on ne dépasse pas 5$ par mois de computing et étant donné l'usage que j'allais en faire, ça allait.

Je me suis confronté à plusieurs problèmes :
  • Installer n8n depuis une image Docker toute simple, ce n'est pas suffisant. Il faut aussi configurer les bonnes variables d'environnement pour que l'application puisse fonctionner sans problème.
  • En version gratuite, Fly.io ne permet pas d'avoir de disque dur. Il faut donc utiliser une base de données managée en ligne comme Supabase (et rajouter cette nouvelle couche dans les variables d'environnement et réussir à la configurer dans n8n)
  • Mon service Fly.io se mets en veille en cas d'inactivité (c'est bien pour économiser de l'énergie mais aussi pour alléger la facture). J'utilise donc un CRON Job depuis un autre service pour réveiller mon App juste avant le déclenchement de l'automatisation.

Une fois que tout est en place, il faut commencer la configuration de l'automatisation et préparer les différentes requêtes API nécessaires :

  • Gemini API pour rechercher un évènement, générer un prompt d'image et une description et puis évidemment générer une image. Ici, j'utilise le modèle Imagen 4.0 (le plus performant à l'heure actuelle).
  • Facebook Marketing API pour récupérer les access_token de page et d'application mais aussi pour publier sur Facebook et Instagram.

J'aimerais pouvoir publier sur d'autres plateformes comme Tiktok mais pour obtenir un accès à leur API c'est plus compliqué. Notamment car il faut créer un site internet pour l'application, prier pour obtenir les permissions nécessaires, justifier son usage et démontrer son utilité. Bref, je n'avais pas très envie de lancer dans de si gros efforts pour un si petit projet.

Le résultat vous intéresse ?


Chargement…

Technologies utilisées

n8nn8nGeminiGemini APISupabaseSupabaseFly.ioFly.io
Louis Demignot - Product, Data et Tech