SuperAPI AI 工具集

vector-embed

数据与分析

查看项目

更新于 10-15 15:42

技能介绍

Vector Embed 是一个用于生成和存储向量嵌入的技能,基于 ruvector npm 包实现。

用途 该技能用于将文本、代码或文档嵌入为 384 维向量,以支持语义搜索、相似度比较或聚类。ruvector 使用 ONNX all-MiniLM-L6-v2 模型,并采用 HNSW 索引,宣称具备每秒 52,000+ 次插入和约 0.045 毫秒的搜索性能。

主要能力

  • 生成 384 维向量嵌入,并进行归一化。
  • 将嵌入存储到 HNSW 索引中。
  • 支持单条文本嵌入,并可将结果输出到文件。
  • 提供自适应(LoRA)变体,可通过 --adaptive --domain code 参数使用。
  • 可通过 MCP 方式注册服务器,并调用 hooks_rag_context(语义上下文)、brain_search(集体大脑)、hooks_ast_analyze、hooks_route 等工具。
  • 可将元数据存储到 AgentDB,使用 mcp__plugin_ruflo-core_ruflo__memory_store 方法。

使用方式

  1. 确保 ruvector@0.2.25 可用: npm ls ruvector 2>/dev/null | grep '0.2.25' || npm install ruvector@0.2.25
  2. 如果后续 embed text 报告 ONNX WASM 文件未打包,还需运行: npm install ruvector-onnx-embeddings-wasm
  3. 嵌入输入(使用 text 子命令,文本作为位置参数):
    • 单条字符串:npx -y ruvector@0.2.25 embed text "your text here"
    • 带输出文件:npx -y ruvector@0.2.25 embed text "your text here" -o vec.json
    • 对于文件:通过 Read 工具读取其内容,然后作为位置参数传入。
    • 批量:在 shell 中循环遍历文件——ruvector@0.2.25 没有内置的 --batch/--glob 标志。
    • 自适应(LoRA)变体:npx -y ruvector@0.2.25 embed text "..." --adaptive --domain code
  4. 确认——报告向量维度(384)、范数以及写入的任何输出路径。
  5. 如需要,将元数据存储到 AgentDB: mcp__plugin_ruflo-core_ruflo__memory_store({ key: "embed-SOURCE", value: "VECTOR_METADATA", namespace: "vector-patterns" })

MCP 替代方式 使用固定版本注册一次 MCP 服务器: claude mcp add ruvector -- npx -y ruvector@0.2.25 mcp start 然后直接调用 MCP 工具:hooks_rag_context(语义上下文)、brain_search(集体大脑)、hooks_ast_analyze、hooks_route。

适用场景 适用于需要对文本、代码或文档进行语义搜索、相似度比较或聚类的场景。

限制与注意事项

  • ruvector@0.2.25 中不存在 embed --batch --glob 和 embed --file 标志;仅支持 embed text <text>。需要自行读取文件,并对每个文件调用 embed text。
  • ONNX 运行时默认未打包。如果嵌入失败,请安装 ruvector-onnx-embeddings-wasm,或运行 npx -y ruvector@0.2.25 doctor 进行诊断。