این صفحه پاسخ به سوالات متداول (FAQs) و اطلاعات عیبیابی در مورد رابط برنامهنویسی Gemini و کیتهای توسعه نرمافزار Firebase AI Logic را ارائه میدهد.
برای عیبیابی کدهای خطا، به بخش کدهای خطا مراجعه کنید.
داشبوردهای وضعیت
رابط برنامهنویسی کاربردی Vertex AI Gemini (
Vertex Gemini APIوVertex Imagen API)
سوالات متداول عمومی
در سال ۲۰۲۴، ما مجموعهای از SDKهای کلاینت فایربیس را راهاندازی کردیم که میتوانستند از API مربوط به Vertex AI Gemini و همچنین یک دروازه پروکسی فایربیس برای محافظت از آن API در برابر سوءاستفاده و فعال کردن ادغام با سایر محصولات فایربیس استفاده کنند. ما محصول خود را "Vertex AI in Firebase" نامیدیم و این نام محصول به طور دقیق موارد استفاده موجود محصول ما را در آن زمان توصیف میکرد.
از آن زمان، ما قابلیتهای محصول خود را گسترش دادهایم. برای مثال، از ماه مه ۲۰۲۵، ما اکنون پشتیبانی از رابط برنامهنویسی نرمافزار Gemini Developer را ارائه میدهیم، از جمله امکان محافظت از رابط برنامهنویسی نرمافزار Gemini Developer در برابر سوءاستفاده با استفاده از ادغام ما با Firebase App Check .
در نتیجه، نام «Vertex AI in Firebase» دیگر به طور دقیق نشاندهندهی دامنهی گسترشیافتهی محصول ما نیست. بنابراین، نام جدید - Firebase AI Logic - مجموعهی ویژگیهای در حال تکامل ما را بهتر منعکس میکند و به ما اجازه میدهد تا در آینده به گسترش پیشنهادات خود ادامه دهیم!
برای اطمینان از دریافت آخرین ویژگیهای Firebase AI Logic (و در صورت تمایل شروع به استفاده از Gemini Developer API ) راهنمای مهاجرت را بررسی کنید.
جدول زیر تفاوتهای مهم بین دو ارائهدهندهی « Gemini API » را بهطور کلی، صرفنظر از نحوهی دسترسی شما، فهرست میکند:
| رابط برنامهنویسی کاربردی (API) توسعهدهندگان جمینی | Vertex AI Gemini API | |
|---|---|---|
| قیمتگذاری | هم در طرح قیمتگذاری رایگان Spark و هم در طرح قیمتگذاری پرداخت در محل Blaze 1 موجود است | همیشه به طرح قیمتگذاری Blaze 1 که به صورت پرداخت در محل است نیاز دارد (در صورت استفاده با Firebase AI Logic ) |
| محدودیتهای نرخ (سهمیه) | محدودیتهای صریح نرخ | از سهمیه اشتراکی پویا (DSQ) استفاده میکند که همه کاربران آن مدل در آن منطقه آن را به اشتراک میگذارند. توان عملیاتی تأمینشده (PT) در دسترس است. |
| مشخص کردن مکان دسترسی به مدل | توسط API پشتیبانی نمیشود | پشتیبانی شده توسط API |
| پشتیبانی از آدرسهای اینترنتی Cloud Storage | توسط API 2 پشتیبانی نمیشود | فایلهای عمومی و فایلهای محافظتشده توسط Firebase Security Rules |
| پشتیبانی از URL های یوتیوب و URL های مرورگر | فقط آدرسهای اینترنتی یوتیوب | آدرسهای اینترنتی یوتیوب و آدرسهای اینترنتی مرورگر |
۱ دو ارائهدهندهی API قیمتگذاری پرداخت به ازای استفادهی متفاوتی دارند (برای اطلاعات بیشتر به مستندات مربوطه مراجعه کنید).
۲- فایل API مربوط به Gemini Developer API از طریق کیتهای توسعه نرمافزار Firebase AI Logic پشتیبانی نمیشود.
جدول زیر فهرستی از ویژگیهای متداول مورد پرسش برای دو ارائهدهندهی « Gemini API » را نشان میدهد. این جدول بهطور خاص هنگام استفاده از SDKهای کلاینت Firebase AI Logic اعمال میشود.
| ویژگی | رابط برنامهنویسی کاربردی (API) توسعهدهندگان جمینی | Vertex AI Gemini API |
|---|---|---|
| پشتیبانی از مدلهای Gemini | پشتیبانی شده | پشتیبانی شده |
| پشتیبانی از Gemini Live API | پشتیبانی شده | پشتیبانی شده |
| ادغام با Firebase App Check | پشتیبانی شده | پشتیبانی شده |
| سازگار با Firebase Remote Config | پشتیبانی شده | پشتیبانی شده |
| پشتیبانی از نظارت هوش مصنوعی در کنسول Firebase | پشتیبانی شده | پشتیبانی شده |
بله، شما میتوانید هر دو ارائهدهندهی « Gemini API » را در پروژهی Firebase خود فعال داشته باشید و از هر دو API در خود برنامه استفاده کنید.
برای جابجایی بین ارائهدهندگان API در کد خود، فقط مطمئن شوید که سرویس backend را به طور مناسب در کد خود تنظیم کردهاید .
برای مشاهده محتوای خاص ارائه دهنده، ارائه دهنده API Gemini خود را انتخاب کنید |
برای استفاده از کیتهای توسعه نرمافزار (SDK) فایربیس هوش مصنوعی لاجیک (Firebase AI Logic) با رابط برنامهنویسی نرمافزار (API) توسعهدهنده جمینی (Gemini Developer API )، پروژه شما باید دو رابط برنامهنویسی نرمافزار (API) زیر را فعال داشته باشد:
- رابط برنامهنویسی کاربردی (API) توسعهدهنده Gemini (
generativelanguage.googleapis.com) - رابط برنامهنویسی کاربردی منطق هوش مصنوعی فایربیس (
firebasevertexai.googleapis.com)
شما باید این دو API را با استفاده از کنسول Firebase فعال کنید:
در کنسول Firebase ، به صفحه منطق هوش مصنوعی فایربیس بروید.
روی شروع به کار کلیک کنید.
برای شروع کار با رابط برنامهنویسی کاربردی (API) توسعهدهنده Gemini، این گزینه را انتخاب کنید.
این یک گردش کار هدایتشده را راهاندازی میکند که دو API را برای شما فعال میکند. کنسول همچنین یک کلید API Gemini ایجاد میکند و API مربوط به Firebase AI Logic را به لیست مجوزهای کلید API Firebase شما اضافه میکند.
برای منطق هوش مصنوعی فایربیس ، ما سعی میکنیم راهاندازی پروژه فایربیس شما را تا حد امکان آسان کنیم تا از ارائهدهنده API انتخابی Gemini شما استفاده کند. این شامل فعال کردن APIهای مورد نیاز در پروژه فایربیس شما در طول مراحل خاص، مانند گردش کار هدایتشده در کنسول Firebase میشود.
با این حال، اگر تصمیم دارید از Firebase AI Logic یا یکی از ارائه دهندگان API Gemini استفاده نکنید، میتوانید API های مرتبط را در پروژه Firebase خود غیرفعال کنید.
برای استفاده از کیتهای توسعه نرمافزار (SDK) فایربیس هوش مصنوعی لاجیک (Firebase AI Logic) با رابط برنامهنویسی نرمافزار (API) توسعهدهنده جمینی (Gemini Developer API )، پروژه شما باید دو رابط برنامهنویسی نرمافزار (API) زیر را فعال داشته باشد:
- رابط برنامهنویسی کاربردی (API) توسعهدهنده Gemini (
generativelanguage.googleapis.com) - رابط برنامهنویسی کاربردی منطق هوش مصنوعی فایربیس (
firebasevertexai.googleapis.com)
اگر میخواهید استفاده از Firebase AI Logic را به طور کامل متوقف کنید:
برای رفتن به صفحات API مربوطه در کنسول Google Cloud ، روی هر لینک API بالا کلیک کنید، سپس روی مدیریت کلیک کنید.
برای تأیید اینکه هیچ استفادهای از API نشده است، به برگه معیارها (Metrics) مراجعه کنید.
اگر هنوز میخواهید API را غیرفعال کنید، روی غیرفعال کردن API در بالای صفحه کلیک کنید.
API مربوط به منطق هوش مصنوعی فایربیس را از فهرست APIهای منتخب که میتوان با استفاده از کلیدهای API فایربیس شما فراخوانی کرد، حذف کنید. برای آشنایی با نحوهی تغییر این فهرست ، این پرسشهای متداول دربارهی فهرست مجاز کلیدهای API فایربیس را مرور کنید.
اگر میخواهید به استفاده از Firebase AI Logic ادامه دهید، اما به جای آن از API مربوط به Vertex AI Gemini استفاده کنید:
به صفحه Gemini Developer API در کنسول Google Cloud بروید، سپس روی مدیریت کلیک کنید.
برای تأیید اینکه هیچ استفادهای از API نشده است، به برگه معیارها (Metrics) مراجعه کنید.
اگر هنوز میخواهید API را غیرفعال کنید، روی غیرفعال کردن API در بالای صفحه کلیک کنید.
مطمئن شوید که پروژه شما APIهای مورد نیاز برای Vertex AI Gemini API را فعال کرده است.
برای استفاده از SDK های Firebase AI Logic با API مربوط به Vertex AI Gemini ، پروژه شما باید دو API زیر را فعال داشته باشد:
- رابط برنامهنویسی کاربردی هوش مصنوعی ورتکس (
aiplatform.googleapis.com) - رابط برنامهنویسی کاربردی منطق هوش مصنوعی فایربیس (
firebasevertexai.googleapis.com)
اگر میخواهید استفاده از Firebase AI Logic را به طور کامل متوقف کنید:
برای رفتن به صفحات API مربوطه در کنسول Google Cloud ، روی هر لینک API بالا کلیک کنید، سپس روی مدیریت کلیک کنید.
برای تأیید اینکه هیچ استفادهای از API نشده است، به برگه معیارها (Metrics) مراجعه کنید.
اگر هنوز میخواهید API را غیرفعال کنید، روی غیرفعال کردن API در بالای صفحه کلیک کنید.
API مربوط به منطق هوش مصنوعی فایربیس را از فهرست APIهای منتخب که میتوان با استفاده از کلیدهای API فایربیس شما فراخوانی کرد، حذف کنید. برای آشنایی با نحوهی تغییر این فهرست ، این پرسشهای متداول دربارهی فهرست مجاز کلیدهای API فایربیس را مرور کنید.
اگر میخواهید به استفاده از Firebase AI Logic ادامه دهید، اما به جای آن از Gemini Developer API استفاده کنید:
به صفحه Vertex AI API در کنسول Google Cloud بروید، سپس روی مدیریت کلیک کنید.
برای تأیید اینکه هیچ استفادهای از API نشده است، به برگه معیارها (Metrics) مراجعه کنید.
اگر هنوز میخواهید API را غیرفعال کنید، روی غیرفعال کردن API در بالای صفحه کلیک کنید.
مطمئن شوید که پروژه شما APIهای مورد نیاز برای Gemini Developer API را فعال کرده است.
فهرست مدلهای پشتیبانیشده را ببینید. ما مرتباً قابلیتهای جدیدی به SDKها اضافه میکنیم، بنابراین برای بهروزرسانیها (و همچنین در یادداشتهای انتشار، وبلاگها و پستهای اجتماعی) به این بخش سوالات متداول مراجعه کنید.
رابط برنامهنویسی کاربردی (API) توسعهدهندگان جمینی
هر دو مدل فونداسیون Gemini و Imagen .
توجه داشته باشید که رابط برنامهنویسی نرمافزار Gemini Developer (صرف نظر از نحوه دسترسی به آن) فقط از مدلهای پایدار خاص Imagen پشتیبانی میکند.
Vertex AI Gemini API
- هر دو مدل فونداسیون Gemini و Imagen .
صرف نظر از ارائه دهنده API Gemini انتخابی شما
منطق هوش مصنوعی فایربیس از موارد زیر پشتیبانی نمیکند :
مدلهای Gemini غیر پایه (مانند مدلهای PaLM، مدلهای تنظیمشده یا مدلهای مبتنی بر Gemma).
مدلهای قدیمیتر ایمیجن یا
imagen-3.0-capability-001.
وقتی یک نسخه پایدار از مدل را منتشر میکنیم، تمام تلاشمان را میکنیم تا قبل از کنار گذاشتن مدل ، حداقل به مدت یک سال در دسترس باشد.
تاریخ خاموش شدن یک مدل را از کجا پیدا کنیم؟
در اینجا چند روش برای یافتن تاریخ خاموش شدن یک مدل آورده شده است:
در زمان انتشار : ما تاریخ خاموش شدن مورد انتظار هر مدل را در چندین جای مستندات ارائه دهنده API Gemini و همچنین در مستندات Firebase فهرست کردهایم (به صفحه مدلهای پشتیبانی شده مراجعه کنید).
با نزدیک شدن به تاریخ خاموشی : گوگل ایمیلهایی را برای اعضای مربوطه در پروژه ارسال میکند و ما در یادداشتهای انتشار و سایر کانالها، یادآوریهایی را در مورد هرگونه خاموشی قریبالوقوع منتشر میکنیم (برای مثال، یادآوری تاریخهای خاموشی برای مدلهای پایدار Gemini 1.5 و 1.0).
اگر مدلی که استفاده میکنید در شرف خاموش شدن باشد، چه باید کرد؟
یک مدل مناسب که در حال حاضر پشتیبانی میشود و نام مدل آن را پیدا کنید.
نام مدل مورد استفاده برنامه خود را قبل از تاریخ خاموش شدن بهروزرسانی کنید؛ در غیر این صورت، هرگونه درخواست به آن مدل با خطای ۴۰۴ مواجه خواهد شد.
شما نام مدل را هنگام مقداردهی اولیه، هنگام ایجاد یک نمونه
GenerativeModel،LiveModelیاImagenModel، تنظیم میکنید. حتماً توصیههای مهم زیر در مورد استفاده از Firebase Remote Config را مرور کنید.هنگام استفاده از Firebase AI Logic ، معمولاً نیازی به تغییر هیچ یک از کدهایی که در واقع مدل را فراخوانی میکنند، ندارید.
برنامه خود را آزمایش کنید تا مطمئن شوید که پاسخها همچنان مطابق انتظار هستند.
مدلهای پایدار Imagen - تاریخهای خاموش شدن و جایگزینها
- تمام مدلهای ایمیجن در ۲۴ ژوئن ۲۰۲۶ خاموش خواهند شد.
جایگزینی : برنامههای خود را برای استفاده از مدلهای Gemini Image (مدلهای "نانو موز") منتقل کنید .
مدلهای پایدار Gemini 2.0 - تاریخهای خاموشی و مدلهای جایگزین
Gemini 2.0 Flash و Gemini 2.0 Flash‑Lite :
gemini-2.0-flash-001(و نام مستعار بهروزرسانیشده خودکار آنgemini-2.0-flash)
gemini-2.0-flash-lite-001(و نام مستعار بهروزرسانیشده خودکار آنgemini-2.0-flash-lite)۶ فوریه ۲۰۲۶: این مدلها دیگر برای استفاده در پروژههایی که قبلاً از این مدل استفاده نکردهاند، در دسترس نخواهند بود.
۳۱ مارس ۲۰۲۶: این مدلها از رده خارج خواهند شد.
توجه داشته باشید که مدلهای پایدار Gemini Live API 2.0 تحت تأثیر قرار نگرفتهاند.
جایگزینی : به مدل Gemini 2.5 (مانند gemini-2.5-flash-lite ) مهاجرت کنید یا یکی از مدلهای جدید Gemini 3 (مانند gemini-3.1-flash-lite-preview ) را امتحان کنید.
مدلهای پایدار Gemini 1.5 و 1.0 - تاریخهای خاموش شدن و تعویضها
مدلهای Gemini 1.5 Pro :
-
gemini-1.5-pro-002(وgemini-1.5-pro): 24 سپتامبر 2025 -
gemini-1.5-pro-001: 24 مه 2025
-
مدلهای Gemini 1.5 Flash :
-
gemini-1.5-flash-002(وgemini-1.5-flash): 24 سپتامبر 2025 -
gemini-1.5-flash-001: ۲۴ مه ۲۰۲۵
-
مدلهای Gemini 1.0 Pro Vision : ۲۱ آوریل ۲۰۲۵ (قبلاً برای ۹ آوریل ۲۰۲۵ برنامهریزی شده بود)
مدلهای Gemini 1.0 Pro : ۲۱ آوریل ۲۰۲۵ (قبلاً برای ۹ آوریل ۲۰۲۵ برنامهریزی شده بود)
جایگزینی : به مدل Gemini 2.5 (مانند gemini-2.5-flash-lite ) مهاجرت کنید یا یکی از مدلهای جدید Gemini 3 (مانند gemini-3.1-flash-lite-preview ) را امتحان کنید.
به طور پیشفرض، Firebase AI Logic محدودیت درخواست برای هر کاربر را ۱۰۰ درخواست در دقیقه (RPM) تعیین میکند.
اگر میخواهید محدودیت نرخ هر کاربر را تنظیم کنید، باید تنظیمات سهمیه را برای API منطق هوش مصنوعی فایربیس تنظیم کنید.
درباره سهمیه API Firebase AI Logic بیشتر بدانید. در آن صفحه، همچنین میتوانید نحوه مشاهده و ویرایش سهمیه خود را بیاموزید.
| اکشن | مجوزهای مورد نیاز IAM | نقش(های) IAM که به طور پیشفرض شامل مجوزهای مورد نیاز هستند |
|---|---|---|
| ارتقاء صورتحساب به طرح قیمتگذاری پرداخت در حین استفاده (Blaze) | firebase.billingPlans.updateresourcemanager.projects.createBillingAssignmentresourcemanager.projects.deleteBillingAssignment | مالک |
| فعال کردن APIها در پروژه | serviceusage.services.enable | ویرایشگر مالک |
| ایجاد برنامه فایربیس | firebase.clients.create | مدیر فایربیس ویرایشگر مالک |
به بخش «مدیریت دادهها و هوش مصنوعی مسئولانه» مراجعه کنید.
بله، در هر درخواست چندوجهی، شما همیشه باید موارد زیر را ارائه دهید:
نوع فایل
mimeTypeاست. به یک استثنا در زیر مراجعه کنید.فایل. میتوانید فایل را به صورت داده درونخطی ارائه دهید یا فایل را با استفاده از URL آن ارائه دهید.
در مورد انواع فایلهای ورودی پشتیبانیشده، نحوهی تعیین نوع MIME و دو گزینه برای ارائهی فایل در فایلهای ورودی پشتیبانیشده و الزامات، اطلاعات کسب کنید.
استثنا در گنجاندن نوع MIME در درخواست شما
یک استثنا در ارائه نوع MIME، ورودیهای تصویر درونخطی برای درخواستهای برنامههای بومی پلتفرم اندروید و اپل است.
کیتهای توسعه نرمافزار Firebase AI Logic برای پلتفرمهای اندروید و اپل، روشی ساده و سازگار با پلتفرم را برای مدیریت تصاویر در درخواستها ارائه میدهند - همه تصاویر (صرف نظر از فرمت آنها) قبل از ارسال به سرور، در سمت کلاینت با کیفیت ۸۰٪ به JPEG تبدیل میشوند. این بدان معناست که وقتی تصاویر را به عنوان دادههای درونخطی با استفاده از کیتهای توسعه نرمافزار پلتفرمهای اندروید و اپل ارائه میدهید، نیازی به مشخص کردن نوع MIME در درخواست ندارید .
این روش سادهسازیشده در مستندات Firebase AI Logic در مثالهایی برای ارسال تصاویر کدگذاریشده با base64 در درخواستها نشان داده شده است.
در اینجا اطلاعات اضافی مربوط به پلتفرم در مورد این ویژگی آمده است:
برای اندروید :
شما میتوانید از روش سادهشده برای مدیریت انواع تصاویر بومی پلتفرم (
Bitmap) در اعلانهای چندوجهی که حاوی تصاویر به عنوان دادههای درونخطی هستند، بهره ببرید (به مثال مراجعه کنید).برای کنترل بیشتر بر فرمتها و تبدیلهای تصویر، میتوانید تصاویر را به عنوان
InlineDataPartارائه دهید و نوع MIME خاص را نیز ارائه دهید. برای مثال:content { inlineData(/* PNG as byte array */, "image/png") }
برای پلتفرمهای اپل :
شما میتوانید از روش سادهشده برای مدیریت انواع تصاویر بومی پلتفرم (
UIImage،NSImage،CIImageوCGImage) در اعلانهای چندوجهی که حاوی تصاویر به عنوان دادههای درونخطی هستند، بهره ببرید (به مثال مراجعه کنید).برای کنترل بیشتر بر فرمتها و تبدیلهای تصویر، میتوانید تصاویر را به عنوان
InlineDataPartارائه دهید و نوع MIME خاص را نیز ارائه دهید. برای مثال:InlineDataPart(data: Data(/* PNG Data */), mimeType: "image/png")
ویژگیهای زیر توسط مدلهای مختلف و ارائهدهندگان API پشتیبانی میشوند، اما هنگام استفاده از Firebase AI Logic در دسترس نیستند :
- ذخیره سازی متن
- تنظیم دقیق یک مدل
- تولید جاسازیها
- بازیابی معنایی
اگر میخواهید این موارد را به عنوان درخواست ویژگی اضافه کنید یا به یک درخواست ویژگی موجود رأی دهید، به Firebase UserVoice مراجعه کنید.
برای برنامههای پلتفرم اپل، از Firebase SDK نسخه ۱۲.۵.۰ به بعد، Firebase AI Logic اکنون تحت ماژول FirebaseAILogic توزیع شده است. ما این تغییر را بدون مشکل و سازگار با نسخههای قبلی ایجاد کردهایم.
چرا این تغییر را ایجاد کردیم؟
ما قبلاً این سرویس را تحت ماژول FirebaseAI توزیع میکردیم. با این حال، به دلایل زیر مجبور شدیم نام آن را به FirebaseAILogic تغییر دهیم:
از تداخل نام بین ماژول و کلاس که باعث ایجاد مشکل در توزیعهای دودویی میشود، جلوگیری کنید.
ما را قادر میسازد تا از ماکروهای Swift برای توسعه ویژگیهای آینده استفاده کنیم.
اگر در حال ارتقا به نسخه ۱۲.۵.۰+ هستید، چه کاری باید انجام دهید؟
تغییر نام ماژول به FirebaseAILogic پایدار و سازگار با نسخههای قبلی است. با این حال، در نهایت، ممکن است ماژول قدیمی را در کنار انتشار یک نسخه جدید و بزرگ Firebase SDK (که در حال حاضر بازه زمانی آن مشخص نیست) حذف کنیم.
هیچ تغییری برای تغییر نام ماژول لازم نیست، اما توصیه میکنیم موارد زیر را انجام دهید:
هنگام انتخاب وابستگیهای Swift PM،
FirebaseAILogicرا انتخاب کنید (به جایFirebaseAI).دستورات import را به
FirebaseAILogic(به جایFirebaseAI) تغییر دهید.
سوالات متداول در مورد کلید API جمینی
این سوالات متداول فقط در صورتی قابل استفاده هستند که از رابط برنامهنویسی کاربردی (API) توسعهدهندگان Gemini استفاده کنید.
رابط برنامهنویسی Gemini Developer API از یک «کلید رابط برنامهنویسی Gemini » برای احراز هویت تماسگیرنده استفاده میکند. بنابراین، اگر از رابط برنامهنویسی Gemini Developer API از طریق کیتهای توسعه نرمافزار Firebase AI Logic استفاده میکنید، برای برقراری تماس با آن API به یک کلید رابط برنامهنویسی Gemini معتبر در پروژه Firebase خود نیاز دارید.
«کلید API Gemini » فقط به معنای کلید API است که API توسعهدهنده Gemini را در فهرست مجاز API خود دارد.
وقتی در کنسول Firebase مراحل راهاندازی Firebase AI Logic را طی میکنید، یک کلید API مربوط به Gemini ایجاد میکنیم که فقط به Gemini Developer API محدود میشود و سرویس پروکسی Firebase AI Logic را برای استفاده از این کلید API تنظیم میکنیم. این کلید API مربوط به Gemini که توسط Firebase تولید شده است، در صفحه اعتبارنامههای کنسول Google Cloud ، کلید API مربوط به Gemini Developer (که به طور خودکار توسط Firebase ایجاد شده است) نامگذاری شده است.
درباره محدودیتهای API برای کلیدهای API بیشتر بدانید.
هنگام استفاده از کیتهای توسعه نرمافزار Firebase AI Logic ، کلید API مربوط به Gemini خود را به کدبیس برنامه اضافه نمیکنید . درباره نحوه ایمن نگه داشتن کلید API مربوط به Gemini خود بیشتر بدانید.
هنگام استفاده از SDK های Firebase AI Logic ، کلید API مربوط به Gemini خود را به کدبیس برنامه خود اضافه نکنید .
در واقع، هنگام توسعه با SDK های Firebase AI Logic ، شما مستقیماً با کلید API Gemini خود تعامل ندارید. در عوض، سرویس پروکسی Firebase AI Logic ما به صورت داخلی کلید API Gemini را در هر درخواست به API توسعهدهنده Gemini - کاملاً در backend - لحاظ میکند.
هنگام استفاده از کیتهای توسعه نرمافزار Firebase AI Logic ، بعید است که نیاز به تغییر کلید API Gemini خود داشته باشید. با این حال، در اینجا دو مورد وجود دارد که ممکن است نیاز به تغییر داشته باشید:
اگر تصادفاً کلید را گم کردهاید و میخواهید آن را با یک کلید امن جدید جایگزین کنید.
اگر تصادفاً کلید را حذف کردید. توجه داشته باشید که میتوانید کلید را ظرف 30 روز پس از حذف، بازیابی کنید .
در اینجا نحوه تغییر کلید API Gemini که توسط SDK های Firebase AI Logic استفاده می شود، آورده شده است:
اگر کلید API Gemini تولید شده توسط Firebase شما هنوز وجود دارد، آن را حذف کنید.
شما میتوانید این کلید API را در پنل APIs & Services > Credentials کنسول Google Cloud حذف کنید. نام آن به صورت زیر است:
کلید API توسعهدهنده Gemini (بهطور خودکار توسط Firebase ایجاد شده است) .در همان صفحه از کنسول Google Cloud ، یک کلید API جدید ایجاد کنید. پیشنهاد میکنیم نام آن را چیزی شبیه به این بگذارید:
کلید API توسعهدهنده Gemini برای Firebase .به این کلید API جدید، محدودیتهای API را اضافه کنید و فقط Generated Language API را انتخاب کنید.
«رابط برنامهنویسی کاربردی زبان مولد» (Generative Language API) چیزی است که گاهی اوقات در کنسول Google Cloud به رابط برنامهنویسی کاربردی توسعهدهندگان Gemini گفته میشود.هیچ محدودیتی برای برنامه اعمال نکنید ؛ در غیر این صورت سرویس پروکسی Firebase AI Logic آنطور که انتظار میرود کار نخواهد کرد.
دستور زیر را اجرا کنید تا این کلید جدید به عنوان کلید API Gemini که سرویس پروکسی Firebase AI Logic باید از آن استفاده کند، تنظیم شود.
PROJECT_ID="PROJECT_ID" GENERATIVE_LANGUAGE_API_KEY="DEVELOPER_CREATED_GEMINI_API_KEY" curl \ -X PATCH \ -H "x-goog-user-project: ${PROJECT_ID}" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://firebasevertexai.googleapis.com/v1beta/projects/${PROJECT_ID}/locations/global/config" \ -d "{\"generativeLanguageConfig\": {\"apiKey\": \"${GENERATIVE_LANGUAGE_API_KEY}\"}}"درباره gcloud CLI اطلاعات کسب کنید.
مطمئن شوید که این کلید API جدید Gemini را به کدبیس برنامه خود اضافه نمیکنید . درباره نحوه ایمن نگه داشتن کلید API Gemini خود بیشتر بدانید.
خیر — شما نباید از «کلید API فایربیس» خود به عنوان کلید API جمینی استفاده کنید. اکیداً توصیه میکنیم که API توسعهدهنده جمینی را به لیست مجاز کلید API فایربیس خود اضافه نکنید .
کلید API فایربیس شما، کلید API است که در فایل پیکربندی فایربیس یا شیءای که برای اتصال برنامه خود به فایربیس به کدبیس برنامه خود اضافه میکنید، فهرست شده است. وقتی از این کلید فقط با APIهای مرتبط با فایربیس (مانند منطق هوش مصنوعی فایربیس ) استفاده میکنید، اشکالی ندارد که کلید API فایربیس خود را در کد خود وارد کنید . اطلاعات مهم در مورد کلیدهای API فایربیس را بیاموزید .
در پنل APIs & Services > Credentials کنسول Google Cloud ، کلیدهای API فایربیس به این شکل هستند:

از آنجا که برای کار کردن APIهای مرتبط با Firebase، باید کلید API فایربیس خود را به کدبیس برنامهتان اضافه کنید، و از آنجا که API توسعهدهنده Gemini از طریق کلید API مجاز است، اکیداً توصیه میکنیم که API توسعهدهنده Gemini (که در کنسول Google Cloud با نام "API Generative Language" شناخته میشود) را به لیست مجاز API برای کلید API فایربیس خود اضافه نکنید . در این صورت، API توسعهدهنده Gemini را در معرض سوءاستفاده احتمالی قرار میدهید.
این سوالات متداول، برخی از بهترین شیوههای توصیهشده برای ایمن نگهداشتن کلید API Gemini شما را شرح میدهد.
اگر مستقیماً از طریق برنامه تلفن همراه یا وب خود، رابط برنامهنویسی کاربردی توسعهدهندگان Gemini را فراخوانی میکنید:
- از SDK های کلاینت Firebase AI Logic استفاده کنید.
- کلید API مربوط به Gemini خود را به کدبیس برنامهتان اضافه نکنید .
Firebase AI Logic یک سرویس پروکسی ارائه میدهد که به صورت داخلی کلید API Gemini شما را در هر درخواست به Gemini Developer API - کاملاً در backend - قرار میدهد.
علاوه بر این، موارد زیر را اکیداً توصیه میکنیم:
به محض اینکه توسعهی جدی برنامهی خود را آغاز کردید، آن را با Firebase App Check ادغام کنید تا از منابع backend و همچنین APIهای مورد استفاده برای دسترسی به مدلهای مولد محافظت کنید.
کلید API Gemini تولید شده توسط Firebase را خارج از Firebase AI Logic دوباره استفاده نکنید . اگر برای مورد استفاده دیگری به کلید API Gemini نیاز دارید، یک کلید جداگانه ایجاد کنید.
به طور کلی، شما نباید کلید API Gemini تولید شده توسط Firebase را تغییر دهید. این کلید در کنسول Google Cloud با نام کلید API توسعهدهنده Gemini (که به طور خودکار توسط Firebase ایجاد شده است) نامگذاری شده است.
هیچ API اضافی را به لیست مجاز API برای کلید API Gemini تولید شده توسط Firebase خود اضافه نکنید . در لیست مجاز API، کلید API Gemini شما فقط باید API توسعهدهنده Gemini (که در کنسول Google Cloud "API Generative Language" نامیده میشود) را داشته باشد.
هیچ محدودیتی برای برنامه اعمال نکنید ؛ در غیر این صورت سرویس پروکسی Firebase AI Logic آنطور که انتظار میرود کار نخواهد کرد.
اگر کلید API Gemini شما لو رفته است، دستورالعملها را برای تغییر کلید API Gemini که برای فراخوانی API توسعهدهندگان Gemini استفاده میشود، دنبال کنید.
همچنین، بهترین شیوههای توصیهشده برای ایمن نگهداشتن کلید API Gemini خود را مرور کنید.
درباره تجربه خود با Firebase AI Logic بازخورد دهید