指南

图像理解

视觉模型可以同时接收文本和图像输入。您可以通过以下两种方式之一将图像传递给模型:base64 编码字符串或网络 URL。

在底层,图像理解共享相同的 API 路由和相同的消息正文模式,其中包括 system/user/assistant 消息。不同之处在于消息内容正文中有图像而不是文本。

由于本指南的知识建立在对聊天功能的理解之上。建议您在遵循本指南之前熟悉 聊天 功能。


先决条件

  • xAI 账户:您需要一个 xAI 账户才能访问 API。
  • API 密钥:确保您的 API 密钥有权访问视觉端点,并且已启用支持图像输入的模型。

如果您没有这些并且不确定如何创建,请按照Grok 搭车人指南进行操作。

在您的环境中设置 API 密钥


图像理解模型的通用限制提醒

这些模型可能比聊天模型更容易达到模型限制

  • 最大图像大小:20MiB
  • 最大图像数量:无限制
  • 支持的图像文件类型:jpg/jpegpng
  • 接受任何图像/文本输入顺序(例如,文本提示可以先于图像提示)

参数


构建消息正文 - 与聊天的区别

图像理解的请求消息与聊天类似。主要区别在于,不再是文本输入

我们将 content 作为对象列表发送

image_url.url 也可以是互联网上的图像 URL。

您可以使用文本提示来提问有关图像的问题,或者以图像作为上下文来讨论话题,等等。


图像细节级别

"detail" 字段控制应用于将提供给模型的图像的预处理级别。它是可选的,并确定图像处理的分辨率。 "detail" 的可能值是

  • "auto":系统将自动确定要使用的图像分辨率。这是默认设置,根据模型的评估平衡速度和细节。
  • "low":系统将处理图像的低分辨率版本。此选项速度更快,消耗的 token 更少,使其更具成本效益,但可能会遗漏更精细的细节。
  • "high":系统将处理图像的高分辨率版本。此选项速度较慢,且在 token 使用方面更昂贵,但它允许模型关注图像中更细微的细节。

网络 URL 输入

该模型支持网络 URL 作为图像输入。API 将从公共 URL 获取图像并将其作为聊天的一部分进行处理。与 URL 集成非常简单,只需


Base64 字符串输入

您需要直接在请求中的用户消息中传递 base64 编码的图像。

这是一个示例,说明如何加载本地图像,将其编码为 Base64 并将其用作对话的一部分


多图像输入

您可以在提示中发送多张图像,例如

图像提示可以与文本提示以任何顺序交错。


图像 token 使用量

API 响应中提供了提示图像的 token 使用量。每张图像将自动分解为 448x448 像素的图块,每个图块将消耗 256 个 token。最终生成将包含一个额外的图块,因此每张图像将消耗 (# 个图块 + 1) * 256 个 token。最大限制为 6 个图块,因此您的输入每张图像将消耗少于 1,792 个 token。