Firebase AI Logic 사용을 위한 프로덕션 체크리스트

앱을 출시하고 실제 최종 사용자가 앱의 AI 기능과 상호작용할 준비가 되면 권장사항 및 중요한 고려사항에 관한 이 체크리스트를 검토하세요.

일반

일반 출시 체크리스트 검토하기

Firebase 앱을 프로덕션에 출시하기 전에 Firebase 출시 체크리스트에서 중요한 권장사항을 검토하세요.

Firebase 프로젝트 권장사항 준수

개발, 테스트, 프로덕션에 서로 다른 Firebase 프로젝트를 사용합니다. 프로젝트 관리를 위한 권장사항을 더 검토하세요.

액세스 및 보안

보안 체크리스트 검토하기

Firebase 보안 체크리스트 및 전용 Firebase AI Logic 보안 체크리스트에서 액세스 및 보안에 관한 중요한 권장사항을 검토하세요.

Firebase App Check 시행

Firebase App Check를 적용하여 앱에서 직접 호출할 때 Gemini API가 악용되지 않도록 보호합니다. App Check가 적용되면 수신 요청이 인증된 앱 또는 변조되지 않은 기기에서 시작되었는지 확인합니다.

App Check는 Apple 플랫폼 (DeviceCheck, App Attest 또는 reCAPTCHA Enterprise), Android (Play Integrity 또는 reCAPTCHA Enterprise), 웹 (reCAPTCHA Enterprise)의 증명 제공업체를 지원합니다. Flutter 및 Unity 앱의 경우에도 이러한 모든 제공업체를 지원합니다.

또한 재생 보호를 적용하는 것이 좋습니다. 즉, 토큰은 일회용입니다. 이 옵션은 기본 보호를 넘어 향상된 보호 모드를 제공하며 앱 및 사용 사례에 적합한 보호 수준을 설정할 수 있습니다.

Firebase API 키에 대한 제한사항 설정

Firebase API 키는 요청 시 Firebase 프로젝트와 앱을 식별합니다. API 키의 무단 사용을 방지하려면 다음 단계를 따르세요.

  • Google Cloud Console에서 '애플리케이션 제한사항'을 설정하여 키 사용을 앱의 특정 번들 ID (Apple), 패키지 이름 및 SHA-1 디지털 지문 (Android) 또는 HTTP 리퍼러 (웹)의 요청으로만 제한합니다.

  • 각 키의 'API 제한사항' 허용 목록을 검토합니다.

    • Firebase AI Logic API (firebasevertexai.googleapis.com)가 허용 목록에 있는지 확인합니다.
    • 허용 목록에 있는 다른 API가 앱에 필요한 특정 Firebase 서비스뿐인지 확인합니다. 제한된 Firebase 키에 필요한 API 목록을 참조하세요.

Firebase 관련 API는 API 키를 Firebase 프로젝트나 앱을 식별하는 데만 사용하며 API 호출 승인에는 사용하지 않습니다.

인증된 사용자로만 요청 제한

Firebase AI Logic를 통한 모든 요청에 Firebase Authentication의 유효한 사용자 인증 정보가 포함되도록 인증된 사용자 모드를 적용하는 것이 좋습니다. 인증되지 않은 최종 사용자로부터 요청이 오면 요청이 401: unauthenticated 오류와 함께 거부됩니다.

모니터링, 한도, 결제

Firebase Console에서 AI 모니터링 설정

Firebase Console에서 AI 모니터링을 설정하여 요청 수, 지연 시간, 토큰 사용량, 오류율과 같은 주요 성능 측정항목을 파악합니다. Google Cloud 콘솔에서 개별 trace를 검사할 수도 있습니다.

비율 제한 설정 및 할당량 관리

예상치 못한 사용량 급증 및 지갑 거부 공격으로부터 프로젝트를 보호하세요.

알림 및 지출 한도로 예상치 못한 청구 방지

Firebase 프로젝트에서 사용한 만큼만 지불하는 Blaze 요금제를 사용하는 경우:

구성 관리

프로덕션 앱에서 안정적인 모델 버전 사용

프로덕션 앱에서는 정식 모델 버전 (예: gemini-3.8-flash)만 사용하세요. 프리뷰 또는 시험용 버전이나 -latest 별칭은 사용하지 마세요.

Firebase Remote Config 또는 서버 프롬프트 템플릿 사용

Remote Config 또는 서버 프롬프트 템플릿을 사용하면 코드에 값을 하드 코딩하는 대신 클라우드 (서버 측)에서 앱의 AI 기능에 대한 중요한 구성을 제어할 수 있습니다. 즉, 새 버전의 앱을 출시하지 않고도 구성을 업데이트할 수 있습니다.

  • (적극 권장) 새 모델이 출시되거나 다른 모델이 종료될 때 AI 기능에 사용되는 모델 이름을 주문형으로 변경합니다. Remote Config 또는 서버 프롬프트 템플릿 사용에 관한 세부정보를 확인하세요.

  • (선택사항) AI 기능의 다른 파라미터(예: 모델 구성(예: 최대 출력 토큰), 안전 설정, 시스템 안내, 프롬프트 데이터)를 동적으로, 심지어 조건부로 제어합니다. Remote Config 또는 서버 프롬프트 템플릿 사용에 관한 세부정보를 확인하세요.

  • (선택사항) Remote Config에서 minimum_version 매개변수를 설정하여 앱의 현재 버전과 Remote Config에 정의된 최신 버전을 비교하고 사용자에게 업그레이드 알림을 표시하거나 사용자가 업그레이드하도록 강제합니다.

모델에 액세스할 위치 설정

Agent Platform Gemini API (formerly Vertex AI)를 API 제공업체로 사용하는 경우에만 사용할 수 있습니다.

모델에 액세스할 위치를 설정하여 할당량을 최적화하고 사용자의 지연 시간을 방지합니다.

위치를 지정하지 않으면 기본값은 global입니다(새 '에이전트 플랫폼' 초기화 문법을 사용하는 경우). 초기화 중에 이 위치를 설정하거나 원하는 경우 Firebase Remote Config를 사용하여 각 사용자의 위치에 따라 위치를 동적으로 변경할 수 있습니다.