Google Gen AI SDK

Google Gen AI SDK 通过 Vertex AI 上的 Gemini Developer API 和 Gemini API 为 Gemini 2.0 提供统一的界面。除了少数例外情况,在一个平台上运行的代码将在两个平台上运行。这意味着,您可以使用 Developer API 为应用创建原型,然后将应用迁移到 Vertex AI,而无需重写代码。

Google Gen AI SDK 还支持 Gemini 1.5 模型。

Python

Google Gen AI SDK for Python 可在 PyPI 和 GitHub 上找到:

如需了解详情,请参阅 Python SDK 参考文档(在新标签页中打开)

快速入门

根据您是否是在快速模式下使用 Vertex AI,选择以下选项之一。

  • 使用 Vertex AI(包含所有 Google Cloud 功能和服务)
from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))
response = client.models.generate_content(
    model="gemini-2.0-flash-001",
    contents="How does AI work?",
)
print(response.text)
# Example response:
# Okay, let's break down how AI works. It's a broad field, so I'll focus on the ...
#
# Here's a simplified overview:
# ...
  • 在快速模式下使用 Vertex AI
from google import genai

# TODO(developer): Update below line
API_KEY = "YOUR_API_KEY"

client = genai.Client(vertexai=True, api_key=API_KEY)

response = client.models.generate_content(
    model="gemini-2.0-flash-001",
    contents="""Explain bubble sort to me.""",
)

print(response.text)
# Example response:
# Bubble Sort is a simple sorting algorithm that repeatedly steps through the list

Go

适用于 Go 的 Google Gen AI SDK 可在 go.dev 和 GitHub 上找到:

快速入门

import (
	"context"
	"fmt"
	"io"

	"google.golang.org/genai"
)

// generateWithText shows how to generate text using a text prompt.
func generateWithText(w io.Writer) error {
	ctx := context.Background()

	client, err := genai.NewClient(ctx, &genai.ClientConfig{
		HTTPOptions: genai.HTTPOptions{APIVersion: "v1"},
	})
	if err != nil {
		return fmt.Errorf("failed to create genai client: %w", err)
	}

	resp, err := client.Models.GenerateContent(ctx,
		"gemini-2.0-flash-001",
		genai.Text("How does AI work?"),
		nil,
	)
	if err != nil {
		return fmt.Errorf("failed to generate content: %w", err)
	}

	respText, err := resp.Text()
	if err != nil {
		return fmt.Errorf("failed to convert model response to text: %w", err)
	}
	fmt.Fprintln(w, respText)
	// Example response:
	// That's a great question! Understanding how AI works can feel like ...
	// ...
	// **1. The Foundation: Data and Algorithms**
	// ...

	return nil
}

Java

您可以在 Maven Central 和 GitHub 上找到适用于 Java 的 Google Gen AI SDK: