ย้ายข้อมูลเพื่อใช้ Vertex AI เวอร์ชัน GA ใน Firebase


Vertex AI in Firebase เปิดตัวเวอร์ชันสำหรับผู้ใช้ทั่วไป (GA) ในวันที่ 21 ตุลาคม 2024

หากคุณใช้ไลบรารี Vertex AI in Firebase เวอร์ชันตัวอย่าง (FirebaseVertexAI-Preview) คุณต้องทําการเปลี่ยนแปลงต่อไปนี้เพื่ออัปเกรดไปใช้ไลบรารีเวอร์ชัน GA (FirebaseVertexAI)

รายการการเปลี่ยนแปลงระดับสูงที่จําเป็นสําหรับการย้ายข้อมูลมีดังนี้

เปิดใช้ API ที่จำเป็นใหม่ในโปรเจ็กต์ Firebase (จำเป็นสำหรับทุกคน)

คุณต้องเปิดใช้ Vertex AI in Firebase API ในโปรเจ็กต์ Firebase และเพิ่มลงในรายการที่อนุญาตของคีย์ Firebase API ซึ่งเป็น API ใหม่ที่จําเป็นต่อการใช้ Vertex AI in Firebase เวอร์ชัน GA

  1. ในคอนโซล Firebase ให้ไปที่หน้าสร้างด้วย Gemini

  2. ในการ์ด Vertex AI in Firebase ให้คลิกเริ่มต้นใช้งานเพื่อเปิดใช้งานเวิร์กโฟลว์ที่ช่วยให้คุณเปิดใช้ API นี้และเพิ่มลงในรายการที่อนุญาตของคีย์ Firebase API

  3. คุณข้ามเวิร์กโฟลว์ที่เหลือได้ในคอนโซล

อัปเดตเป็นไลบรารีเวอร์ชัน GA (จำเป็นสำหรับทุกคน)

ทำตามวิธีการต่อไปนี้เพื่ออัปเดตโค้ดเบสของแอปให้ใช้ไลบรารีเวอร์ชัน GA

  1. เปิดโปรเจ็กต์แอปใน Xcode แล้วอัปเดตแพ็กเกจ Firebase เป็นเวอร์ชัน 11.4.0 ขึ้นไปโดยใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้

    • ตัวเลือกที่ 1: อัปเดตแพ็กเกจทั้งหมด โดยไปที่ไฟล์ > แพ็กเกจ > อัปเดตเป็นเวอร์ชันล่าสุดของแพ็กเกจ

    • ตัวเลือกที่ 2: อัปเดต Firebase ทีละรายการ โดยไปที่แพ็กเกจ Firebase ในส่วนความพึ่งพาของแพ็กเกจ คลิกขวาที่แพ็กเกจ Firebase แล้วเลือกอัปเดตแพ็กเกจ

  2. ตรวจสอบว่าตอนนี้แพ็กเกจ Firebase แสดงเวอร์ชัน 11.4.0 ขึ้นไป หากไม่ โปรดตรวจสอบว่าข้อกำหนดของแพ็กเกจที่ระบุอนุญาตให้อัปเดตเป็นเวอร์ชัน 11.6.0 ขึ้นไป

  3. เลือกเป้าหมายของแอปในเครื่องมือแก้ไขโปรเจ็กต์ แล้วไปที่ส่วนเฟรมเวิร์ก คลัง และเนื้อหาที่ฝัง

  4. เลือกปุ่ม + แล้วเพิ่ม FirebaseVertexAI จากแพ็กเกจ Firebase

  5. เลือก FirebaseVertexAI-Preview แล้วกดปุ่ม

การเปลี่ยนแปลงเพิ่มเติม (ต้องระบุโดยขึ้นอยู่กับฟีเจอร์ที่คุณใช้)

มีการใช้การเปลี่ยนแปลงหลายอย่างกับ SDK เวอร์ชัน GA ตรวจสอบรายการต่อไปนี้เพื่อดูการเปลี่ยนแปลงที่คุณอาจต้องทำในโค้ดเพื่อรองรับการใช้ SDK เวอร์ชัน GA ในแอป

  • การเรียกใช้ฟังก์ชัน
    หากใช้ฟีเจอร์นี้ก่อน GA คุณจะต้องอัปเดตวิธีกำหนดสคีมา เราขอแนะนําให้อ่านคู่มือการเรียกใช้ฟังก์ชันที่อัปเดตแล้วเพื่อดูวิธีเขียนประกาศฟังก์ชัน

  • การสร้างเอาต์พุตที่มีโครงสร้าง (เช่น JSON) โดยใช้ responseSchema
    หากใช้ฟีเจอร์นี้ก่อน GA คุณจะต้องอัปเดตวิธีกำหนดสคีมา เราขอแนะนําให้อ่านคําแนะนําเกี่ยวกับเอาต์พุตที่มีโครงสร้างฉบับใหม่เพื่อดูวิธีเขียนสคีมา JSON

  • ระยะหมดเวลา

    • เปลี่ยนระยะหมดเวลาเริ่มต้นของคําขอเป็น 180 วินาที
  • การแจกแจง

    • แทนที่ enum ประเภทส่วนใหญ่ด้วย struct ที่มีตัวแปรแบบคงที่ การเปลี่ยนแปลงนี้ช่วยให้มีความยืดหยุ่นมากขึ้นในการพัฒนา API ในลักษณะที่เข้ากันได้แบบย้อนหลัง เมื่อใช้คำสั่ง switch ตอนนี้คุณต้องใส่เคส default: เพื่อครอบคลุมค่าที่ไม่รู้จักหรือจัดการไม่ได้ รวมถึงค่าใหม่ที่เพิ่มลงใน SDK ในอนาคต

    • เปลี่ยนชื่อการแจกแจงค่า BlockThreshold เป็น HarmBlockThreshold ตอนนี้ประเภทนี้เป็น struct แล้ว

    • นําเคส unknown และ unspecified ออกจากการแจกแจงต่อไปนี้ (ตอนนี้เป็น struct) HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason และ FinishReason

    • แทนที่การแจกแจง ModelContent.Part ด้วยโปรโตคอลชื่อ Part เพื่ออนุญาตให้เพิ่มประเภทใหม่ในลักษณะที่เข้ากันได้แบบย้อนหลัง การเปลี่ยนแปลงนี้อธิบายไว้อย่างละเอียดในส่วนเนื้อหาบางส่วน

  • เนื้อหาบางส่วน

    • นำโปรโตคอล ThrowingPartsRepresentable ออก และลดความซับซ้อนของเงื่อนไขเริ่มต้นสำหรับ ModelContent เพื่อหลีกเลี่ยงข้อผิดพลาดของคอมไพเลอร์ที่เกิดขึ้นเป็นครั้งคราว รูปภาพที่เข้ารหัสไม่ถูกต้องจะยังคงแสดงข้อผิดพลาดเมื่อใช้ใน generateContent

    • แทนที่เคส ModelContent.Part ด้วยเคส struct ประเภทต่อไปนี้ซึ่งเป็นไปตามโปรโตคอล Part

      • .text ไปยัง TextPart
      • .data ไปยัง InlineDataPart
      • .fileData ไปยัง FileDataPart
      • .functionCall ไปยัง FunctionCallPart
      • .functionResponse ไปยัง FunctionResponsePart
  • หมวดหมู่อันตราย

    • เปลี่ยนHarmCategoryให้ไม่ฝังอยู่ในประเภท SafetySetting อีกต่อไป หากเรียก SafetySetting.HarmCategory ว่า HarmCategory แทนได้
  • ความคิดเห็นเกี่ยวกับความปลอดภัย

    • นําประเภท SafetyFeedback ออกเนื่องจากไม่ได้ใช้ในคําตอบใดเลย
  • ข้อมูลเมตาการอ้างอิง

    • เปลี่ยนชื่อพร็อพเพอร์ตี้ citationSources เป็น citations ใน CitationMetadata
  • จำนวนอักขระทั้งหมดที่เรียกเก็บเงินได้

    • เปลี่ยนพร็อพเพอร์ตี้ totalBillableCharacters ใน CountTokensResponse ให้เป็นแบบไม่บังคับเพื่อแสดงถึงกรณีที่ไม่มีการส่งอักขระ
  • คำตอบของผู้สมัคร

    • เปลี่ยนชื่อ CandidateResponse เป็น Candidate เพื่อให้ตรงกับแพลตฟอร์มอื่นๆ
  • การกำหนดค่าการสร้าง

    • เปลี่ยนพร็อพเพอร์ตี้สาธารณะของ GenerationConfig เป็น internal แล้ว รายการทั้งหมดจะยังคงกำหนดค่าได้ในตัวเริ่มต้น

ข้อผิดพลาดที่อาจเกิดขึ้นเกี่ยวกับการย้ายข้อมูล

ขณะย้ายข้อมูลเพื่อใช้ Vertex AI in Firebase เวอร์ชัน GA คุณอาจพบข้อผิดพลาดหากยังไม่ได้ทําการเปลี่ยนแปลงที่จําเป็นทั้งหมดตามที่อธิบายไว้ในคู่มือการย้ายข้อมูลนี้

ข้อผิดพลาด 403: Requests to this API firebasevertexai.googleapis.com ... are blocked.

หากได้รับข้อผิดพลาด 403 ที่ระบุว่า Requests to this API firebasevertexai.googleapis.com ... are blocked. โดยทั่วไปหมายความว่าคีย์ API ในไฟล์/ออบเจ็กต์การกําหนดค่า Firebase ไม่มี API ที่จําเป็นในรายการที่อนุญาตสําหรับผลิตภัณฑ์ที่คุณพยายามใช้

ตรวจสอบว่าคีย์ API ที่แอปของคุณใช้มีAPI ที่จำเป็นทั้งหมดรวมอยู่ในรายการที่อนุญาต "ข้อจำกัด API" ของคีย์ สำหรับ Vertex AI in Firebase คีย์ API ของคุณต้องมี Vertex AI in Firebase API เป็นอย่างน้อยในรายการที่อนุญาต ระบบควรเพิ่ม API นี้ลงในรายการที่อนุญาตของคีย์ API โดยอัตโนมัติเมื่อคุณเปิดใช้ API ใหม่ผ่านคอนโซล Firebase

คุณดูคีย์ API ทั้งหมดได้ในแผงAPI และบริการ > ข้อมูลเข้าสู่ระบบ ในคอนโซล Google Cloud