برای استفاده از Vertex AI SDK به جای Google AI SDK مهاجرت کنید

این صفحه نحوه انتقال از SDK های سرویس گیرنده Google AI به SDK های مشتری Vertex AI in Firebase توضیح می دهد. Vertex AI in Firebase SDK برای پلتفرم های اپل (سوئیفت)، اندروید (کاتلین و جاوا)، وب (جاوا اسکریپت) و فلاتر (دارت) در دسترس است.

مستقیماً به دستورالعمل های مهاجرت بروید

چرا مهاجرت به استفاده از Vertex AI ؟

ممکن است نسخه جایگزین Gemini API را با استفاده از Google AI Studio یا Google AI Client SDK امتحان کرده باشید. این SDK ها برای شروع با Gemini API و نمونه سازی مفید هستند. با این حال، برای برنامه‌های تلفن همراه و وب تولیدی یا در مقیاس سازمانی که مستقیماً یک Gemini API سمت کلاینت را فراخوانی می‌کنند، Firebase اکیداً توصیه می‌کند که Vertex AI Gemini API با استفاده از Firebase SDK ما فراخوانی کنید.

ویژگی های امنیتی برای موبایل و برنامه های وب

برای برنامه های موبایل و وب، امنیت بسیار مهم است و به ملاحظات خاصی نیاز دارد زیرا کد شما (از جمله تماس با Gemini API ) در یک محیط محافظت نشده اجرا می شود.

  • به طور پیش‌فرض، Vertex AI Gemini API توسط Google Cloud IAM مجاز است (به‌جای یک کلید API مانند Google AI Gemini API ). Vertex AI in Firebase SDK برای فراخوانی امن تر Vertex AI Gemini API ساخته شده است.

  • برای برنامه‌های موبایل و وب، باید از Gemini API و منابع پروژه خود (مانند مدل‌های تنظیم‌شده) در برابر سوءاستفاده‌های مشتریان غیرمجاز محافظت کنید. می‌توانید از Firebase App Check برای تأیید اینکه همه تماس‌های API از برنامه واقعی شما هستند استفاده کنید، و این ویژگی تنها در صورتی در دسترس است که از Vertex AI in Firebase SDK استفاده کنید.

اکوسیستم ساخته شده برای موبایل و برنامه های وب

Firebase پلتفرم گوگل برای توسعه اپلیکیشن های موبایل و وب است. استفاده از Vertex AI in Firebase SDK به این معنی است که برنامه‌های شما در اکوسیستمی قرار دارند که بر نیازهای برنامه‌ها و توسعه‌دهندگان تمام پشته متمرکز شده است. به عنوان مثال، شما برای انجام هر یک از موارد زیر و موارد دیگر تنظیم شده اید:

  • از Cloud Storage for Firebase برای گنجاندن فایل‌های بزرگ در درخواست‌های چندوجهی خود استفاده کنید. همچنین، از SDK های سرویس گیرنده استفاده کنید که آپلود و دانلود فایل (حتی در شرایط بد شبکه) را مدیریت می کند و امنیت بیشتری را برای داده های کاربران نهایی شما ارائه می دهد. در راهنمای راه حل ما درباره استفاده از Cloud Storage for Firebase بیشتر بیاموزید.

  • داده‌های ساخت‌یافته را با استفاده از SDK‌های پایگاه داده ساخته شده برای برنامه‌های تلفن همراه و وب (مانند Cloud Firestore ) مدیریت کنید.

  • پیکربندی‌های زمان اجرا (مانند مکان) را به صورت پویا تنظیم کنید یا مقادیر را در برنامه خود (مانند نام مدل) تغییر دهید بدون اینکه نسخه جدیدی از برنامه را با استفاده از Firebase Remote Config منتشر کنید.

مزایای اضافی استفاده از Vertex AI از Google Cloud

همانطور که استفاده شما از هوش مصنوعی مولد در برنامه و گردش کار شما بالغ می شود، ممکن است به پلتفرمی نیاز داشته باشید که راه حل های سرتاسری برای ساخت و استقرار برنامه های هوش مصنوعی مولد ارائه دهد. Google Cloud یک اکوسیستم جامع از ابزارها را فراهم می کند تا شما را قادر می سازد از قدرت هوش مصنوعی مولد، از مراحل اولیه توسعه برنامه تا استقرار برنامه، میزبانی برنامه، و مدیریت داده های پیچیده در مقیاس استفاده کنید.

پلت فرم Vertex AI از Google Cloud مجموعه ای از ابزارهای MLOps را ارائه می دهد که استفاده، استقرار و نظارت بر مدل های هوش مصنوعی را برای کارایی و قابلیت اطمینان ساده می کند. علاوه بر این، ادغام با پایگاه‌های داده، ابزارهای DevOps، ورود به سیستم، نظارت و IAM رویکردی جامع برای مدیریت کل چرخه عمر AI مولد ارائه می‌کند.

درباره موارد استفاده Vertex AI در اسناد Google Cloud بیشتر بیاموزید.

به Vertex AI in Firebase SDK ها مهاجرت کنید

مهاجرت به Vertex AI in Firebase SDK به سه مرحله اصلی نیاز دارد:

  1. یک پروژه Firebase جدید یا موجود راه اندازی کنید و برنامه خود را به Firebase متصل کنید.

  2. پایگاه کد خود را منتقل کنید، که فقط نیاز به تغییر SDK و کد اولیه (از جمله نام مدل) دارد. هیچ تغییری برای کدهایی که در واقع Gemini API را فراخوانی می کند، مورد نیاز نیست.

  3. کلیدهای API استفاده نشده را حذف کنید و APIهای استفاده نشده را غیرفعال کنید.

مرحله 1 : یک پروژه Firebase راه اندازی کنید و برنامه خود را به Firebase متصل کنید

حتی اگر قبلاً با Firebase آشنا هستید، این بخش را مرور کنید تا مطمئن شوید که پروژه و برنامه Firebase شما برای استفاده از Vertex AI in Firebase SDK تنظیم شده است.

مرحله 2 : پایگاه کد خود را انتقال دهید

برای مشاهده دستورالعمل‌های پلتفرم خاص، پلتفرم برنامه خود را انتخاب کنید.

Google AI SDK و Vertex AI in Firebase SDK به گونه‌ای ساخته شده‌اند که مهاجرت بین دو پلتفرم تا حد امکان ساده باشد.

برای مهاجرت، فقط باید SDK را که در پایگاه کد برنامه خود ادغام می‌کنید و مقدار اولیه سرویس و مدل تولیدی تغییر دهید. شما نیازی به تغییر کدی ندارید که در واقع Gemini API را فراخوانی می کند!

SDK را تغییر دهید

Google AI

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")

  // Required for one-shot operations (to use `ListenableFuture` from Reactive Streams)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Guava Android)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Vertex AI in Firebase

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

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

Java

dependencies {
  // ... other androidx dependencies

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

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

مقداردهی اولیه را تغییر دهید

Google AI

Kotlin+KTX

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
    // Access your API key as a Build Configuration variable
    apiKey = BuildConfig.apiKey
)

Java

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
    // Access your API key as a Build Configuration variable
    BuildConfig.apiKey
);

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

Vertex AI in Firebase

Kotlin+KTX

val generativeModel = Firebase.vertexAI.generativeModel("MODEL_NAME")

Java

GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

واردات را به روز کنید

تکه‌های کد زیر از کلاس‌های Chat ، Content و GenerativeModelFutures به عنوان مثال استفاده می‌کنند، اما این مورد باید برای کلاس‌های دیگر تحت همان نام بسته اعمال شود.

Google AI

Kotlin+KTX

import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

Java

import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

Vertex AI in Firebase

Kotlin+KTX

import com.google.firebase.vertexai.Chat
import com.google.firebase.vertexai.type.Content
import com.google.firebase.vertexai.java.GenerativeModuleFutures

Java

import com.google.firebase.vertexai.Chat;
import com.google.firebase.vertexai.type.Content;
import com.google.firebase.vertexai.java.GenerativeModuleFutures;

مرحله 3 : کلیدهای API استفاده نشده را حذف کنید و APIهای استفاده نشده را غیرفعال کنید

اگر دیگر نیازی به استفاده از کلید Google AI API ندارید، بهترین شیوه های امنیتی را دنبال کنید و آن را حذف کنید. می‌توانید کلیدهای Google AI API خود را در بخش کلیدهای API Google AI Studio مشاهده و حذف کنید.

همچنین، اگر دیگر از Google AI Gemini API استفاده نمی‌کنید، آن را در پروژه خود غیرفعال کنید. می توانید این کار را در کنسول Google Cloud از صفحه Generative Language API ( generativelanguage.googleapis.com ) انجام دهید. ("Generative Language API" نام رسمی Google AI Gemini API است.)

چه کار دیگری می توانید انجام دهید؟