Bắt đầu nhanh API Gemini

Hướng dẫn bắt đầu nhanh này sẽ hướng dẫn bạn cách bắt đầu sử dụng API Gemini bằng SDK mà bạn chọn.

Điều kiện tiên quyết

Python

Xem trên AI của Google Chạy trong Google Colab Xem sổ tay trên GitHub

Để hoàn tất quy trình bắt đầu nhanh này trên thiết bị, hãy đảm bảo môi trường phát triển của bạn đáp ứng các yêu cầu sau:

  • Python 3.9 trở lên
  • Cài đặt jupyter để chạy sổ tay.

Go

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen với việc tạo ứng dụng bằng Go.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển của bạn đáp ứng các yêu cầu sau:

  • Truy cập phiên bản 1.20 trở lên

Node.js

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen với việc tạo ứng dụng bằng Node.js.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển của bạn đáp ứng các yêu cầu sau:

  • Node.js phiên bản 18 trở lên
  • hải lý/phút

Web

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen với việc sử dụng JavaScript để phát triển ứng dụng web. Hướng dẫn này không phụ thuộc vào khung.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển của bạn đáp ứng các yêu cầu sau:

  • (Không bắt buộc) Node.js
  • Trình duyệt web hiện đại

Phi tiêu (Flutter)

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen với việc tạo ứng dụng bằng Dart.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển của bạn đáp ứng các yêu cầu sau:

  • Dart 3.2.0 trở lên

Swift

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen dùng Xcode để phát triển ứng dụng Swift.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển và ứng dụng Swift đáp ứng các yêu cầu sau:

  • Xcode 15.0 trở lên
  • Ứng dụng Swift của bạn phải nhắm đến iOS 15 trở lên hoặc macOS 12 trở lên.

Android

Hướng dẫn bắt đầu nhanh này giả định rằng bạn đã quen với việc sử dụng Android Studio để phát triển ứng dụng Android.

Để hoàn tất quy trình bắt đầu nhanh này, hãy đảm bảo môi trường phát triển và ứng dụng Android của bạn đáp ứng các yêu cầu sau:

  • Android Studio (phiên bản mới nhất)
  • Ứng dụng Android của bạn phải nhắm đến API cấp 21 trở lên.

Thiết lập khoá API

Để sử dụng API Gemini, bạn cần có một khoá API. Nếu bạn chưa có khoá, hãy tạo khoá trong Google AI Studio.

Lấy khoá API

Sau đó, hãy định cấu hình khoá của bạn.

Python

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Quá trình bắt đầu nhanh này giả định rằng bạn đang truy cập vào khoá API dưới dạng một biến môi trường.

Chỉ định khoá API cho một biến môi trường:

export API_KEY=<YOUR_API_KEY>

Go

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Quá trình bắt đầu nhanh này giả định rằng bạn đang truy cập vào khoá API dưới dạng một biến môi trường.

Chỉ định khoá API cho một biến môi trường:

export API_KEY=<YOUR_API_KEY>

Node.js

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Quá trình bắt đầu nhanh này giả định rằng bạn đang truy cập vào khoá API dưới dạng một biến môi trường.

Chỉ định khoá API cho một biến môi trường:

export API_KEY=<YOUR_API_KEY>

Web

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Thay vào đó, bạn nên truyền khoá API đến ứng dụng ngay trước khi khởi chạy mô hình.

Quá trình bắt đầu nhanh này giả định rằng bạn đang truy cập khoá API dưới dạng một hằng số chung.

Phi tiêu (Flutter)

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Quá trình bắt đầu nhanh này giả định rằng bạn đang truy cập vào khoá API dưới dạng một biến môi trường của quy trình. Nếu đang phát triển một ứng dụng Flutter, bạn có thể sử dụng String.fromEnvironment và truyền --dart-define=API_KEY=$API_KEY đến flutter build hoặc flutter run để biên dịch bằng khoá API, vì môi trường xử lý sẽ khác nhau khi chạy ứng dụng.

Swift

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Một lựa chọn khác là lưu trữ khoá này trong tệp GenerativeAI-Info.plist, sau đó đọc khoá API qua tệp .plist. Hãy nhớ đặt tệp .plist này vào thư mục gốc của ứng dụng và loại trừ tệp này khỏi chế độ quản lý phiên bản.

enum APIKey {
   // Fetch the API key from `GenerativeAI-Info.plist`
   static var `default`: String {
      guard let filePath = Bundle.main.path(forResource: "GenerativeAI-Info", ofType: "plist")
      else {
         fatalError("Couldn't find file 'GenerativeAI-Info.plist'.")
      }
      let plist = NSDictionary(contentsOfFile: filePath)
      guard let value = plist?.object(forKey: "API_KEY") as? String else {
         fatalError("Couldn't find key 'API_KEY' in 'GenerativeAI-Info.plist'.")
      }
      if value.starts(with: "_") {
         fatalError(
           "Follow the instructions at https://ai.google.dev/tutorials/setup to get an API key."
         )
      }
      return value
   }
}

Android

Bạn không nên kiểm tra khoá API trong hệ thống quản lý phiên bản. Thay vào đó, bạn nên lưu trữ tệp này trong tệp local.properties (nằm trong thư mục gốc của dự án nhưng bị loại trừ khỏi quy trình quản lý phiên bản), sau đó sử dụng trình bổ trợ Secrets Gradle cho Android để đọc khoá API dưới dạng biến Cấu hình bản dựng.

Kotlin:

// Access your API key as a Build Configuration variable
val apiKey = BuildConfig.apiKey

Java:

// Access your API key as a Build Configuration variable
String apiKey = BuildConfig.apiKey;

Nếu muốn xem cách triển khai trình bổ trợ Secrets Gradle cho Gradle, bạn có thể tham khảo ứng dụng mẫu của SDK này hoặc sử dụng bản xem trước mới nhất của Android Studio Iguana có mẫu Gemini API Starter (bao gồm cả tệp local.properties để giúp bạn bắt đầu).

Cài đặt SDK

Python

SDK Python cho API Gemini có trong gói google-generativeai. Cài đặt phần phụ thuộc bằng pip:

pip install -q -U google-generativeai

Go

Để sử dụng API Gemini trong ứng dụng của riêng mình, bạn cần get gói Go SDK trong thư mục mô-đun:

go get github.com/google/generative-ai-go

Node.js

Để sử dụng API Gemini trong ứng dụng của riêng mình, bạn cần cài đặt gói GoogleGenerativeAI cho Node.js:

npm install @google/generative-ai

Web

Để sử dụng API Gemini trong ứng dụng web của riêng bạn, hãy nhập @google/generative-ai:

<script type="importmap">
   {
     "imports": {
       "@google/generative-ai": "https://esm.run/@google/generative-ai"
     }
   }
</script>

Phi tiêu (Flutter)

Để sử dụng API Gemini trong ứng dụng của riêng bạn, bạn cần add gói google_generative_ai vào ứng dụng Dart hoặc Flutter của mình:

Phi tiêu:

dart pub add google_generative_ai

Xoè:

flutter pub add google_generative_ai

Swift

Để sử dụng API Gemini trong ứng dụng Swift của riêng bạn, hãy thêm gói GoogleGenerativeAI vào ứng dụng của bạn:

  1. Trong Xcode, hãy nhấp chuột phải vào dự án của bạn trong trình điều hướng dự án.

  2. Chọn Add Packages (Thêm gói) trong trình đơn theo bối cảnh.

  3. Trong hộp thoại Add Packages (Thêm gói), hãy dán URL của gói vào thanh tìm kiếm: none https://github.com/google/generative-ai-swift

  4. Nhấp vào Thêm gói. Giờ đây, Xcode sẽ thêm gói GoogleGenerativeAI vào dự án của bạn.

Android

  1. Trong tệp cấu hình Gradle mô-đun (cấp ứng dụng) (như <project>/<app-module>/build.gradle.kts), hãy thêm phần phụ thuộc cho SDK AI của Google dành cho Android:

    Kotlin:

    dependencies {
    
       // add the dependency for the Google AI client SDK for Android
       implementation("com.google.ai.client.generativeai:generativeai:0.3.0")
    }
    

    Java:

    Đối với Java, bạn cần thêm hai thư viện bổ sung.

    dependencies {
    
        // add the dependency for the Google AI client SDK for Android
        implementation("com.google.ai.client.generativeai:generativeai:0.3.0")
    
        // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
        implementation("com.google.guava:guava:31.0.1-android")
    
        // Required for streaming operations (to use `Publisher` from Reactive Streams)
        implementation("org.reactivestreams:reactive-streams:1.0.4")
    }
    
  2. Đồng bộ hoá dự án Android với các tệp Gradle.

Khởi động mô hình tạo sinh

Python

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần nhập và khởi chạy mô hình tạo sinh.

import google.generativeai as genai

genai.configure(api_key=os.environ["API_KEY"])
model = genai.GenerativeModel('gemini-pro')

Go

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần nhập và khởi chạy mô hình tạo sinh.

import "github.com/google/generative-ai-go/genai"
import "google.golang.org/api/option"

ctx := context.Background()
// Access your API key as an environment variable (see "Set up your API key" above)
client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("API_KEY")))
if err != nil {
    log.Fatal(err)
}
defer client.Close()

// For text-only input, use the gemini-pro model
model := client.GenerativeModel("gemini-pro")

Node.js

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần nhập và khởi chạy mô hình tạo sinh.

const { GoogleGenerativeAI } = require("@google/generative-ai");

// Access your API key as an environment variable (see "Set up your API key" above)
const genAI = new GoogleGenerativeAI(process.env.API_KEY);

// ...

// For text-only input, use the gemini-pro model
const model = genAI.getGenerativeModel({ model: "gemini-pro"});

// ...

Web

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần nhập và khởi chạy mô hình tạo sinh.

<html>
<body>
   <!-- ... Your HTML and CSS -->
   <!-- Import @google/generative-ai, as shown above. -->
   <script type="module">
      import { GoogleGenerativeAI } from "@google/generative-ai";

      // Fetch your API_KEY
      const API_KEY = "...";

      // Access your API key (see "Set up your API key" above)
      const genAI = new GoogleGenerativeAI(API_KEY);

      // ...

      // For text-only input, use the gemini-pro model
      const model = genAI.getGenerativeModel({ model: "gemini-pro"});

      // ...
   </script>
</body>
</html>

Phi tiêu (Flutter)

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần nhập và khởi chạy mô hình tạo sinh.

import 'package:google_generative_ai/google_generative_ai.dart';

// Access your API key as an environment variable (see "Set up your API key" above)
final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
  print('No \$API_KEY environment variable');
  exit(1);
}

// For text-only input, use the gemini-pro model
final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey);

Swift

Trước khi có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần khởi chạy mô hình tạo sinh.

  1. Nhập mô-đun GoogleAI:

    import GoogleGenerativeAI
    
  2. Khởi động mô hình tạo sinh:

    // For text-only input, use the gemini-pro model
    // Access your API key from your on-demand resource .plist file (see "Set up your API key" above)
    let model = GenerativeModel(name: "gemini-pro", apiKey: APIKey.default)
    

Android

Để có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần khởi động đối tượng GenerativeModel:

Kotlin:

val generativeModel = GenerativeModel(
      // For text-only input, use the gemini-pro model
      modelName = "gemini-pro",
      // Access your API key as a Build Configuration variable (see "Set up your API key" above)
      apiKey = BuildConfig.apiKey
)

Java:

Đối với Java, bạn cũng cần khởi chạy đối tượng GenerativeModelFutures.

// For text-only input, use the gemini-pro model
GenerativeModel gm = new GenerativeModel(/* modelName */ "gemini-pro",
// Access your API key as a Build Configuration variable (see "Set up your API key" above)
      /* apiKey */ BuildConfig.apiKey);

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Tạo văn bản

Python

response = model.generate_content("Write a story about a magic backpack.")
print(response.text)

Go

resp, err := model.GenerateContent(ctx, genai.Text("Write a story about a magic backpack."))
if err != nil {
  log.Fatal(err)
}

Node.js

async function run() {
  const prompt = "Write a story about a magic backpack."

  const result = await model.generateContent(prompt);
  const response = await result.response;
  const text = response.text();
  console.log(text);
}

run();

Web

async function run() {
  const prompt = "Write a story about a magic backpack."

  const result = await model.generateContent(prompt);
  const response = await result.response;
  const text = response.text();
  console.log(text);
}

run();

Phi tiêu (Flutter)

void main() async {
   // Access your API key as an environment variable (see "Set up your API key" above)
   final apiKey = Platform.environment['API_KEY'];
   if (apiKey == null) {
      print('No \$API_KEY environment variable');
      exit(1);
   }
   // For text-only input, use the gemini-pro model
   final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey);
   final content = [Content.text('Write a story about a magic backpack.')];
   final response = await model.generateContent(content);
   print(response.text);
}

Swift

let prompt = "Write a story about a magic backpack."
let response = try await model.generateContent(prompt)
if let text = response.text {
  print(text)
}

Android

Kotlin:

Lưu ý rằng generateContent() là một hàm tạm ngưng và cần được gọi từ phạm vi Coroutine. Nếu bạn chưa hiểu rõ về Coroutine, hãy đọc bài viết Coroutine Kotlin trên Android.

val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)

Java:

Xin lưu ý rằng generateContent() trả về ListenableFuture. Nếu bạn chưa hiểu rõ về API này, hãy xem tài liệu của Android về cách Sử dụng ListenableFuture.

Content content = new Content.Builder()
      .addText("Write a story about a magic backpack.")
      .build();

Executor executor = // ...

ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
      @Override
      public void onSuccess(GenerateContentResponse result) {
         String resultText = result.getText();
         System.out.println(resultText);
      }

      @Override
      public void onFailure(Throwable t) {
         t.printStackTrace();
      }
}, executor);

Bước tiếp theo

Để tìm hiểu thêm về cách làm việc với API Gemini, hãy xem hướng dẫn dành cho ngôn ngữ bạn chọn.

Bạn cũng có thể dùng các lệnh curl để dùng thử API Gemini:

Nếu mới sử dụng các mô hình AI tạo sinh, bạn nên xem hướng dẫn về khái niệmtổng quan về API Genmini trước khi thử hướng dẫn bắt đầu nhanh.