你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

参考:图像嵌入 | Azure AI Studio

重要

本文中标记了“(预览版)”的项目目前为公共预览版。 此预览版未提供服务级别协议,不建议将其用于生产工作负载。 某些功能可能不受支持或者受限。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款

创建表示输入图像和文本对的嵌入矢量。

POST /images/embeddings?api-version=2024-04-01-preview

URI 参数

名称 必需 类型​​ 说明
api-version 查询 正确 string 格式为“YYYY-MM-DD”或“YYYY-MM-DD-preview”格式的 API 版本。

请求头

名称 必需 类型​​ 描述
其他参数 string 在有效负载中指示其他参数时 API 的行为。 使用 pass-through 让 API 将参数传递给基础模型。 如果要传递基础模型可以支持的参数,请使用此值。 使用 ignore 让 API 删除任何不受支持的参数。 如果需要在不同模型中使用相同的有效负载,请使用此值,但如果不受支持,其中一个其他参数可能会使模型出错。 使用 error 让 API 拒绝有效负载中的任何其他参数。 只能指示此 API 中指定的参数,否则将返回 400 错误。
azureml-model-deployment string 要将请求路由到的部署的名称。 支持支持多个部署的终结点。

请求正文

名称 必需 类型​​ 描述
input True EmbeddingInput[] 要嵌入的输入图像。 若要在单个请求中嵌入多个输入,请传递数组。 输入不能超过模型的最大输入令牌。
dimensions integer 生成的输出嵌入应有的维度数。 传递 null 会导致模型使用其默认值。 如果模型不支持值或参数,则返回 422 错误。
encoding_format EmbeddingEncodingFormat 嵌入的返回格式。 base64、float、int8、uint8、binary 或 ubinary。 如果模型不支持值或参数,则返回 422 错误。

响应

名称 Type 说明
200 OK CreateEmbeddingResponse 确定
401 未授权 UnauthorizedError 访问令牌缺失或无效

标头

x-ms-error-code: string
404 未找到 NotFoundError 模型不支持模态。 查看模型的文档,查看哪些路由可用。

标头

x-ms-error-code: string
422 不可处理实体 UnprocessableContentError 请求包含无法处理的内容。 当指示的有效负载根据此规范判定为有效时,将返回该错误。 但是,有效负载中指示的某些指令在基础模型中不受支持。 参照 details 部分了解违规的参数。

标头

x-ms-error-code: string
429 请求次数过多 TooManyRequestsError 你已达到指定的速率限制,需要调整请求的速度。

标头

x-ms-error-code: string
其他状态代码 ContentFilterError 无效的请求

标头

x-ms-error-code: string

安全性

授权

带有 Bearer: 前缀的令牌,例如 Bearer abcde12345

Type: apiKey
In: header

AADToken

Azure Active Directory OAuth2 身份验证

类型:oauth2
:应用程序
令牌 URLhttps://login.microsoftonline.com/common/oauth2/v2.0/token

示例

创建表示输入文本和图像的嵌入矢量

示例请求

POST /images/embeddings?api-version=2024-04-01-preview

{
  "input": [
    {
      "text": "A nice picture of a cat",
      "image": "data:image/jpeg;base64,iVBORw0KG..."
    }
  ],
  "encoding_format": "float",
  "dimensions": 1024
}

示例响应

状态代码:200

{
  "data": [
    {
      "index": 0,
      "object": "embedding",
      "embedding": [
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0
      ]
    }
  ],
  "object": "list",
  "model": "DINO",
  "usage": {
    "prompt_tokens": 15,
    "total_tokens": 15
  }
}

定义

名称 描述
ContentFilterError 当提示按配置触发内容筛选器时,API 调用将失败。 修改提示,然后重试。
CreateEmbeddingResponse
CreateImageEmbeddingRequest
详细信息
嵌入 表示生成的图像。
EmbeddingEncodingFormat 嵌入的返回格式。 base64、float、int8、uint8、binary 或 ubinary。 如果模型不支持值或参数,则返回 422 错误。
EmbeddingObject 对象类型,始终为“embedding”。
EmbeddingInput 表示具有可选文本的图像。
ListObject 对象类型,始终为“list”。
NotFoundError
TooManyRequestsError
UnauthorizedError
UnprocessableContentError 请求包含无法处理的内容。 当指示的有效负载根据此规范判定为有效时,将返回该错误。 但是,有效负载中指示的某些指令在基础模型中不受支持。 参照 details 部分了解违规的参数。
使用情况 请求的使用情况信息。

ContentFilterError

当提示按配置触发内容筛选器时,API 调用将失败。 修改提示,然后重试。

名称 Type 说明
code string 错误代码。
error string 错误说明。
message string 错误消息。
param string 触发内容筛选器的参数。
status integer HTTP 状态代码。

CreateEmbeddingResponse

名称 Type 说明
data Embedding[] 模型生成的嵌入列表。
model string 用于生成嵌入的模型的名称。
object ListObject 对象类型,始终为“list”。
使用情况 使用情况 请求的使用情况信息。

CreateImageEmbeddingRequest

名称 类型​​ 默认值 说明
dimensions integer 生成的输出嵌入应有的维度数。 传递 null 会导致模型使用其默认值。 如果模型不支持值或参数,则返回 422 错误。
encoding_format EmbeddingEncodingFormat FLOAT 嵌入的返回格式。 base64、float、int8、uint8、binary 或 ubinary。 如果模型不支持值或参数,则返回 422 错误。
input EmbeddingInput[] 要嵌入的输入图像。 若要在单个请求中嵌入多个输入,请传递数组。 输入不能超过模型的最大输入令牌。

详细信息

名称 Type 描述
loc string[] 导致问题的参数
value string 传递给参数导致问题的值。

嵌入

表示生成的图像。

名称 Type 描述
embedding (嵌入) number[] 嵌入矢量,一个浮点数列表。 矢量的长度取决于所使用的模型。
index integer 嵌入列表的嵌入索引。
object EmbeddingObject 对象类型,始终为“embedding”。

EmbeddingEncodingFormat

嵌入的返回格式。 base64、float、int8、uint8、binary 或 ubinary。 如果模型不支持值或参数,则返回 422 错误。

名称 Type 描述
base64 string
binary string
FLOAT string
int8 string
ubinary string
uint8 string

EmbeddingObject

对象类型,始终为“embedding”。

名称 Type 描述
embedding (嵌入) string

EmbeddingInput

表示具有可选文本的图像。

名称 Type 描述
图像 string base64 字符串中编码为数据 URL 的输入图像。 示例:data:image/{format};base64,{data}
text string 可选。 要馈送到模型中的文本输入(如 DINO、CLIP)。 如果模型不支持值或参数,则返回 422 错误。

ListObject

对象类型,始终为“list”。

名称 Type 说明
list string

NotFoundError

名称 Type 说明
error string 错误说明。
message string 错误消息。
status integer HTTP 状态代码。

TooManyRequestsError

名称 Type 说明
error string 错误说明。
message string 错误消息。
status integer HTTP 状态代码。

UnauthorizedError

名称 Type 说明
error string 错误说明。
message string 错误消息。
status integer HTTP 状态代码。

UnprocessableContentError

请求包含无法处理的内容。 当指示的有效负载根据此规范判定为有效时,将返回该错误。 但是,有效负载中指示的某些指令在基础模型中不受支持。 参照 details 部分了解违规的参数。

名称 Type 说明
code string 错误代码。
detail 详细信息
error string 错误说明。
message string 错误消息。
status integer HTTP 状态代码。

使用情况

请求的使用情况信息。

名称 Type 描述
prompt_patches integer 映像提示使用的映像修补程序数。
prompt_tokens integer 提示使用的令牌数。
total_patches integer 请求使用的修补程序总数。
total_tokens integer 请求使用的令牌总数。