این صفحه نحوه انتقال از 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 به سه مرحله اصلی نیاز دارد:
یک پروژه Firebase جدید یا موجود راه اندازی کنید و برنامه خود را به Firebase متصل کنید.
پایگاه کد خود را منتقل کنید، که فقط نیاز به تغییر SDK و کد اولیه (از جمله نام مدل) دارد. هیچ تغییری برای کدهایی که در واقع Gemini API را فراخوانی می کند، مورد نیاز نیست.
کلیدهای API استفاده نشده را حذف کنید و APIهای استفاده نشده را غیرفعال کنید.
مرحله 1 : یک پروژه Firebase راه اندازی کنید و برنامه خود را به Firebase متصل کنید
حتی اگر قبلاً با Firebase آشنا هستید، این بخش را مرور کنید تا مطمئن شوید که پروژه و برنامه Firebase شما برای استفاده از Vertex AI in Firebase SDK تنظیم شده است.
در کنسول Firebase ، به صفحه Build with Gemini بروید.
روی Vertex AI in Firebase کلیک کنید تا یک گردش کاری راه اندازی شود که به شما کمک می کند کارهای زیر را انجام دهید:
پروژه خود را ارتقا دهید تا از طرح قیمت گذاری Blaze استفاده کنید.
API های مورد نیاز را در پروژه خود فعال کنید ( Vertex AI API و Vertex AI in Firebase API).
به مرحله بعدی در این راهنما ادامه دهید تا پایگاه کد خود را برای استفاده از Vertex AI in Firebase SDK منتقل کنید.
وارد کنسول Firebase شوید.
روی ایجاد پروژه کلیک کنید و سپس از یکی از گزینه های زیر استفاده کنید:
گزینه 1 : با وارد کردن نام پروژه جدید در اولین مرحله از گردش کار «ایجاد پروژه»، یک پروژه کاملاً جدید Firebase (و پروژه Google Cloud زیربنایی آن به صورت خودکار) ایجاد کنید.
گزینه 2 : «افزودن Firebase» به پروژه Google Cloud موجود با انتخاب نام پروژه Google Cloud خود از منوی کشویی در مرحله اول گردش کار «ایجاد پروژه».
میتوانید از پروژه Google Cloud که توسط Google AI Studio برای شما ایجاد شده است، هنگام ایجاد کلید Google AI API خود استفاده کنید. میتوانید نام آن پروژه را در بخش کلید API Google AI Studio بیابید.
می توانید از هر پروژه Google Cloud موجود دیگری استفاده کنید.
توجه داشته باشید که وقتی از شما خواسته شد، برای استفاده از Vertex AI in Firebase SDK نیازی به تنظیم Google Analytics ندارید .
در کنسول Firebase ، به صفحه Build with Gemini بروید.
روی Vertex AI in Firebase کلیک کنید تا یک گردش کاری راه اندازی شود که به شما کمک می کند کارهای زیر را انجام دهید:
پروژه خود را ارتقا دهید تا از طرح قیمت گذاری Blaze استفاده کنید.
API های مورد نیاز را در پروژه خود فعال کنید ( Vertex AI API و Vertex AI in Firebase API).
برای اتصال برنامه خود به Firebase که شامل این وظایف است، در گردش کار کنسول ادامه دهید:
ثبت برنامه خود در پروژه Firebase
افزودن پیکربندی Firebase به پایگاه کد برنامه شما.
مرحله 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 است.)
چه کار دیگری می توانید انجام دهید؟
- هم Google AI و هم Vertex AI یک تجربه «زمین بازی» رابط کاربری وب به نام «استودیوی هوش مصنوعی» را برای آزمایش اعلانها و پارامترهای مدل ارائه میکنند. در اسناد Google Cloud نحوه انتقال درخواست های Google AI Studio به Vertex AI Studio را بیاموزید.