你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Cosmos DB 中的矢量嵌入
矢量也称为嵌入或矢量嵌入,是高维空间中数据的数学表示形式。 它们表示各种类型的信息:文本、图像、音频,这是一种机器学习模型可以处理的格式。 当 AI 模型收到文本输入时,它首先将文本标记化为标记。 然后,每个标记转换为相应的嵌入。 此转换过程可以使用嵌入生成模型来完成,例如 Azure OpenAI 嵌入或 Azure 上的 Hugging Face。 该模型通过多个层级处理这些嵌入,捕获文本中的复杂模式和关系。 然后,可以根据需要将输出嵌入重新转换为标记,从而生成可读文本。
矢量化
每个嵌入是浮点数的一个向量,向量空间中两个嵌入之间的距离与原始格式的两个输入之间的语义相似性相关。 例如,如果两个文本相似,则它们的向量表示形式也应该相似。 这些高维表示形式可捕获语义含义,从而使执行搜索、聚类分析和分类等任务更加容易。
下面是两个表示为矢量的文本的示例:
映像源:OpenAI
维度和接近度
每个包含浮点数的框都对应于一个维度,每个维度都对应于一个人类可能理解也可能不理解的特征或属性。 大型语言模型文本嵌入通常具有几千个维度,而更复杂的数据模型可能具有数万个维度。
在上例中的两个矢量之间,有的维度相似,而其他维度有所不同,这是由于两个短语含义的相似性和差异所致。
此图像显示了与截然不同的矢量相比,相似矢量在空间上的接近程度:
映像源:OpenAI
示例
可在此交互式可视化效果中看到更多示例,该可视化效果将数据转换为三维空间。