kimi-k3/kimi-k2.6/kimi-k2.7-code/kimi-k2.7-code-highspeed)能够理解视觉内容,包括图片文字、图片颜色和物体形状等内容。kimi-k3、kimi-k2.6、kimi-k2.7-code 和 kimi-k2.7-code-highspeed 模型还能理解视频内容。需要让模型识别图片或视频时,按本页方式构造多模态请求。
用 base64 直接上传图片
以下示例把本地图片编码为 base64,通过image_url 类型的消息部分传给 Kimi,并向它提问图片内容:
message.content 必须是 array[object](即 JSON 数组)。不要 将 JSON 数组序列化后以 string 形式放入 message.content;这是非标准格式,不保证被当作视觉输入处理,不同模型或版本的行为可能不同。请始终使用下方的数组格式。
正确的格式——content 是包含多个部分的 JSON 数组:
用文件 ID 引用已上传的图片或视频
视频文件往往更大,可以先把图片或视频上传到 Moonshot,再通过文件 ID 引用,上传方式请参阅 图片理解上传。以下示例上传一个视频文件,并通过ms:// 协议的 video_url 请求模型描述视频内容:
video_url.url 的格式为 ms://<file-id>,ms 为 moonshot storage 的缩写,这是 Moonshot 内部引用文件的协议。
支持的图片与视频格式
图片
图片支持以下格式(MIME 类型):- image/jpeg
- image/png
- image/gif
- image/webp
- image/bmp
- image/heic
- image/heif
image_url 方式传入,但底层可能会按视频解码,token 消耗也按视频方式计算。
SVG
SVG 不支持作为图片输入:通过purpose="image" 上传 SVG,或在 image_url 中传入 SVG(包括 base64 形式),都会被拒绝。如需让模型理解 SVG 内容,可以将 SVG 源码(XML 文本)直接放入 messages 中作为文本输入。
视频
视频支持以下格式(MIME 类型):- video/mp4
- video/mpeg
- video/mov
- video/avi
- video/x-flv
- video/mpg
- video/webm
- video/wmv
- video/3gpp
估算 token 消耗与费用
- 图片与视频按动态 token 计算:通过 计算 token 接口,可以在开始理解前获取包含图片或视频的请求的 token 消耗;
- 图片分辨率越高,消耗的 token 越多;视频由若干张关键帧组成,关键帧的数量越多、分辨率越高,token 消耗越多;
- Vision 模型根据模型推理的总 Tokens 计费,token 价格详见 模型推理价格说明。
控制图片与视频分辨率
推荐图片分辨率不超过 4k(4096*2160),视频分辨率不超过 1080p(1920*1080)。再高的分辨率只会增加处理时间,也不会对模型理解的效果有提升。在 base64 与文件上传之间选择
- 由于请求体的整体大小有限制,对于非常大的视频,必须使用上传文件的方式使用视觉理解功能;
- 对于需要多次引用的图片或视频,推荐使用文件上传的方式使用视觉理解功能;
- 关于上传文件的限制,请参阅 文件上传 文档。
功能支持与限制
Vision 视觉模型支持的特性包括:- 多轮对话
- 流式输出
- 工具调用
- JSON Mode
- Partial Mode
- URL 格式的图片:不支持,目前仅支持使用 base64 编码的图片内容和通过文件 ID 上传的图片/视频
- 图片数量:Vision 模型没有图片数量限制,但请确保请求的 Body 大小不超过 100M
temperature、top_p、n 等参数的取值约束不同,建议不要手动设置;各模型参数差异见 模型参数配置差异 。