一、什么是文本向量文本向量句子 Embedding一段自然语言文本经过 BGE/E5/BERT 等编码器压缩成一串固定长度浮点数组用空间坐标代表文本语义。一句话 → 1 条一维浮点向量[0.12,-0.35,0.78……]常见 768 维、1024 维语义相近 → 向量在高维空间距离近、余弦相似度高语义无关→距离远。区别Word2Vec 是单个字词静态向量BGE/BERT 是整段文本动态语义向量RAG 主流。二、向量数据库内部存储格式、存储内容向量库一条数据 主键 ID 标量元数据 文本向量稠密浮点数组1、存储格式逻辑结构plaintext{ id: 字符串/数字主键唯一标识 metadata: {标签、分类、原文标题、创建时间} 【标量字段和MySQL字段一致】 embedding: [d个浮点数] 【文本向量核心检索字段】 }示例3 维简化真实 768/1024 维表格idmetadata (标量)embedding (文本向量)1{type:数据库,text:向量数据库用于语义检索}[0.52,0.33,-0.21]2{type:数据库,text:Milvus 是主流向量数据库}[0.55,0.30,-0.19]3{type:水果,text:苹果是常见水果}[-0.71,0.22,0.65]2、存储内容拆分主键 ID唯一编号用来关联 MySQL 原始全文元数据 metadata字符串、数字、日期等结构化信息用于过滤筛选等价 MySQL 普通字段文本向量 embedding由 BGE/E5 生成的稠密浮点数数组只用来相似度检索不存储原始文字。工业规范完整原文保存在 MySQL向量库只存 ID 向量 分类标签。三、文本向量在向量库的四大常用操作 返回值增、删、改、查1. 新增insert/add功能文本→Embedding 模型生成向量 → ID 元数据 向量批量入库。入参ids、metadatas、embeddingspython运行coll.add( ids[1,2], metadatas[{type:数据库},{type:数据库}], embeddings[[0.52,0.33,-0.21],[0.55,0.30,-0.19]] )返回值无成功空返回异常报错2. 删除delete两种删除方式根据主键 ID 精准删除根据 metadata 条件批量过滤删除。python运行coll.delete(ids[1]) coll.delete(where{type:水果})返回值空 / 删除成功标识3. 更新update无法修改向量里单个小数只能整条覆盖替换新向量 / 新元数据python运行coll.update(ids[1],embeddings[[0.53,0.32,-0.20]])返回值无4. 查询query最核心语义相似检索入参query_embeddings用户问题生成的文本向量、n_results返回 topN、where标量过滤条件、include指定返回内容底层逻辑输入问句向量 → ANN 索引HNSW/IVF计算库内向量相似度 → 筛选最相近 N 条。三种返回形式重点1include[]默认底层返回 → ids distances (相似度 / 距离)json{ids:[[1,2]],distances:[[0.01,0.03]]}❌ 无原文、无向量2include[metadatas]附带返回标签信息多出 metadatas 字段拿到分类、备注等文本信息3include[embeddings]附带返回库里存储的原始文本向量带出浮点数组[[0.52,0.33,-0.21],[0.55,0.30,-0.19]]混合查询示例先过滤再向量检索python运行coll.query( query_embeddings[[0.52,0.33,-0.21]], n_results2, where{type:数据库}, include[metadatas] )四、完整 RAG 链路串联文本向量全流程文档文本 → BGE 模型 →文本向量ID 标签 向量存入向量数据库原文存入 MySQL用户提问 → 提问转向量 → 向量库查询 →获取相似文档 ID使用 ID 去 MySQL 查询真实原文拼接大模型 prompt。五、精简考点总结文本向量 文本映射的固定长度浮点数组代表语义向量库存ID 标量元数据 浮点向量原文不在向量库查询底层只返回 ID 相似度原文 / 向量需要手动配置参数才返回。
[智能体-289]:什么是文本向量?它在向量数据库中存放的格式?内容?常见的操作方法与返回值?
一、什么是文本向量文本向量句子 Embedding一段自然语言文本经过 BGE/E5/BERT 等编码器压缩成一串固定长度浮点数组用空间坐标代表文本语义。一句话 → 1 条一维浮点向量[0.12,-0.35,0.78……]常见 768 维、1024 维语义相近 → 向量在高维空间距离近、余弦相似度高语义无关→距离远。区别Word2Vec 是单个字词静态向量BGE/BERT 是整段文本动态语义向量RAG 主流。二、向量数据库内部存储格式、存储内容向量库一条数据 主键 ID 标量元数据 文本向量稠密浮点数组1、存储格式逻辑结构plaintext{ id: 字符串/数字主键唯一标识 metadata: {标签、分类、原文标题、创建时间} 【标量字段和MySQL字段一致】 embedding: [d个浮点数] 【文本向量核心检索字段】 }示例3 维简化真实 768/1024 维表格idmetadata (标量)embedding (文本向量)1{type:数据库,text:向量数据库用于语义检索}[0.52,0.33,-0.21]2{type:数据库,text:Milvus 是主流向量数据库}[0.55,0.30,-0.19]3{type:水果,text:苹果是常见水果}[-0.71,0.22,0.65]2、存储内容拆分主键 ID唯一编号用来关联 MySQL 原始全文元数据 metadata字符串、数字、日期等结构化信息用于过滤筛选等价 MySQL 普通字段文本向量 embedding由 BGE/E5 生成的稠密浮点数数组只用来相似度检索不存储原始文字。工业规范完整原文保存在 MySQL向量库只存 ID 向量 分类标签。三、文本向量在向量库的四大常用操作 返回值增、删、改、查1. 新增insert/add功能文本→Embedding 模型生成向量 → ID 元数据 向量批量入库。入参ids、metadatas、embeddingspython运行coll.add( ids[1,2], metadatas[{type:数据库},{type:数据库}], embeddings[[0.52,0.33,-0.21],[0.55,0.30,-0.19]] )返回值无成功空返回异常报错2. 删除delete两种删除方式根据主键 ID 精准删除根据 metadata 条件批量过滤删除。python运行coll.delete(ids[1]) coll.delete(where{type:水果})返回值空 / 删除成功标识3. 更新update无法修改向量里单个小数只能整条覆盖替换新向量 / 新元数据python运行coll.update(ids[1],embeddings[[0.53,0.32,-0.20]])返回值无4. 查询query最核心语义相似检索入参query_embeddings用户问题生成的文本向量、n_results返回 topN、where标量过滤条件、include指定返回内容底层逻辑输入问句向量 → ANN 索引HNSW/IVF计算库内向量相似度 → 筛选最相近 N 条。三种返回形式重点1include[]默认底层返回 → ids distances (相似度 / 距离)json{ids:[[1,2]],distances:[[0.01,0.03]]}❌ 无原文、无向量2include[metadatas]附带返回标签信息多出 metadatas 字段拿到分类、备注等文本信息3include[embeddings]附带返回库里存储的原始文本向量带出浮点数组[[0.52,0.33,-0.21],[0.55,0.30,-0.19]]混合查询示例先过滤再向量检索python运行coll.query( query_embeddings[[0.52,0.33,-0.21]], n_results2, where{type:数据库}, include[metadatas] )四、完整 RAG 链路串联文本向量全流程文档文本 → BGE 模型 →文本向量ID 标签 向量存入向量数据库原文存入 MySQL用户提问 → 提问转向量 → 向量库查询 →获取相似文档 ID使用 ID 去 MySQL 查询真实原文拼接大模型 prompt。五、精简考点总结文本向量 文本映射的固定长度浮点数组代表语义向量库存ID 标量元数据 浮点向量原文不在向量库查询底层只返回 ID 相似度原文 / 向量需要手动配置参数才返回。