All methods

Generative Language API

開發人員可透過 Gemini API,使用 Gemini 模型建構生成式 AI 應用程式。Gemini 是 Google 最強大的模型,打從設計之初就具有多模態特質。可歸納內容,完美解讀、操作及結合語言、圖片、音訊、影片和程式碼等不同類型的資訊。您可以使用 Gemini API 執行各種操作,例如跨文字和圖片進行推理、生成內容、建立對話代理程式、摘要和分類系統等。

服務:generativelanguage.googleapis.com

如要呼叫這項服務,建議您使用 Google 提供的用戶端程式庫。如果您的應用程式需要使用自己的程式庫呼叫這項服務,請在發出 API 要求時使用下列資訊。

服務端點

服務端點是指定 API 服務網路位址的基準網址。一項服務可能有多個服務端點。這項服務有以下服務端點,且下方的 URI 皆以此服務端點為基準:

  • https://generativelanguage.googleapis.com

REST 資源:v1beta.batches

方法
cancel POST /v1beta/{name=batches/*}:cancel
開始以非同步的方式,取消長時間執行的作業。
delete DELETE /v1beta/{name=batches/*}
刪除長時間執行的作業。
get GET /v1beta/{name=batches/*}
取得長時間執行作業的最新狀態。
list GET /v1beta/{name=batches}
列出符合要求中指定篩選器的作業。

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.corpora

方法
create POST /v1beta/corpora
建立空白的 Corpus
delete DELETE /v1beta/{name=corpora/*}
刪除 Corpus
get GET /v1beta/{name=corpora/*}
取得特定 Corpus 的相關資訊。
list GET /v1beta/corpora
列出使用者擁有的所有 Corpora
patch PATCH /v1beta/{corpus.name=corpora/*}
更新 Corpus
query POST /v1beta/{name=corpora/*}:query
Corpus 執行語意搜尋。

REST 資源:v1beta.corpora.documents

方法
create POST /v1beta/{parent=corpora/*}/documents
建立空白的 Document
delete DELETE /v1beta/{name=corpora/*/documents/*}
刪除 Document
get GET /v1beta/{name=corpora/*/documents/*}
取得特定 Document 的相關資訊。
list GET /v1beta/{parent=corpora/*}/documents
列出 Corpus 中的所有 Document
patch PATCH /v1beta/{document.name=corpora/*/documents/*}
更新 Document
query POST /v1beta/{name=corpora/*/documents/*}:query
Document 執行語意搜尋。

REST 資源:v1beta.corpora.documents.chunks

方法
batchCreate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchCreate
批次建立 Chunk
batchDelete POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchDelete
批次刪除 Chunk
batchUpdate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchUpdate
批次更新 Chunk
create POST /v1beta/{parent=corpora/*/documents/*}/chunks
建立 Chunk
delete DELETE /v1beta/{name=corpora/*/documents/*/chunks/*}
刪除 Chunk
get GET /v1beta/{name=corpora/*/documents/*/chunks/*}
取得特定 Chunk 的相關資訊。
list GET /v1beta/{parent=corpora/*/documents/*}/chunks
列出 Document 中的所有 Chunk
patch PATCH /v1beta/{chunk.name=corpora/*/documents/*/chunks/*}
更新 Chunk

REST 資源:v1beta.corpora.permissions

方法
create POST /v1beta/{parent=corpora/*}/permissions
建立特定資源的權限。
delete DELETE /v1beta/{name=corpora/*/permissions/*}
刪除權限。
get GET /v1beta/{name=corpora/*/permissions/*}
取得特定權限的相關資訊。
list GET /v1beta/{parent=corpora/*}/permissions
列出特定資源的權限。
patch PATCH /v1beta/{permission.name=corpora/*/permissions/*}
更新權限。

REST 資源:v1beta.files

方法
delete DELETE /v1beta/{name=files/*}
刪除 File
get GET /v1beta/{name=files/*}
取得指定 File 的中繼資料。
list GET /v1beta/files
列出要求專案擁有的 File 中繼資料。

REST 資源:v1beta.media

方法
upload POST /v1beta/files
POST /upload/v1beta/files
建立 File

REST 資源:v1beta.models

方法
batchEmbedContents POST /v1beta/{model=models/*}:batchEmbedContents
從輸入的 Content 產生多個嵌入向量,其中包含以 EmbedContentRequest 物件表示的一批字串。
batchEmbedText POST /v1beta/{model=models/*}:batchEmbedText
在同步呼叫中,從模型產生多個嵌入項目 (輸入文字)。
countMessageTokens POST /v1beta/{model=models/*}:countMessageTokens
在字串上執行模型的權杖化工具,並傳回權杖計數。
countTextTokens POST /v1beta/{model=models/*}:countTextTokens
在文字上執行模型的權杖化工具,並傳回權杖計數。
countTokens POST /v1beta/{model=models/*}:countTokens
在輸入 Content 上執行模型的權杖化工具,並傳回權杖計數。
embedContent POST /v1beta/{model=models/*}:embedContent
使用指定的 Gemini 嵌入模型,從輸入 Content 生成文字嵌入向量。
embedText POST /v1beta/{model=models/*}:embedText
根據輸入訊息,從模型生成嵌入。
generateAnswer POST /v1beta/{model=models/*}:generateAnswer
根據輸入內容 GenerateAnswerRequest,生成有憑有據的答案。
generateContent POST /v1beta/{model=models/*}:generateContent
根據輸入內容 GenerateContentRequest 生成模型回覆。
generateMessage POST /v1beta/{model=models/*}:generateMessage
根據輸入內容 MessagePrompt 生成模型回覆。
generateText POST /v1beta/{model=models/*}:generateText
根據輸入訊息生成模型回覆。
get GET /v1beta/{name=models/*}
取得特定 Model 的相關資訊,例如版本號碼、權杖限制、參數和其他中繼資料。
list GET /v1beta/models
列出透過 Gemini API 提供的Model
streamGenerateContent POST /v1beta/{model=models/*}:streamGenerateContent
根據輸入內容 GenerateContentRequest,從模型生成串流回應

REST 資源:v1beta.tunedModels

方法
create POST /v1beta/tunedModels
建立調整後的模型。
delete DELETE /v1beta/{name=tunedModels/*}
刪除微調模型。
generateContent POST /v1beta/{model=tunedModels/*}:generateContent
根據輸入內容 GenerateContentRequest 生成模型回覆。
generateText POST /v1beta/{model=tunedModels/*}:generateText
根據輸入訊息生成模型回覆。
get GET /v1beta/{name=tunedModels/*}
取得特定 TunedModel 的相關資訊。
list GET /v1beta/tunedModels
列出已建立的調整後模型。
patch PATCH /v1beta/{tunedModel.name=tunedModels/*}
更新調整後的模型。
streamGenerateContent POST /v1beta/{model=tunedModels/*}:streamGenerateContent
根據輸入內容 GenerateContentRequest,從模型生成串流回應
transferOwnership POST /v1beta/{name=tunedModels/*}:transferOwnership
轉移微調模型的擁有權。

REST 資源:v1beta.tunedModels.permissions

方法
create POST /v1beta/{parent=tunedModels/*}/permissions
建立特定資源的權限。
delete DELETE /v1beta/{name=tunedModels/*/permissions/*}
刪除權限。
get GET /v1beta/{name=tunedModels/*/permissions/*}
取得特定權限的相關資訊。
list GET /v1beta/{parent=tunedModels/*}/permissions
列出特定資源的權限。
patch PATCH /v1beta/{permission.name=tunedModels/*/permissions/*}
更新權限。