All methods

生成式语言 API

借助 Gemini API,开发者可以使用 Gemini 模型构建生成式 AI 应用。Gemini 是我们最强大的模型,从一开始就提供多模态功能。它可以泛化并无缝地理解、处理和组合不同类型的信息,包括语言、图片、音频、视频和代码。您可以将 Gemini API 用于跨文本和图片推理、内容生成、对话代理、摘要和分类系统等用例。

服务:generativelanguage.googleapis.com

如要调用此服务,我们建议您使用 Google 提供的客户端库。如果您的应用需要使用您自己的库来调用此服务,则在发出 API 请求时应使用以下信息。

服务端点

服务端点是指定 API 服务的网络地址的基本网址。一项服务可能有多个服务端点。此服务具有以下服务端点,下面的所有 URI 都与此服务端点相关:

  • https://generativelanguage.googleapis.com

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/*}
) 更新经调参的模型。
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/*}
) 更新权限。