Desarrollar con la CLI de Gemini

En esta página se explica cómo interactuar con los datos de BigQuery en tu terminal mediante peticiones en lenguaje natural con la CLI de Gemini. Al usar las extensiones de BigQuery con la CLI de Gemini, puedes realizar análisis de datos basados en IA y obtener información valiosa directamente desde la línea de comandos. Puede analizar datos de sus tablas de BigQuery o de tablas de los conjuntos de datos públicos de BigQuery.

Estas extensiones propias proporcionan algunas herramientas habituales para el análisis de datos y las estadísticas. Para crear tus propias herramientas, consulta Usar BigQuery con MCP, la CLI de Gemini y otros agentes.

Acerca de Gemini CLI y las extensiones

Gemini CLI es un agente de IA conversacional de código abierto de Google que acelera los flujos de trabajo de desarrollo y ayuda con la programación, la depuración, la exploración de datos y la creación de contenido. Ofrece una experiencia basada en agentes para interactuar con los servicios de Data Cloud, como BigQuery, y otras bases de datos populares y de código abierto. Google Cloud

Para obtener más información sobre la CLI de Gemini, consulta la documentación de la CLI de Gemini.

Cómo funcionan las extensiones

Las extensiones amplían las funciones de la CLI de Gemini, lo que le permite conectarse a Google Cloud servicios y otras herramientas específicos y controlarlos. Las extensiones proporcionan a Gemini contexto y conocimiento de las APIs, lo que permite una interacción conversacional. Puedes cargar las extensiones desde URLs de GitHub, directorios locales o registros. Estas extensiones ofrecen herramientas, comandos de barra y peticiones. Estas extensiones son independientes de las extensiones de IDE, como Gemini Code Assist, que se integran mediante MCP Toolbox.

Acerca de las extensiones de BigQuery

BigQuery ofrece las siguientes extensiones para trabajar con datos de BigQuery a través de la CLI de Gemini:

Extensión BigQuery Data Analytics
Usa esta extensión para descubrir datos, obtener más información sobre las tablas y los conjuntos de datos de BigQuery, y hacer preguntas en lenguaje natural sobre tus conjuntos de datos. También puedes generar previsiones o hacer un análisis de contribución con las herramientas avanzadas integradas. Las herramientas de esta extensión ayudan a Gemini CLI a escribir consultas SQL basadas en tus preguntas en lenguaje natural y, a continuación, ejecutan las consultas para responder a tus preguntas.
Extensión Conversational Analytics de BigQuery
Usa esta extensión para obtener estadísticas avanzadas de tus datos de BigQuery con un agente de analíticas alojado previamente en el servidor. Las herramientas de esta extensión ayudan a la CLI de Gemini a enviar tu pregunta en lenguaje natural a un agente alojado integrado y a responder con información más detallada sobre tus datos.

Herramientas de analíticas de datos de BigQuery

La extensión BigQuery Data Analytics proporciona las siguientes herramientas:

Categoría Herramienta Ejemplo de petición en lenguaje natural
Información de conjuntos de datos y tablas get_dataset_info Obtener información sobre el conjunto de datos my_dataset
get_table_info Obtener información sobre la tabla my_dataset.my_table
list_dataset_ids Mostrar todos los conjuntos de datos del proyecto my_project
list_table_ids Mostrar todas las tablas del conjunto de datos my_dataset
Buscar search_catalog Buscar tablas relacionadas con las descargas de PyPi
Ejecución de SQL execute_sql Usando bigquery-public-data.pypi.file_downloads, muéstrame los 10 paquetes de pypi más descargados este mes
Previsión de series temporales bigquery_forecast Previsión de ventas de 10 periodos de la tabla my_table
Análisis de contribución analyze_contribution Analiza la contribución de un país a los ingresos en la tabla my_table

Herramientas de Conversational Analytics

La extensión Analíticas conversacionales proporciona las siguientes herramientas:

Categoría Herramienta Ejemplo de petición en lenguaje natural
Buscar search_catalog Buscar tablas relacionadas con las descargas de PyPi
Análisis Conversacional ask_data_insights Usando ask_data_insights y las tablas de bigquery-public-data.google_analytics_sample , dime en qué canales debería centrarme y por qué.

Antes de empezar

Antes de empezar, necesitas lo siguiente:

  • Acceso a al menos un proyecto de Google Cloud .
  • En el caso de la extensión Data Analytics, habilita las siguientes APIs:

    • BigQuery
    • Para usar la herramienta search_catalog: Dataplex Universal Catalog
  • En la extensión Conversational Analytics, habilita las siguientes APIs:

    • BigQuery
    • Dataplex Universal Catalog
    • Para usar la herramienta ask_data_insights: API Gemini for Google Cloud, Gemini y API Data Analytics con Gemini.

Roles obligatorios

Para obtener los permisos que necesitas para usar las extensiones de BigQuery con la CLI de Gemini, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en los recursos de Resource Manager (proyectos, carpetas y organizaciones) o en recursos de nivel inferior, como conjuntos de datos:

Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

Instalar las extensiones de BigQuery

Instala las extensiones de BigQuery y úsalas para explorar y analizar tus datos.

  1. Instala la CLI de Gemini.

  2. Define las variables de entorno para conectarte a tu proyecto de BigQuery:

    export BIGQUERY_PROJECT="PROJECT_ID"
    

    Sustituye PROJECT_ID por el ID de tu proyecto. Google Cloud

    También puedes definir estas variables de entorno opcionales:

    • BIGQUERY_LOCATION: la ubicación del conjunto de datos. Por ejemplo: export BIGQUERY_LOCATION="us"
    • BIGQUERY_USE_CLIENT_OAUTH: indica si se debe usar OAuth del lado del cliente. Por ejemplo, export BIGQUERY_USE_CLIENT_OAUTH=true.
  3. Instala la extensión BigQuery Data Analytics o Conversational Analytics con el comando gemini extension install:

    • Opcional: instala la extensión BigQuery Data Analytics:

      gemini extensions install https://github.com/gemini-cli-extensions/bigquery-data-analytics
      
    • Opcional: instala la extensión BigQuery Conversational Analytics:

      gemini extensions install https://github.com/gemini-cli-extensions/bigquery-conversational-analytics
      
  4. Inicia la CLI de Gemini en modo interactivo para explorar y analizar tus datos:

    gemini
    

    La CLI carga automáticamente la extensión de BigQuery y sus herramientas, que puedes usar para interactuar con tus datos.

Ejemplos de peticiones para explorar y analizar datos

Introduce peticiones en la interfaz de línea de comandos de Gemini. Puedes usar los siguientes ejemplos para empezar.

Consultar y analizar tablas

Con las siguientes peticiones de ejemplo, puedes explorar y analizar tus tablas.

  • Petición de ejemplo para buscar tablas relacionadas con las descargas de PyPi:

    Find tables related to PyPi downloads
    

    Respuesta de ejemplo

    La CLI de Gemini devuelve una lista de tablas relacionadas:

    ✦ 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
    
  • Petición de ejemplo para mostrar los diez paquetes de PyPI más descargados este mes:

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

    Respuesta de ejemplo

    La CLI de Gemini devuelve los 10 paquetes principales:

    ✦ 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
    

Obtener estadísticas más detalladas con la herramienta ask_data_insights

La herramienta ask_data_insights activa un agente en la API Conversational Analytics de BigQuery para responder a tus preguntas. El agente del lado del servidor recoge información adicional sobre tus datos y ofrece más estadísticas.

  • Petición de ejemplo para obtener información valiosa sobre los canales en los que centrarse:

    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
    

    Respuesta de ejemplo

    Gemini CLI devuelve recomendaciones basadas en el análisis:

    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.
    

Precios

No hay ningún coste adicional por usar las herramientas de metadatos (como get_dataset_info, get_table_info, list_dataset_ids y list_table_ids) ni la herramienta search_catalog.

Las herramientas que ejecutan consultas, como execute_sql, bigquery_forecast y analyze_contribution, se facturan según los precios bajo demanda de BigQuery o los precios por capacidad de BigQuery, en función de la configuración de tu proyecto.

Durante la fase beta (antes de la versión 1.0), la herramienta ask_data_insights se ofrece sin coste adicional. Sin embargo, las consultas de BigQuery que active esta herramienta se facturarán según los precios estándar de BigQuery.

Siguientes pasos