คู่มือนี้จะแสดงวิธีเริ่มต้นการเรียกใช้ Vertex AI Gemini API โดยตรงจากแอปโดยใช้ SDK Vertex AI in Firebase สําหรับแพลตฟอร์มที่เลือก
ข้อกำหนดเบื้องต้น
คู่มือนี้จะถือว่าคุณคุ้นเคยกับการใช้ Android Studio เพื่อพัฒนาแอปสำหรับ Android
ตรวจสอบว่าสภาพแวดล้อมการพัฒนาและแอป Android เป็นไปตามข้อกำหนดต่อไปนี้
- Android Studio (เวอร์ชันล่าสุด)
- แอป Android ของคุณต้องกำหนดเป้าหมายเป็น API ระดับ 21 ขึ้นไป
(ไม่บังคับ) ดูแอปตัวอย่าง
คุณสามารถลองใช้ SDK ได้อย่างรวดเร็ว ดูการใช้งานที่สมบูรณ์ของกรณีการใช้งานต่างๆ หรือใช้แอปตัวอย่างหากไม่มีแอป Android ของคุณเอง หากต้องการใช้แอปตัวอย่าง คุณจะต้องเชื่อมต่อแอปกับโปรเจ็กต์ Firebase
ขั้นตอนที่ 1: ตั้งค่าโปรเจ็กต์ Firebase และเชื่อมต่อแอปกับ Firebase
หากคุณมีโปรเจ็กต์ Firebase และแอปที่เชื่อมต่อกับ Firebase อยู่แล้ว
ในคอนโซล Firebase ให้ไปที่หน้าสร้างด้วย Gemini
คลิกการ์ด Vertex AI in Firebase เพื่อเปิดใช้งานเวิร์กโฟลว์ที่จะช่วยคุณทำงานต่อไปนี้
อัปเกรดโปรเจ็กต์เพื่อใช้แพ็กเกจราคาแบบจ่ายตามการใช้งานของ Blaze
เปิดใช้API ที่จําเป็นในโปรเจ็กต์ (Vertex AI API และ Vertex AI in Firebase API)
ไปยังขั้นตอนถัดไปในคู่มือนี้เพื่อเพิ่ม SDK ลงในแอป
หากคุณไม่มีโปรเจ็กต์ Firebase และแอปที่เชื่อมต่อกับ Firebase อยู่แล้ว
ขั้นตอนที่ 2: เพิ่ม SDK
เมื่อตั้งค่าโปรเจ็กต์ Firebase และเชื่อมต่อแอปกับ Firebase แล้ว (ดูขั้นตอนก่อนหน้า) ตอนนี้คุณก็เพิ่ม Vertex AI in Firebase SDK ลงในแอปได้แล้ว
Vertex AI in Firebase SDK สําหรับ Android (firebase-vertexai
) ให้สิทธิ์เข้าถึง Vertex AI Gemini API
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (เช่น <project>/<app-module>/build.gradle.kts
) ให้เพิ่มทรัพยากร Dependency สำหรับคลัง Vertex AI in Firebase สำหรับ Android
เราขอแนะนำให้ใช้ Firebase Android BoM เพื่อควบคุมการกำหนดเวอร์ชันของไลบรารี
Kotlin
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.7.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }
Java
สำหรับ Java คุณต้องเพิ่มไลบรารีอีก 2 รายการ
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.7.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") // 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") }
การใช้ Firebase Android BoM จะทำให้แอปใช้ไลบรารี Firebase Android เวอร์ชันที่เข้ากันได้อยู่เสมอ
ขั้นตอนที่ 3: เริ่มต้นบริการ Vertex AI และโมเดล Generative
คุณต้องเริ่มต้นVertex AIบริการและโมเดล Generative ก่อนจึงจะเรียก API ได้
Kotlin
สำหรับ 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")
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");
// 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 Model แล้ว คุณก็พร้อมเรียกใช้ Vertex AI Gemini API
คุณสามารถใช้ generateContent()
เพื่อสร้างข้อความจากพรอมต์แบบข้อความเท่านั้น โดยทําดังนี้
Kotlin
สำหรับ 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")
// 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");
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
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างข้อความจากพรอมต์แบบข้อความเท่านั้น รวมถึงวิธีสตรีมคำตอบ
- สร้างข้อความจากพรอมต์แบบมัลติโมด (รวมถึงข้อความ รูปภาพ PDF วิดีโอ และเสียง)
- สร้างการสนทนาแบบหลายรอบ (แชท)
- สร้างเอาต์พุตที่มีโครงสร้าง (เช่น JSON) จากทั้งพรอมต์แบบข้อความและแบบมัลติโมเดล
- ใช้การเรียกฟังก์ชันเพื่อเชื่อมต่อโมเดล Generative กับระบบและข้อมูลภายนอก
ดูวิธีควบคุมการสร้างเนื้อหา
- ทำความเข้าใจการออกแบบพรอมต์ ซึ่งรวมถึงแนวทางปฏิบัติแนะนำ กลยุทธ์ และตัวอย่างพรอมต์
- กําหนดค่าพารามิเตอร์ของโมเดล เช่น อุณหภูมิและโทเค็นเอาต์พุตสูงสุด
- ใช้การตั้งค่าความปลอดภัยเพื่อปรับความเป็นไปได้ที่จะได้รับคำตอบที่อาจถือว่าอันตราย
แสดงความคิดเห็นเกี่ยวกับประสบการณ์ของคุณในการใช้ Vertex AI in Firebase