เริ่มต้นใช้งาน Gemini API โดยใช้ Vertex AI สำหรับ Firebase SDK


คู่มือนี้แสดงวิธีเริ่มต้นเรียก Vertex AI Gemini API จากแอปของคุณโดยตรงโดยใช้ Vertex AI สำหรับ Firebase SDK

ข้อกำหนดเบื้องต้น

คู่มือนี้จะถือว่าคุณคุ้นเคยกับการใช้ Android Studio เพื่อพัฒนาแอปสำหรับ Android

  • ตรวจดูว่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์และแอป Android ของคุณเป็นไปตามข้อกำหนดต่อไปนี้

    • Android Studio (เวอร์ชันล่าสุด)
    • แอป Android ต้องกำหนดเป้าหมายเป็น API ระดับ 21 ขึ้นไป
  • (ไม่บังคับ) ดูแอปตัวอย่าง

    ดาวน์โหลดแอปตัวอย่าง

    คุณลองใช้ SDK ได้อย่างรวดเร็ว ดูการติดตั้งใช้งานกรณีการใช้งานต่างๆ ที่ครบถ้วน หรือจะใช้แอปตัวอย่างหากไม่มีแอป Android ของคุณเอง หากต้องการใช้แอปตัวอย่าง คุณจะต้องเชื่อมต่อกับโปรเจ็กต์ Firebase

ขั้นตอนที่ 1: ตั้งค่าโปรเจ็กต์ Firebase และเชื่อมต่อแอปกับ Firebase

หากคุณมีโปรเจ็กต์ Firebase และแอปที่เชื่อมต่อกับ Firebase อยู่แล้ว

  1. ในคอนโซล Firebase ให้ไปที่หน้าสร้างด้วย Gemini แล้วคลิกการ์ดที่ 2 เพื่อเปิดเวิร์กโฟลว์ที่จะช่วยคุณทำงานต่อไปนี้ หากเห็นแท็บในคอนโซลสำหรับ Vertex AI แสดงว่างานเหล่านี้เสร็จแล้ว

  2. ทำขั้นตอนถัดไปในคู่มือนี้เพื่อเพิ่ม SDK ลงในแอป

หากคุณยังไม่มีโปรเจ็กต์ Firebase และแอปที่เชื่อมต่ออยู่กับ Firebase


ขั้นตอนที่ 2: เพิ่ม SDK

เมื่อตั้งค่าโปรเจ็กต์ Firebase และแอปเชื่อมต่อกับ Firebase แล้ว (ดูขั้นตอนก่อนหน้า) คุณจะเพิ่ม SDK สำหรับ Vertex AI สำหรับ Firebase ลงในแอปได้แล้ว

Vertex AI สำหรับ Firebase SDK สำหรับ Android (firebase-vertexai) ให้สิทธิ์เข้าถึง Vertex AI Gemini API

ในไฟล์การกำหนดค่า Gradle โมดูล (ระดับแอป) (เช่น <project>/<app-module>/build.gradle.kts) ให้เพิ่มทรัพยากร Dependency สำหรับ SDK ของ Vertex AI สำหรับ Firebase สำหรับ Android ดังนี้

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI for Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.0-beta01")
}

Java

สำหรับ Java คุณต้องเพิ่มไลบรารีอีก 2 รายการ

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI for Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.0-beta01")

  // 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")
}

ขั้นตอนที่ 3: เริ่มต้นบริการ Vertex AI และโมเดล Generative

คุณต้องเริ่มต้นบริการ Vertex AI และโมเดล Generative ก่อนจึงจะเรียกใช้ API ได้

Kotlin+KTX

สำหรับ Kotlin เมธอดใน SDK นี้เป็นฟังก์ชันระงับและต้องเรียกใช้จากขอบเขต Coroutine
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash-preview-0514")

Java

สำหรับ Java เมธอดสตรีมมิงใน SDK นี้จะแสดงประเภท Publisher จากไลบรารี Reactive Streams
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-flash-preview-0514");

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

เมื่อคู่มือเริ่มต้นใช้งานจบแล้ว โปรดดูวิธีเลือก โมเดล Gemini และ (ไม่บังคับ) ตำแหน่งที่เหมาะกับ Use Case และแอปของคุณ

ขั้นตอนที่ 4: เรียกใช้ Vertex AI Gemini API

เมื่อคุณเชื่อมต่อแอปกับ Firebase เพิ่ม SDK และเริ่มต้น บริการ Vertex AI และโมเดล Generativeแล้ว คุณก็พร้อมที่จะเรียกใช้ Vertex AI Gemini API แล้ว

คุณสามารถใช้ generateContent() เพื่อสร้างข้อความจากคำขอข้อความแจ้งแบบข้อความเท่านั้นได้ ดังนี้

Kotlin+KTX

สำหรับ Kotlin เมธอดใน SDK นี้เป็นฟังก์ชันระงับและต้องเรียกใช้จากขอบเขต Coroutine
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash-preview-0514")

// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)

Java

สำหรับ Java เมธอดใน SDK นี้จะแสดง ListenableFuture
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-flash-preview-0514");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// Provide a prompt that contains text
Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
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);

คุณทำอะไรได้อีกบ้าง

ดูข้อมูลเพิ่มเติมเกี่ยวกับรุ่น Gemini

ดูข้อมูลเกี่ยวกับรุ่นที่พร้อมใช้งานสำหรับกรณีการใช้งานต่างๆ และโควต้าและราคา

ลองใช้ความสามารถอื่นๆ ของ Gemini API

ดูวิธีควบคุมการสร้างเนื้อหา

นอกจากนี้ คุณยังทดสอบพรอมต์และการกำหนดค่าโมเดลโดยใช้ Vertex AI Studio ได้ด้วย


แสดงความคิดเห็นเกี่ยวกับประสบการณ์การใช้งาน Vertex AI สำหรับ Firebase