Développer avec la CLI Gemini

Cette page explique comment interagir avec les données BigQuery dans votre terminal à l'aide de requêtes en langage naturel avec la CLI Gemini. L'utilisation des extensions BigQuery dédiées avec l'interface de ligne de commande Gemini permet d'analyser les données et d'obtenir des insights basés sur l'IA directement dans votre ligne de commande. Vous pouvez analyser les données de vos tables BigQuery ou de celles des ensembles de données publics BigQuery.

Ces extensions first party fournissent des outils courants pour l'analyse des données et les insights. Pour créer vos propres outils, consultez Utiliser BigQuery avec MCP, la Gemini CLI et d'autres agents.

À propos de la CLI Gemini et des extensions

La CLI Gemini est un agent d'IA conversationnelle open source de Google qui accélère les workflows de développement et aide à la programmation, au débogage, à l'exploration de données et à la création de contenu. Il offre une expérience basée sur des agents pour interagir avec les services Data Cloud, tels que BigQuery, et d'autres bases de données populaires Google Cloud et bases de données Open Source.

Pour en savoir plus sur la CLI Gemini, consultez la documentation sur la CLI Gemini.

Fonctionnement des extensions

Les extensions étendent les capacités de la CLI Gemini, lui permettant de se connecter à des services Google Cloud spécifiques et à d'autres outils, et de les contrôler. Les extensions fournissent à Gemini le contexte et la compréhension des API, ce qui permet une interaction conversationnelle. Vous pouvez charger les extensions à partir d'URL GitHub, de répertoires locaux ou de registres. Ces extensions proposent des outils, des commandes slash et des requêtes. Elles sont distinctes des extensions d'IDE, telles que Gemini Code Assist, qui s'intègrent à l'aide de la boîte à outils MCP.

À propos des extensions BigQuery

BigQuery propose les extensions suivantes pour utiliser les données BigQuery via l'interface de ligne de commande Gemini :

Extension BigQuery Data Analytics
Utilisez cette extension pour découvrir des données, en savoir plus sur les tables et les ensembles de données BigQuery, et poser des questions en langage naturel sur vos ensembles de données. Vous pouvez également générer des prévisions ou effectuer une analyse de contribution à l'aide d'outils avancés intégrés. Les outils de cette extension aident l'interface de ligne de commande Gemini à écrire des requêtes SQL en fonction de vos questions en langage naturel, puis à exécuter les requêtes pour y répondre.
Extension BigQuery Conversational Analytics
Utilisez cette extension pour obtenir des insights avancés à partir de vos données BigQuery à l'aide d'un agent d'analyse côté serveur pré-hébergé. Les outils de cette extension aident la CLI Gemini à envoyer votre question en langage naturel à un agent intégré et hébergé, et à répondre avec des insights plus approfondis à partir de vos données.

Outils d'analyse de données BigQuery

L'extension BigQuery Data Analytics fournit les outils suivants :

Catégorie Outil Exemple de requête en langage naturel
Informations sur les ensembles de données et les tables get_dataset_info Obtenir des informations sur l'ensemble de données my_dataset
get_table_info Obtenir des informations sur la table my_dataset.my_table
list_dataset_ids Répertorier tous les ensembles de données du projet my_project
list_table_ids Lister toutes les tables de l'ensemble de données my_dataset
Rechercher search_catalog Rechercher des tables liées aux téléchargements PyPi
Exécution SQL execute_sql En utilisant bigquery-public-data.pypi.file_downloads, montre-moi les 10 packages PyPI les plus téléchargés ce mois-ci.
Prévision de séries temporelles bigquery_forecast Prévoir les ventes pour 10 périodes à partir du tableau my_table
Analyse des contributions analyze_contribution Analyse de la contribution du pays aux revenus dans le tableau my_table

Outils Conversational Analytics

L'extension Conversational Analytics fournit les outils suivants :

Catégorie Outil Exemple de requête en langage naturel
Rechercher search_catalog Rechercher des tables liées aux téléchargements PyPi
Conversational Analytics ask_data_insights En utilisant ask_data_insights et les tables sous bigquery-public-data.google_analytics_sample , indique-moi les canaux sur lesquels je devrais me concentrer et pourquoi.

Avant de commencer

Avant de commencer, vous avez besoin des éléments suivants :

  • Accès à au moins un projet Google Cloud .
  • Pour l'extension Data Analytics, activez les API suivantes :

    • BigQuery
    • Pour utiliser l'outil search_catalog : Dataplex Universal Catalog
  • Pour l'extension Conversational Analytics, activez les API suivantes :

    • BigQuery
    • Dataplex Universal Catalog
    • Pour utiliser l'outil ask_data_insights : API Gemini pour Google Cloud, Gemini et API Data Analytics avec Gemini.

Rôles requis

Pour obtenir les autorisations nécessaires pour utiliser les extensions BigQuery avec l'interface de ligne de commande Gemini, demandez à votre administrateur de vous accorder les rôles IAM suivants sur les ressources Resource Manager (projets, dossiers et organisations) ou sur les ressources de niveau inférieur, comme les ensembles de données :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Installer les extensions BigQuery

Installez les extensions BigQuery, puis utilisez-les pour explorer et analyser vos données.

  1. Installez la CLI Gemini.

  2. Définissez les variables d'environnement pour vous connecter à votre projet BigQuery :

    export BIGQUERY_PROJECT="PROJECT_ID"
    

    Remplacez PROJECT_ID par l'ID du projet Google Cloud.

    Vous pouvez également définir les variables d'environnement facultatives suivantes :

    • BIGQUERY_LOCATION : emplacement de l'ensemble de données (par exemple, export BIGQUERY_LOCATION="us")
    • BIGQUERY_USE_CLIENT_OAUTH : indique si OAuth côté client doit être utilisé (par exemple, export BIGQUERY_USE_CLIENT_OAUTH=true)
  3. Installez l'extension BigQuery Data Analytics ou Conversational Analytics à l'aide de la commande gemini extension install :

    • Facultatif : installez l'extension BigQuery Data Analytics :

      gemini extensions install https://github.com/gemini-cli-extensions/bigquery-data-analytics
      
    • Facultatif : installez l'extension BigQuery Conversational Analytics :

      gemini extensions install https://github.com/gemini-cli-extensions/bigquery-conversational-analytics
      
  4. Lancez la CLI Gemini en mode interactif pour explorer et analyser vos données :

    gemini
    

    L'interface de ligne de commande charge automatiquement l'extension BigQuery et ses outils, que vous pouvez utiliser pour interagir avec vos données.

Exemples de requêtes pour explorer et analyser vos données

Saisissez des requêtes dans la CLI Gemini. Vous pouvez utiliser les exemples suivants pour vous lancer.

Explorer et analyser des tableaux

Les exemples de requêtes suivants vous permettent d'explorer et d'analyser vos tables.

  • Exemple de requête pour trouver des tables liées aux téléchargements PyPi :

    Find tables related to PyPi downloads
    

    Exemple de réponse

    La CLI Gemini renvoie une liste de tables associées :

    ✦ I found the following tables related to PyPi downloads:
    
        *   file_downloads: projects/bigquery-public-data/datasets/pypi/tables/file_downloads
        *   distribution_metadata: projects/bigquery-public-data/datasets/pypi/tables/distribution_metadata
    
  • Exemple de requête pour afficher les dix packages PyPI les plus téléchargés ce mois-ci :

    Using bigquery-public-data.pypi.file_downloads show me top 10
    downloaded pypi packages this month
    

    Exemple de réponse

    La CLI Gemini renvoie les 10 premiers packages :

    ✦ Here are the top 10 most downloaded PyPI packages this month:
    
        1.  boto3: 685,007,866 downloads
        2.  botocore: 531,034,851 downloads
        3.  urllib3: 512,611,825 downloads
        4.  requests: 464,595,806 downloads
        5.  typing-extensions: 459,505,780 downloads
        6.  certifi: 451,929,759 downloads
        7.  charset-normalizer: 428,716,731 downloads
        8.  idna: 409,262,986 downloads
        9.  grpcio-status: 402,535,938 downloads
        10. aiobotocore: 399,650,559 downloads
    

Obtenir des insights plus détaillés à l'aide de l'outil ask_data_insights

L'outil ask_data_insights déclenche un agent sur l'API BigQuery Conversational Analytics pour répondre à vos questions. L'agent côté serveur collecte des informations contextuelles supplémentaires sur vos données et fournit des insights plus précis.

  • Exemple de requête pour obtenir des insights sur les chaînes à privilégier :

    Using ask_data_insights and using the tables under
    bigquery-public-data.google_analytics_sample, tell me the channels I should
    focus on and why
    

    Exemple de réponse

    La CLI Gemini renvoie des recommandations basées sur l'analyse :

    Based on the analysis of the Google Analytics sample data, here are the
    channels you should focus on and why:
      ┌─────────────────┬──────────────┬─────────────────┬────────────────────┬───────────────┐
      │ Channel         │ Total Visits │ Total Pageviews │ Total Transactions │ Total Revenue │
      ├─────────────────┼──────────────┼─────────────────┼────────────────────┼───────────────┤
      │ Referral        │ 104,838      │ 707,597         │ 5,543              │ $651,429.91   │
      │ Direct          │ 143,026      │ 584,840         │ 2,219              │ $434,840.55   │
      │ Organic Search  │ 381,561      │ 1,569,218       │ 3,581              │ $326,380.51   │
      │ Display         │ 6,262        │ 34,202          │ 152                │ $78,337.46    │
      │ Paid Search     │ 25,326       │ 136,060         │ 479                │ $43,558.90    │
      │ Social          │ 226,117      │ 398,690         │ 131                │ $4,916.54     │
      │ Affiliates      │ 16,403       │ 47,417          │ 9                  │ $597.38       │
      │ (Other)         │ 120          │ 442             │ 1                  │ $9.99         │
      └─────────────────┴──────────────┴─────────────────┴────────────────────┴───────────────┘
    
      Recommendations:
    
        1.  Prioritize referral traffic:
            *   Why: This is a highly valuable channel. It brings in the most revenue and has a high number of transactions, despite not having the highest number of visits. This indicates that traffic from referrals is highly qualified and
              converts well.
            *   Action: Identify your top referring websites and build stronger relationships with them. Look for similar websites to partner with.
    
        2.  Nurture your direct traffic:
            *   Why: Direct traffic is your second-highest revenue source. These are likely returning customers or people who know your brand well.
    

Tarifs

L'utilisation des outils de métadonnées (tels que get_dataset_info, get_table_info, list_dataset_ids et list_table_ids) ou de l'outil search_catalog n'entraîne aucun coût supplémentaire.

Les outils qui exécutent des requêtes, y compris execute_sql, bigquery_forecast et analyze_contribution, sont facturés selon les tarifs à la demande de BigQuery ou les tarifs de capacité BigQuery, en fonction de la configuration de votre projet.

Pendant la version bêta (avant la version 1.0), l'outil ask_data_insights est proposé sans frais supplémentaires. Toutefois, toutes les requêtes BigQuery déclenchées par cet outil sont facturées selon la tarification BigQuery standard.

Étapes suivantes