En esta página se presenta un conjunto unificado de funciones para definir, guardar, recuperar y gestionar peticiones en tu proyecto de Google Cloud con el módulo de gestión de peticiones del SDK de Vertex AI.
Información general
Vertex AI ofrece herramientas para gestionar plantillas de peticiones y datos de peticiones. Las plantillas de peticiones se pueden versionar y usar con modelos generativos en Vertex AI. Cada petición se puede ensamblar y versionar en Vertex AI Studio o en el SDK de Vertex AI.
La gestión de peticiones en el SDK de Vertex AI incluye asistencia empresarial completa, como la compatibilidad con claves de cifrado gestionadas por el cliente (CMEK) y controles de servicio de VPC (VPC-SC).
Funciones de gestión de peticiones
Para usar cualquiera de las funciones de IA generativa del SDK de Vertex AI, haz lo siguiente:
Instala la versión más reciente del SDK de Vertex AI.
pip install --upgrade google-cloud-aiplatform
Crea un cliente de IA generativa con el siguiente código de ejemplo de Python:
import vertexai from vertexai import types # Instantiate GenAI client from Vertex SDK # Replace with your project ID and location client = vertexai.Client(project='my-project', location='my-location')
Una vez que hayas creado un cliente de IA generativa, podrás usar cualquiera de las siguientes funciones de gestión de peticiones en el SDK de Vertex AI:
- Crea una petición local.
- Guarda una petición en un Google Cloud proyecto.
- Obtener una petición guardada.
- Lista de peticiones y versiones.
- Eliminar una petición.
- Restaurar una versión de una petición.
Crear una petición local
En esta sección se muestra un ejemplo de cómo definir una variable types.Prompt
para usarla en toda la página.
La clase Prompt
se usa para definir, ensamblar y usar peticiones. El atributo prompt_data
se define para la clase Prompt
e incluye lo siguiente:
Atributo | |
---|---|
|
Obligatorio: el nombre del modelo. |
|
Obligatorio: el contenido de la conversación con el modelo. Solo se admiten peticiones de una sola interacción. |
|
Opcional: configuración de la generación |
|
Opcional: esta configuración se comparte con todas las herramientas proporcionadas en la solicitud. |
|
Opcional: una lista de |
|
Opcional: los ajustes de solicitud para bloquear contenido no seguro, que se aplican en |
|
Opcional: instrucciones del sistema proporcionadas por el usuario para el modelo. |
|
Opcional: Si tu petición contiene una variable de plantilla, proporciona los valores que se deben usar para esa variable. Por ejemplo, si el contenido del texto de la petición es "Hola, {name}". La lista de variables debe incluir un diccionario con todos los valores posibles de la variable "{name}". Ejemplo: "variables": [ {"name": {"text": "Alice"}}, {"name": {"text": "Bob"}}, ], |
En este ejemplo de código se muestra cómo definir una variable types.Prompt
.
import vertexai
from vertexai import types
from google.genai import types
prompt = types.Prompt(
prompt_data=types.PromptData(
contents=[genai_types.Content(parts=[genai_types.Part(text="Hello, {name}! How are you?")])],
variables=[
{"name": genai_types.Part(text="Alice")},
{"name": genai_types.Part(text="Bob")},
],
model="your-model",
),
)
Guardar una petición en un Google Cloud proyecto
En esta sección se muestran los parámetros y un ejemplo de cómo guardar una petición en un proyecto de Google Cloud .
Parámetros
En esta tabla se describen los parámetros que usa el método create
:
Parámetros | |
---|---|
|
Los datos de una petición concreta. |
|
Opcional: un objeto |
En esta tabla se describen los parámetros que usa el método create_version
:
Parámetros | |
---|---|
|
Obligatorio: los datos de una petición específica. |
|
Opcional: objeto |
El método create_version
devuelve un objeto Prompt
.
Ejemplo
Para guardar una petición en un proyecto de Google Cloud , usa los métodos client.prompts.create
y client.prompts.create_version
.
El método client.prompts.create
crea un recurso de petición en unGoogle Cloud proyecto. El método client.prompts.create_version
crea una versión de la petición en ese recurso, al que puedes acceder desde la consolaGoogle Cloud .
El método client.prompts.create
toma un objeto Prompt
como entrada y crea una petición en el proyecto Google Cloud . El método client.prompts.create_version
también requiere que se proporcione prompt_id
, que es el ID del recurso de petición que se va a usar para crear la versión. Se devuelve un nuevo objeto Prompt
, que está asociado al proyecto Google Cloud . Los cambios que se hagan en un objeto Prompt
son locales hasta que se llama a create
o create_version
.
En el siguiente ejemplo de código se muestra cómo guardar una petición y una versión de una petición:
# Save `Prompt` to a Google Cloud project.
# Returns a new `Prompt` object associated with the saved prompt resource.
prompt_resource = client.prompts.create(prompt=prompt)
prompt_version_resource = client.prompts.create_version(prompt=prompt, prompt_id=prompt_resource.prompt_id)
Obtener una petición guardada
En esta sección se muestran los parámetros y un ejemplo de cómo obtener una petición y una versión de la petición.
Hay dos métodos: client.prompts.get
y client.prompts.get_version
.
Parámetros
En esta tabla se describen los parámetros que usa el método client.prompts.get
:
Parámetros | |
---|---|
|
Obligatorio: ID de la petición que se va a recuperar. |
|
Opcional: objeto |
En esta tabla se describen los parámetros que usa el método client.prompts.get_version
:
Parámetros | |
---|---|
|
Obligatorio: ID de la petición que se va a recuperar. |
|
Obligatorio: el ID de la versión de la petición que quieres obtener. |
|
Opcional: objeto |
Los métodos get
y get_version
devuelven un Prompt
.
Ejemplos
Para obtener (cargar) una petición que se haya guardado en el proyecto Google Cloud , usa el método client.prompts.get
. Este método toma el ID de la petición como entrada y devuelve el objeto Prompt
correspondiente. En este ejemplo de código se muestra cómo cargar una petición guardada:
# Get prompt
retrieved_prompt = client.prompts.get(prompt_id=prompt_resource.prompt_id)
En el siguiente ejemplo de código se muestra cómo obtener una versión de una petición.
retrieved_prompt_version = client.prompts.get_version(prompt_id='your-prompt-id', version_id='your-prompt-version-id')
En el siguiente código se muestra cómo transformar tu petición para llamar a generate_content
en el SDK de IA generativa.
from google import genai
from google.genai import types as genai_types
genai_client = genai.Client(vertexai=True, project="my-project", location="my-location")
response = genai_client.models.generate_content(
model=retrieved_prompt.prompt_data.model,
contents=retrieved_prompt.assemble_contents(),
)
Mostrar peticiones y versiones
En esta sección se muestran los parámetros y un ejemplo de cómo enumerar las peticiones y las versiones de las peticiones.
Hay dos métodos: client.prompts.list
y client.prompts.list_versions
.
Parámetros
En esta tabla se describen los parámetros que usa el método list
:
Parámetros | |
---|---|
|
Opcional: un objeto |
En esta tabla se describen los parámetros que usa el método list_versions
:
Parámetros | |
---|---|
|
Obligatorio: ID de la petición para la que se van a enumerar las versiones. |
|
Opcional: un objeto |
Los métodos list
y list_versions
devuelven un Iterator
de objetos types.PromptRef
. El PromptRef
contiene una referencia a una petición.
Ejemplo
Para ver el ID y el modelo de todas las peticiones guardadas en tu proyecto de Google Cloud , usa el método list
.
En el siguiente ejemplo de código se muestra cómo obtener un PromptRef
de todas las peticiones guardadas del proyecto actual:
prompt_refs = list(client.prompts.list())
# Get a prompt from the list
prompt1 = client.prompts.get(prompt_id=prompt_refs[0].prompt_id)
En el siguiente ejemplo de código se muestra cómo obtener una lista de los IDs de las peticiones y de las versiones de todas las versiones de una petición guardadas en ella:
prompt_versions_metadata = client.prompts.list_versions(prompt_id="123456789")
# Get a specific prompt version from the versions metadata list
prompt1 = client.prompts.get_version(
prompt_id=prompt_versions_metadata[0].prompt_id,
version_id=prompt_versions_metadata[0].version_id
)
Eliminar una petición
En esta sección se muestran los parámetros y un ejemplo de cómo eliminar una petición.
Hay dos métodos: delete
y delete_version
.
Parámetros
En esta tabla se describen los parámetros que usa el método delete
:
Parámetros | |
---|---|
|
Es el ID de la petición que se va a eliminar. |
|
Opcional: un objeto |
En esta tabla se describen los parámetros que usa el método delete_version
:
Parámetros | |
---|---|
|
ID de la petición de la que se va a eliminar una versión. |
|
La versión de la petición que se va a eliminar. |
|
Opcional: objeto |
Ejemplos
Para eliminar una petición y todas sus versiones, usa el método delete
.
client.prompts.delete(prompt_id=retrieved_prompt.prompt_id)
Para eliminar una versión específica de un recurso de petición, usa el método delete_version
.
client.prompts.delete_version(prompt_id=retrieved_prompt.prompt_id, version_id='your-version-id')
Restaurar una versión de una petición
En esta sección se muestran los parámetros y un ejemplo de cómo restaurar una versión de una petición.
Parámetros
En esta tabla se describen los parámetros que usa el método restore_version
:
Parámetros | |
---|---|
|
El ID de una petición específica. |
|
La versión de la petición que se va a restaurar. |
|
Configuración para restaurar una versión de la petición. |
El método restore_version
devuelve un objeto Prompt
.
Ejemplo
Un recurso de petición también contiene un historial de versiones que almacena las versiones guardadas anteriores de la petición. Puedes usar el método restore_version()
para restaurar una versión anterior como la más reciente de la petición. Devuelve un objeto Prompt
.
# Restore to prompt version id 1
restored_prompt = client.prompts.restore_version(prompt_id=retrieved_prompt.prompt_id, version_id='1')
Siguientes pasos
- Para obtener más información sobre las peticiones que admiten llamadas a funciones, consulta el artículo Introducción a las llamadas a funciones.