嵌入(Embeddings)是将文本、图像或视频转化为数值表征的技术,这些数值能够捕捉输入数据之间的关联性。
其核心原理是将文本、图像及视频转换为浮点数数组(即向量)。这些向量经过特殊设计,能够准确反映原始数据的语义特征。嵌入数组的长度被称为向量的维度。
通过计算两个文本向量表征之间的数值距离,应用程序可以判定原始对象之间的相似度。这种基于向量距离的相似性度量,为语义检索等应用场景提供了数学基础。
EmbeddingModel接口专为AI和机器学习领域的嵌入模型集成而设计,主要功能是将文本转换为数值向量(即嵌入表征)。这些嵌入向量在语义分析、文本分类等任务中具有关键作用。
该接口的设计聚焦两大核心目标:
- 可移植性 通过标准化接口设计,确保开发者能在不同嵌入模型间灵活切换。仅需极少代码修改即可适配新技术方案,这一特性完美契合Spring框架推崇的模块化与可互换性原则。
- 易用性 提供embed(String text)和embed(Document document)等简洁方法,将原始文本处理与嵌入算法等复杂逻辑封装在底层。这种设计显著降低了AI技术门槛,即使不熟悉底层机制的开发者也能快速将嵌入技术集成到应用中。