이 페이지에서는 Gemini API 및 Firebase AI Logic SDK의 일반적인 오류 코드 문제 해결 방법을 제공합니다.
400 오류: API key not valid. Please pass a valid API key.
API key not valid. Please pass a valid API key.라는 400 오류가 표시되면 일반적으로 Firebase 구성 파일/객체의 API 키가 존재하지 않거나 앱 또는 Firebase 프로젝트와 함께 사용하도록 설정되지 않았음을 의미합니다.
Firebase 구성 파일/객체에 나열된 API 키가 앱의 API 키와 일치하는지 확인합니다. API 및 서비스 > 사용자 인증 정보 패널에서 모든 API 키를 볼 수 있습니다. Google Cloud
일치하지 않는 것으로 확인되면 새 Firebase 구성 파일/객체를 가져온 후 앱에 있는 구성 파일/객체를 바꿉니다. 새 구성 파일/객체에는 앱 및 Firebase 프로젝트의 유효한 API 키가 포함되어야 합니다.
400 오류: Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
Firebase용 Cloud Storage Cloud Storage for FirebaseURL로 멀티모달 요청을 보내려고 하면 다음과 같은 400 오류가 발생할 수 있습니다.
Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
이 오류는 프로젝트에서 필요한 서비스 에이전트 가 Agent Platform API가 프로젝트에서 사용 설정되었을 때 자동으로 프로비저닝되지 않은 프로젝트로 인해 발생합니다. 일부 프로젝트에서 알려진 문제이며, 현재 전역 수정 작업을 진행 중입니다.
다음은 프로젝트를 수정하고 이러한 서비스 에이전트를 올바르게 프로비저닝하여 멀티모달 요청에 Cloud Storage for Firebase URL을 포함할 수 있도록 하는 해결 방법입니다. 프로젝트의 소유자여야 하며 프로젝트에 대해 이 작업 집합을 한 번만 완료하면 됩니다.
gcloud CLI에 액세스하고 인증합니다.
가장 쉬운 방법은 Cloud Shell에서 실행하는 것입니다. 자세한 내용은 Google Cloud 문서를 참고하세요.메시지가 표시되면 터미널에 표시된 안내에 따라 gcloud CLI가 Firebase 프로젝트에 대해 실행되도록 합니다.
Firebase Console의 Firebase settings 상단에서 확인할 수 있는 Firebase 프로젝트 ID가 필요합니다.
다음 명령어를 실행하여 프로젝트에서 필요한 서비스 에이전트를 프로비저닝합니다.
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 지원팀에 문의하세요.
403 오류: PERMISSION_DENIED: To access this model, you must enforce Firebase App Check. Learn more: https://firebase.google.com/docs/ai-logic/app-check
403 - PERMISSION_DENIED 오류가 표시되면
To access this model, you must enforce Firebase App Check. Learn more: https://firebase.google.com/docs/ai-logic/app-check,
요청에 유효한 App Check 토큰이 없고 일반적으로 악용되는 모델에 액세스하려고 시도하는 것입니다.
일부 생성형 모델은 악의적인 행위자가 악용하는 것으로 확인되었습니다.
Firebase AI Logic에 App Check가 적용되지 않았으므로 프로젝트가 이러한 모델의 악용에 취약합니다. 개발자를 보호하기 위해 Firebase는 요청에 유효한 App Check 토큰이 포함되어 있지 않으면(즉, App Check이(가) Firebase AI Logic에 적용됨) 이러한 모델에 대한 액세스를 차단합니다.
오류를 반환한 모델에 액세스하려면 다음 단계를 따르세요.
Firebase AI Logic에 App Check을(를) 설정합니다. 로컬 개발의 경우 App Check 디버그 제공자를 설정해야 합니다.
App Check을(를) 적용하는 것은 Gemini API 및 Gemini 모델을 악용으로부터 보호하는 데 매우 중요하며, 이 오류를 해결하려면 을(를) 적용해야 합니다.
앱에서 Firebase AI Logic으로 요청을 다시 보냅니다.
이 요청은 유효한 App Check 토큰을 함께 전송하며 더 이상 이
403 - PERMISSION_DENIED오류가 발생하지 않습니다.최종 사용자에게 앱을 출시하기 전에 프로덕션 증명 제공자 (예: App Attest, Play Integrity, reCAPTCHA Enterprise)를 설정하여 앱 체크가 적용될 때 최종 사용자가 AI 기능에 액세스할 수 있도록 해야 합니다.App Check
403 오류: PERMISSION_DENIED: Firebase AI Logic has been deactivated in this project. To resume using Firebase AI Logic, you must enforce Firebase App Check. Learn more: https://firebase.google.com/docs/ai-logic/app-check
403 - PERMISSION_DENIED 오류가 표시되면
Firebase AI Logic has been deactivated in this project. To resume using
Firebase AI Logic, you must enforce Firebase App Check. Learn more:
https://firebase.google.com/docs/ai-logic/app-check
Firebase 프로젝트가 비활성 상태로 확인되었으며 Firebase AI Logic에
App Check가 적용되지 않았음을 의미합니다.
'비활성 프로젝트'는 Firebase AI Logic이 사용 설정되어 있지만 최근에 Firebase AI Logic을 사용하지 않은 프로젝트입니다.
Firebase AI Logic에 App Check이 적용되지 않았으므로 프로젝트가 Gemini API의 악용에 취약합니다. 프로젝트를 보호하기 위해 Firebase는 Firebase AI Logic에 App Check을 적용할 때까지 Firebase AI Logic 사용을 비활성화했습니다.
Firebase AI Logic을(를) 다시 사용할 준비가 되면 다음 단계를 따르세요.
Firebase AI Logic에 App Check을(를) 설정합니다. 로컬 개발의 경우 App Check 디버그 제공자를 설정해야 합니다.
App Check을(를) 적용하는 것은 Gemini API 및 Gemini 모델을 악용으로부터 보호하는 데 매우 중요하며, 이 오류를 해결하려면 을(를) 적용해야 합니다.
앱에서 Firebase AI Logic으로 요청을 다시 보냅니다.
이 요청은 유효한 App Check 토큰을 함께 전송하며 더 이상 이
403 - PERMISSION_DENIED오류가 발생하지 않습니다.최종 사용자에게 앱을 출시하기 전에 프로덕션 증명 제공자 (예: App Attest, Play Integrity, reCAPTCHA Enterprise)를 설정하여 App Check앱 체크가 적용될 때 최종 사용자가 AI 기능에 액세스할 수 있도록 해야 합니다.
403 오류: PERMISSION_DENIED: The caller does not have permission.
PERMISSION_DENIED: The caller does not have permission.이라는 403 오류가 표시되면 일반적으로 Firebase 구성 파일/객체의 API 키가 다른 Firebase 프로젝트에 속함을 의미합니다.
Firebase 구성 파일/객체에 나열된 API 키가 앱의 API 키와 일치하는지 확인합니다. API 및 서비스 > 사용자 인증 정보 패널에서 모든 API 키를 볼 수 있습니다. Google Cloud
일치하지 않는 것으로 확인되면 새 Firebase 구성 파일/객체를 가져온 후 앱에 있는 구성 파일/객체를 바꿉니다. 새 구성 파일/객체에는 앱 및 Firebase 프로젝트의 유효한 API 키가 포함되어야 합니다.
403 오류: Requests to this API firebasevertexai.googleapis.com ... are blocked.
Requests to this API firebasevertexai.googleapis.com ... are blocked.라는 403 오류가 표시되면 일반적으로 앱의 Firebase 구성에 필요한 API를 호출하지 못하도록 제한하는 API 키가 있음을 의미합니다.
이 문제를 해결하려면
Google Cloud 콘솔에서 API 키의 제한사항을 업데이트하여 필요한 API를 포함해야 합니다. Firebase AI Logic의 경우
API 키를 사용하여 호출할 수 있는 선택된
API 목록에 Firebase AI Logic API
(firebasevertexai.googleapis.com)가 포함되어 있는지 확인해야 합니다.
다음 단계를 따르세요.
Google Cloud 콘솔에서 API 및 서비스 > 사용자 인증 정보 패널을 엽니다.
애플리케이션에서 사용하도록 구성된 API 키를 선택합니다 (예: iOS 앱의 'iOS 키').
API 키 수정 페이지에서 API 제한사항 섹션을 찾습니다.
키 제한 옵션이 선택되어 있는지 확인합니다. 선택되어 있지 않으면 키가 제한되지 않으며 오류의 원인이 아닐 가능성이 높습니다.
선택된 API 드롭다운 메뉴에서 Firebase AI Logic API를 검색하고 선택하여 API 키를 사용하여 호출할 수 있는 선택된 API 목록에 추가합니다.
저장 을 클릭합니다.
변경사항이 적용되는 데 최대 5분이 걸릴 수 있습니다.
404 오류: Firebase AI Logic genai config not found
Firebase AI Logic genai config not found라는 404 오류가 표시되면 일반적으로 Firebase AI Logic의 설정이 잘못 구성되었거나
누락되었음을 의미합니다.
이 오류의 가장 가능성 높은 원인은 다음과 같습니다.
Gemini API 제공업체를 위해 Firebase 프로젝트를 아직 설정하지 않았습니다.
해결 방법:
Firebase Console에서 AI 서비스 > AI Logic으로 이동합니다. 시작하기를 클릭한 후 선택한 Gemini API 제공업체를 선택합니다. API를 사용 설정하면 Firebase에서 해당 제공업체를 위해 프로젝트를 설정합니다. 워크플로를 완료한 후 요청을 다시 시도합니다.Firebase AI Logic 설정 워크플로를 최근에 진행한 경우 Firebase 콘솔에서 Firebase AI Logic의 구성이 아직 모든 관련 리전의 모든 필수 백엔드 서비스에서 사용 가능하지 않을 수 있습니다.
해결 방법:
몇 분 정도 기다린 후 요청을 다시 시도합니다.
404 오류: 모델 "was not found or your project does not have access to it"?
예: "Publisher Model projects/PROJECT-ID/locations/us-central1/publishers/google/models/gemini-3.1-pro-preview was not found or your project does not have access to it. Please ensure you are using a valid model version."
이와 같은 오류가 발생하는 데는 몇 가지 이유가 있습니다.
모델 이름이 잘못됨
원인: 제공한 모델 이름이 유효한 모델 이름이 아닙니다.
해결 방법: 지원되고 사용 가능한 모든 모델 목록과 모델 이름 및 모델 버전을 비교합니다. 모델 이름의 세그먼트와 순서를 확인해야 합니다. 예를 들면 다음과 같습니다.
- 최신 Gemini 3.x Pro
모델 이름:
gemini-3.1-pro-preview(미리보기에서만 사용 가능) - 최신 Gemini 3.x Flash
모델 이름:
gemini-3.7-flash - 최신 Gemini 3.x Flash‑Lite
모델 이름:
gemini-3.5-flash-lite - 최신 Gemini 3.x Pro Image (일명 'Nano Banana Pro')
모델 이름:
gemini-3-pro-image - 최신 Gemini 3.x Flash Image (일명 "Nano Banana 2")
모델 이름:
gemini-3.1-flash-image - 최신 Gemini 3.x Flash‑Lite Image (일명 'Nano Banana 2 Lite')
모델 이름:
gemini-3.1-flash-lite-image - 최신 Gemini 2.5 Flash Image (일명 'Nano Banana')
모델 이름:
gemini-2.5-flash-image
- 최신 Gemini 3.x Pro
모델 이름:
잘못된 위치 (Agent Platform Gemini API (formerly Vertex AI) 프로바이더를 사용하는 경우에만 해당)
원인: 요청이 모델을 사용할 수 없는 위치 의 모델에 액세스하려고 시도할 수 있습니다.
해결 방법: 요청이 모델을 사용할 수 있는 위치의 모델에 액세스하려고 시도하는지 확인합니다.
Agent Platform Gemini API (formerly Vertex AI)를 사용하는 경우 초기화 중에 모델에 액세스할 위치를 선택적으로 지정할 수 있습니다. 위치를 지정하지 않으면 Firebase AI Logic은 기본적으로 다음 위치를 사용합니다.
- 'Agent Platform' 초기화 구문을 사용하는 경우:
global - 이전 'Vertex AI' 초기화 구문을 사용하는 경우:
us-central1
하지만 이러한 기본 위치에서는 모든 모델이 지원되지 않습니다. 즉, 모델에 따라 초기화 중에 특정 위치를 명시적으로 설정해야 할 수 있습니다.
Gemini 미리보기 및 실험용 모델: Live API 모델을 제외하고
global위치에서만 사용할 수 있습니다 (아래 참고).Gemini 3.x 모델: Firebase AI Logic을 사용하는 경우
global위치에서만 사용할 수 있습니다. Firebase AI Logic은 아직us및eu위치를 지원하지 않습니다.Gemini 2.5 모델: 여러 위치에서 사용할 수 있습니다.
Gemini Live API 모델:
us-central1위치에서만 사용할 수 있습니다.global위치는 지원되지 않습니다.
- 'Agent Platform' 초기화 구문을 사용하는 경우:
모델에 액세스할 위치를 지정하는 방법 (코드 스니펫 포함) 을 자세히 알아보세요.
429 오류: "You exceeded your current quota, please check your plan and billing details" 또는 "Resource exhausted, please try again later."
이와 같은 오류가 발생하는 데는 몇 가지 이유가 있습니다.
할당량을 초과하거나 액세스하는 모델이 다른 사용자의 요청으로 인해 과부하되었습니다.
취해야 할 조치는 Gemini Developer API를 사용하는지 아니면 Agent Platform Gemini API (formerly Vertex AI)를 사용하는지에 따라 다릅니다. 할당량 및 추가 할당량을 요청하는 방법에 관한 자세한 내용은 비율 제한 및 할당량을 참고하세요.
Agent Platform Gemini API (formerly Vertex AI)를 사용하는 경우 Google Cloud 문서에서 오류 코드 429에 관한 추가 컨텍스트와 안내를 제공합니다.
결제가 필요한 모델 또는 기능을 사용하려고 시도하지만 Firebase 프로젝트에서 Spark 요금제를 사용하고 있습니다.
Gemini Developer API을(를) 사용하는 경우 Gemini Developer API '무료 등급'을 사용하는 동안 특정 모델에 대한 제한된 액세스 권한과 여러 기본 기능에 대한 액세스 권한을 얻을 수 있습니다. 이 등급을 사용하면 결제 수단을 제공하지 않고도 시작할 수 있으므로 Firebase 프로젝트를 사용한 만큼만 지불하는 Blaze 요금제로 업그레이드할 필요가 없습니다.
일부 모델은 Gemini Developer API "무료 등급" 에서 사용할 수 없으며 "유료 등급"이 필요합니다. 즉, 프로젝트에서 사용한 만큼만 지불하는 Blaze 요금제를 사용해야 합니다. 예를 들어 다음 모델에는 거의 항상 결제가 필요합니다.
- 대부분의 미리보기 및 실험용 모델
- 이미지 생성 모델('Nano Banana' 모델)
일부 모델은 Gemini Developer API "무료 등급"을 사용하는 동안 몇 가지 기본 기능을 제공하지만 더 고급 기능을 사용하려면 "유료 등급" 이 필요합니다. 예를 들면 다음과 같습니다.
- 대부분의 Gemini 3.x 모델을 사용할 때
Google Search 또는Google Maps 기반의 접지에는 결제가 필요합니다.
- 대부분의 Gemini 3.x 모델을 사용할 때
Firebase 요금제 및 Gemini Developer API에 대해 알아보세요.