این صفحه پاسخ سوالات متداول (سؤالات متداول) و اطلاعات عیب یابی در مورد Gemini API و Firebase AI Logic SDK را ارائه می دهد. برای سؤالات بیشتر، سؤالات متداول Gemini API را در اسناد Google Cloud بررسی کنید.
داشبوردهای وضعیت
Vertex AI Gemini API (
Vertex Gemini API
وVertex Imagen API
)
سوالات متداول عمومی
در سال 2024، مجموعهای از SDK مشتری Firebase را راهاندازی کردیم که میتوانست از Vertex AI Gemini API و همچنین یک دروازه پروکسی Firebase برای محافظت از آن API در برابر سوء استفاده و فعال کردن ادغام با سایر محصولات Firebase استفاده کند. ما محصول خود را "Vertex AI in Firebase" نامیدیم و این نام محصول به طور دقیق موارد استفاده در دسترس محصول ما را در آن زمان توضیح داد.
با این حال، از آن زمان، ما قابلیت های محصول خود را گسترش داده ایم. برای مثال، از ماه مه 2025، ما اکنون از Gemini Developer API پشتیبانی میکنیم، از جمله توانایی محافظت از Gemini Developer API در برابر سوء استفاده با استفاده از ادغام با Firebase App Check .
در نتیجه، نام "Vertex AI در Firebase" دیگر به طور دقیق دامنه گسترده محصول ما را نشان نمی دهد. بنابراین، یک نام جدید - Firebase AI Logic - مجموعه ویژگی های در حال تکامل ما را بهتر منعکس می کند و به ما امکان می دهد در آینده به گسترش پیشنهادات خود ادامه دهیم!
راهنمای مهاجرت را بررسی کنید تا مطمئن شوید همه آخرین ویژگیهای Firebase AI Logic را دریافت کردهاید (و به صورت اختیاری از Gemini Developer API استفاده کنید).
در اینجا چند تفاوت بین دو ارائه دهنده " Gemini API " به طور کلی بدون توجه به نحوه دسترسی شما به آنها وجود دارد:
Gemini Developer API یک "سطح رایگان" را همراه با قیمت گذاری پرداختی ارائه می دهد.
Vertex AI Gemini API هنگامی که با Firebase AI Logic استفاده می شود، همیشه به برنامه قیمت گذاری Blaze نیاز دارد.
توجه داشته باشید که دو ارائهدهنده API قیمتهای پرداختی متفاوتی دارند (در اسناد مربوطه آنها بیشتر بیاموزید).
Gemini Developer API دارای محدودیت نرخ صریح است.
Vertex AI Gemini API از «سهمیه مشترک پویا (DSQ)» استفاده میکند که هرکسی که از آن مدل در آن منطقه استفاده میکند به اشتراک گذاشته میشود. همچنین می توانید به صورت اختیاری توان عملیاتی (PT) را تنظیم کنید.
- فقط Vertex AI Gemini API به شما امکان می دهد مکانی را که در آن به مدل دسترسی دارید انتخاب کنید.
جدول زیر در دسترس بودن ویژگیهایی که معمولاً درباره ویژگیهای دو ارائهدهنده « Gemini API » سؤال میشوند، فهرست میکند. این جدول به طور خاص در هنگام استفاده از SDK های مشتری Firebase AI Logic اعمال می شود.
ویژگی | Gemini Developer API | Vertex AI Gemini API |
---|---|---|
پشتیبانی از مدل های Gemini | پشتیبانی می شود | پشتیبانی می شود |
پشتیبانی از مدل های Imagen | پشتیبانی می شود (هنوز برای یونیتی نه) | پشتیبانی می شود (هنوز برای یونیتی نه) |
پشتیبانی از مدل های Veo | هنوز پشتیبانی نشده است | هنوز پشتیبانی نشده است |
پشتیبانی از Gemini Live API | هنوز پشتیبانی نشده است | پشتیبانی می شود (فقط اندروید، فلاتر و یونیتی) |
ادغام با Firebase App Check | پشتیبانی می شود | پشتیبانی می شود |
سازگار با Firebase Remote Config | پشتیبانی می شود | پشتیبانی می شود |
پشتیبانی از مانیتورینگ هوش مصنوعی در کنسول Firebase | هنوز پشتیبانی نشده است | پشتیبانی می شود |
پشتیبانی از URL های Cloud Storage | هنوز پشتیبانی نشده 1 | فایل های عمومی و فایل های محافظت شده توسط Firebase Security Rules |
پشتیبانی از URLهای یوتیوب و URLهای مرورگر | فقط آدرس های یوتیوب | آدرس های یوتیوب و URL های مرورگر |
1 Files API برای Gemini Developer API از طریق Firebase AI Logic SDK پشتیبانی نمیشود.
بله، شما می توانید هر دو ارائه دهنده " Gemini API " را در پروژه Firebase خود فعال کنید و می توانید از هر دو API در خود برنامه خود استفاده کنید.
برای جابهجایی بین ارائهدهندگان API در کدتان، فقط مطمئن شوید که سرویس پشتیبان را بهطور مناسب در کد خود تنظیم کردهاید .
ارائه دهنده API Gemini خود را برای مشاهده محتوای خاص ارائه دهنده انتخاب کنید |
برای استفاده از Firebase AI Logic SDK با Gemini Developer API ، پروژه شما باید دو API زیر را فعال داشته باشد:
- Gemini Developer API (
generativelanguage.googleapis.com
) - Firebase AI Logic API (
firebasevertexai.googleapis.com
)
شما باید این دو API را با استفاده از کنسول Firebase فعال کنید:
در کنسول Firebase ، به صفحه Firebase AI Logic بروید.
روی Get start کلیک کنید.
برای شروع با Gemini Developer API را انتخاب کنید.
این یک گردش کار هدایت شده را راه اندازی می کند که دو API را برای شما فعال می کند. این کنسول همچنین یک کلید API Gemini ایجاد میکند و همچنین Firebase AI Logic API را به لیست مجاز برای کلید Firebase API شما اضافه میکند.
فهرستی از مدلهای پشتیبانیشده را در «درباره مدلهای پشتیبانیشده بدانید» ببینید. ما اغلب قابلیتهای جدیدی را به SDK اضافه میکنیم، بنابراین برای بهروزرسانیها (و همچنین در یادداشتهای انتشار، وبلاگها و پستهای اجتماعی) دوباره به این سؤالات متداول مراجعه کنید.
Gemini Developer API
می توانید از مدل های فونداسیون Gemini و Imagen استفاده کنید.
توجه داشته باشید که Gemini Developer API (صرف نظر از نحوه دسترسی به آن) فقط از تولید تصویر توسط مدلهای imagen-3.0-fast-generate-002
، imagen-4.0-generate-preview-06-06
و imagen-4.0-ultra-generate-preview-06-06
پشتیبانی میکند.
Vertex AI Gemini API
می توانید از مدل های فونداسیون Gemini و Imagen استفاده کنید.
صرف نظر از ارائه دهنده Gemini API انتخابی شما
Firebase AI Logic موارد زیر را پشتیبانی نمی کند:
مدلهای Gemini بدون پایه (مانند مدلهای PalM، مدلهای تنظیمشده یا مدلهای مبتنی بر Gemma).
مدل های قدیمی Imagen یا
imagen-3.0-capability-001
.
هنگامی که یک نسخه مدل پایدار را منتشر می کنیم، تلاش می کنیم اطمینان حاصل کنیم که حداقل یک سال در دسترس است. ما این «تاریخ بازنشستگی» را چندین مکان در اسناد ارائهدهنده Firebase و Gemini API فهرست میکنیم (برای مثال، در صفحه «مدلها» اسناد Firebase ).
هنگامی که یک مدل بازنشسته می شود، هر درخواستی برای آن مدل با خطای 404 شکست می خورد. به همین دلیل، ما قویاً توصیه میکنیم که Firebase Remote Config را راهاندازی و از آن استفاده کنید تا بتوانید بهصورت پویا مدل و نسخه را در برنامه خود بدون انتشار نسخه جدیدی از برنامه خود تغییر دهید .
وقتی برنامه خود را برای استفاده از نسخه مدل جدید به روز می کنید، توصیه می کنیم برنامه خود را آزمایش کنید تا مطمئن شوید که پاسخ ها همچنان مطابق انتظار هستند. توجه داشته باشید که هنگام استفاده از Firebase AI Logic ، معمولاً هیچ تغییری برای کدهایی که در واقع به مدل فراخوانی میشوند، نیاز نیست.
در اینجا تاریخ بازنشستگی برای مدل های مختلف پایدار آورده شده است:
مدل های Gemini 1.5 Pro :
-
gemini-1.5-pro-002
(وgemini-1.5-pro
): 24 سپتامبر 2025 -
gemini-1.5-pro-001
: 24 مه 2025
-
مدل های فلش جمینی 1.5 :
-
gemini-1.5-flash-002
(وgemini-1.5-flash
): ۲۴ سپتامبر ۲۰۲۵ -
gemini-1.5-flash-001
: 24 مه 2025
-
مدلهای Gemini 1.0 Pro Vision : 21 آوریل 2025 (قبلاً برای 09 آوریل 2025 برنامهریزی شده بود)
مدلهای Gemini 1.0 Pro : 21 آوریل 2025 (قبلاً برای 09 آوریل 2025 برنامهریزی شده بود)
به طور پیشفرض، Firebase AI Logic محدودیت درخواست برای هر کاربر را 100 درخواست در دقیقه (RPM) تعیین میکند.
اگر میخواهید محدودیت نرخ هر کاربر خود را تنظیم کنید، باید تنظیمات سهمیه برای Firebase AI Logic API را تنظیم کنید.
درباره سهمیه Firebase AI Logic API بیشتر بیاموزید. در آن صفحه، میتوانید نحوه مشاهده و ویرایش سهمیه خود را نیز بیاموزید.
اقدام | مجوزهای IAM مورد نیاز | نقش(های) IAM که به طور پیش فرض شامل مجوزهای مورد نیاز است |
---|---|---|
صورتحساب را به طرح قیمتگذاری پرداختی (Blaze) ارتقا دهید | firebase.billingPlans.update resourcemanager.projects.createBillingAssignment resourcemanager.projects.deleteBillingAssignment | مالک |
فعال کردن APIها در پروژه | serviceusage.services.enable | ویرایشگر مالک |
برنامه Firebase را ایجاد کنید | firebase.clients.create | Firebase Admin ویرایشگر مالک |
به مدیریت داده و هوش مصنوعی مسئول مراجعه کنید.
بله، در هر درخواست چند وجهی، همیشه باید موارد زیر را ارائه دهید:
mimeType
فایل. یک استثنا را در زیر ببینید.فایل. میتوانید فایل را بهعنوان دادههای درون خطی ارائه کنید یا فایل را با استفاده از URL آن ارائه کنید.
در مورد انواع فایل ورودی پشتیبانی شده، نحوه تعیین نوع MIME و دو گزینه برای ارائه فایل در فایل های ورودی پشتیبانی شده و الزامات اطلاعات کسب کنید.
استثنا برای گنجاندن نوع MIME در درخواست شما
یک استثنا برای ارائه نوع MIME، ورودیهای تصویر درون خطی برای درخواستهای برنامههای پلتفرم اندروید و اپل است.
Firebase AI Logic SDK برای پلتفرمهای اندروید و اپل یک روش ساده و سازگار با پلتفرم برای رسیدگی به تصاویر در درخواستها ارائه میکند - همه تصاویر (بدون توجه به فرمت آنها) قبل از ارسال به سرور، سمت مشتری با کیفیت 80 درصد به JPEG تبدیل میشوند. این بدان معناست که وقتی تصاویر را بهعنوان دادههای درون خطی با استفاده از SDK پلتفرمهای Android و Apple ارائه میکنید، نیازی به تعیین نوع 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")
ذخیرهسازی متن، جستجو بهعنوان ابزار، زمینگذاری با جستجوی Google، اجرای کد، تنظیم دقیق مدل، تولید جاسازیها و بازیابی معنایی توسط مدلهای مختلف یا Vertex AI Gemini API پشتیبانی میشوند، اما هنگام استفاده از Firebase AI Logic در دسترس نیستند .
اگر میخواهید این موارد را به عنوان درخواست ویژگی اضافه کنید یا به درخواست ویژگی موجود رأی دهید، از Firebase UserVoice بازدید کنید.
سوالات متداول کلید Gemini API
این پرسشهای متداول فقط در صورتی قابل اجرا هستند که از Gemini Developer API استفاده میکنید.
Gemini Developer API از یک "کلید API Gemini " برای مجوز دادن به تماس گیرنده استفاده می کند. بنابراین، اگر از Gemini Developer API از طریق Firebase AI Logic SDK استفاده میکنید، برای برقراری تماس با آن API به یک کلید API معتبر Gemini در پروژه Firebase خود نیاز دارید.
یک "کلید API Gemini " فقط به معنای کلید API است که API توسعه دهنده Gemini را در لیست مجاز API خود دارد.
هنگامی که گردش کار راه اندازی Firebase AI Logic را در کنسول Firebase انجام می دهید، یک کلید API Gemini ایجاد می کنیم که فقط به Gemini Developer API محدود می شود و سرویس پروکسی Firebase AI Logic را برای استفاده از این کلید API راه اندازی می کنیم. این کلید Gemini API ایجاد شده توسط Firebase در صفحه اطلاعات کاربری کنسول Google Cloud به نام کلید API توسعه دهنده Gemini (به طور خودکار توسط Firebase ایجاد شده است) .
درباره محدودیتهای API برای کلیدهای API بیشتر بدانید.
هنگام استفاده از Firebase AI Logic SDK، کلید API Gemini خود را به پایگاه کد برنامه خود اضافه نمی کنید. درباره نحوه ایمن نگه داشتن کلید Gemini API بیشتر بیاموزید.
هنگام استفاده از Firebase AI Logic SDK، کلید Gemini API خود را به پایگاه کد برنامه خود اضافه نکنید .
در واقع، هنگام توسعه با Firebase AI Logic SDK، شما مستقیماً با کلید Gemini API خود تعامل ندارید. در عوض، سرویس پروکسی Firebase AI Logic ما به صورت داخلی کلید Gemini API را در هر درخواست به Gemini Developer API - کاملاً در باطن، شامل میشود.
هنگام استفاده از Firebase AI Logic SDK، بعید است که نیاز به تغییر کلید Gemini API خود داشته باشید. با این حال، در اینجا دو مورد وجود دارد که ممکن است لازم باشد:
اگر به طور تصادفی کلید لو رفت و می خواهید آن را با یک کلید امن جدید جایگزین کنید.
اگر به طور تصادفی کلید را حذف کردید. توجه داشته باشید که می توانید کلید را ظرف 30 روز پس از حذف حذف کنید .
در اینجا نحوه تغییر کلید Gemini API که توسط Firebase AI Logic SDK استفاده می شود، آمده است:
اگر کلید Gemini API ایجاد شده توسط Firebase هنوز وجود دارد، آن را حذف کنید.
میتوانید این کلید API را در APIs & Services > Panel Credentials کنسول Google Cloud حذف کنید. نام دارد:
کلید API توسعه دهنده Gemini (به طور خودکار توسط Firebase ایجاد شده است) .در همان صفحه از کنسول Google Cloud ، یک کلید API جدید ایجاد کنید. پیشنهاد می کنیم نام آن را به این صورت نامگذاری کنید:
کلید API توسعه دهنده Gemini برای Firebase .به این کلید API جدید، محدودیتهای API را اضافه کنید و فقط Generative Language API را انتخاب کنید.
«API زبان مولد» چیزی است که گاهی اوقات در کنسول Google Cloud به Gemini Developer API گفته می شود.هیچ محدودیتی برای برنامه اضافه نکنید . در غیر این صورت سرویس پروکسی Firebase AI Logic آنطور که انتظار می رود کار نخواهد کرد.
برای تنظیم این کلید جدید به عنوان کلید Gemini API که سرویس پروکسی 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 را به پایگاه کد برنامه خود اضافه نکنید . درباره نحوه ایمن نگه داشتن کلید Gemini API بیشتر بیاموزید.
نه - شما نباید از "کلید API Firebase" به عنوان کلید API Gemini خود استفاده کنید. اکیداً توصیه می کنیم که Gemini Developer API را به لیست مجاز برای کلید Firebase API خود اضافه نکنید .
کلید Firebase API شما کلید API است که در فایل پیکربندی Firebase یا شیء شما فهرست شده است که برای اتصال برنامه خود به Firebase به پایگاه کد برنامه خود اضافه می کنید. وقتی از کلید فقط با APIهای مرتبط با Firebase (مانند Firebase AI Logic ) استفاده میکنید، اشکالی ندارد که کلید API Firebase خود را در کد خود قرار دهید. اطلاعات مهم در مورد کلیدهای API Firebase بیاموزید .
در پنل APIs & Services > Credentials کنسول Google Cloud ، کلیدهای Firebase API به این صورت است:
از آنجا که برای کار کردن API های مرتبط با Firebase باید کلید Firebase API خود را به پایگاه کد برنامه خود اضافه کنید، و چون Gemini Developer API از طریق کلید API مجاز است، اکیداً توصیه می کنیم که Gemini Developer API (که در کنسول Google Cloud کنسول Google Cloud نامیده می شود) را به API API خود اضافه نکنید . اگر این کار را انجام دهید، API توسعه دهنده Gemini را در معرض سوء استفاده احتمالی قرار می دهید.
این پرسشهای متداول برخی از بهترین روشهای توصیهشده برای ایمن نگهداشتن کلید Gemini API را شرح میدهد.
اگر مستقیماً از تلفن همراه یا برنامه وب خود با Gemini Developer API تماس می گیرید:
- از Firebase AI Logic SDK مشتری استفاده کنید.
- کلید Gemini API خود را به پایگاه کد برنامه خود اضافه نکنید .
Firebase AI Logic یک سرویس پروکسی ارائه می دهد که به طور داخلی کلید Gemini API شما را در هر درخواست به Gemini Developer API - کاملاً در باطن، شامل می شود.
علاوه بر این، ما به شدت موارد زیر را توصیه می کنیم:
به محض اینکه شروع به توسعه جدی برنامه خود کردید، با Firebase App Check یکپارچه شوید تا به محافظت از منابع پشتیبان خود و همچنین API های مورد استفاده برای دسترسی به مدل های تولیدی کمک کنید.
از کلید API Gemini تولید شده توسط Firebase خارج از Firebase AI Logic استفاده مجدد نکنید . اگر برای استفاده دیگری به یک کلید API Gemini نیاز دارید، یک کلید جداگانه ایجاد کنید.
به طور کلی، نباید کلید Gemini API ایجاد شده توسط Firebase را تغییر دهید. نام این کلید Gemini Developer API key (به طور خودکار توسط Firebase ایجاد شده) در کنسول Google Cloud است.
هیچ API اضافی را به لیست مجاز API برای کلید Gemini API ایجاد شده توسط Firebase اضافه نکنید . در لیست مجاز API، کلید Gemini API شما باید فقط دارای API توسعه دهنده Gemini باشد (که در کنسول Google Cloud "API زبان تولیدی" نامیده می شود).
هیچ محدودیتی برای برنامه اضافه نکنید . در غیر این صورت سرویس پروکسی Firebase AI Logic آنطور که انتظار می رود کار نخواهد کرد.
اگر کلید Gemini API شما به خطر افتاده است، دستورالعملها را برای تغییر کلید Gemini API که برای فراخوانی Gemini Developer API استفاده میشود، دنبال کنید.
همچنین، بهترین روش های توصیه شده را برای ایمن نگه داشتن کلید API Gemini خود مرور کنید.
عیب یابی خطاها
اگر میخواهید از Gemini Developer API استفاده کنید و یک خطای 404 دریافت میکنید که میگوید Firebase AI Logic genai config not found
، معمولاً به این معنی است که پروژه Firebase شما یک کلید Gemini API معتبر برای استفاده با SDK مشتری Firebase AI Logic ندارد.
در اینجا محتمل ترین دلایل این خطا وجود دارد:
هنوز پروژه Firebase خود را برای Gemini Developer API تنظیم نکردهاید.
چه باید کرد:
در کنسول Firebase ، به صفحه Firebase AI Logic بروید. روی Get start کلیک کنید و سپس Gemini Developer API را انتخاب کنید. API را فعال کنید، کنسول پروژه شما را برای Gemini Developer API راهاندازی میکند. پس از تکمیل گردش کار، دوباره درخواست خود را امتحان کنید.اگر اخیراً گردش کار راهاندازی Firebase AI Logic را در کنسول Firebase انجام دادهاید، ممکن است کلید Gemini API شما هنوز برای همه خدمات پشتیبانی مورد نیاز در همه مناطق در دسترس نباشد.
چه باید کرد:
چند دقیقه صبر کنید و سپس دوباره درخواست خود را امتحان کنید.ممکن است کلید Gemini API شما از پروژه Firebase شما حذف شده باشد.
چه باید کرد:
با نحوه تغییر کلید Gemini API استفاده شده توسط Firebase AI Logic آشنا شوید.
اگر میخواهید یک درخواست چندوجهی با یک Cloud Storage for Firebase ارسال کنید، ممکن است با خطای 400 زیر مواجه شوید:
Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
این خطا توسط پروژه ای ایجاد می شود که هنگام فعال شدن Vertex AI API در پروژه، عوامل خدمات مورد نیاز به طور خودکار به درستی ارائه نشده است. این یک مشکل شناخته شده در مورد برخی از پروژه ها است و ما در حال کار بر روی یک تعمیر جهانی هستیم.
در اینجا راه حلی برای تعمیر پروژه و ارائه صحیح این عوامل خدماتی وجود دارد تا بتوانید در درخواست های چندوجهی خود Cloud Storage for Firebase وارد کنید. شما باید مالک پروژه باشید و فقط باید یک بار این مجموعه از وظایف را برای پروژه خود تکمیل کنید.
دسترسی و احراز هویت با gcloud CLI .
ساده ترین راه برای انجام این کار از Cloud Shell است. در اسناد Google Cloud بیشتر بیاموزید.اگر از شما خواسته شد، دستورالعملهای نمایش داده شده در ترمینال را دنبال کنید تا gcloud CLI در برابر پروژه Firebase شما اجرا شود.
شما به ID پروژه Firebase خود نیاز دارید که می توانید آن را در بالای تنظیمات پروژه در کنسول Firebase بیابید.
با اجرای دستور زیر، عوامل سرویس مورد نیاز را در پروژه خود تهیه کنید:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/endpoints -d ''
چند دقیقه صبر کنید تا مطمئن شوید که عوامل سرویس ارائه شده اند، و سپس دوباره درخواست چندوجهی خود را که شامل Cloud Storage for Firebase URL است ارسال کنید.
اگر پس از چند دقیقه انتظار همچنان این خطا را دریافت میکنید، با پشتیبانی Firebase تماس بگیرید.
اگر یک خطای 400 دریافت کردید که می گوید API key not valid. Please pass a valid API key.
، معمولاً به این معنی است که کلید API در فایل/شیء پیکربندی Firebase شما وجود ندارد یا برای استفاده با برنامه و/یا پروژه Firebase شما تنظیم نشده است.
بررسی کنید که کلید API فهرست شده در فایل/شیء پیکربندی Firebase با کلید API برنامه شما مطابقت داشته باشد. میتوانید همه کلیدهای API خود را در APIs & Services > پنل اعتبارنامهها در کنسول Google Cloud مشاهده کنید.
اگر متوجه شدید که آنها مطابقت ندارند، یک فایل/شیء پیکربندی Firebase جدید تهیه کنید و سپس آن را جایگزین کنید که در برنامه شما است. فایل/شیء پیکربندی تازه باید حاوی یک کلید API معتبر برای برنامه و پروژه Firebase شما باشد.
اگر یک خطای 403 دریافت کردید که میگوید Requests to this API firebasevertexai.googleapis.com ... are blocked.
، معمولاً به این معنی است که کلید API در فایل/شیء پیکربندی Firebase شما یک API مورد نیاز را در لیست مجاز خود برای محصولی که میخواهید استفاده کنید ندارد.
مطمئن شوید که کلید API مورد استفاده برنامه شما دارای همه APIهای مورد نیاز موجود در فهرست مجاز "محدودیت های API" کلید است . برای Firebase AI Logic ، کلید API شما باید حداقل Firebase AI Logic API را در لیست مجاز خود داشته باشد.
میتوانید همه کلیدهای API خود را در APIs & Services > پنل اعتبارنامهها در کنسول Google Cloud مشاهده کنید.
اگر یک خطای 403 دریافت کردید که می گوید PERMISSION_DENIED: The caller does not have permission.
، معمولاً به این معنی است که کلید API در فایل/شیء پیکربندی Firebase شما متعلق به پروژه Firebase دیگری است.
بررسی کنید که کلید API فهرست شده در فایل/شیء پیکربندی Firebase با کلید API برنامه شما مطابقت داشته باشد. میتوانید همه کلیدهای API خود را در APIs & Services > پنل اعتبارنامهها در کنسول Google Cloud مشاهده کنید.
اگر متوجه شدید که آنها مطابقت ندارند، یک فایل/شیء پیکربندی Firebase جدید تهیه کنید و سپس آن را جایگزین کنید که در برنامه شما است. فایل/شیء پیکربندی تازه باید حاوی یک کلید API معتبر برای برنامه و پروژه Firebase شما باشد.
درباره تجربه خود با Firebase AI Logic بازخورد بدهید
این صفحه پاسخ سوالات متداول (سؤالات متداول) و اطلاعات عیب یابی در مورد Gemini API و Firebase AI Logic SDK را ارائه می دهد. برای سؤالات بیشتر، سؤالات متداول Gemini API را در اسناد Google Cloud بررسی کنید.
داشبوردهای وضعیت
Vertex AI Gemini API (
Vertex Gemini API
وVertex Imagen API
)
سوالات متداول عمومی
در سال 2024، مجموعهای از SDK مشتری Firebase را راهاندازی کردیم که میتوانست از Vertex AI Gemini API و همچنین یک دروازه پروکسی Firebase برای محافظت از آن API در برابر سوء استفاده و فعال کردن ادغام با سایر محصولات Firebase استفاده کند. ما محصول خود را "Vertex AI in Firebase" نامیدیم و این نام محصول به طور دقیق موارد استفاده در دسترس محصول ما را در آن زمان توضیح داد.
با این حال، از آن زمان، ما قابلیت های محصول خود را گسترش داده ایم. برای مثال، از ماه مه 2025، ما اکنون از Gemini Developer API پشتیبانی میکنیم، از جمله توانایی محافظت از Gemini Developer API در برابر سوء استفاده با استفاده از ادغام با Firebase App Check .
در نتیجه، نام "Vertex AI در Firebase" دیگر به طور دقیق دامنه گسترده محصول ما را نشان نمی دهد. بنابراین، یک نام جدید - Firebase AI Logic - مجموعه ویژگی های در حال تکامل ما را بهتر منعکس می کند و به ما امکان می دهد در آینده به گسترش پیشنهادات خود ادامه دهیم!
راهنمای مهاجرت را بررسی کنید تا مطمئن شوید همه آخرین ویژگیهای Firebase AI Logic را دریافت کردهاید (و به صورت اختیاری از Gemini Developer API استفاده کنید).
در اینجا چند تفاوت بین دو ارائه دهنده " Gemini API " به طور کلی بدون توجه به نحوه دسترسی شما به آنها وجود دارد:
Gemini Developer API یک "سطح رایگان" را همراه با قیمت گذاری پرداختی ارائه می دهد.
Vertex AI Gemini API هنگامی که با Firebase AI Logic استفاده می شود، همیشه به برنامه قیمت گذاری Blaze نیاز دارد.
توجه داشته باشید که دو ارائهدهنده API قیمتهای پرداختی متفاوتی دارند (در اسناد مربوطه آنها بیشتر بیاموزید).
Gemini Developer API دارای محدودیت نرخ صریح است.
Vertex AI Gemini API از «سهمیه مشترک پویا (DSQ)» استفاده میکند که هرکسی که از آن مدل در آن منطقه استفاده میکند به اشتراک گذاشته میشود. همچنین می توانید به صورت اختیاری توان عملیاتی (PT) را تنظیم کنید.
- فقط Vertex AI Gemini API به شما امکان می دهد مکانی را که در آن به مدل دسترسی دارید انتخاب کنید.
جدول زیر در دسترس بودن ویژگیهایی که معمولاً درباره ویژگیهای دو ارائهدهنده « Gemini API » سؤال میشوند، فهرست میکند. این جدول به طور خاص در هنگام استفاده از SDK های مشتری Firebase AI Logic اعمال می شود.
ویژگی | Gemini Developer API | Vertex AI Gemini API |
---|---|---|
پشتیبانی از مدل های Gemini | پشتیبانی می شود | پشتیبانی می شود |
پشتیبانی از مدل های Imagen | پشتیبانی می شود (هنوز برای یونیتی نه) | پشتیبانی می شود (هنوز برای یونیتی نه) |
پشتیبانی از مدل های Veo | هنوز پشتیبانی نشده است | هنوز پشتیبانی نشده است |
پشتیبانی از Gemini Live API | هنوز پشتیبانی نشده است | پشتیبانی می شود (فقط اندروید، فلاتر و یونیتی) |
ادغام با Firebase App Check | پشتیبانی می شود | پشتیبانی می شود |
سازگار با Firebase Remote Config | پشتیبانی می شود | پشتیبانی می شود |
پشتیبانی از مانیتورینگ هوش مصنوعی در کنسول Firebase | هنوز پشتیبانی نشده است | پشتیبانی می شود |
پشتیبانی از URL های Cloud Storage | هنوز پشتیبانی نشده 1 | فایل های عمومی و فایل های محافظت شده توسط Firebase Security Rules |
پشتیبانی از URLهای یوتیوب و URLهای مرورگر | فقط آدرس های یوتیوب | آدرس های یوتیوب و URL های مرورگر |
1 Files API برای Gemini Developer API از طریق Firebase AI Logic SDK پشتیبانی نمیشود.
بله، شما می توانید هر دو ارائه دهنده " Gemini API " را در پروژه Firebase خود فعال کنید و می توانید از هر دو API در خود برنامه خود استفاده کنید.
برای جابهجایی بین ارائهدهندگان API در کدتان، فقط مطمئن شوید که سرویس پشتیبان را بهطور مناسب در کد خود تنظیم کردهاید .
ارائه دهنده API Gemini خود را برای مشاهده محتوای خاص ارائه دهنده انتخاب کنید |
برای استفاده از Firebase AI Logic SDK با Gemini Developer API ، پروژه شما باید دو API زیر را فعال داشته باشد:
- Gemini Developer API (
generativelanguage.googleapis.com
) - Firebase AI Logic API (
firebasevertexai.googleapis.com
)
شما باید این دو API را با استفاده از کنسول Firebase فعال کنید:
در کنسول Firebase ، به صفحه Firebase AI Logic بروید.
روی Get start کلیک کنید.
برای شروع با Gemini Developer API را انتخاب کنید.
این یک گردش کار هدایت شده را راه اندازی می کند که دو API را برای شما فعال می کند. این کنسول همچنین یک کلید API Gemini ایجاد میکند و همچنین Firebase AI Logic API را به لیست مجاز برای کلید Firebase API شما اضافه میکند.
فهرستی از مدلهای پشتیبانیشده را در «درباره مدلهای پشتیبانیشده بدانید» ببینید. ما اغلب قابلیتهای جدیدی را به SDK اضافه میکنیم، بنابراین برای بهروزرسانیها (و همچنین در یادداشتهای انتشار، وبلاگها و پستهای اجتماعی) دوباره به این سؤالات متداول مراجعه کنید.
Gemini Developer API
می توانید از مدل های فونداسیون Gemini و Imagen استفاده کنید.
توجه داشته باشید که Gemini Developer API (صرف نظر از نحوه دسترسی به آن) فقط از تولید تصویر توسط مدلهای imagen-3.0-fast-generate-002
، imagen-4.0-generate-preview-06-06
و imagen-4.0-ultra-generate-preview-06-06
پشتیبانی میکند.
Vertex AI Gemini API
می توانید از مدل های فونداسیون Gemini و Imagen استفاده کنید.
صرف نظر از ارائه دهنده Gemini API انتخابی شما
Firebase AI Logic موارد زیر را پشتیبانی نمی کند:
مدلهای Gemini بدون پایه (مانند مدلهای PalM، مدلهای تنظیمشده یا مدلهای مبتنی بر Gemma).
مدل های قدیمی Imagen یا
imagen-3.0-capability-001
.
هنگامی که یک نسخه مدل پایدار را منتشر می کنیم، تلاش می کنیم اطمینان حاصل کنیم که حداقل یک سال در دسترس است. ما این "تاریخ بازنشستگی" را در چندین مکان در اسناد ارائه دهنده Firebase و Gemini API (به عنوان مثال ، در صفحه "مدل" مستندات Firebase ) ذکر می کنیم.
هنگامی که یک مدل بازنشسته می شود ، هرگونه درخواست برای آن مدل با خطای 404 شکست می خورد. به همین دلیل ، ما اکیداً توصیه می کنیم تنظیم و استفاده از Firebase Remote Config تنظیم کنید تا بتوانید بدون انتشار نسخه جدیدی از برنامه خود ، به صورت پویا مدل و نسخه را در برنامه خود تغییر دهید .
هنگامی که برنامه خود را برای استفاده از یک نسخه مدل جدید به روز می کنید ، توصیه می کنیم برنامه خود را آزمایش کنید تا اطمینان حاصل شود که پاسخ ها هنوز همانطور که انتظار می رود وجود دارد. توجه داشته باشید که هنگام استفاده از منطق AI Firebase ، معمولاً برای هیچ یک از کد که در واقع به مدل فراخوانی می شود ، اصلاح لازم نیست.
در اینجا تاریخ بازنشستگی برای مدلهای مختلف پایدار آورده شده است:
GEMINI 1.5 MODELS PRO :
-
gemini-1.5-pro-002
(وgemini-1.5-pro
): 24 سپتامبر 2025 -
gemini-1.5-pro-001
: 24 مه 2025
-
مدل های فلش جمینی 1.5 :
-
gemini-1.5-flash-002
(وgemini-1.5-flash
): 24 سپتامبر 2025 -
gemini-1.5-flash-001
: 24 مه 2025
-
Gemini 1.0 Pro Vision Models: 21 آوریل 2025 (قبلاً برای 09 آوریل 2025 برنامه ریزی شده بود)
Gemini 1.0 Pro Models: 21 آوریل 2025 (قبلاً برای 09 آوریل 2025 برنامه ریزی شده بود)
به طور پیش فرض ، Firebase AI Logic حد درخواست را برای هر کاربر با 100 درخواست در دقیقه (دور در دقیقه) تعیین می کند.
اگر می خواهید محدودیت نرخ هر کاربر خود را تنظیم کنید ، باید تنظیمات سهمیه را برای API منطق AI Firebase تنظیم کنید.
در مورد سهمیه API API Logic Firebase اطلاعات بیشتری کسب کنید. در آن صفحه ، همچنین می توانید نحوه مشاهده و ویرایش سهمیه خود را یاد بگیرید.
اقدام | مجوزهای IAM مورد نیاز | نقش (های) IAM که به طور پیش فرض مجوزهای لازم را شامل می شود |
---|---|---|
صورتحساب را به برنامه قیمت گذاری Pay-As-You-Go (Blaze) ارتقا دهید | firebase.billingPlans.update resourcemanager.projects.createBillingAssignment resourcemanager.projects.deleteBillingAssignment | مالک |
API را در پروژه فعال کنید | serviceusage.services.enable | ویرایشگر مالک |
ایجاد برنامه Firebase | firebase.clients.create | سرپرست آتش نشانی ویرایشگر مالک |
به مدیریت داده ها و مسئول AI مراجعه کنید.
بله ، در هر درخواست مولتیودال ، همیشه باید موارد زیر را ارائه دهید:
mimeType
پرونده. یک استثنا را در زیر مشاهده کنید.فایل. می توانید پرونده را به صورت داده درون خطی تهیه کنید یا پرونده را با استفاده از URL آن تهیه کنید.
در مورد انواع فایل ورودی پشتیبانی شده ، نحوه مشخص کردن نوع MIME و دو گزینه برای ارائه پرونده در پرونده های ورودی پشتیبانی شده و الزامات اطلاعات کسب کنید.
استثناء شامل نوع تقلید در درخواست شما
یک استثناء برای ارائه نوع MIME ، ورودی های تصویر درون خطی برای درخواست های برنامه های بومی Android و Apple Platform است.
Firebase AI Logic SDK برای سیستم عامل های Android و Apple روشی ساده و دوستانه برای رسیدگی به تصاویر در درخواست ها ارائه می دهد-همه تصاویر (بدون توجه به قالب آنها) قبل از ارسال به سرور ، مشتری را به JPEG با 80 ٪ کیفیت تبدیل می کنند. این بدان معنی است که وقتی تصاویر را به عنوان داده های درون خطی با استفاده از SDK های سیستم عامل Android و Apple ارائه می دهید ، نیازی به مشخص کردن نوع MIME در درخواست نیست .
این کار ساده شده در مستندات منطق AI Firebase AI در مثالهایی برای ارسال تصاویر رمزگذاری شده 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 vertex ai gemini پشتیبانی می شود ، اما در هنگام استفاده از منطق Firebase AI در دسترس نیستند .
اگر می خواهید این موارد را به عنوان درخواست های ویژگی اضافه کنید یا به درخواست ویژگی موجود رای دهید ، به Firebase Uservoice مراجعه کنید.
متداول اصلی API Gemini
این سؤالات متداول فقط در صورت استفاده از API توسعه دهنده Gemini قابل استفاده است.
توسعه دهنده Gemini API از "کلید API Gemini " برای مجوز تماس گیرنده استفاده می کند. بنابراین ، اگر از API توسعه دهنده Gemini از طریق SDK های Firebase AI Logic استفاده می کنید ، در پروژه Firebase خود به یک کلید API Gemini معتبر نیاز دارید تا با آن API تماس بگیرید.
"کلید API Gemini " فقط به معنای یک کلید API است که دارای API Gemini API در لیست API Allist خود است.
هنگامی که شما از طریق گردش کار تنظیمات منطق AI Firebase در کنسول Firebase می روید ، ما یک کلید API Gemini را ایجاد می کنیم که فقط به API توسعه دهنده Gemini محدود شده است ، و ما سرویس پروکسی Logic Logic Firebase را برای استفاده از این کلید API تنظیم می کنیم. این کلید API Gemini Gemini تولید شده توسط Firebase در صفحه اعتبار سنجی کنسول Google Cloud به نام Gemini Developer API Key (Auto ایجاد شده توسط Firebase) نامگذاری شده است.
در مورد محدودیت های API برای کلیدهای API بیشتر بدانید.
شما هنگام استفاده از SDK های Firebase AI Logic ، کلید API Gemini خود را به قسمت کد برنامه خود اضافه نمی کنید. در مورد چگونگی ایمن نگه داشتن کلید API Gemini خود بیشتر بدانید.
هنگام استفاده از SDK های Firebase AI Logic ، کلید API Gemini خود را به قسمت کد برنامه خود اضافه نکنید .
در حقیقت ، در حالی که با SDK های Logic Logic Firebase در حال توسعه هستید ، شما مستقیماً با کلید API Gemini خود در تعامل نیستید. درعوض ، سرویس پروکسی Logic Logic Firebase ما در هر درخواست به API توسعه دهنده Gemini - کاملاً در پس زمینه ، کلید API Gemini را شامل می شود.
هنگام استفاده از SDK های Logic Firebase AI ، بعید است که شما نیاز به تغییر کلید API Gemini خود داشته باشید. با این حال ، در اینجا دو مورد وجود دارد که ممکن است شما نیاز داشته باشید:
اگر به طور تصادفی کلید را بیرون کشیدید و می خواهید آن را با یک کلید امن جدید جایگزین کنید.
اگر به طور تصادفی کلید را حذف کردید. توجه داشته باشید که می توانید ظرف 30 روز از حذف کلید را کم کنید .
در اینجا نحوه تغییر کلید API Gemini که توسط SDK های Logic Firebase AI استفاده می شود ، آورده شده است:
اگر هنوز هم کلید API Gemini Gemini تولید شده توسط Firebase شما وجود دارد ، آن را حذف کنید.
می توانید این کلید API را در پانل APIS & Services > Credentials کنسول Google Cloud حذف کنید. نامگذاری شده است:
توسعه دهنده Gemini API Key (خودکار ایجاد شده توسط Firebase) .در همان صفحه کنسول Google Cloud ، یک کلید جدید API ایجاد کنید. ما پیشنهاد می کنیم چیزی مانند:
توسعه دهنده Gemini API Key for Firebase .به این کلید جدید API ، محدودیت های API را اضافه کنید و فقط API زبان تولیدی را انتخاب کنید.
"API زبان تولیدی" همان چیزی است که API توسعه دهنده Gemini گاهی اوقات در کنسول Google Cloud خوانده می شود.محدودیت برنامه را اضافه نکنید . در غیر این صورت سرویس پروکسی منطق AI Firebase همانطور که انتظار می رفت کار نمی کند.
دستور زیر را اجرا کنید تا این کلید جدید را به عنوان کلید Gemini API تنظیم کنید که سرویس پروکسی Logic Firebase AI باید از آن استفاده کند.
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 Firebase" خود به عنوان کلید API Gemini خود استفاده کنید. ما اکیداً توصیه می کنیم که API توسعه دهنده Gemini API را به لیست ALLIST برای کلید API Firebase خود اضافه نکنید .
کلید API Firebase شما کلید API است که در پرونده پیکربندی Firebase یا شیء شما ذکر شده است که برای اتصال برنامه خود به Firebase به قسمت برنامه برنامه خود اضافه می کنید. خوب است که هنگام استفاده از کلید فقط با API های مربوط به Firebase (مانند منطق AI Firebase ) ، کلید API Firebase خود را در کد خود قرار دهید. اطلاعات مهم در مورد کلیدهای API Firebase را بیاموزید .
در پانل APIS & Services > Crectentials کنسول Google Cloud ، این همان چیزی است که کلیدهای API Firebase به نظر می رسند:
از آنجا که شما باید کلید API Firebase خود را برای کار با API های مربوط به Firebase به قسمت کد برنامه خود اضافه کنید ، و از آنجا که API توسعه دهنده Gemini از طریق API Key مجاز است ، ما اکیداً توصیه می کنیم API توسعه دهنده Gemini (به نام "API زبان تولیدی" را در Google Cloud ) به API Allemlist for Funbase API Key خود اضافه کنید . اگر این کار را انجام دهید ، پس API توسعه دهنده Gemini را در معرض سوءاستفاده احتمالی قرار می دهید.
این سؤالات متداول برخی از بهترین روشهای پیشنهادی را برای ایمن نگه داشتن کلید API Gemini شما توصیف می کند.
اگر به طور مستقیم از API توسعه دهنده Gemini از برنامه تلفن همراه یا وب خود تماس می گیرید:
- از SDK های مشتری Firebase AI Logic استفاده کنید.
- کلید API Gemini خود را به قسمت کد برنامه خود اضافه نکنید .
منطق Firebase AI یک سرویس پروکسی را ارائه می دهد که در داخل شامل کلید API Gemini شما در هر درخواست به API توسعه دهنده Gemini - کاملاً در باطن است.
علاوه بر این ، ما موارد زیر را اکیداً توصیه می کنیم:
به محض شروع جدی برای توسعه برنامه خود ، با Firebase App Check برای کمک به محافظت از منابع پس زمینه خود و همچنین API های مورد استفاده برای دسترسی به مدل های تولیدی ، ادغام شوید .
از کلید API Gemini Gemini در خارج از منطق AI Firebase استفاده نکنید . اگر برای استفاده دیگر به یک کلید API Gemini نیاز دارید ، یک کلید جداگانه ایجاد کنید.
به طور کلی ، شما نباید کلید API Gemini Gemini تولید شده توسط Firebase را تغییر دهید. این کلید با نام Gemini Developer API Key (Auto ایجاد شده توسط Firebase) در کنسول Google Cloud نامگذاری شده است.
هیچ API اضافی را به لیست API Allist برای کلید API Gemini تولید شده توسط Firebase خود اضافه نکنید . در API Allist ، کلید API Gemini شما فقط باید API توسعه دهنده Gemini را داشته باشد (به نام "API زبان تولیدی" در کنسول Google Cloud ).
محدودیت برنامه را اضافه نکنید . در غیر این صورت سرویس پروکسی منطق AI Firebase همانطور که انتظار می رفت کار نمی کند.
اگر کلید API Gemini شما به خطر افتاده است ، دستورالعمل ها را برای تغییر کلید API Gemini که برای تماس با API توسعه دهنده Gemini استفاده می شود ، دنبال کنید.
همچنین ، بهترین روشهای پیشنهادی را برای ایمن نگه داشتن کلید API Gemini خود مرور کنید.
عیب یابی خطاها
اگر سعی در استفاده از API توسعه دهنده Gemini دارید و خطای 404 را دریافت می کنید که می گوید Firebase AI Logic genai config not found
، معمولاً به این معنی است که پروژه Firebase شما یک کلید API Gemini معتبر برای استفاده با SDK های Firebase Ai Logic Client ندارد.
در اینجا محتمل ترین علل این خطا آورده شده است:
شما هنوز پروژه Firebase خود را برای API توسعه دهنده Gemini تنظیم نکرده اید.
چه باید کرد:
در کنسول Firebase ، به صفحه منطق AI Firebase بروید. روی شروع کار کلیک کنید و سپس API توسعه دهنده Gemini را انتخاب کنید. API را فعال کنید و کنسول پروژه شما را برای توسعه دهنده Gemini API تنظیم می کند. پس از تکمیل گردش کار ، دوباره درخواست خود را امتحان کنید.اگر اخیراً از طریق گردش کار تنظیمات منطق AI Firebase در کنسول Firebase عبور کرده اید ، ممکن است کلید API Gemini شما هنوز در دسترس همه خدمات پس زمینه مورد نیاز در همه مناطق نباشد.
چه باید کرد:
چند دقیقه صبر کنید ، و سپس دوباره درخواست خود را امتحان کنید.کلید API Gemini شما ممکن است از پروژه Firebase شما حذف شده باشد.
چه باید کرد:
بیاموزید که چگونه کلید API Gemini را که توسط منطق Firebase AI استفاده می شود ، تغییر دهید .
اگر می خواهید یک درخواست چند حالته را با Cloud Storage for Firebase ارسال کنید ، ممکن است با 400 خطای زیر روبرو شوید:
Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
این خطا توسط پروژه ای ایجاد می شود که هنگام فعال شدن API Vertex AI در پروژه ، نمایندگان سرویس لازم را به درستی ارائه نمی دهند. این یک مسئله شناخته شده با برخی از پروژه ها است و ما در حال کار بر روی یک رفع جهانی هستیم.
در اینجا راه حل برای رفع پروژه خود و تهیه صحیح این نمایندگان خدمات آورده شده است تا بتوانید از جمله Cloud Storage for Firebase در درخواست های چندمادی خود شروع کنید. شما باید یک مالک در این پروژه باشید و فقط باید این مجموعه از کارها را یک بار برای پروژه خود انجام دهید.
دسترسی و تأیید اعتبار با gcloud CLI .
ساده ترین راه برای انجام این کار از Cloud Shell است. در مستندات Google Cloud بیشتر بدانید.در صورت درخواست ، دستورالعمل های نمایش داده شده در ترمینال را دنبال کنید تا gcloud CLI در برابر پروژه Firebase خود اجرا شود.
شما به شناسه پروژه Firebase خود نیاز دارید ، که می توانید در بالای تنظیمات پروژه در کنسول Firebase پیدا کنید.
نمایندگان خدمات مورد نیاز را در پروژه خود با اجرای دستور زیر ارائه دهید:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/endpoints -d ''
چند دقیقه صبر کنید تا اطمینان حاصل شود که نمایندگان خدمات ارائه شده اند ، و سپس ارسال مجدد درخواست چندمدی خود را که شامل Cloud Storage for Firebase است ، دوباره امتحان کنید.
اگر بعد از چند دقیقه انتظار این خطا را دارید ، به پشتیبانی Firebase دسترسی پیدا کنید.
اگر یک خطای 400 دریافت کرده اید که می گوید API key not valid. Please pass a valid API key.
، معمولاً بدان معنی است که کلید API در پرونده/شیء پیکربندی Firebase شما وجود ندارد یا تنظیم نشده است که با برنامه و/یا پروژه Firebase شما استفاده شود.
بررسی کنید که کلید API ذکر شده در پرونده/شیء پیکربندی Firebase شما با کلید API برای برنامه شما مطابقت دارد. می توانید تمام کلیدهای API خود را در پانل APIS & Services > Credentials در کنسول Google Cloud مشاهده کنید.
اگر متوجه شدید که آنها مطابقت ندارند ، پس از آن یک پرونده/شیء پیکربندی Firebase تازه بدست آورید و سپس یکی از برنامه های موجود در برنامه خود را جایگزین کنید . پرونده/شیء پیکربندی تازه باید دارای یک کلید API معتبر برای برنامه و پروژه Firebase شما باشد.
اگر خطای 403 دریافت کنید که می گوید Requests to this API firebasevertexai.googleapis.com ... are blocked.
معمولاً این بدان معنی است که کلید API در پرونده/شیء پیکربندی Firebase شما API مورد نیاز در لیست اجازه خود را برای محصولی که می خواهید از آن استفاده کنید ، ندارد.
اطمینان حاصل کنید که کلید API که توسط برنامه شما استفاده شده است ، تمام API های مورد نیاز موجود در لیست "محدودیت های API" کلید را دارد. برای منطق AI Firebase ، کلید API شما باید حداقل API Logic AI Firebase AI را در لیست مجاز خود داشته باشد.
می توانید تمام کلیدهای API خود را در پانل APIS & Services > Credentials در کنسول Google Cloud مشاهده کنید.
اگر خطای 403 دریافت کردید که می گوید PERMISSION_DENIED: The caller does not have permission.
، معمولاً این بدان معنی است که کلید API در پرونده/شیء پیکربندی Firebase شما متعلق به یک پروژه Firebase متفاوت است.
بررسی کنید که کلید API ذکر شده در پرونده/شیء پیکربندی Firebase شما با کلید API برای برنامه شما مطابقت دارد. می توانید تمام کلیدهای API خود را در پانل APIS & Services > Credentials در کنسول Google Cloud مشاهده کنید.
اگر متوجه شدید که آنها مطابقت ندارند ، پس از آن یک پرونده/شیء پیکربندی Firebase تازه بدست آورید و سپس یکی از برنامه های موجود در برنامه خود را جایگزین کنید . پرونده/شیء پیکربندی تازه باید دارای یک کلید API معتبر برای برنامه و پروژه Firebase شما باشد.
در مورد تجربه خود با منطق AI Firebase بازخورد دهید