Skip to main content
Google Gemini는 매우 강력한 AI 대화 시스템으로, 입력한 프롬프트에 따라 몇 초 만에 유창하고 자연스러운 응답을 생성할 수 있습니다. Gemini는 놀라운 지능적 지원을 제공하여 인간의 작업 효율성과 창의성을 크게 향상시킵니다. 이 문서는 Gemini Chat Completion API 작업 사용 프로세스를 주로 설명하며, 이를 통해 공식 Gemini의 대화 기능을 쉽게 사용할 수 있습니다.

신청 프로세스

Gemini Chat Completion API를 사용하려면 먼저 Gemini Chat Completion API 페이지에서 “Acquire” 버튼을 클릭하여 요청에 필요한 자격 증명을 얻습니다: 로그인 또는 등록이 되어 있지 않으면 자동으로 로그인 페이지로 리디렉션되어 등록 및 로그인을 요청합니다. 로그인 및 등록 후에는 자동으로 현재 페이지로 돌아옵니다. 첫 번째 신청 시 무료 한도가 제공되어 해당 API를 무료로 사용할 수 있습니다.

기본 사용

다음으로 인터페이스에 해당 내용을 입력할 수 있습니다. 아래 그림과 같이:

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

호출 후, 반환된 결과는 다음과 같습니다:
반환된 결과는 여러 필드를 포함하며, 다음과 같이 설명됩니다:
  • id, 생성된 대화 작업의 ID로, 해당 대화 작업을 고유하게 식별하는 데 사용됩니다.
  • model, 선택한 Gemini 공식 모델입니다.
  • choices, Gemini가 질문어에 대해 제공한 응답 정보입니다.
  • usage: 이번 질문-응답 쌍에 대한 토큰 통계 정보입니다.
그 중 choices는 Gemini의 응답 정보를 포함하고 있으며, 그 안의 choices는 Gemini의 구체적인 응답 정보를 포함하고 있습니다. 아래 그림과 같이 확인할 수 있습니다.

choices 안의 content 필드에는 Gemini의 응답 내용이 포함되어 있습니다.

스트리밍 응답

이 인터페이스는 스트리밍 응답도 지원하여 웹 페이지 통합에 매우 유용하며, 웹 페이지에서 글자 단위로 표시하는 효과를 구현할 수 있습니다. 스트리밍 응답을 원하면 요청 헤더의 stream 매개변수를 true로 변경하면 됩니다. 아래 그림과 같이 수정하되, 호출 코드는 스트리밍 응답을 지원하도록 적절한 변경이 필요합니다.

streamtrue로 변경하면 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는 Gemini 3.0 Pro의 업그레이드 버전으로, 기본 모델은 gemini-3.1-pro-preview이며, 텍스트, 이미지, 비디오 등 다중 모달 입력을 지원하고 더 강력한 추론 및 이해 능력을 갖추고 있습니다. 사용 방법은 Gemini 3.0 Pro와 완전히 동일하며, model 매개변수만 gemini-3.1-pro로 교체하면 됩니다. 요청 샘플:
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를 더 잘 연결하고 사용하는 데 도움이 되기를 바랍니다. 질문이 있으시면 언제든지 기술 지원 팀에 문의해 주십시오.