Usar modelos abiertos con el modelo como servicio (MaaS)

En este documento se describe cómo usar modelos abiertos a través de Model as a Service (MaaS) en Vertex AI. MaaS proporciona acceso sin servidor a modelos de código abierto y de partners seleccionados, lo que elimina la necesidad de aprovisionar o gestionar infraestructura.

Model Garden es una biblioteca centralizada de modelos de IA y aprendizaje automático de Google, partners de Google y modelos abiertos (de código abierto y con pesos abiertos), incluidos los modelos de MaaS. Model Garden ofrece varias formas de desplegar modelos disponibles en Vertex AI, incluidos los modelos de Hugging Face.

Para obtener más información sobre el MaaS, consulta la documentación sobre modelos de partners.

Antes de empezar

Para usar modelos de MaaS, debes habilitar la API Vertex AI en tuGoogle Cloud proyecto.

gcloud services enable aiplatform.googleapis.com

Habilitar la API del modelo

Para usar un modelo de MaaS, debes habilitar su API. Para ello, ve a la página del modelo en Model Garden. Algunos modelos disponibles a través de MaaS también se pueden implementar por cuenta propia. Las tarjetas de modelo de Model Garden de ambas ofertas son diferentes. La tarjeta de modelo de MaaS incluye API Service en su nombre.

Llamar al modelo con el SDK de Gen AI de Google para Python

En el siguiente ejemplo se llama al modelo Llama 3.3 mediante el SDK de IA generativa de Google para Python.

from google import genai
from google.genai import types

PROJECT_ID="PROJECT_ID"
LOCATION="LOCATION"
MODEL="meta/llama-3.3-70b-instruct-maas"  # The model ID from Model Garden with "API Service"

# Define the prompt to send to the model.
prompt = "What is the distance between earth and moon?"

# Initialize the Google Gen AI SDK client.
client = genai.Client(
    vertexai=True,
    project=PROJECT_ID,
    location=LOCATION,
)

# Prepare the content for the chat.
contents: types.ContentListUnion = [
    types.Content(
        role="user",
        parts=[
            types.Part.from_text(text=prompt)
        ]
    )
]

# Configure generation parameters.
generate_content_config = types.GenerateContentConfig(
    temperature = 0,
    top_p = 0,
    max_output_tokens = 4096,
)

try:
    # Create a chat instance with the specified model.
    chat = client.chats.create(model=MODEL)
    # Send the message and print the response.
    response = chat.send_message(contents)
    print(response.text)
except Exception as e:
    print(f"{MODEL} call failed due to {e}")

Siguientes pasos