Prueba la API de Gemini de Vertex AI

En esta página, se muestra cómo comenzar a enviar solicitudes a la API de Vertex AI Gemini rápidamente a través de la consola de Google Cloud, un SDK de lenguaje de programación o la API de REST.

¿Eres nuevo en Google Cloud?

Prepárate en Google Cloud

Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos obtienen $300 en créditos gratuitos para ejecutar, probar e implementar cargas de trabajo. El proceso de configuración consta solo de tres pasos cortos:

Registra capturas de pantalla

Usa el siguiente botón para crear una cuenta. Cuando termines, regresa a esta página que te permitirá completar este instructivo para principiantes. Para usar todas las funciones disponibles en este sitio, accede con tu cuenta.

Cómo crear una cuenta

Para obtener más información sobre la configuración en Google Cloud, consulta Prepárate en Google Cloud.

Envía una solicitud a la API de Gemini de Vertex AI

Si deseas ver las instrucciones para enviar una solicitud a la API de Vertex Gemini de Vertex AI, selecciona una de las siguientes pestañas:

Python

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:
    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, selecciona un proyecto.

    3. Anota el ID del proyecto que se muestra en la sección Información del proyecto. Necesitarás el ID del proyecto para los pasos posteriores.
  2. En la consola de Google Cloud, activa Cloud Shell.

    Activar Cloud Shell

    En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

  3. En Cloud Shell, instala o actualiza el SDK de Vertex AI para Python mediante la ejecución del siguiente comando:

    pip3 install "google-cloud-aiplatform>=1.38"
    
  4. Envía una solicitud de instrucción. Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud.

    # TODO(developer): Vertex AI SDK - uncomment below & run
    # pip3 install --upgrade --user google-cloud-aiplatform
    # gcloud auth application-default login
    
    import vertexai
    from vertexai.generative_models import GenerativeModel, Part
    
    # Initialize Vertex AI
    vertexai.init(project=project_id, location=location)
    # Load the model
    multimodal_model = GenerativeModel(model_name="gemini-1.0-pro-vision-001")
    # Query the model
    response = multimodal_model.generate_content(
        [
            # Add an example image
            Part.from_uri(
                "gs://generativeai-downloads/images/scones.jpg", mime_type="image/jpeg"
            ),
            # Add an example query
            "what is shown in this image?",
        ]
    )
    print(response)
    return response.text
    
    

    Si deseas obtener más información acerca de cómo instalar, actualizar y usar el SDK de Vertex AI para Python, consulta Instala el SDK de Vertex AI para Python y la Documentación de referencia del SDK de Vertex AI para la API de Python..

Node.js

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:
    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, selecciona un proyecto.

    3. Anota el ID del proyecto que se muestra en la sección Información del proyecto. Necesitarás el ID del proyecto para los pasos posteriores.
  2. En la consola de Google Cloud, activa Cloud Shell.

    Activar Cloud Shell

    En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

  3. En Cloud Shell, instala o actualiza el SDK de Vertex AI para Node.js mediante la ejecución del siguiente comando:

    npm install @google-cloud/vertexai
    
  4. Envía una solicitud de instrucción. Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud.

    const {VertexAI} = require('@google-cloud/vertexai');
    
    /**
     * TODO(developer): Update these variables before running the sample.
     */
    async function createNonStreamingMultipartContent(
      projectId = 'PROJECT_ID',
      location = 'us-central1',
      model = 'gemini-1.0-pro-vision',
      image = 'gs://generativeai-downloads/images/scones.jpg',
      mimeType = 'image/jpeg'
    ) {
      // Initialize Vertex with your Cloud project and location
      const vertexAI = new VertexAI({project: projectId, location: location});
    
      // Instantiate the model
      const generativeVisionModel = vertexAI.getGenerativeModel({
        model: model,
      });
    
      // For images, the SDK supports both Google Cloud Storage URI and base64 strings
      const filePart = {
        fileData: {
          fileUri: image,
          mimeType: mimeType,
        },
      };
    
      const textPart = {
        text: 'what is shown in this image?',
      };
    
      const request = {
        contents: [{role: 'user', parts: [filePart, textPart]}],
      };
    
      console.log('Prompt Text:');
      console.log(request.contents[0].parts[1].text);
    
      console.log('Non-Streaming Response Text:');
      // Create the response stream
      const responseStream =
        await generativeVisionModel.generateContentStream(request);
    
      // Wait for the response stream to complete
      const aggregatedResponse = await responseStream.response;
    
      // Select the text from the response
      const fullTextResponse =
        aggregatedResponse.candidates[0].content.parts[0].text;
    
      console.log(fullTextResponse);
    }

    Si quieres obtener más información sobre cómo instalar y usar el SDK de Vertex AI para Node.js, consulta la documentación de referencia del SDK de Vertex AI para Node.js.

Java

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:

    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, elige un proyecto.

    3. Anota el ID del proyecto que se muestra en la sección Información del proyecto. Necesitarás el ID del proyecto para los pasos posteriores.

  2. Configura tu entorno de desarrollo de Java.

  3. Realiza la autenticación mediante la ejecución del siguiente comando. Reemplaza PROJECT_ID por tu ID del proyecto de Google Cloud y ACCOUNT por tu nombre de usuario de Google Cloud.

    gcloud config set project PROJECT_ID &&
    gcloud auth login ACCOUNT
    
  4. Agrega google-cloud-vertexai como tu dependencia:

    <!--If you are using Maven with BOM, add the following in your pom.xml-->
    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>com.google.cloud</groupId>
          <artifactId>libraries-bom</artifactId>
          <version>26.32.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.google.cloud</groupId>
        <artifactId>google-cloud-vertexai</artifactId>
      </dependency>
    </dependencies>
    
    <!--If you are using Maven without BOM, add the following to your pom.xml-->
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>google-cloud-vertexai</artifactId>
      <version>0.4.0</version>
    </dependency>
    
    <!--If you are using Gradle without BOM, add the following to your build.gradle-->
    implementation 'com.google.cloud:google-cloud-vertexai:0.4.0'
    
  5. Envía una solicitud de instrucción. Establece projectID como el ID de tu proyecto de Google Cloud.

    import com.google.cloud.vertexai.VertexAI;
    import com.google.cloud.vertexai.api.GenerateContentResponse;
    import com.google.cloud.vertexai.generativeai.ContentMaker;
    import com.google.cloud.vertexai.generativeai.GenerativeModel;
    import com.google.cloud.vertexai.generativeai.PartMaker;
    import java.io.IOException;
    
    public class Quickstart {
    
      public static void main(String[] args) throws IOException {
        // TODO(developer): Replace these variables before running the sample.
        String projectId = "your-google-cloud-project-id";
        String location = "us-central1";
        String modelName = "gemini-1.0-pro-vision";
    
        String output = quickstart(projectId, location, modelName);
        System.out.println(output);
      }
    
      // Analyzes the provided Multimodal input.
      public static String quickstart(String projectId, String location, String modelName)
          throws IOException {
        // Initialize client that will be used to send requests. This client only needs
        // to be created once, and can be reused for multiple requests.
        try (VertexAI vertexAI = new VertexAI(projectId, location)) {
          String imageUri = "gs://cloud-samples-data/vertex-ai/llm/prompts/landmark1.png";
    
          GenerativeModel model = new GenerativeModel(modelName, vertexAI);
          GenerateContentResponse response = model.generateContent(ContentMaker.fromMultiModalData(
              PartMaker.fromMimeTypeAndData("image/png", imageUri),
              "What's in this photo"
          ));
    
          return response.toString();
        }
      }
    }

    Para obtener más información sobre cómo instalar y usar el kit de desarrollo de Java (JDK) de Vertex AI, consulta la documentación de referencia del JDK de Vertex AI.

Go

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:
    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, selecciona un proyecto.

    3. Anota el ID del proyecto que se muestra en la sección Información del proyecto. Necesitarás el ID del proyecto para los pasos posteriores.
  2. Prepara tu entorno para el desarrollo en Go.
  3. Revisa los paquetes disponibles de Go de la API de Vertex AI para determinar qué paquete se adapta mejor a las necesidades de tu proyecto:

    • Paquete cloud.google.com/go/vertexai (recomendado)

      vertexai es un paquete creado por personas que proporciona acceso a capacidades y funciones comunes.

      Se recomienda este paquete como punto de partida para la mayoría de los desarrolladores que compilan con la API de Vertex AI. Para acceder a las capacidades y funciones que aún no se incluyen en este paquete, usa el aiplatform generado de forma automática.

    • Paquete cloud.google.com/go/aiplatform

      aiplatform es un paquete generado de forma automática.

      Este paquete está diseñado para proyectos que requieren acceso a capacidades y funciones de la API de Vertex AI que aún no proporciona el paquete vertexai creado por personas.

  4. Instala el paquete de Go deseado según las necesidades de tu proyecto a través de la ejecución de uno de los siguientes comandos:

    # Human authored package. Recommended for most developers.
    go get cloud.google.com/go/vertexai
    
    # Auto-generated package. go get cloud.google.com/go/aiplatform
  5. Envía una solicitud de instrucción. Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud.

    import (
    	"context"
    	"encoding/json"
    	"fmt"
    	"io"
    
    	"cloud.google.com/go/vertexai/genai"
    )
    
    func tryGemini(w io.Writer, projectID string, location string, modelName string) error {
    	// location := "us-central1"
    	// modelName := "gemini-1.0-pro-vision-001"
    
    	ctx := context.Background()
    	client, err := genai.NewClient(ctx, projectID, location)
    	if err != nil {
    		return fmt.Errorf("error creating client: %w", err)
    	}
    	gemini := client.GenerativeModel(modelName)
    
    	img := genai.FileData{
    		MIMEType: "image/jpeg",
    		FileURI:  "gs://generativeai-downloads/images/scones.jpg",
    	}
    	prompt := genai.Text("What is in this image?")
    
    	resp, err := gemini.GenerateContent(ctx, img, prompt)
    	if err != nil {
    		return fmt.Errorf("error generating content: %w", err)
    	}
    	rb, err := json.MarshalIndent(resp, "", "  ")
    	if err != nil {
    		return fmt.Errorf("json.MarshalIndent: %w", err)
    	}
    	fmt.Fprintln(w, string(rb))
    	return nil
    }
    

    Si deseas obtener más información sobre cómo instalar y usar el SDK de Vertex AI para Go, consulta la documentación de referencia del SDK de Vertex AI para Go.

C#

Antes de probar este ejemplo, sigue las instrucciones de configuración para C# incluidas en la guía de inicio rápido de Vertex AI sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Vertex AI C#.

Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


using Google.Api.Gax.Grpc;
using Google.Cloud.AIPlatform.V1;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

public class GeminiQuickstart
{
    public async Task<string> GenerateContent(
        string projectId = "your-project-id",
        string location = "us-central1",
        string publisher = "google",
        string model = "gemini-1.0-pro-vision"
    )
    {
        // Create client
        var predictionServiceClient = new PredictionServiceClientBuilder
        {
            Endpoint = $"{location}-aiplatform.googleapis.com"
        }.Build();

        // Prompt
        string prompt = "What's in this photo";
        string imageUri = "gs://generativeai-downloads/images/scones.jpg";

        // Initialize request argument(s)
        var content = new Content
        {
            Role = "USER"
        };
        content.Parts.AddRange(new List<Part>()
        {
            new() {
                Text = prompt
            },
            new() {
                FileData = new() {
                    MimeType = "image/png",
                    FileUri = imageUri
                }
            }
        });

        var generateContentRequest = new GenerateContentRequest
        {
            Model = $"projects/{projectId}/locations/{location}/publishers/{publisher}/models/{model}",
            GenerationConfig = new GenerationConfig
            {
                Temperature = 0.4f,
                TopP = 1,
                TopK = 32,
                MaxOutputTokens = 2048
            }
        };
        generateContentRequest.Contents.Add(content);

        // Make the request, returning a streaming response
        using PredictionServiceClient.StreamGenerateContentStream response = predictionServiceClient.StreamGenerateContent(generateContentRequest);

        StringBuilder fullText = new();

        // Read streaming responses from server until complete
        AsyncResponseStream<GenerateContentResponse> responseStream = response.GetResponseStream();
        await foreach (GenerateContentResponse responseItem in responseStream)
        {
            fullText.Append(responseItem.Candidates[0].Content.Parts[0].Text);
        }

        return fullText.ToString();
    }
}

REST

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:

    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, elige un proyecto.

    3. Anota el ID del proyecto que se muestra en la sección Información del proyecto. Necesitarás el ID del proyecto para los pasos posteriores.

  2. En la consola de Google Cloud, activa Cloud Shell.

    Activar Cloud Shell

  3. Ingresa lo siguiente para configurar las variables de entorno. Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud.

    MODEL_ID="gemini-1.0-pro-vision"
    PROJECT_ID="PROJECT_ID"
    
  4. Aprovisiona el extremo:

    gcloud beta services identity create --service=aiplatform.googleapis.com --project=PROJECT_ID
    
  5. Ingresa el siguiente comando curl para enviar una solicitud de instrucción:

    curl \
    -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json" \
    https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:streamGenerateContent -d \
    $'{
      "contents": {
        "role": "user",
        "parts": [
          {
          "fileData": {
            "mimeType": "image/jpeg",
            "fileUri": "gs://generativeai-downloads/images/scones.jpg"
            }
          },
          {
            "text": "Describe this picture."
          }
        ]
      }
    }'
    
  6. Si se te solicita que autorices Cloud Shell, haz clic en Autorizar.

    El modelo muestra una respuesta. Ten en cuenta que la respuesta se genera en secciones y cada sección se evalúa por separado para garantizar la seguridad.

Console

Usa Generative AI Studio para iterar y diseñar con rapidez tus mensajes. Cuando el mensaje esté listo, puedes obtener el código del mensaje en cualquiera de los lenguajes de programación compatibles.

  1. Para seleccionar un proyecto de Google Cloud, haz lo siguiente:
    1. En la consola de Google Cloud, ve a la página Panel.

      Ir a la página Panel

    2. Haz clic en la lista de selección de proyectos en la parte superior de la página. En la ventana Select a resource que aparece, selecciona un proyecto.

  2. En la consola de Google Cloud, ve a la página Generative AI Studio.

    Vertex AI Studio

  3. Haz clic en Multimodal.

  4. En Mensajes de muestra, busca el mensaje titulado Extrae texto de imágenes y haz clic en Abrir.

    Se abrirá la página del mensaje y se propagará el mensaje en el campo Mensaje.

  5. Para enviar la instrucción, haz clic en Enviar.

    El modelo muestra una respuesta.

  6. Para ver el equivalente de código de esta solicitud de mensaje, haz clic en Obtener código.

¿Qué sigue?