คู่มือนี้จะแสดงวิธีเริ่มต้นการเรียกใช้ Vertex AI Gemini API โดยตรงจากแอปโดยใช้ SDK Vertex AI in Firebase สําหรับแพลตฟอร์มที่เลือก
ตัวเลือกอื่นๆ สำหรับการทำงานกับ Gemini API
หากต้องการ ให้ลองใช้ Gemini API
เวอร์ชัน "Google AI" อื่น คุณสามารถรับสิทธิ์เข้าถึงได้แบบไม่มีค่าใช้จ่าย (ภายในขีดจำกัดและเมื่อพร้อมให้บริการ) โดยใช้ Google AI Studio และ Google AI SDK ของไคลเอ็นต์ SDK เหล่านี้ควรใช้สำหรับการสร้างต้นแบบเท่านั้นในแอปบนอุปกรณ์เคลื่อนที่และเว็บเมื่อคุ้นเคยกับวิธีการทำงานของ Gemini API แล้ว ให้เปลี่ยนไปใช้ Vertex AI in FirebaseSDK (เอกสารประกอบนี้) ซึ่งมีฟีเจอร์เพิ่มเติมมากมายที่สําคัญสําหรับแอปบนอุปกรณ์เคลื่อนที่และเว็บ เช่น การปกป้อง API จากการละเมิดโดยใช้ Firebase App Check และรองรับไฟล์สื่อขนาดใหญ่ในคําขอ
เรียกใช้ Vertex AI Gemini API ฝั่งเซิร์ฟเวอร์ (เช่น ด้วย Python, Node.js หรือ Go)
ใช้ Vertex AI SDK ฝั่งเซิร์ฟเวอร์, Firebase Genkit หรือ Firebase Extensions สำหรับ Gemini API (ไม่บังคับ)
โปรดทราบว่าคุณยังใช้คู่มือนี้เพื่อเริ่มต้นการเข้าถึงImagenโมเดลโดยใช้ Vertex AI in FirebaseSDK ได้ด้วย
ข้อกำหนดเบื้องต้น
คู่มือนี้จะถือว่าคุณคุ้นเคยกับการใช้ 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 อยู่แล้ว
ตั้งค่าโปรเจ็กต์ Firebase
ลงชื่อเข้าใช้คอนโซล Firebase
คลิกสร้างโปรเจ็กต์ แล้วใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้
ตัวเลือกที่ 1: สร้างโปรเจ็กต์ Firebase ใหม่ทั้งหมด (และโปรเจ็กต์Google Cloudที่เกี่ยวข้องโดยอัตโนมัติ) โดยป้อนชื่อโปรเจ็กต์ใหม่ในขั้นตอนแรกของเวิร์กโฟลว์ "สร้างโปรเจ็กต์"
ตัวเลือกที่ 2: "เพิ่ม Firebase" ลงในโปรเจ็กต์ Google Cloud ที่มีอยู่โดยเลือกชื่อโปรเจ็กต์ Google Cloud จากเมนูแบบเลื่อนลงในขั้นตอนแรกของเวิร์กโฟลว์ "สร้างโปรเจ็กต์"
โปรดทราบว่าเมื่อได้รับข้อความแจ้ง คุณไม่จําเป็นต้องตั้งค่า Google Analytics เพื่อใช้ Vertex AI in Firebase SDK
ในคอนโซล Firebase ให้ไปที่หน้าสร้างด้วย Gemini
คลิกการ์ด Vertex AI in Firebase เพื่อเปิดใช้งานเวิร์กโฟลว์ที่จะช่วยคุณทำงานต่อไปนี้
อัปเกรดโปรเจ็กต์เพื่อใช้แพ็กเกจราคาแบบชําระเงินตามการใช้งานของ Blaze
เปิดใช้API ที่จําเป็นในโปรเจ็กต์ (Vertex AI API และ Vertex AI in Firebase API)
เชื่อมต่อแอปกับ Firebase
ดำเนินการต่อในเวิร์กโฟลว์ Generative AI ของคอนโซลเพื่อเชื่อมต่อแอปกับ Firebase ซึ่งประกอบด้วยงานต่อไปนี้
การลงทะเบียนแอปกับโปรเจ็กต์ Firebase
การเพิ่มไฟล์กําหนดค่า Firebase (
) และปลั๊กอิน Gradlegoogle-services.json
ลงในแอปgoogle-services
ในขั้นตอนถัดไปของคู่มือนี้ คุณจะเพิ่ม Vertex AI in Firebase SDK ลงในแอปและทำการเริ่มต้นใช้งานที่จำเป็นสำหรับการใช้ SDK และ Gemini API
ขั้นตอนที่ 2: เพิ่ม SDK
เมื่อตั้งค่าโปรเจ็กต์ Firebase และเชื่อมต่อแอปกับ Firebase แล้ว (ดูขั้นตอนก่อนหน้า) ตอนนี้คุณก็เพิ่ม Vertex AI in Firebase SDK ลงในแอปได้แล้ว
Vertex AI in Firebase SDK สําหรับ Android (firebase-vertexai
) ให้สิทธิ์เข้าถึง API สําหรับการโต้ตอบกับรุ่น Gemini และ Imagen
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (เช่น <project>/<app-module>/build.gradle.kts
) ให้เพิ่มทรัพยากร Dependency สำหรับคลัง Vertex AI in Firebase สำหรับ Android
เราขอแนะนำให้ใช้ Firebase Android BoM เพื่อควบคุมการกำหนดเวอร์ชันของไลบรารี
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.10.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 คุณต้องเพิ่มไลบรารีอีก 2 รายการ
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.10.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 เวอร์ชันที่เข้ากันได้อยู่เสมอ
(วิธีอื่น) เพิ่มไลบรารี Firebase ที่ต้องพึ่งพาโดยไม่ต้องใช้ BoM
หากเลือกไม่ใช้ Firebase BoM คุณต้องระบุเวอร์ชันไลบรารี Firebase แต่ละเวอร์ชันในบรรทัดการพึ่งพา
โปรดทราบว่าหากคุณใช้ไลบรารี Firebase หลายรายการในแอป เราขอแนะนําอย่างยิ่งให้ใช้ BoM เพื่อจัดการเวอร์ชันของไลบรารี ซึ่งจะช่วยให้มั่นใจได้ว่าทุกเวอร์ชันจะใช้งานร่วมกันได้
dependencies { // Add the dependency for the Vertex AI in Firebase library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai:16.2.0") }
ขั้นตอนที่ 3: เริ่มต้นบริการ Vertex AI และโมเดล Generative
คุณต้องเริ่มต้นบริการ Vertex AI และโมเดล Generative ก่อนจึงจะเรียก API และแสดงโมเดล Gemini ได้
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
Publisher
จากไลบรารี Reactive Streams
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
หลังจากอ่านคู่มือเริ่มต้นใช้งานนี้จบแล้ว โปรดดูวิธีเลือกโมเดลและ (ไม่บังคับ) ตำแหน่งที่เหมาะสมกับกรณีการใช้งานและแอปของคุณ
ขั้นตอนที่ 4: ส่งคําขอพรอมต์ไปยังโมเดล
เมื่อเชื่อมต่อแอปกับ Firebase, เพิ่ม SDK และเริ่มต้นบริการ Vertex AI และโมเดล Generative แล้ว คุณก็พร้อมส่งคําขอพรอมต์ไปยังโมเดล Gemini
คุณสามารถใช้ generateContent()
เพื่อสร้างข้อความจากพรอมต์แบบข้อความเท่านั้น โดยทำดังนี้
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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)
ListenableFuture
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-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 API
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างข้อความจากพรอมต์แบบข้อความเท่านั้น รวมถึงวิธีสตรีมคำตอบ
- สร้างข้อความจากพรอมต์แบบหลายรูปแบบ (รวมถึงข้อความ รูปภาพ PDF วิดีโอ และเสียง)
- สร้างการสนทนาแบบหลายรอบ (แชท)
- สร้างเอาต์พุตที่มีโครงสร้าง (เช่น JSON) จากทั้งพรอมต์แบบข้อความและแบบมัลติโมเดล
- ใช้การเรียกฟังก์ชันเพื่อเชื่อมต่อโมเดล Generative กับระบบและข้อมูลภายนอก
ดูวิธีควบคุมการสร้างเนื้อหา
- ทำความเข้าใจการออกแบบพรอมต์ ซึ่งรวมถึงแนวทางปฏิบัติแนะนำ กลยุทธ์ และตัวอย่างพรอมต์
- กําหนดค่าพารามิเตอร์ของโมเดล เช่น อุณหภูมิและโทเค็นเอาต์พุตสูงสุด (สําหรับ Gemini) หรือสัดส่วนภาพ และการสร้างบุคคล (สําหรับ Imagen)
- ใช้การตั้งค่าความปลอดภัยเพื่อปรับความเป็นไปได้ที่จะได้รับคำตอบที่อาจถือว่าอันตราย
แสดงความคิดเห็นเกี่ยวกับประสบการณ์การใช้งาน Vertex AI in Firebase