genAI) te da acceso a los modelos de IA generativa de Google para varias modalidades (texto, código, imágenes y voz). Puedes probar y ajustar estos modelos de lenguaje extensos (LLMs) y, después, desplegarlos para usarlos en tus aplicaciones basadas en IA. Para obtener más información, consulta la información general sobre la IA generativa en Vertex AI.
Vertex AI tiene varios modelos fundacionales de IA generativa a los que se puede acceder a través de una API, incluidos los modelos que se usan en esta guía. Para obtener más información sobre cómo elegir un modelo, consulta Modelos de Google.
Cada modelo se expone a través de un endpoint de editor específico de tuGoogle Cloud proyecto, por lo que no es necesario implementar el modelo básico a menos que necesites ajustarlo para un caso práctico concreto. Puedes enviar una petición al endpoint publisher. Una petición es una solicitud en lenguaje natural que se envía a un LLM para obtener una respuesta.
En este tutorial se muestran flujos de trabajo que generan respuestas a partir de modelos de Vertex AI enviando peticiones de texto a los endpoints de editores mediante un conector de Workflows o una solicitud HTTP POST
. Para obtener más información, consulta la descripción general del conector de la API Vertex AI y el artículo sobre cómo hacer una solicitud HTTP.
Ten en cuenta que puedes implementar y ejecutar cada flujo de trabajo de forma independiente.
Desplegar un flujo de trabajo que describa una imagen
Despliega un flujo de trabajo que utilice un método de conector (generateContent
) para enviar una solicitud a un endpoint de un editor de modelos. El método admite la generación de contenido con entradas multimodales.
El flujo de trabajo proporciona una petición de texto y el URI de una imagen que está disponible públicamente en un segmento de Cloud Storage. Puedes ver la imagen y, en la Google Cloud consola, puedes ver los detalles del objeto.
El flujo de trabajo devuelve una descripción de la imagen a partir de la respuesta generada por el modelo.
Para obtener más información sobre los parámetros del cuerpo de la solicitud HTTP que se usan al pedirle algo al LLM y sobre los elementos del cuerpo de la respuesta, consulta la referencia de la API Gemini.
Consola
En la Google Cloud consola, ve a la página Flujos de trabajo.
Haz clic en
Crear.Escribe un nombre para el nuevo flujo de trabajo:
describe-image
.En la lista Región, selecciona us-central1 (Iowa).
En Cuenta de servicio, selecciona la cuenta de servicio que hayas creado anteriormente.
Haz clic en Siguiente.
En el editor del flujo de trabajo, introduce la siguiente definición para tu flujo de trabajo:
Haz clic en Desplegar.
gcloud
Crea un archivo de código fuente para tu flujo de trabajo:
touch describe-image.yaml
En un editor de texto, copia el siguiente flujo de trabajo en tu archivo de código fuente:
Para desplegar el flujo de trabajo, introduce el siguiente comando:
gcloud workflows deploy describe-image \ --source=describe-image.yaml \ --location=us-central1 \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ejecutar el flujo de trabajo
Al ejecutar un flujo de trabajo, se ejecuta la definición del flujo de trabajo actual asociada al flujo de trabajo.
Consola
En la Google Cloud consola, ve a la página Flujos de trabajo.
En la página Flujos de trabajo, selecciona el flujo de trabajo describe-image para ir a su página de detalles.
En la página Detalles del flujo de trabajo, haz clic en play_arrow Ejecutar.
En Entrada, introduce lo siguiente:
{"image_url":"gs://generativeai-downloads/images/scones.jpg"}
Vuelve a hacer clic en Ejecutar.
Consulta los resultados del flujo de trabajo en el panel Información.
La salida debería ser similar a la siguiente:
{ "image_description": "There are three pink peony flowers on the right side of the picture[]...]There is a white napkin on the table.", "image_url": "gs://generativeai-downloads/images/scones.jpg" }
gcloud
Abre la terminal.
Ejecuta el flujo de trabajo:
gcloud workflows run describe-image \ --data='{"image_url":"gs://generativeai-downloads/images/scones.jpg"}'
Los resultados de la ejecución deberían ser similares a los siguientes:
Waiting for execution [258b530e-a093-46d7-a4ff-cbf5392273c0] to complete...done. argument: '{"image_url":"gs://generativeai-downloads/images/scones.jpg"}' createTime: '2024-02-09T13:59:32.166409938Z' duration: 4.174708484s endTime: '2024-02-09T13:59:36.341118422Z' name: projects/1051295516635/locations/us-central1/workflows/describe-image/executions/258b530e-a093-46d7-a4ff-cbf5392273c0 result: "{\"image_description\":\"The picture shows a rustic table with a white surface,\ \ on which there are several scones with blueberries, as well as two cups of coffee\ [...] \ on the table. The background of the table is a dark blue color.\",\"image_url\"\ :\"gs://generativeai-downloads/images/scones.jpg\"}" startTime: '2024-02-09T13:59:32.166409938Z' state: SUCCEEDED
Desplegar un flujo de trabajo que genere historiales de países
Implementa un flujo de trabajo que recorre en paralelo una lista de países de entrada y usa un método de conector (generateContent
) para enviar una solicitud a un endpoint de un editor de modelos. El método admite la generación de contenido con entradas multimodales.
El flujo de trabajo devuelve los historiales de países generados por el modelo y los combina en un mapa.
Para obtener más información sobre los parámetros del cuerpo de la solicitud HTTP que se usan al pedirle algo al LLM y sobre los elementos del cuerpo de la respuesta, consulta la referencia de la API Gemini.
Consola
En la Google Cloud consola, ve a la página Flujos de trabajo.
Haz clic en
Crear.Escribe un nombre para el nuevo flujo de trabajo:
gemini-pro-country-histories
.En la lista Región, selecciona us-central1 (Iowa).
En Cuenta de servicio, selecciona la cuenta de servicio que hayas creado anteriormente.
Haz clic en Siguiente.
En el editor del flujo de trabajo, introduce la siguiente definición para tu flujo de trabajo:
Haz clic en Desplegar.
gcloud
Crea un archivo de código fuente para tu flujo de trabajo:
touch gemini-pro-country-histories.yaml
En un editor de texto, copia el siguiente flujo de trabajo en tu archivo de código fuente:
Para desplegar el flujo de trabajo, introduce el siguiente comando:
gcloud workflows deploy gemini-pro-country-histories \ --source=gemini-pro-country-histories.yaml \ --location=us-central1 \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ejecutar el flujo de trabajo
Al ejecutar un flujo de trabajo, se ejecuta la definición del flujo de trabajo actual asociada al flujo de trabajo.
Consola
En la Google Cloud consola, ve a la página Flujos de trabajo.
En la página Flujos de trabajo, selecciona el flujo de trabajo gemini-pro-country-histories para ir a su página de detalles.
En la página Detalles del flujo de trabajo, haz clic en play_arrow Ejecutar.
En Entrada, introduce lo siguiente:
{"countries":["Argentina", "Bhutan", "Cyprus", "Denmark", "Ethiopia"]}
Vuelve a hacer clic en Ejecutar.
Consulta los resultados del flujo de trabajo en el panel Información.
La salida debería ser similar a la siguiente:
{ "Argentina": "The history of Argentina is a complex and fascinating one, marked by periods of prosperity and decline, political [...] "Bhutan": "The history of Bhutan is a rich and fascinating one, dating back to the 7th century AD. Here is a brief overview: [...] "Cyprus": "The history of Cyprus is a long and complex one, spanning over 10,000 years. The island has been ruled by a succession [...] "Denmark": "1. **Prehistory and Early History (c. 12,000 BC - 800 AD)**\\n - The earliest evidence of human habitation in Denmark [...] "Ethiopia": "The history of Ethiopia is a long and complex one, stretching back to the earliest human civilizations. The country is [...] }
gcloud
Abre la terminal.
Ejecuta el flujo de trabajo:
gcloud workflows run gemini-pro-country-histories \ --data='{"countries":["Argentina", "Bhutan", "Cyprus", "Denmark", "Ethiopia"]}' \ --location=us-central1
Los resultados de la ejecución deberían ser similares a los siguientes:
Waiting for execution [7ae1ccf1-29b7-4c2c-99ec-7a12ae289391] to complete...done. argument: '{"countries":["Argentina","Bhutan","Cyprus","Denmark","Ethiopia"]}' createTime: '2024-02-09T16:25:16.742349156Z' duration: 12.075968673s endTime: '2024-02-09T16:25:28.818317829Z' name: projects/1051295516635/locations/us-central1/workflows/gemini-pro-country-histories/executions/7ae1ccf1-29b7-4c2c-99ec-7a12ae289391 result: "{\"Argentina\":\"The history of Argentina can be traced back to the arrival\ [...] n* 2015: Argentina elects Mauricio Macri as president.\",\"Bhutan\":\"The history\ [...] \ natural beauty, ancient monasteries, and friendly people.\",\"Cyprus\":\"The history\ [...] ,\"Denmark\":\"The history of Denmark can be traced back to the Stone Age, with\ [...] \ a high standard of living.\",\"Ethiopia\":\"The history of Ethiopia is long and\ [...] startTime: '2024-02-09T16:25:16.742349156Z' state: SUCCEEDED
Desplegar un flujo de trabajo que resuma un documento extenso
Implementa un flujo de trabajo que divida un documento grande en partes más pequeñas y haga solicitudes http.post
a un endpoint de un editor de modelos en paralelo para que el modelo pueda resumir cada parte simultáneamente. Por último, el flujo de trabajo combina todos los resúmenes parciales en uno completo.
Para obtener más información sobre los parámetros del cuerpo de la solicitud HTTP que se usan al pedirle algo al LLM y sobre los elementos del cuerpo de la respuesta, consulta la referencia de la API Gemini.
La definición del flujo de trabajo presupone que has creado un segmento de Cloud Storage en el que puedes subir un archivo de texto. Para obtener más información sobre el conector de Workflows (googleapis.storage.v1.objects.get
) que se usa para recuperar objetos del segmento de Cloud Storage, consulta la referencia de conectores.
Una vez que hayas implementado el flujo de trabajo, podrás ejecutarlo creando un activador de Eventarc adecuado y, a continuación, subiendo un archivo al bucket. Para obtener más información, consulta Dirigir eventos de Cloud Storage a Workflows.
Ten en cuenta que se deben habilitar APIs adicionales y conceder roles adicionales, incluido el rol de usuario de objeto de almacenamiento (roles/storage.objectUser
) a tu cuenta de servicio, que permite usar objetos de Cloud Storage. Para obtener más información, consulta la sección Prepararse para crear un activador.
Consola
En la Google Cloud consola, ve a la página Flujos de trabajo.
Haz clic en
Crear.Escribe un nombre para el nuevo flujo de trabajo:
gemini-pro-summaries
.En la lista Región, selecciona us-central1 (Iowa).
En Cuenta de servicio, selecciona la cuenta de servicio que hayas creado anteriormente.
Haz clic en Siguiente.
En el editor del flujo de trabajo, introduce la siguiente definición para tu flujo de trabajo:
Haz clic en Desplegar.
gcloud
Crea un archivo de código fuente para tu flujo de trabajo:
touch gemini-pro-summaries.yaml
En un editor de texto, copia el siguiente flujo de trabajo en tu archivo de código fuente:
Para desplegar el flujo de trabajo, introduce el siguiente comando:
gcloud workflows deploy gemini-pro-summaries \ --source=gemini-pro-summaries.yaml \ --location=us-central1 \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com