Gemini API
Gemini API를 사용하면 개발자가 Gemini 모델을 사용하여 생성형 AI 애플리케이션을 빌드할 수 있습니다. Gemini는 처음부터 멀티모달로 설계된 Google의 가장 강력한 모델입니다. 언어, 이미지, 오디오, 동영상, 코드 등 다양한 유형의 정보를 일반화하고 원활하게 이해, 활용, 결합할 수 있습니다. Gemini API는 텍스트와 이미지 간 추론, 콘텐츠 생성, 대화형 에이전트, 요약 및 분류 시스템 등의 사용 사례에 사용할 수 있습니다.
- REST 리소스: v1beta.auth_tokens
- REST 리소스: v1beta.batches
- REST 리소스: v1beta.cachedContents
- REST 리소스: v1beta.corpora
- REST 리소스: v1beta.corpora.operations
- REST 리소스: v1beta.corpora.permissions
- REST 리소스: v1beta.dynamic
- REST 리소스: v1beta.environments
- REST 리소스: v1beta.environments.files.media
- REST 리소스: v1beta.fileSearchStores
- REST 리소스: v1beta.fileSearchStores.documents
- REST 리소스: v1beta.fileSearchStores.operations
- REST 리소스: v1beta.fileSearchStores.upload.operations
- REST 리소스: v1beta.files
- REST 리소스: v1beta.generatedFiles
- REST 리소스: v1beta.generatedFiles.operations
- REST 리소스: v1beta.media
- REST 리소스: v1beta.models
- REST 리소스: v1beta.models.operations
- REST 리소스: v1beta.tunedModels
- REST 리소스: v1beta.tunedModels.operations
- REST 리소스: v1beta.tunedModels.permissions
서비스: generativelanguage.googleapis.com
이 서비스를 호출하려면 Google에서 제공하는 클라이언트 라이브러리를 사용하는 것이 좋습니다. 애플리케이션에서 자체 라이브러리를 사용하여 이 서비스를 호출해야 한다면 API 요청을 실행할 때 다음 정보를 사용해야 합니다.
서비스 엔드포인트
서비스 엔드포인트는 API 서비스의 네트워크 주소를 지정하는 기준 URL입니다. 하나의 서비스는 여러 서비스 엔드포인트를 포함할 수 있습니다. 이 서비스에는 다음 서비스 엔드포인트가 포함되고, 그 아래의 모든 URI가 이 서비스 엔드포인트와 관련됩니다.
https://generativelanguage.googleapis.com
REST 리소스: v1beta.auth_tokens
| 메서드 | |
|---|---|
create |
POST /v1beta/auth_tokens BidiGenerateContent 세션의 동작을 제한하는 데 사용할 수 있는 토큰을 만듭니다. |
REST 리소스: v1beta.batches
| 메서드 | |
|---|---|
cancel |
POST /v1beta/{name=batches/*}:cancel 장기 실행 작업에 대한 비동기 취소를 시작합니다. |
delete |
DELETE /v1beta/{name=batches/*} 장기 실행 작업을 삭제합니다. |
get |
GET /v1beta/{name=batches/*} 장기 실행 작업의 최신 상태를 가져옵니다. |
list |
GET /v1beta/{name=batches} 요청에 지정된 필터와 일치하는 작업을 나열합니다. |
updateEmbedContentBatch |
PATCH /v1beta/{embedContentBatch.name=batches/*}:updateEmbedContentBatch 일괄 처리를 위해 EmbedContent 요청을 일괄 업데이트합니다. |
updateGenerateContentBatch |
PATCH /v1beta/{generateContentBatch.name=batches/*}:updateGenerateContentBatch 일괄 처리를 위해 GenerateContent 요청을 일괄 업데이트합니다. |
REST 리소스: v1beta.cachedContents
| 메서드 | |
|---|---|
create |
POST /v1beta/cachedContents CachedContent 리소스를 만듭니다. |
delete |
DELETE /v1beta/{name=cachedContents/*} CachedContent 리소스를 삭제합니다. |
get |
GET /v1beta/{name=cachedContents/*} CachedContent 리소스를 읽습니다. |
list |
GET /v1beta/cachedContents CachedContents를 나열합니다. |
patch |
PATCH /v1beta/{cachedContent.name=cachedContents/*} CachedContent 리소스를 업데이트합니다 (만료만 업데이트 가능). |
REST 리소스: v1beta.fileSearchStores
| 메서드 | |
|---|---|
create |
POST /v1beta/fileSearchStores 빈 FileSearchStore를 만듭니다. |
delete |
DELETE /v1beta/{name=fileSearchStores/*} FileSearchStore를 삭제합니다. |
get |
GET /v1beta/{name=fileSearchStores/*} 특정 FileSearchStore에 관한 정보를 가져옵니다. |
importFile |
POST /v1beta/{fileSearchStoreName=fileSearchStores/*}:importFile 파일 서비스에서 FileSearchStore로 File를 가져옵니다. |
list |
GET /v1beta/fileSearchStores 사용자가 소유한 모든 FileSearchStores을 나열합니다. |
REST 리소스: v1beta.fileSearchStores.documents
| 메서드 | |
|---|---|
delete |
DELETE /v1beta/{name=fileSearchStores/*/documents/*} Document를 삭제합니다. |
get |
GET /v1beta/{name=fileSearchStores/*/documents/*} 특정 Document에 대한 정보를 가져옵니다. |
list |
GET /v1beta/{parent=fileSearchStores/*}/documents Corpus의 모든 Document를 나열합니다. |
REST 리소스: v1beta.fileSearchStores.operations
| 메서드 | |
|---|---|
get |
GET /v1beta/{name=fileSearchStores/*/operations/*} 장기 실행 작업의 최신 상태를 가져옵니다. |
REST 리소스: v1beta.fileSearchStores.upload.operations
| 메서드 | |
|---|---|
get |
GET /v1beta/{name=fileSearchStores/*/upload/operations/*} 장기 실행 작업의 최신 상태를 가져옵니다. |
REST 리소스: v1beta.files
| 메서드 | |
|---|---|
delete |
DELETE /v1beta/{name=files/*} File을 삭제합니다. |
get |
GET /v1beta/{name=files/*} 지정된 File의 메타데이터를 가져옵니다. |
list |
GET /v1beta/files 요청 프로젝트가 소유한 File의 메타데이터를 나열합니다. |
register |
POST /v1beta/files:register Google Cloud Storage 파일을 FileService에 등록합니다. |
REST 리소스: v1beta.media
| 메서드 | |
|---|---|
download |
GET /v1beta/{parent=environments/*}/files 환경 스냅샷에서 파일 메타데이터 또는 디렉터리 콘텐츠를 가져옵니다. |
upload |
POST /v1beta/files POST /upload/v1beta/files File를 만듭니다. |
uploadToFileSearchStore |
POST /v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore POST /upload/v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore FileSearchStore에 데이터를 업로드하고, FileSearchStore 문서에 저장하기 전에 전처리하고 청크로 나눕니다. |
REST 리소스: v1beta.models
| 메서드 | |
|---|---|
asyncBatchEmbedContent |
POST /v1beta/{batch.model=models/*}:asyncBatchEmbedContent 일괄 처리를 위해 EmbedContent 요청을 대기열에 추가합니다. |
batchEmbedContents |
POST /v1beta/{model=models/*}:batchEmbedContents EmbedContentRequest 객체로 표현된 문자열 배치로 구성된 입력 Content에서 여러 임베딩 벡터를 생성합니다. |
batchGenerateContent |
POST /v1beta/{batch.model=models/*}:batchGenerateContent 일괄 처리를 위해 GenerateContent 요청을 대기열에 추가합니다. |
countTokens |
POST /v1beta/{model=models/*}:countTokens 입력 Content에서 모델의 토큰화 도구를 실행하고 토큰 수를 반환합니다. |
embedContent |
POST /v1beta/{model=models/*}:embedContent 지정된 Gemini 임베딩 모델을 사용하여 입력 Content에서 텍스트 임베딩 벡터를 생성합니다. |
generateContent |
POST /v1beta/{model=models/*}:generateContent 입력 GenerateContentRequest가 주어지면 모델 대답을 생성합니다. |
get |
GET /v1beta/{name=models/*} 버전 번호, 토큰 한도, 매개변수, 기타 메타데이터와 같은 특정 Model에 관한 정보를 가져옵니다. |
list |
GET /v1beta/models Gemini API를 통해 사용할 수 있는 Model를 나열합니다. |
predict |
POST /v1beta/{model=models/*}:predict 예측 요청을 수행합니다. |
predictLongRunning |
POST /v1beta/{model=models/*}:predictLongRunning Predict와 동일하지만 LRO를 반환합니다. |
streamGenerateContent |
POST /v1beta/{model=models/*}:streamGenerateContent 입력 GenerateContentRequest가 주어지면 모델에서 스트리밍된 대답을 생성합니다. |
REST 리소스: v1beta.interactions
| 메서드 | |
|---|---|
CreateCredential |
POST /v1beta/credentials 사용자 인증 정보를 만듭니다. |
CreateInteraction |
POST /v1beta/interactions 새 상호작용을 만듭니다. |
cancelInteractionById |
POST /v1beta/interactions/{id}/cancel ID로 상호작용을 취소합니다. |
ListCredentials |
GET /v1beta/credentials 프로젝트의 사용자 인증 정보를 나열합니다. |
GetCredential |
GET /v1beta/credentials/{id} 단일 사용자 인증 정보의 메타데이터를 가져옵니다 (보안 비밀 필드 없음). |
getInteractionById |
GET /v1beta/interactions/{id} `Interaction.id`를 기반으로 단일 상호작용의 전체 세부정보를 가져옵니다. |
UpdateCredential |
PATCH /v1beta/credentials/{id} 사용자 인증 정보를 업데이트합니다. |
DeleteCredential |
DELETE /v1beta/credentials/{id} 사용자 인증 정보를 삭제합니다. |
deleteInteraction |
DELETE /v1beta/interactions/{id} ID로 상호작용을 삭제합니다. |
REST 리소스: v1beta.agents
| 메서드 | |
|---|---|
CreateAgent |
POST /v1beta/agents 새로운 상담사를 만듭니다 (SDK용 유형이 지정된 버전). |
ListAgents |
GET /v1beta/agents 모든 상담사를 나열합니다. |
GetAgent |
GET /v1beta/agents/{id} 특정 에이전트를 가져옵니다. |
DeleteAgent |
DELETE /v1beta/agents/{id} 에이전트를 삭제합니다. |
REST 리소스: v1beta.webhooks
| 메서드 | |
|---|---|
CreateWebhook |
POST /v1beta/webhooks 새 웹훅을 만듭니다. |
PingWebhook |
POST /v1beta/webhooks/{id}:ping 웹훅에 핑 이벤트를 전송합니다. |
RotateSigningSecret |
POST /v1beta/webhooks/{id}:rotateSigningSecret 웹훅의 새 서명 보안 비밀을 생성합니다. |
ListWebhooks |
GET /v1beta/webhooks 모든 웹훅을 나열합니다. |
GetWebhook |
GET /v1beta/webhooks/{id} 특정 웹훅을 가져옵니다. |
UpdateWebhook |
PATCH /v1beta/webhooks/{id} 기존 웹훅을 업데이트합니다. |
DeleteWebhook |
DELETE /v1beta/webhooks/{id} 웹훅을 삭제합니다. |
REST 리소스: v1beta.triggers
| 메서드 | |
|---|---|
CreateTrigger |
POST /v1beta/triggers 지정된 cron 일정에 따라 지정된 에이전트를 호출하는 새 트리거를 만듭니다. |
RunTrigger |
POST /v1beta/triggers/{trigger_id}/executions 트리거를 즉시 실행합니다. |
ListTriggers |
GET /v1beta/triggers 프로젝트의 트리거를 나열합니다. |
GetTrigger |
GET /v1beta/triggers/{id} 단일 트리거의 세부정보를 가져옵니다. |
ListTriggerExecutions |
GET /v1beta/triggers/{trigger_id}/executions 트리거의 실행을 나열합니다. |
UpdateTrigger |
PATCH /v1beta/triggers/{id} 트리거를 업데이트합니다. |
DeleteTrigger |
DELETE /v1beta/triggers/{id} 트리거를 삭제합니다. |
REST 리소스: v1beta.environments
| 메서드 | |
|---|---|
CreateEnvironment |
POST /v1beta/environments 환경을 만듭니다. |
ListEnvironments |
GET /v1beta/environments 환경을 나열합니다. |
GetEnvironmentFiles |
GET /v1beta/environments/{environment}/files/{path} 환경의 스냅샷에서 파일 메타데이터 또는 디렉터리 콘텐츠를 가져옵니다. |
GetEnvironment |
GET /v1beta/environments/{id} 환경을 가져옵니다. |
StartEnvironmentFileUpload |
PUT /upload/v1beta/environments/{environment}/files/{path} 환경 작업공간에 있는 파일의 재개 가능한 업로드 세션을 시작합니다. |
DeleteEnvironment |
DELETE /v1beta/environments/{id} 환경을 삭제합니다. |