Generative Language API
開發人員可透過 Gemini API,使用 Gemini 模型建構生成式 AI 應用程式。Gemini 是 Google 最強大的模型,打從設計之初就具有多模態特質。可歸納內容,完美解讀、操作及結合語言、圖片、音訊、影片和程式碼等不同類型的資訊。您可以使用 Gemini API 執行各種操作,例如跨文字和圖片進行推理、生成內容、建立對話代理程式、摘要和分類系統等。
- REST 資源:v1beta.batches
- REST 資源:v1beta.cachedContents
- REST 資源:v1beta.corpora
- REST 資源:v1beta.corpora.documents
- REST 資源:v1beta.corpora.documents.chunks
- REST 資源:v1beta.corpora.operations
- REST 資源:v1beta.corpora.permissions
- REST 資源:v1beta.dynamic
- 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 服務網路位址的基準網址。一項服務可能有多個服務端點。這項服務有以下服務端點,且下方的 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/*} 更新權限。 |