Formation

RAG agentique avec ADK et BigQuery VECTOR_SEARCH

Stocker morceaux et embeddings dans une table BigQuery, chercher avec VECTOR_SEARCH combiné à des filtres SQL paramétrés, et confier à un agent ADK la décision de chercher, la reformulation et le choix des filtres, avec un budget de recherches et un nettoyage vérifié.

Expert 5 leçons 3h
Commencer la formation
Progression 0% · 0/5

Dans un RAG « classique », chaque question déclenche la même recherche avec le texte brut de la question. Un RAG agentique confie ces choix à un agent : faut-il chercher ? avec quels mots ? dans quelle catégorie ? faut-il réessayer autrement ? Ce lab le construit avec deux briques que beaucoup d'équipes ont déjà : BigQuery pour stocker et chercher, ADK pour l'agent.

Fil rouge : l'assistant documentaire de la société fictive Nimbus Conseil, avec un piège volontaire (deux versions de la politique de télétravail, 2024 et 2026) que seuls les filtres SQL résolvent proprement.

Pour qui ?

  • Développeurs Python à l'aise avec SQL et les embeddings.
  • Vous avez déjà écrit un agent ADK avec un outil (sinon : Construire un agent IA de A à Z).
  • Projet Google Cloud avec BigQuery et Vertex AI activés.

Architecture

flowchart TB
  subgraph Indexation["python bq_rag.py load"]
    MD["docs/*.md"] --> SP["split_sections"] --> EM["gemini-embedding-001 (768 dims, europe-west1)"]
    EM --> T[("BigQuery lab_rag_bq.chunks")]
  end
  subgraph Question["python agent.py ..."]
    U["Utilisateur"] --> AG["Agent ADK (gemini-2.5-flash)"]
    AG -->|"décide, reformule, filtre"| TOOL["rechercher_documents(requete, categorie, annee_min)"]
    TOOL --> QE["Embedding de la requête"] --> VS["VECTOR_SEARCH + WHERE paramétré"]
    VS --> T
    TOOL -->|"extraits + distance"| AG
    AG --> R["Réponse citée"]
  end

Prérequis

  • Python 3.10+, pip install -r files/requirements.txt, gcloud auth application-default login.
  • Région europe-west1 pour le dataset et pour les modèles (vérifié : gemini-2.5-flash et gemini-embedding-001 y répondent ; gemini-embedding-2 y renvoie 404).

Programme

ModuleLeçonDurée
1. Cas d'usage et architectureDu RAG classique au RAG agentique25 min
2. Construire pas à pasMorceaux et embeddings dans BigQuery35 min
VECTOR_SEARCH, filtres SQL et index40 min
L'agent ADK qui décide40 min
3. Tester et exploiterTester, évaluer, chiffrer et nettoyer40 min

En local ou sur GCP ?

En localSur GCP (ce lab)
pytest (découpage, SQL, outil, budget de recherches)Oui, sans réseau—
Embeddings, table, VECTOR_SEARCH, agent—Oui, Vertex AI + BigQuery
Coût0 €quelques centimes (≈ 120 Ko lus par recherche)

Code : bq_rag.py, agent.py, test_bq_rag.py, documents fictifs dans files/docs/.

Ressources

Tout télécharger (.zip)

Références