购买实例
购买实例可参考购买OpenSearch向量检索版实例。
配置实例
新购买的实例,在其详情页中,实例状态为“待配置”,之后需要进入实例详情页,为该实例配置表基础信息 > 数据同步 > 字段配置 > 索引结构 > 确认创建,最后等待索引重建完成即可正常搜索。
在实例列表中,找到目标实例,单击其操作列的配置进入配置页面。
1. 表基础信息
表管理点击“添加表",输入表名称,设置数据分片数和数据更新资源数,选择需要的场景模板,点击下一步。
配置说明:
表名称:可自定义。
数据分片数:分片数设置时,请填写不超过256的正整数, 用于提升全量构建速度、单次查询性能。(部分存量实例,仍需各索引表分片数保持一致;或至少一个索引表分片数为1,其余索引表分片数一致)
数据更新资源数:数据更新所用资源数,每个索引默认免费提供2个4核8G的更新资源,超出免费额度的资源将产生费用,详情可参考向量检索版计费概述
场景模板:向量检索版内置了3种模板可供用户选择:通用、向量-图片搜索、向量-文本语义模板。
各场景模版说明:
通用模板:空模版,不预置任何字段及索引。
向量:图片搜索:使用 OpenSearch 内置转向量模型将图片原始数据转化为稠密向量。
向量:文本语义搜索:将文本转化为稠密向量实现语义分析,可选择稠密向量检索或稠密&稀疏向量混合检索。
2. 数据同步
选择全量数据来源(目前支持的数据源有MaxCompute+API、对象存储OSS+API、OpenLake-DLF向量数据同步至阿里云OpenSearch和API数据源),本文以MaxCompute+API为例,依次设置AccessKey、AccessKey Secret、Project、Table、Partition,按需选择是否开启“自动索引重建”,设置完成后在数据来源校验点击校验,校验通过后才可以进行下一步操作。
3. 字段配置
OpenSearch会根据您选择的场景模板,预置相关字段,并会将全量数据来源中的字段(如有),自动导入字段列表中。设置字段,必须包含至少两个字段,主键字段和向量字段(向量字段需要设置为多值float类型)。如果需要带有类目的向量,可以在主键和向量字段中间加一个类目字段。
字段配置说明:
必选字段:主键字段和向量字段,主键字段为int或string类型并且需要勾选主键按钮,向量字段为float类型并且需要勾选向量字段按钮;
向量字段默认为多值的float类型,控制台建表默认采用逗号切分,支持自定义多值分隔符。
使用向量检索,在定义字段时有位置要求,需要按照主键字段、命名空间字段(非必要)、向量字段的顺序创建。
当数据中缺少字段或字段为空时,系统将自动补充默认值,数字类型默认补0,STRING类型默认补空字符串,支持自定义默认值。
4. 索引结构
OpenSearch会对主键与向量字段自动构建索引,索引名与字段名相同,只需要在控制台配置向量索引:
索引名称:embedding
向量维度:128
距离类型:SquaredEuclidean
向量索引算法:Qc
实时索引:true
高级配置按需填写,详情可参考向量索引通用配置。
主键字段、向量字段必须填写,命名空间字段非必填,可以为空。
仅支持选择固定的三个字段,不支持新增。
系统自动填充向量索引的配置参数,如无特殊需求,可直接点击「确定」快速完成配置。
命名空间字段:实例引擎版本为vector service 1.0.2及以下版本,namespace标签字段不支持string格式类型;实例引擎版本为vector service 1.0.2及以上版本,无此限制。
5. 确认创建
索引配置完成后,点击确认创建。
确认后,系统将自动进行索引构建,预计创建时间 2 分钟,构建完成后的索引将自动在当前实例中启用。
点击确认创建后,在表管理列表中可看到新建的表,其状态显示为创建中,等待创建完成即可。
6. 变更历史
实例管理-变更历史-数据源变更,可以看到创建表及新增索引及全量的所有FSM,全部完成之后引擎搭建完成,就可以开始进行数据添加和查询测试:
添加表操作展开后包含两个变更流程:
订阅/取消订阅索引表:变更节点依次为参数检查、修改订阅状态、提交到在线集群、等待状态生效
手动触发全量:变更节点依次为参数检查、触发、扫描数据源
各节点显示绿色勾表示该步骤已完成。
7. 查询测试
在左侧导航栏向量管理 > 查询测试进行查询,查询测试同时支持表单/开发者模式。
7.1 表单模式
依次选择好表单模式 > 表名,Query类型选择向量,在向量框中输入查询的参数,点击搜索后就可以在搜索结果栏中查看到结果。
表单中还需选择索引名称(如 embedding)并设置TopK(如 10),可按需填写过滤条件、命名空间和结果排列顺序。搜索结果以表格形式展示,包含距离分、主键、向量值、属性、命名空间等列。
7.2 开发者模式
依次选择好开发者模式 > 表名,在下方的搜索框内输入查询参数,完成后点击搜索就可以在右侧的结果栏内看到查询结果。
查询参数还包括 indexName,用于指定查询的索引名称,示例值为 "embedding"。
vector:具体要查询的向量
topK:取top K个结果
includeVector:是否返回文档中的向量信息
详细的查询语法可参考下方的语法说明。