AgentIA_infos / README.md
Zkone's picture
Rename README (1).md to README.md
553ea0b verified
|
Raw
History Blame Contribute Delete
3.25 kB

A newer version of the Gradio SDK is available: 6.26.0

Upgrade
metadata
title: Veille CI
emoji: 🔎
colorFrom: green
colorTo: yellow
sdk: gradio
sdk_version: 5.0.0
app_file: app.py
pinned: false

Veille automatisée — Côte d'Ivoire (prototype gratuit)

Pipeline : recherche web → extraction du contenu → synthèse IA avec citations → cache local.

1. Obtenir les clés API gratuites (5 min)

Tavily (recherche web) — gratuit, 1000 requêtes/mois

  1. Aller sur https://tavily.com
  2. Créer un compte (gratuit, pas de carte bancaire requise)
  3. Copier la clé API depuis le dashboard

Google Gemini (synthèse IA) — gratuit, quota généreux (~1500 requêtes/jour)

  1. Aller sur https://aistudio.google.com/apikey
  2. Se connecter avec un compte Google
  3. Cliquer sur "Create API key"
  4. Copier la clé

2. Installation

cd veille-app
pip install -r requirements.txt

3. Configuration

export TAVILY_API_KEY="ta_cle_tavily"
export GEMINI_API_KEY="ta_cle_gemini"

(Sur Windows PowerShell : $env:TAVILY_API_KEY="ta_cle")

4. Lancer

python app.py

L'interface s'ouvre sur http://127.0.0.1:7860

5. Déploiement gratuit (optionnel)

Pour rendre l'app accessible en ligne, gratuitement :

  1. Créer un Hugging Face Space (type Gradio) : https://huggingface.co/new-space
  2. Uploader app.py et requirements.txt
  3. Ajouter TAVILY_API_KEY et GEMINI_API_KEY dans les "Secrets" du Space (Settings > Repository secrets)
  4. Le Space se déploie automatiquement

Comment ça marche

  1. Recherche : Tavily cherche les pages web récentes sur le thème + "Côte d'Ivoire", en priorisant certains domaines fiables (gouv.ci, aip.ci, fratmat.info, etc.) — modifiable dans DOMAINES_PRIORITAIRES en haut de app.py.
  2. Extraction : trafilatura nettoie chaque page pour ne garder que le texte utile (sans pubs, menus, etc.).
  3. Synthèse : Gemini reçoit les extraits numérotés et génère une synthèse structurée où chaque affirmation est reliée à sa source [1], [2], etc. Il évalue aussi la fiabilité des informations.
  4. Cache : chaque thème recherché est mis en cache 6h dans veille_cache.db (SQLite) pour éviter de repayer une recherche identique. Modifiable via CACHE_TTL_HOURS.

Limites connues de ce prototype

  • Certains sites ivoiriens bloquent le scraping ou ont un contenu mal structuré → trafilatura peut échouer à extraire le texte sur certaines pages (ce n'est pas grave, la source est simplement ignorée).
  • Le free tier Tavily (1000/mois) et Gemini (~1500/jour) sont largement suffisants pour un usage personnel ou une démo, mais à surveiller si tu ouvres l'accès à plusieurs utilisateurs.
  • Pas d'authentification utilisateur ni de limitation d'usage — à ajouter avant une mise en production publique.

Pistes d'amélioration

  • Ajouter des embeddings (Chroma) pour permettre une recherche sémantique dans l'historique des synthèses déjà générées.
  • Filtrer les résultats Tavily par date exacte (start_date/end_date dans l'API) plutôt que de compter sur la mention "2026" dans la requête.
  • Ajouter un export PDF de la synthèse.
  • Permettre à l'utilisateur de choisir la fenêtre temporelle (dernière semaine / mois / an).