多模态概述
多模态,即跨多种数据输入模式同时处理知识。 我们的学习方式、我们的体验都是多模式的。 我们不仅有视觉,还有音频和文本。
与这些原则相反,机器学习通常专注于为处理单一模态而量身定制的专用模型。 例如,我们为文本转语音或语音转文本等任务开发了音频模型,并为对象检测和分类等任务开发了计算机视觉模型。
然而,新一波多模态大型语言模型开始出现。 包括 OpenAI 的 GPT-4o、Google 的 Vertex AI Gemini 1.5、Anthropic 的 Claude3 以及开源产品 Llama3.2、LLaVA 和 BakLLaVA 能够接受多个输入,包括文本图像、音频和视频,并通过集成这些输入来生成文本响应。
Spring AI 多模态
多模态是指模型同时理解和处理来自各种来源的信息(包括文本、图像、音频和其他数据格式)的能力。
Spring AI Message API 提供了支持多模态 LLM 的所有必要抽象。
UserMessage
的content
字段主要用于文本输入,而 可选的media
字段允许添加一个或多个不同形式的其他内容,例如图像、音频和视频。MimeType
指定模态类型。 根据使用的 LLM,Media
data 字段可以是作为Resource
对象的原始媒体内容,也可以是内容的 URI
。
注意:
media 字段当前仅适用于用户输入消息(例如 UserMessage
)。它对系统消息没有意义。包括 LLM 响应的AssistantMessage