SpringAI接入Google大脑:玩转VertexAI多模态向量模型!

174 阅读5分钟



大家好,我是小米,一个爱折腾、爱研究 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岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!