配置向量缓存

更新时间:
复制为 MD 格式

OpenSearch向量检索版中,为避免重复向量化计算带来的资源消耗和成本增加,向量缓存功能通过引入缓存表机制,在数据写入时自动比对字段内容是否变化,仅对变化的数据调用模型重新计算向量,从而有效降低模型调用量。

工作原理

每次写入数据时,系统按以下流程处理向量字段:

  1. 根据当前记录的向量标识字段值,在缓存表中查找匹配记录。

  2. 命中缓存:直接读取缓存表中已有的向量值,写入当前表的向量字段。

  3. 未命中缓存:实时调用向量模型计算向量值,写入当前表的向量字段。

向量标识字段通常由业务信息(如字段内容、向量模型名称、向量维度等)生成的唯一 ID,用于判断需要向量化的字段内容以及向量化模型信息是否发生变化。

使用限制

  • 处理流程限制

    • 单步处理:仅支持包含单个处理步骤的向量字段。

    • 不支持多步链式处理:例如OCR 识别 + 向量化等多步骤处理链暂不支持缓存。

  • 支持的模板与模型

    • 适用模板:仅限“文本稠密向量化”、“图片向量化”及“融合向量”。

    • 模型要求:内置向量化模型不支持缓存。如需使用缓存,请切换至AI 搜索开放平台或百炼平台提供的模型。

  • 字段与表结构要求

    • 字段类型:向量标识字段与缓存表关联字段必须为 String 类型。

    • 实例一致性:缓存表必须与当前数据表位于同一实例中。

  • 资源影响评估

    • 流量增加:开启缓存后,系统需查询在线集群以获取向量,这将导致在线集群流量上升(增幅取决于数据更新量)。

    • 建议:请务必根据预期的数据更新频率,合理评估并扩容查询节点与数据节点的资源。

配置向量缓存

在添加表或修改表的字段配置阶段,完成向量字段的数据处理配置后,即可启用向量缓存。

  1. 在字段配置页面,为需要向量化的字段完成数据处理配置(如选择文本稠密向量化模板和对应模型)。

  2. 在数据处理配置面板的服务列表中,单击生成字段旁边的向量缓存,打开向量缓存配置对话框。

  3. 配置当前表参数:

    参数

    说明

    向量字段

    缓存命中时直接写入、未命中时由模型实时计算后写入的目标字段。为当前表选中的向量字段。

    向量标识字段

    用于在缓存表中匹配记录的唯一标识。通常由字段内容、向量模型、向量维度等业务信息生成。只能选择 String 类型字段。

  4. 配置缓存表参数:

    参数

    说明

    表名

    选择同一实例下的表作为缓存表。

    向量标识字段

    缓存表中与当前表向量标识字段对应的关联字段。只能选择 String 类型字段。

    向量字段

    缓存表中存储向量值的字段。命中缓存时,该字段的值将被读取并写入当前表的向量字段。

  5. 单击确定,完成向量缓存配置。

缓存表设计建议

缓存表应包含以下字段:

  • 一个 String 类型的标识字段,存储与当前表向量标识字段相同格式的值。

  • 一个多值 Float 类型的向量字段,存储已计算的向量值。

缓存表的数据来源通常是历史已完成向量化的数据。当某张表的数据经过向量模型计算后,可将向量标识和对应的向量值写入缓存表,供后续更新时复用。