본문 바로가기

일상

구글 클라우드(Google Cloud) 300달러 무료 크레딧이 Gemini API 비용에 안 빠질 때 (AI Studio 키와 Vertex AI 키 차이)

반응형

구글 클라우드 무료 체험 크레딧 300달러가 남아 있는데도 Gemini 로 이미지나 텍스트를 생성한 비용이 크레딧에서 빠지지 않고 따로 나갈 때, 원인이 무엇이고 어떻게 바꾸면 크레딧으로 쓸 수 있는지 알아보는 글입니다.


게임 그림을 Gemini 이미지 모델로 대량으로 만들던 중이었습니다. 구글 클라우드에 가입하면 주는 300달러 크레딧(90일)이 있어서 그걸로 충당된다고 생각했는데, 다음 날 결제 보고서를 보니 크레딧은 거의 그대로이고 생성 비용은 다른 곳에서 빠져 있었습니다.


- 같은 Gemini 모델이라도 어느 주소로 부르느냐에 따라 비용이 나가는 곳이 달랐다

- AI Studio 에서 받은 키로 부른 Gemini API 사용분은 무료 크레딧 대상이 아니었다

- Vertex AI 주소로 부른 사용분은 크레딧으로 전액 상쇄됐다


1. 크레딧은 그대로인데 비용이 따로 나갈 때

처음엔 크레딧 반영이 늦는 줄 알았습니다. 그런데 하루 지나 결제 보고서의 서비스별 항목을 보니 두 줄로 갈려 있었는데, Vertex AI 사용분 몇천 원은 크레딧으로 상쇄돼 순 비용이 0원이었고 Gemini API 사용분 만 원 남짓은 크레딧과 상관없이 AI Studio 쪽 선불 잔액에서 빠져 있었습니다.


같은 날 같은 종류의 모델을 썼는데 결과가 갈린 이유는 단순했습니다. 대부분의 생성은 AI Studio 에서 발급한 키로 했고, 일부 작업만 Vertex AI 로 불렀기 때문입니다.


2. 무료 크레딧의 제외 목록에 Gemini API 가 있다

무료 체험 크레딧 안내를 보면 크레딧을 쓸 수 없는 항목이 따로 적혀 있는데, 거기에 Gemini API 가 들어 있고 Vertex AI 는 없었습니다. 여기서 말하는 Gemini API 는 AI Studio 에서 키를 받아 generativelanguage.googleapis.com 으로 부르는 쪽이고, Vertex AI 는 구글 클라우드 프로젝트 안에서 aiplatform.googleapis.com 으로 부르는 쪽입니다.


둘 다 Gemini 모델을 쓰고 요청 형식도 거의 같아서 같은 서비스처럼 보이지만, 과금 체계가 다릅니다. 그래서 크레딧이 있다고 아무 키나 쓰면 안 되고, 크레딧을 쓰려면 Vertex AI 주소로 불러야 합니다. 제외 목록은 바뀔 수 있으니 쓰기 전에 지금 안내를 한 번 확인해 두는 게 좋습니다.


3. 같은 요청을 Vertex AI 주소로 바꾸기

바꿀 곳은 생각보다 적었습니다. 요청 본문은 그대로 두고 주소와 키만 바꾸면 되는데, Vertex AI 쪽은 주소에 프로젝트와 위치가 들어갑니다.



contents 에 role: "user" 를 넣어 두면 두 주소 모두에서 그대로 통했습니다. 키를 헤더(x-goog-api-key)로 넘기는 방식도 같아서, 코드에서는 주소 상수와 키 파일만 갈아 끼우면 됐습니다.


4. Vertex AI 키를 만들 때 걸리는 곳 세 가지

Vertex AI 를 API 키로 부르려면 서비스 계정을 하나 만들고, 그 계정에 묶인 API 키를 발급하는 식으로 준비합니다.


- 서비스 계정에는 Vertex AI 사용자(roles/aiplatform.user) 역할을 준다. 콘솔에서는 이름이 'Agent Platform 사용자'처럼 바뀌어 보일 수 있다

- 키는 그 API 만 쓰도록 API 제한을 걸어 둔다. 새어 나가도 다른 서비스는 못 부르게 하기 위해서다

- 권한을 준 직후 첫 호출은 403 이 날 수 있다. 몇 분 지나 다시 부르면 된다


쓰다 보면 Vertex AI 쪽이 분당 요청 한도가 낮아서 429 가 자주 났습니다. 대량 생성이라면 요청 사이에 간격을 두고, 429 가 오면 조금 기다렸다가 다시 보내도록 해 두는 편이 낫습니다.



5. 정리

구글 클라우드 300달러 무료 크레딧은 Vertex AI 사용분에는 빠지지만, AI Studio 키로 부른 Gemini API 사용분에는 빠지지 않았습니다. 크레딧이 남아 있는데 생성 비용이 따로 나간다면 코드가 generativelanguage.googleapis.com 을 부르고 있는지부터 보고, 크레딧으로 쓰고 싶은 작업은 aiplatform.googleapis.com 의 generateContent 로 옮기면 됩니다.


결제 보고서를 서비스별로 나눠 보면 어느 쪽에서 비용이 나갔는지 바로 보이니, 크레딧이 줄지 않는 것 같으면 반영 지연을 기다리기보다 보고서부터 열어 보는 편이 빨랐습니다.


여기까지 구글 클라우드 무료 크레딧과 Gemini API 비용에 대해서 작성해봤습니다. 여기까지 읽어주셔서 감사합니다!

반응형