Tryb tworzenia w Google AI Studio może automatycznie skonfigurować i zintegrować Cloud Firestore i Firebase Authentication z aplikacjami internetowymi, co ułatwia tworzenie aplikacji z trwałym przechowywaniem danych i bezpiecznymi procesami logowania.Google AI Studio Wystarczy jeden prompt i a kilka kliknięć, aby umożliwić agentowi Google AI Studioskonfigurowanie projektu Firebase , połączenie aplikacji z tym projektem i wygenerowanie całego kodu Cloud Firestore i Authenticationbezpośrednio w aplikacji.
Omówienie: dodawanie backendu do aplikacji Google AI Studio
Opisz swój pomysł: utwórz nową aplikację w Google AI Studio i opisz funkcję, która wymaga bazy danych lub uwierzytelniania. Możesz na przykład wpisać prompt:
Build a shared to-do list app using Firebase as a backend.Włącz integrację z Firebase: na wyświetlonej karcie możesz dostosować konfigurację:
- Wybierz lokalizację (opcjonalnie): wybierz lokalizację bazy danych i aplikacji za pomocą menu lokalizacji.
- Wybierz projekt (opcjonalnie): kliknij ikonę Ustawienia , wybierz Google Cloud projekt, którego chcesz użyć, a następnie kliknij Zapisz.
- Potwierdź swój wybór: aby kontynuować, kliknij przycisk Włącz Firebase.
Agent automatycznie połączy Twoją aplikację z projektem w Firebase i wygeneruje niezbędny Cloud Firestore i Authentication kod, w tym plik
/src/lib/firebase.tsi plikfirestore.rules.Wdróż: gdy wszystko będzie gotowe, użyj opcji Udostępnij > Opublikuj , aby wdrożyć aplikację internetową w Cloud Run. Aplikacja zostanie automatycznie wdrożona w tym samym projekcie, który został wybrany podczas konfiguracji.
Informacje o limicie wspólnym dla Cloud Firestore
W zależności od tego, kiedy została utworzona aplikacja i czy Twoje konto spełnia wymagania, Twoje bazy danych mogą być hostowane w projekcie Google Cloud w warstwie początkowej lub w projekcie standardowym. W obu przypadkach wszystkie Cloud Firestore bazy danych udostępnione przez agenta Google AI Studio są umieszczane w tej samej "grupie baz danych „Limit wspólny AI” w Twoim projekcie. Wszystkie mają te same cechy:
- Wspólny limit: wszystkie bazy danych w grupie mają wspólny limit wykorzystania (szczegóły poniżej).
- Nie jest wymagane konto Cloud Billing: możesz tworzyć i testować aplikację bez dodawania płatności. Szczegóły dotyczące opcjonalnego dodawania płatności znajdziesz poniżej.
- Codzienne resetowanie: jeśli osiągniesz dzienny limit (np. 50 tys. odczytów dziennie), usługa zostanie wstrzymana we wszystkich bazach danych w grupie i wznowiona następnego dnia około północy czasu pacyficznego.
| Dane | Limit |
|---|---|
| Przechowywane dane | Łącznie 1 GiB |
| Ruch wychodzący z sieci | 10 GiB miesięcznie |
| Zapis jednostek | 40 tys. zapisów dziennie |
| Odczyt jednostek | 50 tys. odczytów dziennie |
| Jednostki aktualizacji w czasie rzeczywistym | 50 tys. aktualizacji dziennie |
(Opcjonalnie) Dodawanie płatności, aby zwiększyć limit Cloud Firestore
Jeśli Twoja aplikacja zyskuje popularność i musisz przekroczyć bezpłatne limity dla Cloud Firestore, możesz dodać płatności, co spowoduje przejście projektu w Firebase na abonament Blaze z płatnością według wykorzystania.
Płatności mogły zostać dodane do projektu z różnych powodów, np. aby korzystać z Nano Banana. W takim przypadku projekt jest już objęty abonamentem Blaze i możesz przejść bezpośrednio do kroku Uaktualnij bazę danych.
Krok 1. Dodaj płatności (jeśli jeszcze tego nie zrobisz)
Możesz skonfigurować płatności bezpośrednio w Google AI Studio.
- W Google AI Studio otwórz stronę Projekty.
- Obok projektu, który chcesz uaktualnić, kliknij Skonfiguruj płatności.
- Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wybrać kraj, zaakceptować warunki i dodać formę płatności lub wybrać istniejące konto rozliczeniowe. Możesz też zostać poproszony(-a) o przedpłatę (która nie jest zaliczana na poczet korzystania z usług Firebase i Google Cloud usług).
Krok 2. Uaktualnij bazę danych
Nawet po dodaniu płatności bazy danych Cloud Firestore utworzone przez agenta
Google AI Studio pozostają w grupie limitu wspólnego. Aby włączyć pełne skalowanie płatne dla konkretnej bazy danych, musisz ręcznie przenieść ją z grupy za pomocą polecenia curl.
PROJECT_ID : identyfikator projektu w Firebase. Znajdziesz go w
ustawieniach > Ogólne na stronie konsoli.FirebaseDATABASE_ID : identyfikator bazy danych Cloud Firestore, który będzie zgodny z identyfikatorem apletu. Znajdź ten identyfikator w konsoli Firebase, otwierając stronę Bazy danych i miejsce na dane > Firestore i szukając w kolumnie Nazwa.
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": false}'
Sprawdź uaktualnienie bazy danych
Zmiana, która wyłącza limit wspólny i włącza płatność według wykorzystania w przypadku bazy danych, powinna zacząć obowiązywać w ciągu kilku minut. Możesz sprawdzić tę zmianę, korzystając z jednej z tych opcji:
Testowanie aplikacji (zalecane): najbardziej niezawodnym sposobem na potwierdzenie uaktualnienia jest użycie aplikacji. Wykonaj operacje Cloud Firestore, które wcześniej osiągały dzienne limity bezpłatne (np. przekraczały progi Cloud Firestore w wersji Enterprise wynoszące 50 tys. jednostek odczytu lub 40 tys. jednostek zapisu). Te operacje powinny teraz się udać bez błędów
RESOURCE_EXHAUSTED.Sprawdź stan bazy danych za pomocą interfejsu API: możesz użyć żądania
curlGET, aby pobrać aktualne szczegóły bazy danych:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID"Sprawdź odpowiedź JSON. Jeśli w odpowiedzi nie ma pola
freeTierLimited, baza danych została uaktualniona i nie jest już ograniczona.Informacje o
freeTierifreeTierLimited: w odpowiedziGETprawdopodobnie nadal będzie widoczne pole"freeTier": true. To pole jest oddzielne od ustawieniafreeTierLimited, które zostało zmienione."freeTier": truejest powiązane z pochodzeniem bazy danych i możliwością korzystania z warstwy bezpłatnej. Nie oznacza to, że po ustawieniufreeTierLimitednafalselimity dzienne nadal obowiązują. Pomyślne wyłączenie limitów jest sygnalizowane brakiem polafreeTierLimitedw odpowiedziGET.
Jeśli po kilku minutach w aplikacji nadal występują błędy limitu dziennego,
a żądanie GET pokazuje, że pole freeTierLimited rzeczywiście nie występuje, sprawdź,
czy konto rozliczeniowe
projektu jest w dobrym stanie.
Security Rules generowanie
Agent Google AI Studio automatycznie generuje Firebase Security Rules na podstawie logiki aplikacji. Te Security Rules są domyślnie ustawione na "odmowa", co oznacza że użytkownicy aplikacji mogą uzyskiwać dostęp tylko do danych, których są właścicielami.
Pamiętaj, że jeśli ręcznie dostosujesz swoje Security Rules bezpośrednio w konsoli Firebase, agent Google AI Studio nie będzie znać tych zmian, i zostaną one zastąpione podczas kolejnych iteracji aplikacji. Zalecamy używanie agenta Google AI Studio do dostosowywania Firebase Security Rules, aby mieć pewność, że zmiany zostaną zachowane i będą zgodne z logiką aplikacji.
Używanie istniejącego projektu
Gdy po raz pierwszy włączysz integrację z Firebase, możesz opcjonalnie wybrać istniejący projekt Google Cloud którego jesteś właścicielem:
- Na wyświetlonej karcie kliknij ikonę Ustawienia .
- Wybierz projekt, a następnie kliknij Zapisz.
Podczas iteracji aplikacji możesz też poprosić agenta o użycie innego projektu za pomocą promptu, np.:
Add Firestore to this app using project PROJECT_ID.
Gdy wybierzesz projekt, wykonane zostaną te działania:
- W tym projekcie zostanie udostępniona nowa baza danych Cloud Firestore z wykorzystaniem limitu wspólnego.
- Firebase Authentication z logowaniem przez Google zostanie skonfigurowane.
- Konto usługi otrzyma dostęp do Twojej b1/} bazy danych.Cloud Firestore
Aby umożliwić dostęp administratora z Google AI Studio, nowe konto usługi
o nazwie
ais-sandbox@PROJECT_ID.iam.gservice.comotrzyma uprawnienia dostępu do bazy danych Cloud Firestore. To konto jest powiązane tylko z aplikacjami Google AI Studio. - Ograniczenia: jeśli projekt w Firebase ma już Cloud Firestore bazę danych, agent nie będzie mógł dodać kolejnej. Musisz wybrać inny projekt lub utworzyć nowy, pusty projekt.
Korzystanie z konsoli Firebase
Dane i ustawienia aplikacji możesz wyświetlać w konsoli Firebase. Aby uzyskać dostęp do projektu w Firebase powiązanego z Google AI Studio:
Otwórz Firebase konsolę i wybierz projekt z etykietą
AI Studio.W panelu nawigacyjnym po lewej stronie sprawdź włączone usługi w projekcie:
- Aby wyświetlić i edytować przechowywane dane Cloud Firestore, otwórz Bazy danych i miejsce na dane > Firestore.
- Aby wyświetlić lub skonfigurować ustawienia i dane Authentication, otwórz Bezpieczeństwo > Uwierzytelnianie.
Rozwiązywanie problemów i najczęstsze pytania
Znajdź odpowiedzi na typowe pytania i dowiedz się, jak rozwiązywać problemy podczas integrowania Firebase z aplikacją Google AI Studio.
Jak wybierany jest projekt w Firebase i lokalizacja Google Cloud / Firebase?
Gdy poprosisz o backend Firebase dla aplikacji, możesz opcjonalnie wybrać lokalizację i projekt na wyświetlonej karcie:
- Wybierz lokalizację (opcjonalnie): wybierz lokalizację bazy danych i aplikacji za pomocą menu lokalizacji.
- Wybierz projekt (opcjonalnie): kliknij ikonę Ustawienia , wybierz Google Cloud projekt, którego chcesz użyć, a następnie kliknij Zapisz.
Pamiętaj:
- Lokalizacja bazy danych jest trwała: po wybraniu lokalizacji bazy danych nie można jej zmienić w tym projekcie. Ten wybór będzie używany jako domyślny w przypadku innych usług backendu.
- Spójność projektu: aby zapewnić płynną integrację, Google AI Studio automatycznie używa tego samego projektu zarówno w przypadku backendu, jak i wdrożenia. W tej samej aplikacji nie można używać różnych projektów w przypadku różnych usług.
Jakie metody uwierzytelniania są obsługiwane?
Agent Google AI Studio konfiguruje logowanie przez Google, gdy poprosisz o skonfigurowanie Authentication lub ekranu logowania. Aby dodać do aplikacji dodatkowe metody logowania:
W konsoli Firebase otwórz stronę Bezpieczeństwo > Uwierzytelnianie > Metoda logowania, i skonfiguruj dowolne metody logowania.
Wróć do Google AI Studio i poproś agenta Google AI Studio o pomoc w zaktualizowaniu bazy kodu o nową metodę logowania.
Czy mogę utworzyć aplikację mobilną (np. na Androida lub iOS) za pomocą Google AI Studio?
Obecnie agent Google AI Studio może tworzyć tylko aplikacje internetowe. Więcej informacji o tym, co jest obsługiwane, znajdziesz w Google AI Studio dokumentacji agenta.
Pamiętaj jednak, że tak jak wszystkie aplikacje internetowe, aplikacje utworzone przez Google AI Studio są dostępne jako internetowe aplikacje mobilne w przeglądarkach zainstalowanych na urządzeniach mobilnych.
Co to jest plik firebase-blueprint.json?
Jest to plik pośredni używany przez agenta Google AI Studio do rozpoznawania bazy kodu aplikacji. Nie modyfikuj tego pliku ręcznie, ponieważ może to spowodować, że agent wygeneruje nieprawidłowy kod lub niezabezpieczone Security Rules.
Co mam zrobić, jeśli pojawi się błąd „Przekroczono limit”?
Osiągnięcie limitu Cloud Firestore oznacza, że aplikacja osiągnęła dzienny limit wykorzystania w grupie limitu wspólnego bazy danych Cloud Firestore. Możesz to rozwiązać na 2 sposoby:
- Opcja 1. Poczekaj: limity są resetowane codziennie około północy czasu pacyficznego.
- Opcja 2. Uaktualnij: przejdź na abonament Blaze z płatnością według wykorzystania.
- Jeśli agent Google AI Studio skonfigurował dla Ciebie Cloud Firestore, musisz
użyć polecenia
curlopisanego w Dodawanie płatności, aby zwiększyć limit Cloud Firestore, aby przenieść bazę danych do zwykłego stanu płatnego. Jeśli Cloud Firestore został skonfigurowany ręcznie, uruchomienie poleceniacurlnie jest konieczne.
- Jeśli agent Google AI Studio skonfigurował dla Ciebie Cloud Firestore, musisz
użyć polecenia
Co mam zrobić, jeśli pojawi się błąd „Brak uprawnień lub niewystarczające uprawnienia”?
Ten błąd występuje, gdy aplikacja próbuje odczytać lub zapisać dane w bazie danych Cloud Firestore, ale żądanie jest odrzucane przez Security Rules. Oznacza to, że Security Rules nie zezwalają na próbę wykonania operacji na podstawie bieżącego stanu uwierzytelniania lub ścieżki danych. Kliknij przycisk Napraw błąd, aby poprosić agenta Google AI Studio o próbę poprawienia Security Rules.
Co się stanie z moim backendem Firebase, gdy usunę aplikację Google AI Studio?
Usunięcie aplikacji w Google AI Studio nie powoduje automatycznego usunięcia połączonego projektu w Firebase, Cloud Firestore bazy danych ani Firebase Authentication konfiguracji.
Jeśli dodasz backend Firebase, musisz ręcznie otworzyć Firebase konsolę i usunąć projekt lub wyczyścić poszczególne zasoby (np. Cloud Firestore instancję bazy danych i Authentication dostawców), aby usunąć wszystkie dane i konfiguracje.
Czy agent Google AI Studio może usuwać lub edytować dane w mojej bazie danych Cloud Firestore?
Agent Google AI Studio został zaprojektowany, aby pomagać w udostępnianiu niezbędnych zasobów backendu oraz generowaniu kodu i Security Rules. Sam agent nie może bezpośrednio usuwać, edytować ani manipulować wpisami danych w bazie danych Cloud Firestore ale może zapisywać w aplikacji kod, który jest przeznaczony do wykonywania tych działań. Aby wykonywać zadania związane z zarządzaniem danymi, takie jak usuwanie wpisów, otwórz stronę Bazy danych i miejsce na dane > Firestore w konsoli Firebase.
Należę do organizacji, która korzysta z Google Cloud. Czy mogę połączyć aplikację Google AI Studio z istniejącym projektem w środowisku Google Cloud mojej organizacji?
Tak. Upewnij się, że projekt Firebase znajduje się w folderze organizacji Google Cloud, a następnie połącz projekt za pomocą jednej z tych metod:Google Cloud
- Podczas włączania: gdy po raz pierwszy włączysz integrację z Firebase w Google AI Studio, wybierz istniejący projekt na wyświetlonej karcie. Kliknij ikonę Ustawienia , wybierz projekt, a następnie kliknij Zapisz.
Podczas iteracji: jeśli Firebase jest już włączony lub chcesz później zmienić projekt, możesz poprosić agenta o użycie istniejącego projektu za pomocą promptu, np.:
Add Firestore to this app using project PROJECT_ID.
Dlaczego nie mogę znaleźć niektórych dokumentów w konsoli Firebase?
Gdy agent AI Studio zapisuje dane w zagnieżdżonej ścieżce
(np. /users/user1/messages/msg1) bez wcześniejszego utworzenia dokumentu nadrzędnego
(user1), tworzy tzw. nieistniejący dokument nadrzędny. Te
dokumenty nie są wyświetlane w konsoli Firebase, co może utrudniać ich
znalezienie podczas przeglądania bazy danych Cloud Firestore. Nie ma to wpływu na działanie aplikacji, ale często możesz opisać problem agentowi AI Studio, aby poprosić go o utworzenie brakujących dokumentów nadrzędnych.
Więcej informacji znajdziesz w artykule Nieistniejące dokumenty nadrzędne.
Czy mogę wybrać lokalizację bazy danych Cloud Firestore?
Tak. Gdy po raz pierwszy włączysz integrację z Firebase w Google AI Studio, możesz wybrać lokalizację bazy danych Cloud Firestore.
Pamiętaj, że wybrana lokalizacja dotyczy wszystkich Cloud Firestore baz danych, które agent Google AI Studio utworzy w tym projekcie w Firebase. Po ustawieniu nie można zmienić lokalizacji tych baz danych.
Jak Google wykorzystuje moje dane (np. kod i prompty) w Google AI Studio?
Szczegółowe informacje o tym, jak wykorzystywane są Twoje dane, znajdziesz w Dodatkowych warunkach korzystania z Gemini API.
Otrzymałem(-am) e-maila od Google Cloud o "publicznie dostępnym kluczu interfejsu API Google powiązanym z projektem Google Cloud". Co muszę zrobić?
Jeśli otrzymasz e-maila od Google Cloud o "publicznie dostępnym kluczu interfejsu API Google powiązanym z projektem Google Cloud" i klucz interfejsu API wymieniony w e-mailu jest Twoim kluczem interfejsu API Firebase, upewnij się, że klucz interfejsu API spełnia te wymagania, aby można go było bezpiecznie uwzględnić w plikach kodu lub konfiguracji. Możesz to sprawdzić w konsoli na stronie Interfejsy API i usługi > Dane logowania .Google Cloud
-
Jest to klucz interfejsu API, którego używasz w aplikacji w Firebase i tylko w usługach Firebase. Te klucze są zwykle nazywane
Browser key (auto created by Firebase)lubAndroid key (auto created by Firebase)lubiOS key (auto created by Firebase). - Zawiera wszystkie wymagane interfejsy API powiązane z Firebase na liście dozwolonych „Ograniczenia interfejsu API”.
-
Na liście dozwolonych „Ograniczenia interfejsu API”
nie ma żadnych innych interfejsów API. W szczególności lista powinna nie
zawierać
Generative Language API.
Upewnij się też, że używasz Firebase Security Rules i App Check zgodnie z zaleceniami dotyczącymi używanych usług Firebase.
Szczegółowe informacje o kluczach interfejsu API Firebase i listę najczęstszych pytań znajdziesz w artykule Informacje o używaniu kluczy interfejsu API Firebase i zarządzaniu nimi.