Curso

Analyste financier multi-agents

Un système d'agents Google ADK qui lit trois rapports annuels PDF, extrait et contrôle les états financiers, calcule les ratios en Python, cite chaque signal d'alerte à la page et rédige un mémo vérifié, avec tableau de bord et évaluation.

Experto 7 lecciones 9h
Empezar el curso
Progreso 0% · 0/7

Este contenido aún no está traducido. Se muestra la versión original.

Un comité d'investissement reçoit trois rapports annuels de quatre-vingts pages chacun, le jeudi soir, pour une séance le lundi. Un analyste junior passe le week-end à recopier des tableaux dans un tableur, à recalculer des marges, à chercher dans les annexes la phrase sur le covenant. Les erreurs ne viennent pas de l'analyse : elles viennent de la recopie (une colonne 2024 prise pour 2025, des millions lus comme des milliers) et des citations approximatives que personne ne vérifie.

Ce projet automatise la partie mécanique et laisse le jugement à l'humain, avec une règle qui structure tout le code : le modèle transcrit, Python calcule. Gemini lit et recopie ; les contrôles comptables, les ratios, les alertes et la vérification des citations sont du code déterministe et testé.

Tableau de bord : indicateurs, marges, free cash-flow et ratios comparés des trois sociétés
Démonstration : clic sur un ratio, puis sur une citation, la page du PDF s'ouvre avec l'extrait surligné

Ce que vous livrez

LivrableContenuVérifié par
Corpus de test3 rapports PDF de 8 pages, avec pièges réels : unités en M€, colonnes inversées, page scannée, indicateur « ajusté »annotations de référence générées avec les PDF
Pipeline d'agentsworkflow ADK 2.10 : extracteur, lecteur de risques, rédacteur15 tests sans clé, dont le workflow complet avec un faux modèle
Calculs12 contrôles comptables, 16 ratios, 8 règles d'alertetests unitaires et écart nul avec la vérité terrain
Tableau de bordFastAPI, graphiques, ratios comparés, mémo, visionneuse de la page source avec surlignagecaptures Playwright de cette page
Évaluationexactitude champ par champ, cohérence des ratios, rappel des signaux, mémo vérifiémake e2e
Kit LinkedInpost, carrousel de 5 images, vidéo de 22 sfichiers dans files/linkedin/

Architecture

flowchart LR
  P["3 PDF"] --> C["charger : texte par page, pages scannées détectées"]
  C --> W["analyser_societe x3 en parallèle"]
  subgraph W["analyser_societe (une par rapport)"]
    E["Agent extracteur : sortie structurée"] --> K["Python : 12 contrôles comptables"]
    K -- "échec : relecture guidée" --> E
    K --> R["Python : ratios et alertes"]
    Q["Agent lecteur de risques"] --> V["Python : citation présente sur la page ?"]
    V -- "introuvable : une relecture" --> Q
  end
  W --> M["Agent rédacteur : mémo"]
  M --> G["Python : sources existantes, aucun nombre inventé"]
  G --> J["analyse.json"] --> D["Tableau de bord"]

Les trois agents ne communiquent jamais directement : chaque sortie de modèle passe par une vérification Python avant d'alimenter l'étape suivante.

Résultats mesurés le 2026-10-15

Mesuregemini-3.5-flash (clé d'API)gemini-2.5-flash (Vertex AI europe-west1)
Champs extraits exacts204/204204/204
Écart des ratios avec la vérité terrain0,00 %0,00 %
Signaux attendus retrouvés13/1313/13
Mémo vérifié (sources, nombres)ouioui
Durée, appels, jetons (entrée / sortie)76 s, 7 appels, 19 401 / 30 081114 s (séquentiel), 7 appels, 22 556 / 25 164

Le corpus est petit et construit pour l'exercice : ces chiffres prouvent que la chaîne fonctionne, pas qu'elle atteindra 100 % sur des rapports réels. La leçon 7 explique comment étendre l'évaluation.

Stack et coût

  • Google ADK 2.10 (google.adk.workflow : Workflow, nœuds de fonction, parallel_worker), Gemini par clé d'API ou Vertex AI.
  • pypdf (texte en mode layout), reportlab et Pillow (génération du corpus), FastAPI + Chart.js + pdf.js (tableau de bord), pytest, Playwright (captures).
  • Coût d'une analyse complète : environ 50 000 jetons, dont 60 % de jetons de réflexion. Au tarif public de gemini-2.5-flash (0,30 parmilliondejetonsenentreˊe,2,50par million de jetons en entrée, 2,50 en sortie), moins de 0,10 $. Aucune ressource Google Cloud n'est créée.

Prérequis

  • Python confirmé (asyncio, Pydantic), bases d'ADK (un agent, un outil, un runner).
  • Lecture d'un bilan et d'un compte de résultat : savoir ce que sont le BFR, la dette nette et l'EBITDA. Chaque ratio est défini quand il apparaît.
  • Une clé d'API Gemini, ou un projet Google Cloud avec Vertex AI activé.

Programme

ModuleLeçonCe qui marche à la fin
1. CadrerLe problème, le corpus et l'architecturemake test vert, 3 PDF générés
2. ExtraireLire un PDF financier sans se tromper de colonnepages lues, page scannée détectée
Extraction structurée et contrôles comptables204 champs extraits, 0 contrôle en échec
3. AnalyserRatios et alertes en Python16 ratios, alertes citant leur page
Signaux cités et mémo vérifiécitations vérifiées, mémo sans nombre inventé
4. LivrerLe workflow ADK et le tableau de bordmake run affiche le tableau de bord
Évaluation, coût et exploitationmake e2e : E2E OK, kit LinkedIn produit

Le dépôt complet est dans files/ : make setup, make test, make run, make e2e, make clean.

Kit de publicación para LinkedIn

La publicación, el carrusel y el vídeo de demo, listos para publicar cuando termines el proyecto.

La publicación

Post LinkedIn

À publier avec les 5 images carrousel-1.png à carrousel-5.png (format document ou images), ou avec demo.mp4 (22 s).


J'ai construit un analyste financier multi-agents avec Google ADK, et la règle la plus utile tient en une phrase : le modèle transcrit, Python calcule.

Le système lit trois rapports annuels PDF, extrait compte de résultat, bilan et flux de trésorerie, vérifie la cohérence comptable, calcule marges, ROE, levier, BFR et free cash-flow, relève les signaux d'alerte avec la page source, puis rédige un mémo où chaque nombre doit exister dans les faits calculés.

Mesuré le 15 octobre 2026, contre des annotations de référence :

  • 204 champs extraits sur 204 exacts ;
  • 0,00 % d'écart entre les ratios calculés et la vérité terrain ;
  • 13 signaux attendus sur 13 retrouvés, citations vérifiées mot pour mot ;
  • 7 appels au modèle, environ 50 000 jetons, 76 secondes.

Ce que j'ai appris en le cassant volontairement :

  1. Une page scannée sans lecture visuelle ne produit pas d'erreur. Le modèle a reconstitué un tableau des flux 2024 plausible : 9 champs faux, et tous les contrôles comptables au vert. Le contrôle de cohérence ne remplace pas la vérification que la donnée a été lue.

  2. Un modèle résume quand on lui demande de citer. Sur un essai, 4 citations sur 6 étaient des paraphrases. Une comparaison mot pour mot avec la page les écarte avant qu'elles n'arrivent dans le mémo.

Le corpus est petit (3 sociétés fictives, générées pour l'exercice) : ces chiffres valident la chaîne de traitement, pas un taux d'erreur en production.

Le code, les tests sans clé et le tableau de bord sont en accès libre dans la formation.

Outil pédagogique : sociétés et chiffres fictifs, ce n'est pas un conseil en investissement.

#GoogleADK #Gemini #IA #Finance #Agents

post.md

Recursos

Descargar todo (.zip)

Referencias