메인 콘텐츠로 건너뛰기
Google Gemini는 매우 강력한 AI 대화 시스템으로, 프롬프트를 입력하기만 하면 단 몇 초 만에 매끄럽고 자연스러운 응답을 생성합니다. Gemini는 놀라운 지능형 지원을 제공하여 인간의 업무 효율성과 창의성을 크게 향상시킬 수 있습니다. 이 문서는 주로 Gemini Chat Completion API 작업의 사용 절차를 소개하며, 이를 통해 공식 Gemini의 대화 기능을 손쉽게 사용할 수 있습니다.

신청 절차

Gemini Chat Completion API를 사용하려면 먼저 Ace Data Cloud 콘솔에서 API Token을 받아 예비용으로 보관하세요. 아직 로그인 또는 등록하지 않았다면 로그인 페이지로 자동 이동하여 등록과 로그인을 안내하며, 완료 후 현재 페이지로 자동 반환됩니다. 하나의 API Token으로 플랫폼의 모든 서비스를 호출할 수 있으며, 서비스별로 별도 신청할 필요가 없습니다. 최초 신청 시 무료 크레딧이 제공되어 무료로 체험할 수 있으며, 크레딧이 부족할 경우 콘솔에서 공통 잔액을 충전할 수 있습니다.
📘 전체 문서: Gemini Chat Completion API →

기본 사용

이제 그림과 같이 인터페이스에서 해당 내용을 입력할 수 있습니다:

이 인터페이스를 처음 사용할 때는 최소 세 가지 내용을 입력해야 합니다. 하나는 authorization이며, 드롭다운 목록에서 직접 선택하면 됩니다. 다른 하나의 매개변수는 model이며, model은 사용할 Gemini 공식 웹사이트 모델 유형을 선택하는 것으로, 선택 가능한 모델은 인터페이스 문서의 model 열거형을 기준으로 합니다. 마지막 매개변수는 messages이며, messages는 입력하는 질문 단어 배열입니다. 이는 배열로, 여러 질문 단어를 동시에 업로드할 수 있음을 나타내며, 각 질문 단어에는 role과 content가 포함됩니다. 그중 role은 질문자의 역할을 나타내며, user, assistant, system의 세 가지 신원을 제공합니다. 또 다른 content는 질문하는 구체적인 내용입니다. 동시에 오른쪽에 해당 호출 코드가 생성되는 것을 확인할 수 있으며, 코드를 복사하여 직접 실행하거나 「Try」 버튼을 직접 클릭하여 테스트할 수도 있습니다.

알림: gemini-3.x 시리즈 flash는 사고 모델로, 먼저 reasoning tokens를 소모합니다. max_tokens를 512 이상으로 설정하세요. 그렇지 않으면 빈 내용만 반환될 수 있습니다. gemini-3.8-flash는 현재 권장되는 Flash 모델로, 최대 100만 Token 컨텍스트, 이미지 입력, 도구 호출 및 스트리밍 응답을 지원하며, 현재 Chat Completions 인터페이스를 통해 호출됩니다.
호출 후 반환 결과는 다음과 같습니다:
반환 결과에는 여러 필드가 있으며, 다음과 같이 소개합니다:
  • id, 이번 대화 작업을 생성하는 ID로, 이번 대화 작업을 고유하게 식별하는 데 사용됩니다.
  • model , 선택한 Gemini 공식 웹사이트 모델입니다.
  • choices, Gemini가 질문 단어에 대해 제공하는 답변 정보입니다.
  • usage : 이번 질의응답 쌍의 token 통계 정보입니다.
그중 choices에는 Gemini의 답변 정보가 포함되어 있으며, 그 안의 choices는 Gemini 답변의 구체적인 정보입니다. 그림과 같이 확인할 수 있습니다.

확인할 수 있듯이, choices 안의 content 필드에는 Gemini 응답의 구체적인 내용이 포함되어 있습니다.

이미지 이해(멀티모달 입력)

Gemini는 네이티브 멀티모달 모델로, 직접 「이미지를 볼 수」 있습니다. 이미지를 전달하려면 특정 메시지의 content를 문자열에서 콘텐츠 블록 배열로 변경하고, 배열에 text 블록과 image_url 블록을 함께 넣으면 됩니다. 이는 OpenAI 및 공식 Gemini의 OpenAI 호환 형식과 완전히 일치합니다. image_url.url은 두 가지 작성 방식을 지원합니다:
  • base64 data: URI(권장, 가장 안정적): 형식은 data:<미디어 유형>;base64,<데이터>이며, 예를 들어 data:image/jpeg;base64,/9j/4AAQ...입니다. 미디어 유형(MIME)은 이미 data: 접두사에 작성되어 있으므로, 별도의 media_type 필드는 필요하지 않으며 존재하지도 않습니다.
  • 공개적으로 접근 가능한 이미지 URL: 예를 들어 https://cdn.acedata.cloud/4hfydw.jpg입니다.
지원하는 이미지 유형: png, jpeg, webp, heic, heif. Python 샘플 호출 코드(base64 data URI):
공개적으로 접근 가능한 이미지 URL을 직접 전달할 수도 있습니다:
💡 image_url은 url 필드만 받으며(값은 이미지 URL 또는 base64 data: URI일 수 있음), 선택적으로 detail 필드를 받을 수 있습니다. media_type을 전달하지 마세요—이는 Anthropic Claude의 이미지 필드이며, OpenAI / Gemini의 image_url 형식에 속하지 않습니다.

스트리밍 응답

이 인터페이스는 스트리밍 응답도 지원하며, 이는 웹페이지 연동에 매우 유용하고 웹페이지에서 한 글자씩 표시하는 효과를 구현할 수 있습니다. 응답을 스트리밍으로 반환하려면 요청 헤더 안의 stream 파라미터를 변경하여 true로 수정할 수 있습니다. 그림과 같이 수정하면 되지만, 호출 코드도 스트리밍 응답을 지원하도록 그에 맞게 변경해야 합니다.

stream을 true로 수정한 후 API는 해당 JSON 데이터를 한 줄씩 반환하며, 코드 수준에서 한 줄씩의 결과를 얻기 위해 그에 맞는 수정이 필요합니다. Python 예제 호출 코드:
출력 결과는 다음과 같습니다:
보시다시피 응답에는 많은 data가 있으며, data 안의 choices가 최신 응답 내용으로 위에서 소개한 내용과 일치합니다. choices는 새로 추가된 응답 내용이며, 결과에 따라 자신의 시스템에 연동할 수 있습니다. 또한 스트리밍 응답의 종료는 data의 내용에 따라 판단하며, 내용이 [DONE]이면 스트리밍 응답이 모두 종료되었음을 나타냅니다. 반환되는 data 결과에는 여러 필드가 있으며, 다음과 같이 소개합니다:
  • id, 이번 대화 작업의 ID를 생성하며, 이번 대화 작업을 고유하게 식별하는 데 사용됩니다.
  • model , 선택한 Gemini 공식 웹사이트 모델입니다.
  • choices, Gemini가 질문어에 대해 제공한 응답 정보입니다.
JavaScript도 지원되며, 예를 들어 Node.js의 스트리밍 호출 코드는 다음과 같습니다:
Java 예제 코드:
다른 언어는 별도로 직접 수정할 수 있으며, 원리는 모두 같습니다.

다중 턴 대화

다중 턴 대화 기능을 연동하려면 messages 필드에 여러 질문어를 업로드해야 하며, 여러 질문어의 구체적인 예시는 아래 그림과 같습니다:

Python 예제 호출 코드:
여러 질문어를 업로드하면 다중 턴 대화를 쉽게 구현할 수 있으며, 다음과 같은 응답을 얻을 수 있습니다:
확인할 수 있듯이, choices에 포함된 정보는 기본 사용의 내용과 일치하며, 여기에는 Gemini가 여러 대화에 대해 응답한 구체적인 내용이 포함되어 있어 여러 대화 내용을 바탕으로 해당 질문에 답변할 수 있습니다.

Gemini-3.0 멀티모달 모델

요청 예시:
예시 결과:
물론 동영상 링크와 같은 것도 전달할 수 있으며, 구체적인 입력은 다음과 같습니다:
예시 결과:
위에서 볼 수 있듯이 Gemini 3.0 모델은 멀티모달 이해를 지원할 수 있습니다.

Gemini-3.1 멀티모달 모델

gemini-3.1-pro-preview는 현재 Gemini 3.1 Pro의 공식 모델 ID이며, 텍스트, 이미지, 동영상 등의 멀티모달 입력을 지원하고 복잡한 추론, 코딩 및 이해 작업에 적합합니다. 요청 예시:
Gemini 3.1 Pro 역시 동영상 이해를 지원합니다:
반환 형식은 Gemini 3.0 Pro와 일치하며, 자세한 내용은 위의 Gemini-3.0 멀티모달 모델 섹션의 설명을 참조하세요.

오류 처리

API를 호출할 때 오류가 발생하면 API는 해당 오류 코드와 정보를 반환합니다. 예를 들면 다음과 같습니다:
  • 400 token_mismatched: 잘못된 요청이며, 매개변수가 누락되었거나 유효하지 않기 때문일 수 있습니다.
  • 400 api_not_implemented: 잘못된 요청이며, 매개변수가 누락되었거나 유효하지 않기 때문일 수 있습니다.
  • 401 invalid_token: 인증되지 않음, 인증 토큰이 유효하지 않거나 누락되었습니다.
  • 429 too_many_requests: 요청이 너무 많습니다. 속도 제한을 초과했습니다.
  • 500 api_error: 내부 서버 오류이며, 서버에서 문제가 발생했습니다.

오류 응답 예시

결론

본 문서를 통해 Gemini Chat Completion API를 사용하여 공식 Gemini의 대화 기능을 손쉽게 구현하는 방법을 이미 이해하셨습니다. 본 문서가 해당 API를 더 효과적으로 연동하고 사용하는 데 도움이 되기를 바랍니다. 궁금한 점이 있으시면 언제든지 당사의 기술 지원 팀에 문의해 주세요.