Panduan memulai ini menunjukkan cara memulai Gemini API menggunakan SDK pilihan Anda.
Prasyarat
Python
Lihat di AI Google | Menjalankan di Google Colab | Lihat notebook di GitHub |
Untuk menyelesaikan panduan memulai ini secara lokal, pastikan lingkungan pengembangan Anda memenuhi persyaratan berikut:
- Python 3.9 dan yang lebih baru
- Penginstalan
jupyter
untuk menjalankan notebook.
Go
Panduan memulai ini mengasumsikan bahwa Anda sudah memahami cara membangun aplikasi dengan Go.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan Anda memenuhi persyaratan berikut:
- Buka versi 1.20 dan yang lebih baru
Node.js
Panduan memulai ini mengasumsikan bahwa Anda sudah memahami cara membangun aplikasi dengan Node.js.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan Anda memenuhi persyaratan berikut:
- Node.js v18+
- npm
Web
Panduan memulai ini mengasumsikan bahwa Anda sudah memahami penggunaan JavaScript untuk mengembangkan aplikasi web. Panduan ini tidak bergantung pada framework.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan Anda memenuhi persyaratan berikut:
- (Opsional) Node.js
- Browser web modern
Dart (Flutter)
Panduan memulai ini mengasumsikan bahwa Anda telah memahami cara membangun aplikasi dengan Dart.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan Anda memenuhi persyaratan berikut:
- Dart 3.2.0+
Swift
Panduan memulai ini mengasumsikan bahwa Anda sudah terbiasa menggunakan Xcode untuk mengembangkan aplikasi Swift.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan dan aplikasi Swift Anda memenuhi persyaratan berikut:
- Xcode 15.0 atau yang lebih tinggi
- Aplikasi Swift Anda harus menargetkan iOS 15 atau yang lebih tinggi, atau macOS 12 atau yang lebih tinggi.
Android
Panduan memulai ini mengasumsikan bahwa Anda sudah terbiasa menggunakan Android Studio untuk mengembangkan aplikasi Android.
Untuk menyelesaikan panduan memulai ini, pastikan lingkungan pengembangan dan aplikasi Android Anda memenuhi persyaratan berikut:
- Android Studio (versi terbaru)
- Aplikasi Android Anda harus menargetkan API level 21 atau yang lebih tinggi.
Menyiapkan kunci API
Untuk menggunakan Gemini API, Anda memerlukan kunci API. Jika Anda belum memilikinya, buat kunci di Google AI Studio.
Kemudian, konfigurasikan kunci Anda.
Python
Sebaiknya Anda tidak melakukan check in kunci API ke dalam sistem kontrol versi Anda. Panduan memulai ini mengasumsikan bahwa Anda mengakses kunci API sebagai variabel lingkungan.
Tetapkan kunci API Anda ke variabel lingkungan:
export API_KEY=<YOUR_API_KEY>
Go
Sebaiknya Anda tidak melakukan check in kunci API ke dalam sistem kontrol versi Anda. Panduan memulai ini mengasumsikan bahwa Anda mengakses kunci API sebagai variabel lingkungan.
Tetapkan kunci API Anda ke variabel lingkungan:
export API_KEY=<YOUR_API_KEY>
Node.js
Sebaiknya Anda tidak melakukan check in kunci API ke dalam sistem kontrol versi Anda. Panduan memulai ini mengasumsikan bahwa Anda mengakses kunci API sebagai variabel lingkungan.
Tetapkan kunci API Anda ke variabel lingkungan:
export API_KEY=<YOUR_API_KEY>
Web
Sebaiknya Anda tidak melakukan check in kunci API ke dalam sistem kontrol versi Anda. Sebagai gantinya, Anda harus meneruskan kunci API ke aplikasi tepat sebelum menginisialisasi model tersebut.
Panduan memulai ini mengasumsikan bahwa Anda mengakses kunci API sebagai konstanta global.
Dart (Flutter)
Sebaiknya Anda tidak melakukan check in kunci API ke dalam
sistem kontrol versi Anda. Panduan memulai ini mengasumsikan bahwa Anda mengakses kunci API sebagai variabel lingkungan proses. Jika mengembangkan aplikasi Flutter, Anda dapat menggunakan String.fromEnvironment
dan meneruskan --dart-define=API_KEY=$API_KEY
ke flutter build
atau flutter run
untuk mengompilasi dengan kunci API karena lingkungan prosesnya akan berbeda saat menjalankan aplikasi.
Swift
Sebaiknya Anda tidak melakukan check in kunci API ke dalam
sistem kontrol versi Anda. Salah satu opsi alternatifnya adalah menyimpannya dalam
file GenerativeAI-Info.plist
, lalu membaca kunci API dari file
.plist
. Pastikan untuk menempatkan file .plist
ini dalam folder root aplikasi Anda dan
kecualikan dari kontrol versi.
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
Sebaiknya Anda tidak melakukan check in kunci API ke dalam
sistem kontrol versi Anda. Sebaiknya simpan kunci API dalam file local.properties
(yang terletak di direktori utama project, tetapi dikecualikan dari kontrol versi), lalu gunakan plugin Secrets Gradle untuk Android untuk membaca kunci API Anda sebagai variabel Konfigurasi Build.
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;
Jika ingin melihat implementasi plugin Secrets Gradle, Anda dapat meninjau aplikasi contoh untuk SDK ini atau menggunakan pratinjau terbaru Android Studio Iguana yang memiliki template Gemini API Starter (yang mencakup file local.properties
untuk membantu Anda memulai).
Menginstal SDK
Python
Python SDK untuk Gemini API terdapat dalam
paket
google-generativeai
. Instal dependensi menggunakan pip:
pip install -q -U google-generativeai
Go
Untuk menggunakan Gemini API di aplikasi sendiri, Anda perlu get
paket Go SDK
di direktori modul:
go get github.com/google/generative-ai-go
Node.js
Untuk menggunakan Gemini API di aplikasi sendiri, Anda harus menginstal paket GoogleGenerativeAI
untuk Node.js:
npm install @google/generative-ai
Web
Untuk menggunakan Gemini API di aplikasi web Anda sendiri, impor @google/generative-ai
:
<script type="importmap">
{
"imports": {
"@google/generative-ai": "https://esm.run/@google/generative-ai"
}
}
</script>
Dart (Flutter)
Untuk menggunakan Gemini API di aplikasi sendiri, Anda harus melakukan add
paket google_generative_ai
ke aplikasi Dart atau Flutter Anda:
Dart:
dart pub add google_generative_ai
Flutter:
flutter pub add google_generative_ai
Swift
Untuk menggunakan Gemini API di aplikasi Swift Anda sendiri, tambahkan paket GoogleGenerativeAI
ke aplikasi Anda:
Di Xcode, klik kanan pada project Anda di navigator project.
Pilih Add Packages dari menu konteks.
Dalam dialog Add Packages, tempel URL paket di kotak penelusuran:
none https://github.com/google/generative-ai-swift
Klik Add Package. Xcode sekarang akan menambahkan paket
GoogleGenerativeAI
ke project Anda.
Android
Dalam file konfigurasi Gradle modul (level aplikasi) Anda (seperti
<project>/<app-module>/build.gradle.kts
), tambahkan dependensi untuk Google AI SDK untuk 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:
Untuk Java, Anda perlu menambahkan dua library tambahan.
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") }
Sinkronkan project Android Anda dengan file Gradle.
Menginisialisasi model generatif
Python
Sebelum dapat melakukan panggilan API, Anda perlu mengimpor dan menginisialisasi model generatif.
import google.generativeai as genai
genai.configure(api_key=os.environ["API_KEY"])
model = genai.GenerativeModel('gemini-pro')
Go
Sebelum dapat melakukan panggilan API, Anda perlu mengimpor dan menginisialisasi model generatif.
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
Sebelum dapat melakukan panggilan API, Anda perlu mengimpor dan menginisialisasi model generatif.
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
Sebelum dapat melakukan panggilan API, Anda perlu mengimpor dan menginisialisasi model generatif.
<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>
Dart (Flutter)
Sebelum dapat melakukan panggilan API, Anda perlu mengimpor dan menginisialisasi model generatif.
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
Sebelum dapat melakukan panggilan API, Anda perlu menginisialisasi model generatif.
Impor modul
GoogleAI
:import GoogleGenerativeAI
Lakukan inisialisasi model generatif:
// 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
Sebelum dapat melakukan panggilan API, Anda harus melakukan inisialisasi objek
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:
Untuk Java, Anda juga perlu melakukan inisialisasi objek 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);
Membuat teks
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();
Dart (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:
Perhatikan bahwa generateContent()
adalah fungsi penangguhan dan perlu
dipanggil dari cakupan Coroutine. Jika Anda belum terbiasa dengan Coroutine, baca
Coroutine Kotlin di Android.
val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)
Java:
Perhatikan bahwa generateContent()
menampilkan ListenableFuture
. Jika
Anda tidak terbiasa dengan API ini, lihat dokumentasi Android tentang
Menggunakan 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);
Langkah selanjutnya
Untuk mempelajari lebih lanjut cara menggunakan Gemini API, lihat tutorial untuk bahasa pilihan Anda.
Anda juga dapat menggunakan perintah curl
untuk mencoba Gemini API:
Jika baru mengenal model AI generatif, Anda mungkin ingin membaca panduan konsep dan ringkasan Gemini API sebelum mencoba panduan memulai.