大家好,我是小米,一个爱折腾、爱研究 AI 的31岁程序员大哥哥~
前几天,我又做了一件“手痒”的事。那天晚上,一边啃着烤红薯、一边刷着 Google Cloud 的开发者博客,突然看到一个词闪闪发光——VertexAI Multimodal Embedding。
我当时心想:“咦,这不是 Google 的多模态向量模型吗?居然也能在 SpringAI 里玩!”
于是,一杯咖啡下肚,我就开始了这场与“多模态大脑”的浪漫邂逅。
今天这篇文章,就带你一边听故事、一边动手,彻底搞懂:
- VertexAI 是什么?
- Google 多模态向量模型能干啥?
- 怎么一步步在 SpringAI 里配置好它?
准备好了吗?咱们开始吧!
遇见 VertexAI:Google 的 AI 集成中台
如果你接触过 OpenAI、Azure AI、Claude 这些模型,那 VertexAI 就是 Google 体系里的“智能大脑中台”。
它整合了 Google Cloud 的算力、存储、模型部署与 API 能力,提供了一个一站式的机器学习服务平台。
简单理解就是:
你只要有数据、有想法,不管是训练、部署、调优、推理,都能在 VertexAI 上搞定。
而其中的“Embedding 模型”就是它的“理解器”——
- 文本理解
- 图像感知
- 声音识别
- 多模态融合
这意味着,你不仅可以给它文字,它还能同时“看图识物”“看图理解情绪”。
比如输入一张猫咪图片,它不仅能告诉你这是猫,还能理解“这是一只慵懒地晒太阳的橘猫”。是不是有点心动?
Google 多模态 向量模型:让机器懂“图文世界”
普通的文本向量模型(比如 text-embedding-3-large)只能处理文字。但 Google 的多模态向量模型 不一样。
它同时能理解:
- 文字(Text)
- 图片(Image)
- 文本+图片组合(Text + Image)
而且它会把这些不同类型的内容统一映射到同一个语义空间(Semantic Space) 。
也就是说,一张图片和一句文字如果“语义相似”,它们的向量距离就会很近。举个例子:
- 文字:“一个穿红衣的小女孩在吹泡泡。”
- 图片:一张真的小女孩吹泡泡的照片。
在多模态模型的世界里,它们之间的相似度几乎可以达到 1。这就厉害了!这意味着你可以:
- 做“以图搜文”或“以文搜图”;
- 构建智能图文检索系统;
- 实现更懂语义的 AI 推荐。
所以当我第一次用上它时,脑子里只有一个想法:
“这不就是人类感官的数字版吗?!”
动手前的准备:先决条件
要让 SpringAI 调用 VertexAI,多模态 Embedding 模型生效,我们先得准备以下内容:
有了这些条件,你就能顺利接入 Google 的多模态向量模型啦。
添加存储库和 BOM
接下来,我们进入项目实操部分!首先要在 pom.xml 中添加 SpringAI 的仓库和 BOM。
因为 SpringAI 对 VertexAI 的支持是通过统一的依赖版本管理的。
然后再添加 VertexAI 模型支持依赖
到这里,项目基础骨架就搭好了。
自动配置:让 Spring 自动识别 VertexAI
SpringAI 的一个神奇之处就在于“自动配置”。
你只需要在配置文件里设置几个关键属性,Spring 就能自动帮你创建 VertexAI 客户端。
是不是很丝滑?完全不需要手动实例化对象,Spring Boot 会帮你搞定依赖注入和模型连接。
Embedding 通用属性
下面我们先看下 SpringAI 中 Embedding 模型的通用配置项
这些参数在各类向量模型中通用,Google 的多模态模型也支持。
vertex.ai.embedding.multimodal 属性
重点来了~
我们来看看 VertexAI 多模态模型特有的配置项。
这些配置项让你能完全掌控 VertexAI 的连接与性能参数。
手动配置
当然,如果你像我一样,喜欢“看得见的代码掌控感”,那也可以手动配置模型 Bean。
在 Spring 项目中创建一个配置类,比如 VertexAiConfig.java:
然后就可以在任何需要的地方注入使用啦
接下来,只要调用 vertexAiModel.embed(imageOrTextInput),就能轻松生成多模态向量!
总结
那天我第一次跑通 VertexAI 的多模态模型时,屏幕上出现了一串奇怪的向量数组。
我突然意识到,那些看似冰冷的数字,其实正在描绘“图文语义的世界地图”。
从文字到图片,从代码到感知,我们正在让 AI 拥有“理解世界的眼睛”。
而 SpringAI 就像一座温柔的桥,让这些复杂的 AI 能力,轻轻地落入开发者的手中。
如果你也对“让机器懂世界”充满好奇,不妨今晚也试试看 VertexAI Multimodal Embedding~
也许,你也会在某个夜晚,感受到那种“数字世界第一次看懂人类感情”的悸动。
END
如果你喜欢这种带点故事、带点实操、又能让你边看边上手的技术分享,记得点个 【在看】~
敬请期待,我们不止在讲代码,更在探索智慧的边界。
我是小米,一个喜欢分享技术的31岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!