Добавьте Cloud Firestore и аутентификацию в свое приложение Google AI Studio.

В режиме сборки Google AI Studio можно автоматически настроить и интегрировать Cloud Firestore и Firebase Authentication в веб-приложения, что упрощает создание приложений с постоянным хранением данных и безопасными процессами авторизации. Всего одним запросом и несколькими щелчками мыши вы позволяете агенту Google AI Studio настроить проект Firebase, подключить ваше приложение к этому проекту и сгенерировать весь код Cloud Firestore и Authentication непосредственно в вашем приложении.

Обзор: Добавьте бэкэнд в ваше приложение Google AI Studio.

  1. Опишите свою идею : Создайте новое приложение в Google AI Studio и опишите функцию, которая требует использования базы данных или аутентификации. Например, вы можете ввести следующее: Build a shared to-do list app using Firebase as a backend.

  2. Включите интеграцию с Firebase : в появившейся карточке настройте параметры:

    • Настройка проекта или местоположения (необязательно) : Щелкните значок Настройки» , затем выберите местоположение или проект Google Cloud , который вы хотите использовать.
    • Подтвердите свой выбор : Для продолжения нажмите кнопку «Включить Firebase» .

    Затем агент автоматически подключает ваше приложение к вашему проекту Firebase и генерирует необходимый код Cloud Firestore и Authentication , включая файл /src/lib/firebase.ts и файл firestore.rules .

  3. Развертывание : После завершения процесса используйте опцию «Поделиться > Опубликовать» , чтобы развернуть веб-приложение в Cloud Run . Ваше приложение автоматически развернется в том же проекте, который вы выбрали во время настройки.

    Перед тем как делиться своим приложением или развертывать его, обязательно ознакомьтесь с Firebase Security Rules сгенерированными искусственным интеллектом .

Добавьте Firebase в приложение во время разработки.

Если вы хотите добавить интеграцию с Firebase в приложение, над которым работаете в Google AI Studio , вы можете сделать это в любое время на этапе итерации, используя один из следующих вариантов:

  • Поговорите с агентом : поручите агенту добавить функцию, требующую базы данных или аутентификации (например, Add a Firestore database to this app »).
  • Воспользуйтесь меню настроек : перейдите в «Настройки» > «Интеграции» и нажмите на плитку «Firebase Firestore & Auth» .

Оба варианта запустят процесс настройки интеграции с Firebase, позволяющий выбрать проект, настроить расположение бэкэнда и включить интеграцию для вашего приложения, как описано в обзоре .

После включения интеграции вы можете в любое время просмотреть ее конфигурацию, включая проект, местоположение, адрес электронной почты службы поддержки приложения и идентификатор базы данных, перейдя в «Настройки» > «Интеграции» и щелкнув плитку «Firebase Firestore & Auth» .

Разберитесь с общей квотой для Cloud Firestore

В зависимости от даты создания приложения и прав вашей учетной записи, ваши базы данных могут размещаться в проекте Google Cloud Starter Tier или в стандартном проекте. Однако в обоих случаях все базы данных Cloud Firestore , созданные агентом Google AI Studio, помещаются в одну и ту же группу баз данных «AI shared quota» в вашем проекте. Все они обладают следующими характеристиками:

  • Общая квота : Все базы данных в группе используют общую квоту ( подробности см. ниже ).
  • Учетная запись Cloud Billing не требуется : вы можете создавать и тестировать свое приложение без добавления платной подписки. Подробнее о добавлении платной подписки см. ниже .
  • Ежедневное обновление : Если вы достигнете дневного лимита квоты (например, 50 000 операций чтения в день), работа сервиса будет приостановлена ​​для всех баз данных в группе и возобновится на следующий день примерно в полночь по тихоокеанскому времени.

Базы данных Cloud Firestore входящие в общую группу квот, имеют следующие общие ограничения:

Метрика Квота
Сохраненные данные 1 ГиБ всего
Выход из сети 10 ГиБ в месяц
Напишите единицы измерения 40 000 операций записи в день
Читать единицы 50 000 прочтений в день
Блоки обновления в реальном времени 50 000 обновлений в день

(Необязательно) Добавьте платную подписку, чтобы получить больше квоты Cloud Firestore

Если ваше приложение станет популярным и вам потребуется выйти за рамки бесплатных ограничений Cloud Firestore , вы можете добавить платную подписку, которая переведет ваш проект Firebase на тарифный план Blaze с оплатой по мере использования .

Возможно, вы уже добавили оплату для своего проекта по разным причинам, например, для использования Nano Banana. В этом случае ваш проект уже подключен к тарифному плану Blaze, и вы можете сразу перейти к шагу «Обновление базы данных» .

Шаг 1. Добавьте оплату (если вы еще этого не сделали).

Вы можете настроить оплату непосредственно в Google AI Studio .

  1. В Google AI Studio перейдите на страницу «Проекты» .
  2. Нажмите «Настроить выставление счетов» рядом с проектом, который вы хотите обновить.
  3. Следуйте инструкциям на экране, чтобы выбрать свою страну, согласиться с условиями и добавить способ оплаты или выбрать существующий платежный аккаунт. Вас также могут попросить внести предоплату (которая не распространяется на использование сервисов Firebase и Google Cloud ).

Шаг 2: Обновите базу данных.

Даже после добавления платной подписки базы данных Cloud Firestore , созданные агентом Google AI Studio, остаются в общей группе квот. Чтобы включить полное платное масштабирование для конкретной базы данных, необходимо вручную обновить ее.

  1. Перейдите в консоль Firebase и выберите проект, содержащий базу данных, которую вы хотите обновить.
  2. В левой панели навигации перейдите в раздел «Базы данных и хранилище» > «Firestore» .
  3. Если ваш проект содержит несколько экземпляров базы данных Cloud Firestore , выберите тот, который хотите обновить.
  4. Найдите в верхней части страницы баннер, указывающий на то, что база данных ограничена лимитами квоты общего доступа к ИИ. Чтобы обновить ее, нажмите «Обновить базу данных» > «Обновить до оплаты по мере использования». Если вы не видите этот баннер, значит, база данных либо не была создана агентом Google AI Studio и не входит в группу с общей квотой, либо она уже была обновлена.

Изменения, отключающие общую квоту и включающие оплату по факту использования для вашей базы данных, должны вступить в силу в течение нескольких минут.

Генерация Security Rules

Агент Google AI Studio автоматически генерирует Firebase Security Rules на основе логики вашего приложения. Эти Security Rules разработаны таким образом, чтобы по умолчанию разрешать доступ только тем конечным пользователям вашего приложения, которым они владеют.

Обратите внимание, что если вы вручную измените Security Rules непосредственно в консоли Firebase , агент Google AI Studio не узнает об изменениях, и они будут перезаписаны при последующих итерациях приложения. Мы рекомендуем использовать агент Google AI Studio для изменения Firebase Security Rules , чтобы гарантировать сохранение изменений и их соответствие логике вашего приложения.

Используйте существующий проект

При первом включении интеграции с Firebase вы можете дополнительно выбрать существующий проект Google Cloud , который принадлежит вам:

  1. В появившейся карточке нажмите «Настройки» .
  2. Выберите свой проект, а затем нажмите «Включить Firebase» .

В процессе доработки приложения вы также можете указать агенту использовать другой проект, используя, например, следующую команду:

Add Firestore to this app using project PROJECT_ID.

При выборе проекта происходят следующие действия:

  • В рамках этого проекта будет создана новая база данных Cloud Firestore с использованием выделенной квоты.
  • Будет настроена Firebase Authentication с использованием входа через Google.
  • Сервисному аккаунту будет предоставлен доступ к вашей базе данных Cloud Firestore . Для предоставления доступа администратору из Google AI Studio будет создан новый сервисный аккаунт с именем ais-sandbox@ PROJECT_ID .iam.gservice.com , которому будет предоставлено разрешение на доступ к вашей базе данных Cloud Firestore . Этот аккаунт будет связан только с вашими приложениями Google AI Studio .
  • Ограничения : Если в проекте Firebase уже есть база данных Cloud Firestore , агент не сможет добавить дополнительную. Вам потребуется выбрать другой проект или создать новый пустой проект для использования.

Используйте консоль Firebase

Вы можете просмотреть данные и настройки своего приложения в консоли Firebase . Вот как получить доступ к проекту Firebase, связанному с Google AI Studio :

  1. Перейдите в консоль Firebase и выберите проект с меткой AI Studio .

  2. В левой панели навигации просмотрите включенные в вашем проекте сервисы:

    • Чтобы просмотреть и отредактировать сохраненные данные Cloud Firestore , перейдите в раздел «Базы данных и хранилище» > «Firestore» .
    • Чтобы просмотреть или настроить параметры и данные Authentication , перейдите в раздел Безопасность > Аутентификация .

Устранение неполадок и часто задаваемые вопросы

Найдите ответы на часто задаваемые вопросы и узнайте, как решать проблемы при интеграции Firebase с вашим приложением Google AI Studio .

Как определяется местоположение и мой проект Google Cloud / Firebase?

При запросе бэкенда Firebase для приложения вы можете дополнительно выбрать местоположение и проект в появившейся карточке:

  • Настройка проекта или местоположения (необязательно) : нажмите значок Настройки» , выберите местоположение или проект Google Cloud который вы хотите использовать, а затем нажмите «Включить Firebase» .

Учитывайте следующее:

  • Местоположение базы данных является постоянным : после выбора местоположения для базы данных вы не сможете изменить его для данного проекта. Этот выбор будет использоваться по умолчанию для других серверных служб.
  • Согласованность проекта : Для обеспечения бесшовной интеграции Google AI Studio автоматически использует один и тот же проект как для бэкэнда, так и для развертывания. Вы не можете использовать разные проекты для разных сервисов в рамках одного приложения.

Какие методы аутентификации поддерживаются?

Агент Google AI Studio настраивает вход через Google, когда вы запрашиваете настройку Authentication или экрана входа в систему. Вот как добавить дополнительные способы входа в ваше приложение:

  1. В консоли Firebase перейдите на страницу «Безопасность > Аутентификация > Метод входа» и настройте необходимые методы входа.

  2. Вернувшись в Google AI Studio , обратитесь к агенту Google AI Studio за помощью в обновлении вашего кода с использованием нового метода входа в систему.

Можно ли создать мобильное приложение (например, для Android или iOS) с помощью Google AI Studio ?

Агент Google AI Studio поддерживает создание как веб-приложений , так и приложений для Android .

Однако следует отметить, что интеграция с Firebase (добавление Cloud Firestore и Authentication ) в настоящее время поддерживается только для веб-приложений , а не для приложений Android. Если вы разрабатываете приложение Android, вам необходимо вручную интегрировать Firebase, если вам требуются эти сервисы.

Подробнее о поддерживаемых функциях можно узнать в документации к агенту Google AI Studio .

Следует отметить, что, как и все веб-приложения, веб-приложения, созданные в Google AI Studio, доступны в качестве мобильных веб-приложений в браузерах, установленных на мобильных устройствах.

Что представляет собой файл firebase-blueprint.json ?

Это промежуточный файл, используемый агентом Google AI Studio для анализа кода вашего приложения. Не изменяйте этот файл вручную, так как это может привести к генерации агентом некорректного кода или небезопасных Security Rules .

Что делать, если я получаю ошибку "Превышен лимит квоты"?

Превышение лимита квоты Cloud Firestore означает, что ваше приложение достигло дневного лимита использования для вашей группы квот базы данных Cloud Firestore . Есть два способа решить эту проблему:

  • Вариант 1: Подождать : Квоты обновляются ежедневно около полуночи по тихоокеанскому времени.
  • Вариант 2: Обновление : Перейдите на тарифный план Blaze с оплатой по факту использования.

Что делать, если появляется ошибка "Отсутствуют или недостаточны права доступа"?

Эта ошибка возникает, когда ваше приложение пытается прочитать или записать данные в базу данных Cloud Firestore , но запрос отклоняется Security Rules . Это указывает на то, что Security Rules не разрешают попытку выполнения операции на основе текущего состояния аутентификации или пути к данным. Нажмите кнопку «Исправить ошибку» , чтобы агент Google AI Studio попытался исправить Security Rules .

Что произойдёт с моим бэкэндом Firebase, если я удалю приложение Google AI Studio ?

Удаление приложения в Google AI Studio не приводит к автоматическому удалению подключенного проекта Firebase, базы данных Cloud Firestore или конфигураций Firebase Authentication .

Если вы добавили бэкенд Firebase, вам необходимо вручную перейти в консоль Firebase и удалить проект или очистить отдельные ресурсы (например, экземпляр базы данных Cloud Firestore и поставщиков Authentication ), чтобы убедиться, что все данные и конфигурации удалены.

Может ли агент Google AI Studio удалять или редактировать данные в моей базе данных Cloud Firestore ?

Агент Google AI Studio предназначен для подготовки необходимых ресурсов бэкэнда, генерации кода и Security Rules . Хотя сам агент не может напрямую удалять, редактировать или изменять записи данных в вашей базе данных Cloud Firestore , он может писать код в вашем приложении, предназначенный для выполнения этих действий. Для выполнения задач управления данными, таких как удаление записей, перейдите на страницу «Базы данных и хранилище» > «Firestore» в консоли Firebase .

Я работаю в организации, использующей Google Cloud ; могу ли я подключить свое приложение Google AI Studio к существующему проекту в среде Google Cloud моей организации?

Да. Убедитесь, что ваш проект Firebase находится в папке вашей организации Google Cloud , а затем подключите проект, используя один из следующих способов:

  • В процессе включения : При первом включении интеграции Firebase в Google AI Studio выберите свой существующий проект на появившейся карточке. Нажмите на настроек и выберите свой проект.
  • В процессе итерации : Если вы уже включили Firebase или хотите переключиться на другой проект позже, вы можете указать агенту использовать существующий проект, используя, например, следующую команду:

      Add Firestore to this app using project PROJECT_ID.
    

Почему я не могу найти некоторые документы в консоли Firebase ?

Когда агент AI Studio сохраняет данные во вложенный путь (например, /users/user1/messages/msg1 ), не создав предварительно родительский документ ( user1 ), он создает так называемый несуществующий родительский документ . Эти документы не отображаются в консоли Firebase , что может затруднить их поиск при просмотре базы данных Cloud Firestore . Хотя это не влияет на работу вашего приложения, вы часто можете описать проблему агенту AI Studio, чтобы он создал отсутствующие родительские документы.

Для получения более подробной информации см. раздел «Несуществующие родительские документы» .

Могу ли я выбрать местоположение для своей базы данных Cloud Firestore ?

Да. При первом включении интеграции Firebase в Google AI Studio вы можете выбрать местоположение для вашей базы данных Cloud Firestore .

Обратите внимание, что выбранное вами местоположение применяется ко всем базам данных Cloud Firestore , которые агент Google AI Studio создает в этом проекте Firebase. После установки это местоположение для этих баз данных изменить нельзя.

Могу ли я после обновления базы данных Cloud Firestore вернуть её в группу общих квот?

После того как база данных будет перемещена из общей группы квот и преобразована в обычный платный экземпляр, вы можете использовать команду curl , чтобы вернуть её в общую группу квот. Обратите внимание, что все базы данных в общей группе квот должны быть одной и той же версии и расположены в одном регионе.

  • PROJECT_ID : Идентификатор проекта Firebase. Найдите этот идентификатор в > Общие настройки (страница консоли Firebase .

  • DATABASE_ID : Идентификатор базы данных Cloud Firestore , который будет соответствовать идентификатору вашего апплета. Найти этот идентификатор базы данных в Google AI Studio можно, перейдя в «Настройки» > «Интеграции» и щелкнув плитку «Firebase Firestore & Auth» .

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID?updateMask=free_tier_limited" \
-d '{"free_tier_limited": true}'

Как Google использует мои данные (например, код и подсказки) в Google AI Studio ?

Подробную информацию об использовании ваших данных см. в Дополнительных условиях предоставления услуг API Gemini .

Я получил электронное письмо от Google Cloud о «общедоступном ключе API Google для вашего проекта Google Cloud ». Что мне нужно сделать?

Если вы получили электронное письмо от Google Cloud о «общедоступном ключе API Google для вашего проекта Google Cloud » , и указанный в письме ключ API — это ваш ключ API Firebase , убедитесь, что этот ключ API соответствует следующим требованиям, чтобы его можно было безопасно включить в ваш код или файлы конфигурации. Вы можете проверить это на странице «API и сервисы > Учетные данные» в консоли Google Cloud .

Кроме того, убедитесь, что вы используете Firebase Security Rules и App Check , как это рекомендуется для используемых вами продуктов Firebase.

Подробную информацию об API-ключах для Firebase и список часто задаваемых вопросов можно найти в разделе «Узнайте об использовании и управлении API-ключами для Firebase».