Administra los costos de BigQuery para los agentes de la API de Conversational Analytics

En esta página, se describe cómo supervisar y administrar los costos de BigQuery para tus agentes de la API de Conversational Analytics, que generan costos mediante la ejecución de consultas en tus datos de BigQuery. Puedes usar los siguientes métodos para controlar el gasto y evitar gastos inesperados:

Antes de comenzar

Antes de implementar los controles de costos que se describen en esta página, debes cumplir con los siguientes requisitos:

  • Debes tener un Google Cloud proyecto con la facturación habilitada.
  • Debes tener los permisos necesarios de Identity and Access Management (IAM) para administrar las cuotas y la facturación de tu Google Cloud proyecto.

Establece cuotas para proyectos y usuarios

Puedes establecer límites de gasto para un Google Cloud proyecto o para usuarios individuales aplicando cuotas estándar de BigQuery. Estos límites te ayudan a controlar los costos generales y evitar que los usuarios individuales gasten demasiado.

Para los agentes que podrían generar costos elevados, como un agente que se basa en una tabla muy grande o sin particiones, la práctica recomendada es aislar primero el agente en su propio proyecto dedicado. Luego, puedes aplicar una cuota a nivel del proyecto para limitar el costo diario máximo del proyecto, una cuota a nivel del usuario para garantizar el uso justo entre los usuarios o cuotas a nivel del proyecto y del usuario.

Configura un proyecto dedicado para tu agente

Para configurar un proyecto dedicado para tu agente o agentes de la API de Conversational Analytics, sigue estos pasos:

  1. En la Google Cloud consola, crea un proyecto Google Cloud nuevo. Este proyecto estará dedicado a tu agente o agentes.
  2. Asegúrate de que la facturación esté habilitada para el proyecto nuevo.
  3. Confirma que el agente esté configurado para usar este proyecto nuevo para la facturación. Cuando configures el agente, deberás especificar el ID del proyecto nuevo.

Establece una cuota para el proyecto

Después de configurar un proyecto dedicado Google Cloud , puedes aplicar una cuota para controlar los costos de todo el proyecto. Para establecer una cuota a nivel del proyecto, sigue estos pasos:

  1. En el Google Cloud proyecto de tu agente, navega a IAM y administración > Cuotas.

    Ir a Cuotas

  2. Filtra el servicio de la API de BigQuery y selecciona la cuota de Uso de consultas por día.

  3. Edita la cuota al límite diario elegido (por ejemplo, 10 TiB). Este límite crea una detención forzosa que impide que el proyecto exceda el costo diario especificado.

Establece una cuota para los usuarios

Para evitar que un usuario individual genere una factura grande, puedes establecer una cuota por usuario siguiendo estos pasos:

  1. En el Google Cloud proyecto de tu agente, navega a IAM y administración > Cuotas.

    Ir a Cuotas

  2. Filtra el servicio de la API de BigQuery y selecciona la cuota de Uso de consultas por día por usuario.

  3. Edita la cuota al límite diario elegido (por ejemplo, 1 TiB por usuario por día). Este límite garantiza que ningún usuario pueda consumir una cantidad excesiva de recursos.

Limita los costos de las consultas individuales

Para evitar que una consulta de un usuario individual genere una factura grande e inesperada, puedes establecer un límite de costo por consulta configurando el campo big_query_max_billed_bytes en las opciones de la fuente de datos de tu agente.

Antes de que el agente ejecute una consulta, realiza una ejecución de prueba para estimar el costo. Si los bytes estimados que se escanearán superan el valor de big_query_max_billed_bytes, la consulta falla sin incurrir en ningún cargo y el agente muestra un mensaje de error.

Puedes establecer el parámetro big_query_max_billed_bytes dentro de los campos published_context o staging_context cuando creas o configuras un agente con HTTP o con el SDK de Python. En el siguiente código JSON de muestra, se ilustra una solicitud que configura un límite de 100 MiB para un agente:

{
  "data_analytics_agent": {
    "published_context": {
      "system_instruction": "This agent provides information about street trees in San Francisco, including their species, location, and planting date.",
      "options": {
        "datasource": {
          "big_query_max_billed_bytes": "104857600"
        }
      },
      "datasource_references": {
        "bq": {
          "tableReferences": [
            {
              "projectId": "bigquery-public-data",
              "datasetId": "san_francisco",
              "tableId": "street_trees"
            }
          ]
        }
      }
    }
  }
}

En este ejemplo, el parámetro big_query_max_billed_bytes se establece en 104857600 bytes (100 MiB). Este valor establece un límite para cualquier consulta que ejecute el agente sample-agent-id en la tabla bigquery-public-data.san_francisco.street_trees de BigQuery.

Limitaciones

Ten en cuenta las siguientes limitaciones cuando administres los costos de tus agentes de la API de Conversational Analytics:

  • Estas herramientas de administración de costos solo se aplican a los proyectos que usan la facturación a pedido y no a los proyectos que usan reservas de ranuras.
  • No se admite la configuración de cuotas para agentes individuales. Como se describe en Establece cuotas para proyectos y usuarios, la práctica recomendada es aislar el agente en su propio proyecto y, luego, aplicar cuotas a nivel del proyecto o por usuario a ese proyecto.
  • No se admite el seguimiento de los costos de agentes individuales mediante el uso de etiquetas de BigQuery.